Play HLS, DASH, and future HTTP streaming protocols with video.js, even where they're not natively supported.
Included in video.js 7 by default! See the video.js 7 blog post
Maintenance Status: Stable
Video.js Compatibility: 7.x, 8.x
Demo: https://videojs-http-streaming.netlify.app/
Source code: https://github.com/videojs/http-streaming
Tài liệu này mô tả một giao thức để truyền các luồng dữ liệu đa phương tiện không giới hạn. Tài liệu này chỉ rõ định dạng dữ liệu của các tệp và các hành động cần thực hiện.
Đọc chi tiết: https://datatracker.ietf.org/doc/html/rfc8216
Table of Contents
1. Introduction to HTTP Live Streaming .............................4
2. Overview ........................................................4
3. Media Segments ..................................................6
3.1. Supported Media Segment Formats ............................6
3.2. MPEG-2 Transport Streams ...................................7
3.3. Fragmented MPEG-4 ..........................................7
3.4. Packed Audio ...............................................8
3.5. WebVTT .....................................................8
4. Playlists .......................................................9
4.1. Definition of a Playlist ..................................10
4.2. Attribute Lists ...........................................11
4.3. Playlist Tags .............................................12
4.3.1. Basic Tags .........................................12
4.3.1.1. EXTM3U ....................................12
4.3.1.2. EXT-X-VERSION .............................12
4.3.2. Media Segment Tags .................................13
4.3.2.1. EXTINF ....................................13
4.3.2.2. EXT-X-BYTERANGE ...........................14
4.3.2.3. EXT-X-DISCONTINUITY .......................14
4.3.2.4. EXT-X-KEY .................................15
4.3.2.5. EXT-X-MAP .................................17
4.3.2.6. EXT-X-PROGRAM-DATE-TIME ...................18
4.3.2.7. EXT-X-DATERANGE ...........................18
4.3.2.7.1. Mapping SCTE-35 into
EXT-X-DATERANGE ................20
4.3.3. Media Playlist Tags ................................22
4.3.3.1. EXT-X-TARGETDURATION ......................22
4.3.3.2. EXT-X-MEDIA-SEQUENCE ......................22
4.3.3.3. EXT-X-DISCONTINUITY-SEQUENCE ..............23
4.3.3.4. EXT-X-ENDLIST .............................23
4.3.3.5. EXT-X-PLAYLIST-TYPE .......................24
4.3.3.6. EXT-X-I-FRAMES-ONLY .......................24
4.3.4. Master Playlist Tags ...............................25
4.3.4.1. EXT-X-MEDIA ...............................25
4.3.4.1.1. Rendition Groups ...............28
4.3.4.2. EXT-X-STREAM-INF ..........................29
4.3.4.2.1. Alternative Renditions .........32
4.3.4.3. EXT-X-I-FRAME-STREAM-INF ..................33
4.3.4.4. EXT-X-SESSION-DATA ........................34
4.3.4.5. EXT-X-SESSION-KEY .........................35
4.3.5. Media or Master Playlist Tags ......................35
4.3.5.1. EXT-X-INDEPENDENT-SEGMENTS ................35
4.3.5.2. EXT-X-START ...............................36
5. Key Files ......................................................37
5.1. Structure of Key Files ....................................37
5.2. IV for AES-128 ............................................37
6. Client/Server Responsibilities .................................37
6.1. Introduction ..............................................37
6.2. Server Responsibilities ...................................37
6.2.1. General Server Responsibilities ....................37
6.2.2. Live Playlists .....................................40
6.2.3. Encrypting Media Segments ..........................41
6.2.4. Providing Variant Streams ..........................42
6.3. Client Responsibilities ...................................44
6.3.1. General Client Responsibilities ....................44
6.3.2. Loading the Media Playlist File ....................44
6.3.3. Playing the Media Playlist File ....................45
6.3.4. Reloading the Media Playlist File ..................46
6.3.5. Determining the Next Segment to Load ...............47
6.3.6. Decrypting Encrypted Media Segments ................47
7. Protocol Version Compatibility .................................48
8. Playlist Examples ..............................................50
8.1. Simple Media Playlist .....................................50
8.2. Live Media Playlist Using HTTPS ...........................50
8.3. Playlist with Encrypted Media Segments ....................51
8.4. Master Playlist ...........................................51
8.5. Master Playlist with I-Frames .............................51
8.6. Master Playlist with Alternative Audio ....................52
8.7. Master Playlist with Alternative Video ....................52
8.8. Session Data in a Master Playlist .........................53
8.9. CHARACTERISTICS Attribute Containing Multiple
Characteristics ...........................................54
8.10. EXT-X-DATERANGE Carrying SCTE-35 Tags ....................54
9. IANA Considerations ............................................54
10. Security Considerations .......................................55
11. References ....................................................56
11.1. Normative References .....................................56
11.2. Informative References ...................................59
Contributors ......................................................60
Authors' Addresses ................................................60
Have a nice day
Included in video.js 7 by default! See the video.js 7 blog post
Maintenance Status: Stable
Video.js Compatibility: 7.x, 8.x
Demo: https://videojs-http-streaming.netlify.app/
Source code: https://github.com/videojs/http-streaming
Tài liệu này mô tả một giao thức để truyền các luồng dữ liệu đa phương tiện không giới hạn. Tài liệu này chỉ rõ định dạng dữ liệu của các tệp và các hành động cần thực hiện.
Đọc chi tiết: https://datatracker.ietf.org/doc/html/rfc8216
Table of Contents
1. Introduction to HTTP Live Streaming .............................4
2. Overview ........................................................4
3. Media Segments ..................................................6
3.1. Supported Media Segment Formats ............................6
3.2. MPEG-2 Transport Streams ...................................7
3.3. Fragmented MPEG-4 ..........................................7
3.4. Packed Audio ...............................................8
3.5. WebVTT .....................................................8
4. Playlists .......................................................9
4.1. Definition of a Playlist ..................................10
4.2. Attribute Lists ...........................................11
4.3. Playlist Tags .............................................12
4.3.1. Basic Tags .........................................12
4.3.1.1. EXTM3U ....................................12
4.3.1.2. EXT-X-VERSION .............................12
4.3.2. Media Segment Tags .................................13
4.3.2.1. EXTINF ....................................13
4.3.2.2. EXT-X-BYTERANGE ...........................14
4.3.2.3. EXT-X-DISCONTINUITY .......................14
4.3.2.4. EXT-X-KEY .................................15
4.3.2.5. EXT-X-MAP .................................17
4.3.2.6. EXT-X-PROGRAM-DATE-TIME ...................18
4.3.2.7. EXT-X-DATERANGE ...........................18
4.3.2.7.1. Mapping SCTE-35 into
EXT-X-DATERANGE ................20
4.3.3. Media Playlist Tags ................................22
4.3.3.1. EXT-X-TARGETDURATION ......................22
4.3.3.2. EXT-X-MEDIA-SEQUENCE ......................22
4.3.3.3. EXT-X-DISCONTINUITY-SEQUENCE ..............23
4.3.3.4. EXT-X-ENDLIST .............................23
4.3.3.5. EXT-X-PLAYLIST-TYPE .......................24
4.3.3.6. EXT-X-I-FRAMES-ONLY .......................24
4.3.4. Master Playlist Tags ...............................25
4.3.4.1. EXT-X-MEDIA ...............................25
4.3.4.1.1. Rendition Groups ...............28
4.3.4.2. EXT-X-STREAM-INF ..........................29
4.3.4.2.1. Alternative Renditions .........32
4.3.4.3. EXT-X-I-FRAME-STREAM-INF ..................33
4.3.4.4. EXT-X-SESSION-DATA ........................34
4.3.4.5. EXT-X-SESSION-KEY .........................35
4.3.5. Media or Master Playlist Tags ......................35
4.3.5.1. EXT-X-INDEPENDENT-SEGMENTS ................35
4.3.5.2. EXT-X-START ...............................36
5. Key Files ......................................................37
5.1. Structure of Key Files ....................................37
5.2. IV for AES-128 ............................................37
6. Client/Server Responsibilities .................................37
6.1. Introduction ..............................................37
6.2. Server Responsibilities ...................................37
6.2.1. General Server Responsibilities ....................37
6.2.2. Live Playlists .....................................40
6.2.3. Encrypting Media Segments ..........................41
6.2.4. Providing Variant Streams ..........................42
6.3. Client Responsibilities ...................................44
6.3.1. General Client Responsibilities ....................44
6.3.2. Loading the Media Playlist File ....................44
6.3.3. Playing the Media Playlist File ....................45
6.3.4. Reloading the Media Playlist File ..................46
6.3.5. Determining the Next Segment to Load ...............47
6.3.6. Decrypting Encrypted Media Segments ................47
7. Protocol Version Compatibility .................................48
8. Playlist Examples ..............................................50
8.1. Simple Media Playlist .....................................50
8.2. Live Media Playlist Using HTTPS ...........................50
8.3. Playlist with Encrypted Media Segments ....................51
8.4. Master Playlist ...........................................51
8.5. Master Playlist with I-Frames .............................51
8.6. Master Playlist with Alternative Audio ....................52
8.7. Master Playlist with Alternative Video ....................52
8.8. Session Data in a Master Playlist .........................53
8.9. CHARACTERISTICS Attribute Containing Multiple
Characteristics ...........................................54
8.10. EXT-X-DATERANGE Carrying SCTE-35 Tags ....................54
9. IANA Considerations ............................................54
10. Security Considerations .......................................55
11. References ....................................................56
11.1. Normative References .....................................56
11.2. Informative References ...................................59
Contributors ......................................................60
Authors' Addresses ................................................60
Have a nice day