How to stream video over HTTP for mobile devices? HTTP Live Streaming (HLS)
Motivation
Video service over Http Live Streaming for mobile devices, which...
- ==has limited memory/storage==
- suffers from the unstable network connection and variable bandwidth, and needs ==midstream quality adjustments.==
Solution
-
Server-side: In a typical configuration, a hardware encoder takes audio-video input, encodes it as H.264 video and AAC audio, and outputs it in an MPEG-2 Transport Stream
- the stream is then broken into a series of short media files (.ts possibly 10s) by a software stream segmenter.
- The segmenter also creates and maintains an index(.m3u8) file containing a list of the media files.
- Both the media fils and the index files are published on the web server.
-
Client-side: client reads the index, then requests the listed media files in order and displays them without any pauses or gaps between segments.