Thursday, November 1, 2012

HLS (HTTP Live Streaming) Overview

HTTP Live Streaming is an HTTP-based media streaming communications protocol implemented by Apple Inc. as part of their QuickTime and iPhone software systems. The protocol is in the first stage of being submitted to the IETF as a proposed Internet Standard.
The “Live” in the name is a bit misleading. HLS has many advantages for on-demand video playback as well as for live events. Companies that use HLS can reduce bandwidth expense and improve user experience by optimizing video quality based on network conditions.

Is HLS the same as HTTP Progressive Download?

No. HTTP Progressive Download simply enables playback of a full video file to start prior to completing the full download of that file. This is done primarily by placing the video’s atom (e.g. “table of contents”) at the beginning of the file.
HTTP Progressive Download is a very common technique used to emulate a streaming experience today. However, in many ways it is inferior to true adaptive streaming.

The quality of the file is pre-determined. A user watching from a mobile connection on a 3 inch screen will have the same video as a user watching from a cable modem connection on a 1080p TV at home. The player is unable to dynamically adjust based on the user’s network and screen conditions. Furthermore, if a user starts in a high-bandwidth environment, then moves to a low-bandwidth environment, HTTP Progressive Download is completely unable to keep pace. HLS, however, handles this scenario gracefully with minimal rebuffering and lag.

Security is limited. If a user gets access to the URL, they can download and share the entire file. HLS can be instrumented to include dynamically changing security tokens with each 10-second clip.

Does your app support HTTP Live Streaming?

Yes! my Apps have optimized the delivery method to match each device's strengths. HTTP Live Streaming is the preferred video delivery method for iPhone, iPad.