標籤:

入門 | 直播協議簡述

入門 | 直播協議簡述

作者:圖鴨科技 微信公眾號:tucodec

隨著當下互聯網視頻化的迅速發展,各類網路直播產品如雨後春筍般成長起來,涵蓋了秀場直播、遊戲直播、教育直播、演唱會直播和監控直播等多個直播生態圈。這些生態圈成長的背後,是視頻直播相關技術的不斷發展,例如互聯網帶寬的增加、視頻壓縮標準的不斷完善、視頻雲技術的出現等。

直播過程中涉及到的模塊眾多,主要有採集、前處理、音視頻編解碼、流媒體協議、系統架構、CDN、播放控制、交互技術等。

此次圖鴨君主要給大家介紹直播協議模塊,希望大家讀完對該模塊有一個系統性的了解。

流媒體協議

直播常用到的流媒體協議有rtmp、http、hls、rtsp。

下面簡單說一下這幾種協議的優劣:

(直播協議對比)

看了以上這些協議的對比介紹,想必各位都注意到了一個問題,那就是「延遲」。所有協議中都提到了延遲,延遲最低的也有500ms。那麼為什麼會出現這樣的情況呢?接下來就給大家說明「延遲」的相關信息。

簡說延遲

在這裡簡單說一下rtmp和rtsp的延遲,我們先談rtmp的延遲。圈內有人整理了一張直播延遲(rtmp)的圖片,圖鴨君直接上個真相。

看完上圖你大概就能明白了,rtmp的延遲是和Gop掛鉤的。

那麼,為什麼rtsp延遲會比rtmp低呢?因為,它是精確控制的,可以跳出以Gop組為單位的控制。

rtsp延遲已經是上述四個協議里最低的了,那麼延遲還有降低的空間嗎?

如何降低延遲時間

圖鴨君經過多次測試,發現udp直接發裸流,可以將延遲控制在80ms到170ms的範圍。

既然udp直接發裸流延遲那麼低,為什麼不流行?

原因很簡單: udp是個不可靠傳輸,存在丟包、亂序的情況。而且直接裸流穩定性也差,兼容性更不用談,在沒有編碼器對接的情況下,這就是一個鋼絲上騎自行車的活,高難度動作,能幹這行的,必須得是藝高人膽大。

直播涉及到的技術模塊非常多,本文主要介紹了直播中用得較多的幾種協議。而對於流媒體傳輸,現在出現了越來越多的私有協議,這些私有協議通常延遲都比較低,如大家用的微信視頻就是使用的私有協議。大家體驗後會發現,私有協議的延遲遠遠低於rtsp的500ms。但通常這些私有協議只支持端而不支持web開發,這是因為一般協議都是用c/c++寫的socket通信。

總結

就直播發展而言,最近幾年直播的發展勢頭,用「迅猛」二字來形容絕不為過。自14年習近平主席提出「網路強國」戰略和李克強總理提出「互聯網+」的新思路新理念後,各大小直播平台如雨後春筍般湧現,甚至2016年被授予了一個特殊稱號——「網路直播元年」。2017年2月19日,央視新聞移動網正式上線,為廣大記者打造了移動直播系統——「正直播」。這些都標誌著大數據時代、新媒體時代已經到來,媒體行業將面臨新一輪的挑戰和轉型,這將是傳媒史上一次對新聞直播技術的革新,也將成為新聞直播樣態的一次革命性創舉。

附流媒體技術圖,僅供參考

(註:直播技術圖,來源於CSDN)


推薦閱讀:

超新星之夜背後,NOW直播內容突圍戰已打響
你嫌棄快手土,可快手卻沒有被馴服。
沖頂大會、芝士英雄:直播答題,開年第一風口
直播摘要
從0到1,半年「俘獲」4000萬印度用戶的Bigo創造了奇蹟

TAG:直播 |