Open pengkobe opened 6 years ago
前端可选的视频直播协议有两种
点播需要一次性下载所有索引文件,直播则需要不断去请求索引文件( 不断更新中 ), 是不是直播,可以通过结束标记 #EXT-X-ENDLIST 来区分。
#EXT-X-ENDLIST
将视频流分片成一系列 HTTP 下载文件,HLS 比 RTMP 有较高的延迟。当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同的数据速率。在开始一个流媒体会话时,客户端会下载一个包含元数据的 extended M3U (m3u8)playlist 文件,用于寻找可用的媒体流。
extended M3U (m3u8)playlist
#EXTM3U #EXT-X-PLAYLIST-TYPE:VOD #EXT-X-TARGETDURATION:10 #EXTINF:10, 2000kbps-00001.ts #EXTINF:10, 2000kbps-00002.ts #EXTINF:10, 2000kbps-00003.ts #EXTINF:10, 2000kbps-00004.ts #EXTINF:10, ... ... #EXTINF:10, 2000kbps-00096.ts #EXTINF:10, 2000kbps-00097.ts #EXTINF:10, 2000kbps-00098.ts #EXTINF:10, 2000kbps-00099.ts #EXTINF:10, 2000kbps-00100.ts #ZEN-TOTAL-DURATION:999.66667 #ZEN-AVERAGE-BANDWIDTH:2190954 #ZEN-MAXIMUM-BANDWIDTH:3536205 #EXT-X-ENDLIST
前端可选的视频直播协议有两种
直播 vs 点播
点播需要一次性下载所有索引文件,直播则需要不断去请求索引文件( 不断更新中 ), 是不是直播,可以通过结束标记
#EXT-X-ENDLIST
来区分。HLS 原理
将视频流分片成一系列 HTTP 下载文件,HLS 比 RTMP 有较高的延迟。当媒体流正在播放时,客户端可以选择从许多不同的备用源中以不同的速率下载同样的资源,允许流媒体会话适应不同的数据速率。在开始一个流媒体会话时,客户端会下载一个包含元数据的
extended M3U (m3u8)playlist
文件,用于寻找可用的媒体流。二级索引文件格式
特点
协议细节
参考