How to Stream Video to Mobile Devices Using HTTP? HTTP Live Streaming (HLS)
· One min read
Why Is Such a Protocol Needed?
Mobile video playback services using HTTP Live Streaming encounter the following issues:
- ==Limited memory and storage on mobile devices==.
- Due to unstable network connections and varying bandwidth, there is a need to ==dynamically adjust video quality during transmission==.
Solutions
- Server Side: In a typical setup, encoding hardware receives audio and video input, encodes it into H.264 format video and AAC format audio, and then streams it out in MPEG-2 format.
- A software multiplexer then splits the raw output stream into a series of short media files (with lengths possibly around 10 seconds in .ts format).
- The multiplexer also maintains an index file (.m3u8 format) that contains a list of all media files.
- The generated media files and index file are published on a web server.
- Client Side: The client reads the index, sequentially requests the necessary media files from the server, and smoothly plays the content of each short media file.