Nimble Streamer can already take MPEG2TS over UDP and make HLS transmuxing to produce outgoing HLS stream. This allows accepting multicast and unicast UDP transmissions. Besides UDP, lots of devices and software solutions use MPEG-TS transmission over HTTP for variety of use cases.
Nimble can now accept MPEG2TS over HTTP to produce HLS. The output HLS can be used for single bitrate and adaptive bitrate HLS. Let's see step by step setup for incoming MPEG-TS stream.
You may provide origin streams via HLS protocol, both with fixed bitrate and with adaptive bitrate. This diagram visualizes the described workflow.
Here's the step-by-step instruction for fixed bitrate and adaptive bitrate set up.
Select Nimble Streamer / Live streams set up menu.
You will see servers list to select the one which you'd like to have as a live origin server.
Clicking on server name you will go to designated server streaming details. Each page has a dynamic image of your set up process - you may see where you are at and what are next steps.
To set up incoming MPEG2TS stream click on Add HTTP stream. You will see a dialog asking for a URL of the stream. It'll also allow with its alias name for convenience.
Once it's added the stream will appear in the list. When the media data is received, its color will change to green.
Now you can set up outgoing HLS streams.
Now when the incoming stream is defined, you can create outgoing stream for your viewers.
Click on the main diagram at "Outgoing stream" blocks or click Outgoing link in top right corner of the page.
You see a list of created existing streams. Each has stream name, video/audio streams details and other options. To add new stream for viewer, click on "Add outgoing stream". You'll see the following dialog.
Here you need to specify:
As you see you may mix video stream with audio stream from different programs into single media stream.
Having the outgoing stream defined, you can click on URL for Player link to get full address of the resulting stream which you can insert into your player or application.
With the outgoing streams ready, you may go further and create HLS streams with adaptive bitrate support.
Click on ABR part of the diagram to see the list of multi bitrate streams.
Here you can see a list of ABR streams, each having the application and stream name for URL and a sub-list of outgoing streams which they are made of.
To create a new multi-bitrate adaptive stream you need to click on Add ABR stream. You'll see a dialog like this.
Here you need to specify:
With that having been set up, you may click on URL for Player.
This URL can be used for further playback.
The ABR HLS streams definition is similar to producing ABR HLS from RTMP. Same easy-to-use interface and robust Nimble Streamer behavior.
The 3 mentioned steps allow taking MPEG-TS stream for further actions like transmuxing to HLS adaptive bitrate stream. So your Nimble Steamer will be working as a streaming origin.
In addition to origin server set up you may also install more Nimble Streamers as HLS re-streaming edge servers to offload this Nimble origin and make your network more robust and scalable. You may also find useful features like hotlinking protection with domain lock and geo-location blocking.
You may also consider WMSPanel server tasks remote management via web console for convenient control of server-side commands. Launch any command, like ffmpeg process, with no need to log in via SSH, just an easy-to-use web interface.
Other HLS-related features to come soon, join our social networks for updates: Facebook, Twitter, Google+
Nimble HTTP Streamer, Defining language channels in HLS, Transmuxing published RTMP to ABR HLS, Pull RTMP to transmux into HLS, MP4 transmuxing to HLS VOD streaming, Create ABR VOD HLS with SMIL, HLS re-streaming set up, Dispersa streams monitoring, WMSPanel YouTube channel, Using Nimble in Rocksoft Cloud Media Solution, Server tasks remote management via web UI
Update: New article about MPEG-TS transmuxing to HLS, RTMP etc is available. Also, read general Nimble Streamer MPEG2TS feature set page.
- Using WMSPanel, define which MPEG-TS stream will be listening for incoming streams via HTTP. Those streams will be used as a source for generating outgoing streams.
- Define what outgoing streams will be generated from previously defined incoming streams. They can be used as fixed bitrate streams for your viewers and re-used as a source for ABR set up.
- If you'd like to create ABR streams, define adaptive streams using the variety of previously defined outgoing streams.
You may provide origin streams via HLS protocol, both with fixed bitrate and with adaptive bitrate. This diagram visualizes the described workflow.
Here's the step-by-step instruction for fixed bitrate and adaptive bitrate set up.
1. Set up incoming streams
Select Nimble Streamer / Live streams set up menu.
You will see servers list to select the one which you'd like to have as a live origin server.
![]() |
Selecting the server to start the set up. |
![]() |
Nimble Streamer instance |
To set up incoming MPEG2TS stream click on Add HTTP stream. You will see a dialog asking for a URL of the stream. It'll also allow with its alias name for convenience.
![]() |
Adding new MPEG2TS source. |
![]() |
New MPEG2TS source is active. |
2. Set up outgoing streams
Now when the incoming stream is defined, you can create outgoing stream for your viewers.
Click on the main diagram at "Outgoing stream" blocks or click Outgoing link in top right corner of the page.
![]() |
Outgoing streams list. |
![]() |
Describing outgoing HLS stream using existing MPEG2TS source. |
Here you need to specify:
- Application name and stream name. They will be used in result URL of the stream for accessing via players.
- Video source and video stream. This is where the video will be taken from for further mix. The source is the incoming stream defined in step 1. The stream can be selected from the drop down list based on the source information. If no information has been received yet, you may select "First video stream" to get whatever is transmitted. If the source has just one stream, it will be picked up by default with no special setup.
- Audio source and audio stream works the same way as "Video source".
- Bandwidth, resolution and codec are the custom fields which will be included into HLS playlist information. E.g. Bandwidth may be "65000", "1280000", "2560000" etc. Resolution might be "640x360", "416x234" etc. The Codec filed may have specific codec settings like "mp4a.40.5", see this RFC for other examples.
As you see you may mix video stream with audio stream from different programs into single media stream.
Having the outgoing stream defined, you can click on URL for Player link to get full address of the resulting stream which you can insert into your player or application.
![]() |
Getting result URL for players and applications. |
3. Set up adaptive bitrate streams
With the outgoing streams ready, you may go further and create HLS streams with adaptive bitrate support.
Click on ABR part of the diagram to see the list of multi bitrate streams.
![]() |
Adaptive bitrate streams list. |
To create a new multi-bitrate adaptive stream you need to click on Add ABR stream. You'll see a dialog like this.
![]() |
Create ABR HLS stream. |
- application and stream name for further usage,
- outgoing streams which this multi-bitrate stream will contain.
With that having been set up, you may click on URL for Player.
![]() |
Getting URL for adaptive bitrate stream. |
The ABR HLS streams definition is similar to producing ABR HLS from RTMP. Same easy-to-use interface and robust Nimble Streamer behavior.
Next
The 3 mentioned steps allow taking MPEG-TS stream for further actions like transmuxing to HLS adaptive bitrate stream. So your Nimble Steamer will be working as a streaming origin.
In addition to origin server set up you may also install more Nimble Streamers as HLS re-streaming edge servers to offload this Nimble origin and make your network more robust and scalable. You may also find useful features like hotlinking protection with domain lock and geo-location blocking.
You may also consider WMSPanel server tasks remote management via web console for convenient control of server-side commands. Launch any command, like ffmpeg process, with no need to log in via SSH, just an easy-to-use web interface.
Other HLS-related features to come soon, join our social networks for updates: Facebook, Twitter, Google+
Related documentation
Nimble HTTP Streamer, Defining language channels in HLS, Transmuxing published RTMP to ABR HLS, Pull RTMP to transmux into HLS, MP4 transmuxing to HLS VOD streaming, Create ABR VOD HLS with SMIL, HLS re-streaming set up, Dispersa streams monitoring, WMSPanel YouTube channel, Using Nimble in Rocksoft Cloud Media Solution, Server tasks remote management via web UI