HLS
Apple的動態碼率自適應技術
HLS (HTTP Live Streaming)是Apple的動態碼率自適應技術。主要用於PC和Apple終端的音視頻服務,包括一個m3u(8)的索引文件,TS媒體分片文件和key加密串文件。
目錄
常用的流媒體協議主要有 HTTP 漸進下載和基於 RTSP/RTP 的實時流媒體協議,這二種基本是完全不同的東西,目前比較方便又好用的是用 HTTP 漸進下載方法。在這個中 apple 公司的 HTTP Live Streaming 是這個方面的代表。它最初是蘋果公司針對iPhone、iPod、iTouch和iPad等移動設備而開發的流。現在見到在桌面也有很多應用了,HTML5 是直接支持這個。
但是HLS協議的小切片方式會生成大量的文件,存儲或處理這些文件會造成大量資源浪費。如果要實現數天的時移,索引量將會是個巨額數字,並明顯影響請求速度。因此,HLS協議對存儲I/O要求相當苛刻。對此,也有公司提出了非常好的解決方案。
新型點播伺服器系統,獨創了內存緩存數據實時切片技術,顛覆了這種傳統實現方法,從根本上解決了大量切片的碎片問題,使得單台伺服器的切片與打包能力不再是瓶頸
其基本原理如下:
不將TS切片文件存到磁碟,而是存在內存當中,這種技術使得伺服器的磁碟上面不再會有“數以噸計”的文件碎片,極大減少了磁碟的I/O次數,延長了伺服器磁碟的使用壽命,極大提高了伺服器運行的穩定性,同時,由於使用這種技術,使得終端請求數據時直接從伺服器的內存中獲取,極大提高了對終端數據請求的反應速度,優化了視頻觀看體驗。