#12 Fix HLS terminology #15

Merged
Barbagus merged 1 commits from 12-hls-terminology into stable 2022-12-13 16:19:40 +00:00
Collaborator

According to HLS RFC

A multimedia presentation is specified by a Uniform Resource Identifier (URI) [RFC3986] to a Playlist.

A Playlist is either a Media Playlist or a Master Playlist. Both are UTF-8 text files containing URIs and descriptive tags.

A Media Playlist contains a list of Media Segments, which, when played sequentially, will play the multimedia presentation.

Here is an example of a Media Playlist:

#EXTM3U
#EXT-X-TARGETDURATION:10

#EXTINF:9.009,
http://media.example.com/first.ts
#EXTINF:9.009,
http://media.example.com/second.ts
#EXTINF:3.003,
http://media.example.com/third.ts

The first line is the format identifier tag #EXTM3U. The line containing #EXT-X-TARGETDURATION says that all Media Segments will be 10 seconds long or less. Then, three Media Segments are declared. The first and second are 9.009 seconds long; the third is 3.003 seconds.

[...]

A more complex presentation can be described by a Master Playlist. A Master Playlist provides a set of Variant Streams, each of which describes a different version of the same content.

A Variant Stream includes a Media Playlist that specifies media encoded at a particular bit rate, in a particular format, and at a particular resolution for media containing video.

A Variant Stream can also specify a set of Renditions. Renditions are alternate versions of the content, such as audio produced in different languages or video recorded from different camera angles.

Clients should switch between different Variant Streams to adapt to network conditions. Clients should choose Renditions based on user preferences.

So,

  • versions are actually renditions
  • resolutions are actually variants
  • ranges and/or chunks are actually segments
  • version_index_url should be master_playlists_url
  • index_url should be media_playlist_url
According to HLS [RFC](https://datatracker.ietf.org/doc/html/rfc8216) > A multimedia presentation is specified by a Uniform Resource Identifier (URI) [RFC3986] to a Playlist. > > A Playlist is either a Media Playlist or a Master Playlist. Both are UTF-8 text files containing URIs and descriptive tags. > > A Media Playlist contains a list of Media Segments, which, when played sequentially, will play the multimedia presentation. > > Here is an example of a Media Playlist: > > #EXTM3U > #EXT-X-TARGETDURATION:10 > > #EXTINF:9.009, > http://media.example.com/first.ts > #EXTINF:9.009, > http://media.example.com/second.ts > #EXTINF:3.003, > http://media.example.com/third.ts > > The first line is the format identifier tag #EXTM3U. The line containing #EXT-X-TARGETDURATION says that all Media Segments will be 10 seconds long or less. Then, three Media Segments are declared. The first and second are 9.009 seconds long; the third is 3.003 seconds. > > [...] > > A more complex presentation can be described by a Master Playlist. A Master Playlist provides a set of Variant Streams, each of which describes a different version of the same content. > > A Variant Stream includes a Media Playlist that specifies media encoded at a particular bit rate, in a particular format, and at a particular resolution for media containing video. > > A Variant Stream can also specify a set of Renditions. Renditions are alternate versions of the content, such as audio produced in different languages or video recorded from different camera angles. > > Clients should switch between different Variant Streams to adapt to network conditions. Clients should choose Renditions based on user preferences. So, - _versions_ are actually _renditions_ - _resolutions_ are actually _variants_ - _ranges_ and/or _chunks_ are actually _segments_ - `version_index_url` should be `master_playlists_url` - `index_url` should be `media_playlist_url`
Barbagus added 1 commit 2022-12-13 12:33:18 +00:00
2894cdd8c8 Fix HLS protocol terminology in the code #12
- versions => renditions
- resolutions => variants
- ranges and/or chunks => segments
- version index => master playlist
- other index => media playlist url

For now, the CLI has not been updated with this terminology, only the
code.
Barbagus added this to the devel project 2022-12-13 16:16:00 +00:00
Barbagus changed title from WIP: #12 Fix HLS terminology to #12 Fix HLS terminology 2022-12-13 16:19:05 +00:00
Barbagus merged commit bd1339e02e into stable 2022-12-13 16:19:40 +00:00
Barbagus deleted branch 12-hls-terminology 2022-12-13 16:19:40 +00:00
Sign in to join this conversation.
No reviewers
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: fcode/delarte#15
No description provided.