Skip to content

Latest commit

 

History

History
36 lines (23 loc) · 1.61 KB

38-how-to-stream-video-over-http.md

File metadata and controls

36 lines (23 loc) · 1.61 KB
slug id title date comments tags description references
38-how-to-stream-video-over-http
38-how-to-stream-video-over-http
How to stream video over HTTP for mobile devices? HTTP Live Streaming (HLS)
2018-09-07 21:32
true
system design
Video service over Http for mobile devices has two problems: limited memory or storage and unstable network connection and variable bandwidth. HTTP live streaming solve this with separation of concerns, file segmentation, and indexing.

Motivation

Video service over Http Live Streaming for mobile devices, which...

  1. ==has limited memory/storage==
  2. suffers from the unstable network connection and variable bandwidth, and needs ==midstream quality adjustments.==

Solution

  1. 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

    1. the stream is then broken into a series of short media files (.ts possibly 10s) by a software stream segmenter.
    2. The segmenter also creates and maintains an index(.m3u8) file containing a list of the media files.
    3. Both the media fils and the index files are published on the web server.
  2. Client-side: client reads the index, then requests the listed media files in order and displays them without any pauses or gaps between segments.

Architecture

HLS Architecture