Configure a DME Stream : DME Output Streams : Out-6 > Create HLS (for iPod, iPhone/iPad)
  
Out-6 > Create HLS (for iPod, iPhone/iPad)
 
*To create an HLS stream for Serving via HTTP:
Objective: This use case explains how to create an HLS (HTTP Live Streaming) stream which is essentially a set of TS files made from an input H.264 stream with a playlist, so that it can be played on Apple iPad/iPhone/iPad devices via a wireless connection. Mac QuickTime X players (and some VLC players) can also play the stream.
The playlist generated can either be from a single input stream or multiple input streams. Multiple streams are useful in varying bandwidth environments. If you need to create an adaptive playlist that allows the player to switch between multiple rate streams to adapt to the fluctuating bandwidth, you need to create multiple HLS output streams—all with the same Master Playlist Name.
The playlist generated can vary depending on the configuration. Since the segments must be generated on an IDR (Key Frame) boundary, the source must be producing IDR frames at a regular interval in the stream. It is helpful to know how often IDR frames are being inserted into stream from the source and it is a good idea to set a Minimum Segment Length that is a multiple of IDR interval number. Larger segment sizes increase latency. The default settings will create a latency of about 30 seconds (a common latency for HLS). This is probably optimal in terms of IDR frame interval/segment sizes. You can reduce latency by forcing the incoming IDR interval to 1 and setting the minimum segment length to 1 but this will make the source, the DME, and the client work much harder than they may need to.
You can also enter the bandwidth associated with each incoming stream. The stream bandwidth is important when generating an adaptive bitrate stream with multiple streams. Although VBrick 7000/9000 Series (H.264) encoders include the bandwidth information in the stream, some stream sources do not. You may need to provide this information (if your encoder does not) because HLS generation for adaptive bitrate streaming requires accurate bandwidth information to work properly.
1. Enter the stream name for the generated HLS stream.
2. To create an adaptive bit rate playlist, enter a unique name for your master playlist. This must be different from any incoming stream name, otherwise leave blank. When blank, the default non-adaptive playlist name created is "HLS" which is required in the playback URL. Use the same name when creating multiple HLS streams which are then all associated with the adaptive bitrate master playlist. The highest bandwidth streams should be at the top of the list of (1 to 25) HLS streams.
3. If you know your incoming stream does not have bandwidth information, enter a value (in kbps) in the bandwidth override field for the stream. This value supersedes any value actually in the stream.
4. Playlists that are created using “rolling” means that the old segments are deleted as new segments are created for a live stream. In some applications, you may want to keep all your segments and create an ever growing playlist. This lets you create a DVR‑like feature where users can tune in late into a live presentation, and rewind to the beginning or jump back to the present.
Caution: the “appending” setting does not delete segments and may adversely impact the space available on your hard drive. You could conceivably use all remaining disk space if you leave a live stream running from the source into the DME. Thus a built-in safeguard stops creating appending segments and switches to rolling segments after 7 days.
Note: if you need to archive appending (non‑rolling segmentation), the segments and playlist are available via FTP in the folder: /HLS/streamname or /MultiplePlaylistName/streamname, only when the stream is enabled and active. When disabled, all associated playlists and segments are deleted from disk.
5. The Playlist Length field signals the playlist size of segments and controls the length of DVR functionality when Type = Rolling. This field is ignored when Type = Appending. Leave at the default (rolling) unless you have a compelling reason to change.
6. The Minimum Segment Length is a number (in seconds) that determines minimum size of segments that will be created. Although reducing this number reduces latency, it also creates smaller files meaning that the player will need to request new segments more frequently. Make this number a multiple (2x) of the IDR Frame Interval. For VBrick encoders, the default interval is 4, so that 8 (the default) is a recommended value.
7. Enable the stream(s) and click Apply.
8. The status will indicate “Active” if HLS streams are being created or “Waiting for Stream” if the input stream cannot be found.
9. You can also verify the detailed status of your outbound TS stream on the Monitor > Multi Protocol Connections page.
 
*See Also:
Input and Output DME Streams