HTTP FLV直播初探

2022-04-16 00:41:47 字數 2503 閱讀 3080

協議httpflv

rtmp

hlsdash

傳輸方式

http流

tcp流

ts檔案

mp4 3gp webm延時低

低高高資料分段

連續流連續流

切片檔案

切片檔案

不支援http flv則是將rtmp封裝在http協議之上的,可以更好的穿透防火牆等。

這兩個協議實際上傳輸資料是一樣的,資料都是flv檔案的tag。http_flv是乙個無限大的http流的檔案,相比rtmp就只能直播,而rtmp還可以推流和更多的操作。但是http有個好處,就是是以80http通訊的,穿透性強,而且rtmp是非開放協議。

這兩個協議是如今直播平台主選的直播方式,主要原因就是延時極低。

http flv直播demo:

flv.js問題:(暫時發現這幾個)

4. 手機端相容性差

1,2 問題解決方案:

嘗試設定 config.fixaudiotimestampgap = false

控制台將不會輸出大量警告資訊。

lflivekit 的音訊流時間戳問題,定期會有兩幀之間存在兩倍時間戳差,會導致嚴重音畫不同步。

github issue:

判斷flv.js在手機端是否支援點播和httpflv直播:

是否支援httpflv直播流:flvjs.getfeaturelist().mseliveflvplayback 

目前測試結果:

經過多天的測試,對數十位主播分別用flvjs的master分支、#136、#354進行10分鐘到2小時的測試,總結一下結論:

1. master分支、issue 136 都會出現不同程度主播音畫不同步的情況,master分支音畫不同步情況尤其嚴重。

也期待flvjs作者可以盡早確認此pr並合併到master,造福全人類!

直播協議HTTP FLV詳解

http flv則是將rtmp封裝在http協議之上的,可以更好的穿透防火牆等。這兩個協議實際上傳輸資料是一樣的,資料都是flv檔案的tag。http flv是乙個無限大的http流的檔案,相比http就只能直播,而rtmp還可以推流和更多的操作。但是http有個好處,就是是以80http通訊的,穿...

直播協議HTTP FLV標準解讀與技術實現

這裡首先要說一下,hls其實是乙個 文字協議 而並不是乙個流 協議。那麼,什麼樣的協議才能稱之為流 協議呢?延遲分析 理論上 除去網路延遲外 flv可以做到僅僅一 遲。相比rtmp的優點 可以在一定程度上避免防火牆的干擾 例如,有的機房只允許 80 埠通過 可以很好的相容http 302跳轉,做到靈...

HTTP FLV的兩種方式

目前,有兩種http flv的實現方式,一種是基於檔案的方式,一種是基於包的方式 兩種http flv的相同之處在於,都是http方式輸出,都是flv 格式 兩種http flv的不同之處在於 1 架構上,乙個 基於包的架構更偏實時,基於包,基於收到包,包。基於檔案的架構,邊寫檔案,邊output給...