October 21, 2013

Transmuxing MP4 to HLS for VOD streaming

Nimble Streamer main functional area is HTTP-based streaming. We've made a number of features that allow streaming with progressive download as well as perform re-streaming via HTTP Live Streaming (HLS) and Smooth Streaming.

For HLS re-streaming the use case is simple - you take any origin like Wowza, IIS or nginx, install a a number of Nimble edges near your viewers and do the transmission whenever you like. Nimble is light-weight so streaming provider can create small virtual machines for edges' infrastructure.

We have customers who want to have cheap origin servers the same way they cheap edges. We wanted to cover this segment by releasing a solution which would be available free of charge and could be able to stream HLS in VOD mode. So today we introduce HLS to MP4 transmuxing feature set in Nimble.

Both H.264 and H.265 videos are supported.



Re-packaging MP4 to HTTP Live Streaming (HLS)


This feature set allows transparent re-packaging of MP4 to HLS, which is also called transmuxing. Such transmuxing will re-package existing MP4 file encoded with H.264/AAC/MP3 into the MPEG TS segments necessary for HTTP Live Streaming, without having to re-encode the file. It supports VOD transmission mode.

Supported formats are:
  • video+audio;
  • video;
  • audio;
  • mp4 compatible brand
  • Apple QuickTime extension;
  • Adobe f4v
  • files with CTTS atom in TRAK.
This covers most of the use cases for MP4 usage.

Free of charge


First, this MP4 re-packaging within Nimble Streamer is not eligible for patent fees. We do not do any encoding or transcoding thus no patented technologies are used. We do not use any third-party tools as well so there are no license dependencies. We got confirmation from MPEGLA that our implementation does not require patent payments.

Knowing that Nimble Streamer itself is available free of charge and that we don't pay patent royalties, you can install and use Nimble for MP4 transmuxing for free. You can use common installation instruction and configure using config files description.

We are a service company so we take money for providing WMSPanel for calculating statistics and having convenient web control over the server. Having Nimble Streamer in WMSPanel makes it eligible for subscription with common terms described in our pricing page.

Setting up transmuxing for Nimble via WMSPanel


Let 's see what you need to do for HLS VOD streaming from a single MP4 file.

2. Upload your MP4 file encoded with H264/AAC/MP3 to a designated location on the server. The user called "nimble" must have read access to this directory.

3. Go to WMSPanel under Nimble Streamer / Edit Nimble Routes menu.

4. Click on Add VOD streaming route.


5. For fields set 1 enter the domain and the directory where the files will be accessible for HLS streaming. You can mention just a "Path" having a "Domain" as blank.

6. For field 2 enter a local directory where the content is located.

7. Choose which Nimble servers need this route and click OK.

 Setting up HLS VOD streaming via MP4 transmuxing.
Here's an example.

  1. You have Nimble installed on a server available at 198.101.232.28.
  2. Your file is /home/user/content/sample.mp4.
  3. In a field set 1 you set "/hls/" as "Path" with a blank domain.
  4. In 2nd field you set "/home/user/content/"
  5. You select server "198.101.232.28" from list of Nimble servers and click OK.

Now to view the file using HLS you should use this URL:
http://198.101.232.28:8081/hls/sample.mp4/playlist.m3u8
Now with this HLS origin functionality combined with edge re-streaming capability you can set an effective HLS VOD streaming infrastructure based on Nimble Streamer.

The streaming VOD may also be protected in the following ways:


Need to support ABR and multiple tracks for my VOD


You can create ABR VOD HLS using SMIL files with Nimble Streamer. Also, multiple audio tracks and audio-only/video only tracks are supported.

Need to convert MP3 or AAC to VOD HLS


Check this article about MP3 and AAC to HLS transmuxing.

Need to convert RTMP to ABR HLS and UDP MPEG-TS live stream into HLS


Check the following posts:


No comments:

Post a Comment