標籤:prot 標籤 優勢 hds http 設計 ash 下載 使用
近日一直被直播延時問題所困惑,為此特整理一些關於常用流媒體的協議資訊,希望能對自己解決直播延時有所協助。
1.RTMP(Real Time Messaging Protocol)
Adobe推出的即時訊息傳輸協議。該協議基於TCP,是一種設計用來進行即時資料通訊的網路通訊協定,主要用來在Flash/AIR平台和支援RTMP協議的流媒體/互動伺服器之間進行音視頻和資料通訊,預設連接埠1935。一般傳輸的是flv,f4v格式流
2.RTSP/RTP/RTCP協議族(Real-time Streaming Protocol)
即時資料流傳輸協議,由RealNetworks開發。RTSP在體繫結構上位於RTP(即時傳輸協議)和RTCP(RTP控制協議)之上,它使用TCP或UDP完成資料轉送。RTSP協議族與HTTP相比,優勢在於可以控制到視訊框架,因此可以承載即時性很高的應用。預設連接埠554。一般傳輸的是ts,mp4格式的流
3.HLS(Http live streaming)
×××出的流媒體協議。採用m3u8作為索引檔案,視頻為MPEG2-TS格式的片段檔案。如果為直播視頻流,則採取更新m3u8檔案,達到ApsaraVideo for Live的目的。因為最終視頻是片段檔案,存在列表視頻長度的延遲。因此只可用於對即時性要求沒有那麼高的准即時視頻流。檔案儲存體格式為ts + m3u8
4.HDS(HTTP dynamic streaming)
Adobe推出的流媒體協議,這種方式本質和HLS的策略是類似的,就是通過索引檔案+視頻片段的方式。但是顯然採用的索引格式和視頻片段格式都不一樣的。檔案儲存體格式為flv/f4v/mp4 + f4m(類似m3u8)
5.Smooth Streaming
微軟也推出了Microsoft Smooth Streaming,也即是mss的視頻播出方式,採用的視頻格式是分段mp4格式。檔案儲存體格式為ismv + isml(類似m3u8)
6.HTTP視頻協議
最初的HTTP視頻協議,沒有任何特別之處,就是通用的HTTP檔案漸進式下載。本質就是下載視頻檔案,而利用視頻檔案本身的特點,就是存在頭部資訊,和部分視訊框架資料,就完全可以解碼播放了。顯然這種方式需要將視頻檔案的頭部資訊放在檔案的前面。
7.有關HTML5
同時HTML制定廠商也不寂寞,推出HTML5這種方式,這種方式本質上,和前面的HTTP視頻協議沒有任何區別。但是播放器端,不再依賴於特定的外掛程式如flash或者其他播放軟體,而是可以支援瀏覽器的直接視頻播放。採用的是html中嵌入video標籤,同時直接指明視頻的url。不過,不同的瀏覽器,對於音視頻的格式支援不完全相同。
#幕後花絮:期間諮詢過老東家的研發同時,老大哥說“我司是從直播源辣的專線,不存在延時這麼一說啊”“我們監控直播買的探針服務啊” 哈哈……好吧好吧,請原諒我忘了哈哈哈……
常用的流媒體協議及其應用情境等資訊總結