標籤:
轉載自:http://www.cuplayer.com/player/PlayerCode/Wowza/2015/0204/1774.html
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次數,延長了伺服器磁碟的使用壽命,極大提高了伺服器啟動並執行穩定性。同時,由於使用這種技術,使得終端請求資料時直接從伺服器的記憶體中擷取,極大提高了對終端資料請求的反應速度,最佳化了視頻觀看體驗。
RTSP協議,這應該是即時性最好的了,如果要想即時性要求很高,比如0.5s以內,這個是不錯的選擇。前陣子模仿spydroid寫了個建議的rtsp 伺服器,其實就是options,describe,setup,play,pause,teardown這幾步了,這個協議用的最廣泛,網上介紹也比較 多。要想真正深入瞭解rtsp協議,c++語言功底好的可以查看live555 。
RTMP協議,自己最近研究的,如果有興趣,可以看看我的其他文章。
相關連結:http://www.52player.com/VideoPlayer/2014/121751.html
純HLS(m3u8)跨平台技術(HLSPlayer,m3u8Player跨平台多終端)
1. 這是一款支援m3u8地址在PC電腦端和移動端(安卓Android,蘋果IOS等)播放視頻的播放器。
2. 注意:本執行個體僅支援hls(m3u8)地址,不支援flv,mp4,mov,f4v,3gp格式,這點請特別注意!
3. 本執行個體做了跨平台的適配, 支援PC終端,Android安卓終端,iOS蘋果終端,WP終端的正常播放。
* 提示1:本執行個體請在IIS/Apache等網站環境下測試;
* 提示2:本執行個體僅支援hls(m3u8)/不支援flv,mp4,f4v;
* 提示3:本執行個體要求使用者自身有實現HLS技術,即輸出了HLS(m3u8)地址,比如用wowza流媒體軟體輸出;
流媒體協議RTMP,RTSP與HLS有什麼不同