Now you can also ingest Icecast metadata into any incoming live stream any time via Nimble Streamer native API call, which makes it a real-time metadata injection. Currently only "streamtitle" and "streamurl" metadata parameters are supported. Once the metadata is ingested into the live stream, that data can be used for all RTMP- and Icecast-related scenarios as shown later in this article.
1. Enable RTMP Icecast metadata
To use this real-time injection you need to enable RTMP Icecast metadata feature first.
Follow "Generating Icecast metadata from RTMP" article to set up the processing of Icecast metadata in RTMP for further usage. Basically it's a matter of one checkbox in WMSPanel UI for given server instance or for some specific application.
Once this feature is enabled, any incoming stream will
Once this feature is enabled, any incoming stream will
2. Enable Nimble API
Nimble Streamer native API allows working directly with server instance in order to get its status and control its behavior in some cases.
To start using it, you need to enable it on server side via configuration file. Please follow Pre-setup section in Nimble Streamer API reference to proceed. Once you have properly set up server, you can run the ingestion.
So whatever app or server you will enable this feature for, the incoming stream will get the metadata which you later will be able to transfer and process via RTMP.
At this point we assume that you have a live stream to ingest metadata into, let it be "live" application and "radio" stream.
So whatever app or server you will enable this feature for, the incoming stream will get the metadata which you later will be able to transfer and process via RTMP.
3. Perform the injection
At this point we assume that you have a live stream to ingest metadata into, let it be "live" application and "radio" stream.
Then assuming your management interface is 127.0.0.1 and port is 9999 you can make this POST call:
curl -vvv http://127.0.0.1:9999/manage/icecast_metadata/live/radio -d "{\"streamtitle\":\"News\", \"streamurl\":\"URL2\"}"This includes /manage/icecast_metadata method with for live/radio stream and set streamtitle and streamurl metadata parameters.
If you don't need to set streamurl you can run it this way:
You can find more about this and other native API methods on API reference page.
curl -vvv http://127.0.0.1:9999/manage/icecast_metadata/live/radio -d "{\"streamtitle\":\"News\"}"to apply streamtitle only.
You can find more about this and other native API methods on API reference page.
Further usage
As we've mentioned before, this metadata injection API call allows adding that data into the live stream, as if it's been ingested by some encoder before that stream entered into Nimble Streamer instance. This means that you may use ingested metadata in any output RTMP or output Icecast processing use case like those:
- Transmuxing from RTMP into Icecast, the metadata will be appended into Icecast.
- RTMP re-publish from origin to edge servers, where edges can transmux RTMP to Icecast with metadata.
- Pass metadata through Live Transcoder in case initial RTMP stream needs some transformations. The transcoded streams can then be used the same ways - for transmuxing or re-publishing.
RTMP will still carry the data outbound as you need.
Contact us if you have any questions regarding any of our features.
Nimble Streamer API, Audio streaming feature set, RTMP support
Contact us if you have any questions regarding any of our features.
Related documentation
Nimble Streamer API, Audio streaming feature set, RTMP support
No comments:
Post a Comment
If you face any specific issue or want to ask some question to our team,
PLEASE USE OUR HELPDESK
This will give much faster and precise response.
Thank you.
Note: Only a member of this blog may post a comment.