Nimble Streamer is used for a variety of streaming scenarios which includes all flavors of live streaming and video-on-demand. On the popular use cases is when Nimble is used as an origin for several edges - which may also be powered by Nimble.
This works pretty well but some scenarios use Nimble Streamer as origin for further usage in content delivery networks which are very picky for the streams URLs and format. Even though Nimble is fully compliant with used protocols' specs, it uses session IDs in URL for identifying viewer for precise statistics calculation. Some CDNs require not to have any additional streaming parameters so our team made adjustments to allow customers to use Nimble without additional session information.
The general steps to use this behavior, are those:
As a result, the output streams won't have sessions information and Nimble will not force a client to have it. So please beware as follows.
Let's go step by step to set up this behavior.
We assume you've already installed Nimble Streamer. So now you need to set up Nimble streaming behavior, i.e. describe source and output for your media. Here are some of the examples of what you may use:
All these scenarios will define output application as one of results. Traditionally, the application name is something which stands at the beginning of URL. E.g. in http://127.0.0.1:8081/live-origin/stream/playlist.m3u8 , "live-origin" is the name of an app.
Now you may use existing setup for further origin behavior setup.
Go to Nimble Streamer -> HTTP origin applications menu. You will see blank list of apps.
Clicking on Add origin application, you will see a dialog as shown below.
It allows specifying the name of the application which will have no additional information. You may apply it to multiple servers by clicking on servers' names. When the setup is ready, click on Save to apply the setting to selected servers.
The origin apps list will be populated with a new setting.
Now, if you have a stream http://127.0.0.1:8081/live-origin/stream/playlist.m3u8 , its URL will not include session information from this moment.
You may specify this setting on a server level to apply for all applications at once.
Use http_origin parameter in nimble.conf to define this behavior. Don't forget to re-start Nimble Streamer after applying new parameter
Nimble allows producing multiple streams applications from same source, so for any input stream you may create separate applications for different tasks. E.g. one for end-users streaming, and another one for using as origin. WMSPanel web UI allows doing these tasks easily.
This feature is widely used for CDN-friendly streaming scenarios.
If your destination allows accepting RTMP, you may also consider using RTMP re-publishing feature set which would make Nimble to publish RTMP whenever a stream is available.
If you run into any questions, you can contact us any time, we're ready to help.
Nimble Streamer, Nimble live streaming, Nimble VOD streaming, RTMP re-publishing
This works pretty well but some scenarios use Nimble Streamer as origin for further usage in content delivery networks which are very picky for the streams URLs and format. Even though Nimble is fully compliant with used protocols' specs, it uses session IDs in URL for identifying viewer for precise statistics calculation. Some CDNs require not to have any additional streaming parameters so our team made adjustments to allow customers to use Nimble without additional session information.
The general steps to use this behavior, are those:
- Set up streaming behavior for Nimble for HTTP streaming (HLS, DASH, Icecast etc.).
- Specify what origin applications will not use sessions for output streams.
As a result, the output streams won't have sessions information and Nimble will not force a client to have it. So please beware as follows.
WMSPanel application statistics will include only bandwidth and application-aggregated traffic.No connections count or duration will be calculated.
Let's go step by step to set up this behavior.
Set up streaming behavior
We assume you've already installed Nimble Streamer. So now you need to set up Nimble streaming behavior, i.e. describe source and output for your media. Here are some of the examples of what you may use:
- Transmuxing RTMP to MPEG-DASH and HLS live streaming.
- RTMP to HLS transmuxing including ABR HLS.
- Icecast streaming from RTMP source.
- HLS, SmoothStreaming and progressive download re-streaming routes for edge servers.
- Transmuxing MPEG-TS over HTTP to ABR HLS.
- Transmuxing MPEG-TS over UDP to ABR HLS
- VOD streaming via HLS as origin.
- MP4 to MPEG-DASH VOD streaming.
- Progressive download origin routes if you make pseudo-streaming.
All these scenarios will define output application as one of results. Traditionally, the application name is something which stands at the beginning of URL. E.g. in http://127.0.0.1:8081/live-origin/stream/playlist.m3u8 , "live-origin" is the name of an app.
Specify origin application
Now you may use existing setup for further origin behavior setup.
Go to Nimble Streamer -> HTTP origin applications menu. You will see blank list of apps.
Empty origin apps list. |
Setting up HTTP origin application. |
It allows specifying the name of the application which will have no additional information. You may apply it to multiple servers by clicking on servers' names. When the setup is ready, click on Save to apply the setting to selected servers.
The origin apps list will be populated with a new setting.
New settings are applied. |
Server-level setting
You may specify this setting on a server level to apply for all applications at once.
Use http_origin parameter in nimble.conf to define this behavior. Don't forget to re-start Nimble Streamer after applying new parameter
Single input, multiple output
Nimble allows producing multiple streams applications from same source, so for any input stream you may create separate applications for different tasks. E.g. one for end-users streaming, and another one for using as origin. WMSPanel web UI allows doing these tasks easily.
This feature is widely used for CDN-friendly streaming scenarios.
If your destination allows accepting RTMP, you may also consider using RTMP re-publishing feature set which would make Nimble to publish RTMP whenever a stream is available.
If you run into any questions, you can contact us any time, we're ready to help.
Related documentation
Nimble Streamer, Nimble live streaming, Nimble VOD streaming, RTMP re-publishing
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.