互聯網監控直播-LiveGBS分發出RTMP、HLS、FLV、RTSP視頻流說明介紹

背景需求

需求比視頻流協議更重要,你想要什麼,什麼能夠知足你的需求,這個很大程度上是需求在前,選擇使用什麼視頻流是比較靠後的。
目前Live系列互聯網直播服務將全線支持HLS、RTMP、HTTP-FLV、RTSP視頻流,所以本地篇博文將分別對三個協議的直播流進行分析,幫助有須要的你更好的結合自身選擇對應的視頻流來使用!好比LiveGBS就是一個安防行業經過GB28181協議接入各個廠家安防攝像頭、硬盤錄像機、視頻平臺等設備,轉成互聯網直播,同時輸出HLS、RTMP、HTTP-FLV、RTSP四種直播流,適合各類終端直接播放。web

正文分析

一圖簡單看出差異
瀏覽器

流媒體協議 RTMP, HTTP-FLV, HLS 簡單對比緩存

RTMP 協議爲流媒體而設計,在推流中用的比較多,同時大多 CDN 廠商支持RTMP 協議。服務器

HTTP-FLV 使用相似 RTMP流式的 HTTP 長鏈接,需由特定流媒體服務器分發的,兼顧二者的優勢。以及能夠複用現有 HTTP 分發資源的流式協議。它的實時性和 RTMP 相等,與 RTMP 相比又省去了部分協議交互時間,首屏時間更短,可拓展的功能也更多。網絡

HLS 做爲蘋果提出的直播協議,在 iOS 端佔據了不可撼動的地位,Android 端也同時提供相應的支持。負載均衡

具體分析性能

RTMP

RTMP,全稱 Real Time Messaging Protocol,即實時消息傳送協議。Adobe 公司爲 Flash 播放器和服務器之間音視頻數據傳輸開發的私有協議。工做在 TCP 之上的明文協議,默認使用端口 1935。協議中的基本數據單元成爲消息(Message),傳輸的過程當中消息會被拆分爲更小的消息塊(Chunk)單元。最後將分割後的消息塊經過 TCP 協議傳輸,接收端再反解接收的消息塊恢復成流媒體數據測試

優缺點
RTMP 主要有如下幾個優勢:RTMP 是專爲流媒體開發的協議,對底層的優化比其它協議更加優秀,同時它 Adobe Flash 支持好,基本上全部的編碼器(攝像頭之類)都支持 RTMP 輸出。如今 PC 市場巨大,PC 主要是 Windows,Windows 的瀏覽器基本上都支持 Flash。另外RTMP適合長時間播放,曾經有過測試,聯繫 100 萬秒,即 10 天多連續播放沒有出現問題。最後 RTMP 的延遲相對較低,通常延時在 1-3s 之間,通常的視頻會議,互動式直播,徹底是夠用的。優化

固然 RTMP 並無盡善盡美,它也有不足的地方。一方面是它是基於 TCP 傳輸,非公共端口,可能會被防火牆阻攔;另外一方面,也是比較坑的一方面是 RTMP 爲 Adobe 私有協議,不少設備沒法播放,特別是在 iOS 端,須要使用第三方解碼器才能播放。ui

HTTP-FLV

HTTP-FLV將音視頻數據封裝成FLV格式,而後經過 HTTP 協議傳輸給客戶端。理解HTTP-FLV協議,這就話就是關鍵

優缺點
HTTP-FLV 依靠 MIME 的特性,根據協議中的 Content-Type 來選擇相應的程序去處理相應的內容,使得流媒體能夠經過 HTTP 傳輸。相較於 RTMP 協議,HTTP-FLV 可以好的穿透防火牆,它是基於 HTTP/80 傳輸,有效避免被防火牆攔截。除此以外,它能夠經過 HTTP 302 跳轉靈活調度/負載均衡,支持使用 HTTPS 加密傳輸,也可以兼容支持 Android,iOS 的移動端。

說了這麼多優勢,也來順便說下 HTTP-FLV 的缺點,因爲它的傳輸特性,會讓流媒體資源緩存在本地客戶端,在保密性方面不夠好。由於網絡流量較大,它也不適合作拉流協議。

HLS

HLS就是「HTTP Live Streaming」的縮寫,它誕生自2009年,QuickTime和iPhone3GS黃金搭檔下的一個標準,一個意在顛覆流媒體產業的新協議。
它的工做原理簡單來講就是把一段視頻流,分紅一個個小的基於HTTP的文件來下載。當媒體流正在播放時,客戶端能夠根據當前網絡環境,方便地在不一樣的碼率流中作切換,以實現更好的觀影體驗。
HLS的出現是爲了解決蘋果原生環境中的流媒體播放,這個協議能夠方便地讓Mac和iPhone播放視頻流,不依賴Adobe,更不用去管什麼標準委員會。依賴本身,永遠是最大力量的保障。

優缺點
HLS 的優點:

Apple 的全系列產品支持:因爲 HLS 是蘋果提出的,因此在 Apple 的全系列產品包括 iPhone、 iPad、safari 都不須要安裝任何插件就能夠原生支持播放 HLS, 如今 Android 也加入了對 HLS 的支持。
穿透防火牆。基於 HTTP/80 傳輸,有效避免防火牆攔截
性能高。經過 HTTP 傳輸, 支持網絡分發,CDN 支持良好,且自帶多碼率自適應,Apple 在提出 HLS 時,就已經考慮了碼流自適應的問題。
HLS 的劣勢:

實時性差,延遲高。HLS 的延遲基本在 10s+ 以上
文件碎片。特性的雙刃劍,ts 切片較小,會形成海量小文件,對存儲和緩存都有必定的挑戰

RTSP

RTSP在體系結構上位於RTP和RTCP之上,它使用TCP或UDP完成數據傳輸。
優缺點
RTSP擁有和RTMP相仿的視頻實時性。遺憾的是目前RTSP不能夠在Web端直接播放,必須用插件才能夠實現web端播放。

結合LiveGBS

相關文章
相關標籤/搜索