了解流媒體協(xié)議及其工作方式
流媒體協(xié)議是用于在 Web 上傳遞多媒體的特定方法。換句話(huà)說(shuō),它是一組規則,用于規范數據傳輸方式,以及如何處理在此過(guò)程中可能發(fā)生的任何錯誤。讓我們澄清一些事情。首先,流媒體協(xié)議與編解碼器不同。后者是一種特定的技術(shù),可以使您的數據(例如,視頻文件)更小。簡(jiǎn)單地說(shuō),編解碼器會(huì )刪除視頻中不重要的信息以壓縮文件大小。
其次,有些人將流媒體協(xié)議與容器格式混淆,這基本上意味著(zhù)數據的存儲方式。例如,流式視頻文件最常見(jiàn)的三種包格式是 FLV、MP4 和 MPEG-TS。
在我們開(kāi)始描述最流行的流媒體協(xié)議之前,我們需要提到一個(gè)重要方面。有七個(gè)邏輯層,每個(gè)邏輯層都提供特定的通信功能。為了簡(jiǎn)化事情,流媒體協(xié)議在這些層內運行,只關(guān)注它們的功能。好吧,這不會(huì )變得更困難,所以請耐心等待。
TCP 與 UDP
特別值得您關(guān)注的一層是傳輸層。它負責將您的內容傳輸到最終平臺。它有兩種傳輸方式——通過(guò)傳輸控制協(xié)議 (TCP) 或用戶(hù)數據報協(xié)議 (UDP)。這兩者之間的主要區別在于 TCP 強制通信設備建立連接以傳輸數據。另一方面,UDP 忽略了這一步。在更實(shí)際的層面上,UDP 傳輸少量信息的速度相對快于 TCP。然而,這是有代價(jià)的。由于設備之間沒(méi)有多次握手和確認步驟,因此無(wú)法嚴格按順序傳輸數據。此外,接收方可能根本得不到一些碎片。這有時(shí)會(huì )導致質(zhì)量出現小問(wèn)題。
最常用的流媒體協(xié)議
常見(jiàn)的流媒體協(xié)議包括RTSP(實(shí)時(shí)流傳輸協(xié)議)、RTMP(實(shí)時(shí)消息傳輸協(xié)議)、HLS(HTTP Live Streaming)以及DASH(動(dòng)態(tài)自適應流傳輸)。這些協(xié)議使用不同的技術(shù)和方法來(lái)實(shí)現流媒體的傳輸和播放。我們當然可以挑出幾個(gè)最受歡迎的。RTMP(實(shí)時(shí)消息傳遞協(xié)議):TCP
RTMP由Macromedia開(kāi)發(fā),并于2005年被Adobe收購,仍然是最常用的協(xié)議。它保持持久、穩定的連接,并允許低延遲通信。RTMP 在 Flash Player 和服務(wù)器之間傳輸分割成小數據包的流數據,以確保將中斷和偽影降至最低。此外,由于遺留因素,大多數流媒體平臺和軟件都支持 RTMP。該協(xié)議的規范由Adobe正式發(fā)布供公眾使用。具有諷刺意味的是,該公司宣布將停止支持Flash Player。RTMP 協(xié)議的另一個(gè)缺點(diǎn)是由于帶寬低而可能中斷,直到您的流可能根本無(wú)法啟動(dòng)。除了缺點(diǎn)之外,由于傳輸視頻的安全性較低,一些嚴格的防火墻可能不允許 RTMP 連接。雖然,我們不得不說(shuō)這種情況很少發(fā)生。
除了缺點(diǎn)之外,標準流延遲約為 5 到 30 秒,但可以降低到兩到三秒。此外,該協(xié)議目前使用 H.264 視頻編解碼器和 AAC 音頻編解碼器,它們相當陳舊,無(wú)法提供最佳質(zhì)量。
- 視頻編解碼器:H.264
- 音頻編解碼器:AAC
- 延遲: 3 - 30 秒
缺點(diǎn): 編解碼器較舊,安全性較低,延遲相對較高
WebRTC(Web 實(shí)時(shí)通信協(xié)議):UDP 和 TCP
WebRTC 是一種開(kāi)源標準,用于幾乎所有現代瀏覽器(包括 Safari、Google Chrome、Firefox、Opera 等)都支持實(shí)時(shí)通信。WebRTC 支持高質(zhì)量的 VP8 和 VP9(除了舊的 H.264),以及 Opus 音頻編解碼器。在不久的將來(lái),該協(xié)議將獲得對全新AV1視頻編解碼器的支持。預計該協(xié)議將取代電話(huà)并成為通信服務(wù)的支柱。WebRTC 的最大優(yōu)勢之一是它將數百萬(wàn)個(gè)瀏覽器轉換為流媒體終端,而無(wú)需安裝任何額外的插件。此外,WebRTC 支持亞秒級延遲,這意味著(zhù)不再有延遲!最后,該協(xié)議使用自適應比特率技術(shù),使其能夠自動(dòng)調整視頻質(zhì)量并防止任何下降和中斷。
至于缺點(diǎn),WebRTC并不多。有些人會(huì )認為該協(xié)議仍在開(kāi)發(fā)中這一事實(shí)是一個(gè)缺點(diǎn)。其他人可能會(huì )在它使用的編解碼器中發(fā)現危險。怎么會(huì )這樣?簡(jiǎn)而言之,VP8 編解碼器是免版稅的,而 H.264 則不是。盡管大多數公司都支持VP8,但其他一些公司強烈反對這一決定,這可能會(huì )導致沖突。然而,值得一提的是,每個(gè)人都同意AV1是未來(lái)。
- 視頻編解碼器:VP8、VP9、H.264(H.625 + AV1 正在進(jìn)行中)
- 音頻編解碼器:Opus
- 延遲:小于一秒
缺點(diǎn):亞秒級延遲導致的不穩定性
FTL(Faster Than Light 協(xié)議):UDP
更新:FTL 由 Microsoft 旗下的流媒體平臺 Mixer 開(kāi)發(fā)。不幸的是,由于無(wú)法與競爭對手相比進(jìn)行擴展,Mixer 被關(guān)閉。但是,我們相信對這個(gè)協(xié)議的理解是有用的。因此,我們保留有關(guān)技術(shù)的信息。FTL的名字不言自明。FTL 是一種實(shí)時(shí)流媒體協(xié)議,這意味著(zhù)它支持亞秒級延遲。這使您可以與觀(guān)眾實(shí)時(shí)互動(dòng)和交流,幾乎沒(méi)有延遲。最流行的流媒體應用程序支持 FTL,包括 XSplit 和 OBS Studio。它還預先集成到 Windows 10 操作系統和 Xbox One 中。它使用 Opus 音頻編解碼器和 H.264 視頻編解碼器,以實(shí)現質(zhì)量、流暢播放和低延遲的良好組合。
使用 FTL 的缺點(diǎn)是您的流會(huì )稍微降低質(zhì)量。與 RTMP 的 10 Mbps 相比,Mixer 建議將比特率降低到 7 Mbps。FTL 的另一個(gè)缺點(diǎn)是缺乏穩定性。與它的祖先不同,FTL協(xié)議還沒(méi)有經(jīng)過(guò)很多錯誤修復,這意味著(zhù)它可能有點(diǎn)不可預測。盡管 FTL 是全新的,但它已經(jīng)完全集成到 Restream 生態(tài)系統中。到目前為止,只有 Mixer 和 Restream 支持 FTL 協(xié)議。
- 視頻編解碼器:H.264
- 音頻編解碼器:Opus
- 延遲:小于一秒
缺點(diǎn):視頻質(zhì)量較低,亞秒級延遲導致不穩定,支持較弱
SRT(安全可靠傳輸):UDP
SRT 是由 Haivision 和 Wowza 開(kāi)發(fā)的開(kāi)源視頻流媒體協(xié)議。在不久的將來(lái),它被廣泛認為是RTMP的替代品。擁有相同的優(yōu)勢,SRT正在邁出下一步,使具有亞秒級延遲的穩定直播流的夢(mèng)想成為現實(shí)。它允許您通過(guò)次優(yōu)網(wǎng)絡(luò )直播您的內容。但是,一個(gè)很大的缺點(diǎn)是播放選項不可用。開(kāi)發(fā)人員表示,SRT 可以保護您的實(shí)時(shí)視頻免受抖動(dòng)、帶寬波動(dòng)和數據包丟失的影響。此外,SRT 在亞秒級延遲方面類(lèi)似于 FTL 和 WebRTC,可實(shí)現近乎實(shí)時(shí)的通信。此外,還指出該協(xié)議與編解碼器無(wú)關(guān),這意味著(zhù)它支持任何現代視頻和音頻編解碼器。不幸的是,考慮到它仍然是一項新興技術(shù),SRT并沒(méi)有得到廣泛支持。
- 視頻編解碼器:與編解碼器無(wú)關(guān)
- 音頻編解碼器:與編解碼器無(wú)關(guān)
- 延遲:小于一秒
缺點(diǎn):平臺支持弱,無(wú)法播放
視頻流媒體協(xié)議比較
讓我們總結一切!
正如你現在所看到的,流媒體協(xié)議很難理解?;旧?,流媒體協(xié)議是一組規則,用于確定數據如何通過(guò)互聯(lián)網(wǎng)傳輸。我們概述了四種最流行的直播協(xié)議,即 RTMP、WebRTC、FTL 和 SRT。每個(gè)都有自己的優(yōu)點(diǎn)和缺點(diǎn),這意味著(zhù)您可以根據需要使用任何一種。最后,我們想做一些預測。很明顯,舊的RTMP遲早會(huì )消亡。SRT將與FTL爭奪冠軍戒指。與此同時(shí),WebRTC將緩慢但肯定地成長(cháng)并轉變?yōu)樽罱K的流媒體協(xié)議,并最終主導市場(chǎng)。這只是一個(gè)禿頭的預測,所以不要相信我們的話(huà)。也許我們完全錯了,SRT總有一天會(huì )接受這一切!流媒體協(xié)議的使用對于各類(lèi)在線(xiàn)音視頻平臺、直播平臺和視頻會(huì )議等應用至關(guān)重要。通過(guò)流媒體協(xié)議,用戶(hù)可以流暢地觀(guān)看直播內容、在線(xiàn)觀(guān)看電影和電視節目,以及與他人進(jìn)行實(shí)時(shí)視頻通話(huà)。