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

背景需求

需求比視頻流協議更重要,你想要什麼,什麼可以滿足你的需求,這個很大程度上是需求在前,選擇使用什麼視頻流是比較靠後的。
目前Easy系列互聯網直播服務將全線支持HLS、RTMP、HTPFLV視頻流,因此本地篇博文將分別對三個協議的直播流進行分析,幫助有需要的你更好的結合自身選擇對應的視頻流來使用!

正文分析

一圖簡單看出差別
在這裏插入圖片描述

流媒體協議 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 端,需要使用第三方解碼器才能播放。

HTTPFLv

HttpFlv 就是 http+flv ,將音視頻數據封裝成FLV格式,然後通過 HTTP 協議傳輸給客戶端。理解HttpFlv協議,這就話就是關鍵

優缺點
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 切片較小,會造成海量小文件,對存儲和緩存都有一定的挑戰

結合EasyNVR

EasyNVR都支持RTMP、HLS、FLV的視頻流輸出,這個就可以滿足用戶的更多的自主選擇。

EasyNVR輸出FLV流

在這裏插入圖片描述

EasyNVR輸出RTMP流
在這裏插入圖片描述
EasyNVR輸出HLS流
在這裏插入圖片描述


關於EasyNVR

EasyNVR能夠通過簡單的網絡攝像機通道配置,將傳統監控行業裏面的高清網絡攝像機IP Camera、NVR等具有RTSP協議輸出的設備接入到EasyNVR,EasyNVR能夠將這些視頻源的音視頻數據進行拉取,轉換爲RTMP/HLS,進行全平臺終端H5直播(Web、Android、iOS),並且EasyNVR能夠將視頻源的直播數據對接到第三方CDN網絡,實現互聯網級別的直播分發;

詳細說明:http://www.easynvr.com

點擊鏈接加入羣【EasyNVR解決方案】:383501345

Copyright © EasyDarwin Team 2012-2018

EasyNVR公衆號

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章