You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
vipercoder edited this page Feb 18, 2015
·
1 revision
Introduction
HLSParserJ is a Java based library to parse HTTP Live Streaming (HLS) playlists.
HTTP Live Streaming (HLS)
About
HTTP Live Streaming (also known as HLS) is an HTTP-based media streaming communications protocol. implemented by Apple Inc. as part of their QuickTime, Safari, OS X, and iOS software. It works by breaking the overall stream into a sequence of small HTTP-based file downloads, each download loading one short chunk of an overall potentially unbounded transport stream. As the stream is played, the client may select from a number of different alternate streams containing the same material encoded at a variety of data rates, allowing the streaming session to adapt to the available data rate. At the start of the streaming session, it downloads an extended M3U playlist containing the metadata for the various sub-streams which are available.[0]
Playlists vs Segments
In HLS workflows, encoders produce 3 types of file objects that are consumed by the client: (a) master playlist, (b) media playlist, and (c) media segment.
Media Segment - video or audio data stored in MPEG-2 Transport Stream (*.ts) container
Media Playlist - manifest file that identifies each of the media segments for playback (same bitrate/codec)
Master Playlist - manifest file that identifies each of the media playlists (each on a different bitrate/codec)