电竞比分网-中国电竞赛事及体育赛事平台

分享

在流媒體系統(tǒng)中應(yīng)用的HLS協(xié)議

 昵稱45821642 2017-08-09

什么是HLS協(xié)議

HTTP Live Streaming(縮寫是HLS)是一個(gè)由蘋果公司提出的基于HTTP的流媒體網(wǎng)絡(luò)傳輸協(xié)議。是蘋果公司QuickTime X和iPhone軟件系統(tǒng)的一部分。它的工作原理是把整個(gè)流分成一個(gè)個(gè)小的基于HTTP的文件來下載,每次只下載一些。當(dāng)媒體流正在播放時(shí),客戶端可以選擇從許多不同的備用源中以不同的速率下載同樣的資源,允許流媒體會話適應(yīng)不同的數(shù)據(jù)速率。在開始一個(gè)流媒體會話時(shí),客戶端會下載一個(gè)包含元數(shù)據(jù)的extended M3U (m3u8)playlist文件,用于尋找可用的媒體流。

HLS協(xié)議規(guī)定

l  視頻的封裝格式是TS。

l  視頻的編碼格式為H264,音頻編碼格式為MP3、AAC或者AC-3。

l  除了TS視頻文件本身,還定義了用來控制播放的m3u8文件(文本文件)。

HLS協(xié)議的優(yōu)勢(相比RTMP協(xié)議)

 

    這個(gè)協(xié)議的產(chǎn)生是為了解決RTMP協(xié)議存在的一些問題。 比如RTMP協(xié)議不使用標(biāo)準(zhǔn)的HTTP接口傳輸數(shù)據(jù),所以在一些特殊的網(wǎng)絡(luò)環(huán)境下可能被防火墻屏蔽掉。但是HLS由于使用的HTTP協(xié)議傳輸數(shù)據(jù),不會遇到被防火墻屏蔽的情況(該不會有防火墻連80接口都不放過吧)。

 

    另外于負(fù)載,RTMP是一種有狀態(tài)協(xié)議,很難對視頻服務(wù)器進(jìn)行平滑擴(kuò)展,因?yàn)樾枰獮槊恳粋€(gè)播放視頻流的客戶端維護(hù)狀態(tài)。而HLS基于無狀態(tài)協(xié)議(HTTP),客戶端只是按照順序使用下載存儲在服務(wù)器的普通TS文件,做負(fù)責(zé)均衡如同普通的HTTP文件服務(wù)器的負(fù)載均衡一樣簡單。

 

    另外HLS協(xié)議本身實(shí)現(xiàn)了碼率自適應(yīng),不同帶寬的設(shè)備可以自動切換到最適合自己碼率的視頻播放。其實(shí)HLS最大的優(yōu)勢就是蘋果。蘋果在自家的IOS設(shè)備上只提供對HLS的原生支持,并且放棄了flash。Android也原生支持了HLS。這樣一來flv,rtmp這些Adobe的視頻方案要想在移動設(shè)備上播放需要額外下點(diǎn)功夫。當(dāng)然flash對移動設(shè)備造成很大的性能壓力確實(shí)也是自身的問題。

 

HLS協(xié)議的劣勢

HLS也有一些無法跨越的坑,比如采用HLS協(xié)議直播的視頻延遲時(shí)間無法下到10秒以下,而RTMP協(xié)議的延遲最低可以到3、4秒左右。所以說對直播延遲比較敏感的服務(wù)請慎用HLS。

支持HLS協(xié)議的流媒體服務(wù)器系統(tǒng)(以800Li Media Server為例)


    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多