網際網路上的兩種主要的分發方式:hls和rtmp,什麼時候用誰,完全決定於應用場景。
還有其他的分發方式,這些分發方式不屬於網際網路常見和通用的方式,不予以比較:
p2p:譬如rtmfp或者各家自己的協議。這類應用的特點是節省頻寬。目前pc/flash上的rtmfp比較成熟,android上的p2p屬於起步群雄紛爭標準不一,ios上p2p應該沒有聽說過。
rtsp:這種不是網際網路上的主要應用,在其他領域譬如安防等有廣泛應用。
另外,http的也分為幾種:
hds:adobe自己的hls,一坨屎。
dash:各家提出的hls,目前還沒有廣泛應用。
對比以下網際網路上用的流**分發方式:
rtmp:直播應用,對實時性有一定要求,以pc為主。
rtmp本質上是流協議,主要的優勢是:
rtmp的劣勢是:
http本質上還是檔案分發,主要的優勢是:
沒有碎片:http比hls沒有碎片,http分發大檔案會比小檔案分發方便很多。特別是儲存,小檔案的效能超低,是個硬傷。
穿牆:網際網路不可能不開放http協議,否則就不叫網際網路。所以任何埠封掉,也不會導致http流看不了。(不過rtmp也能穿牆,用rtmpt協議)。
http的劣勢是:
hls的主要優勢是:
hls的主要劣勢是:
參考http和rtmp
自動拉取rtmp生成hls的程式實現
ffmpeg i rtmp vcodec copy acodec copy vbsf h264 mp4toannexb f hls hls flags delete segments segment list size 10 hls list size 5 playlist.m3u8ffmpeg 可...
HLS科普1 HLS和M3U8簡介
1.m3u8檔案概念2.m3u8檔案舉例 例如使用雲圖tv點播直播節目時,傳送請求 返回m3u8檔案,檔案內容如下 extm3u ext x media sequence 140651513 ext x targetduration 10 extinf 8,extinf 9,extinf 11,ex...
nginx 和 ffmpeg搭建HLS環境
環境 ubuntu 14 需要安裝 nginx和ffmpeg 直接安裝apt不行,需要新增源 add apt repository ppa kirillshkrogalev ffmpeg next apt get update apt get install ffmpeg 因為目前沒涉及開發,未嘗試...