1.推流、直播和點播分別是什么?
-
推流
主播將本地視頻源和音頻元推送到視頻云服務器上,在有些場景中也被稱為"RTMP發(fā)布"。
-
直播
直播的視頻源是實時生成的,有人推流直播才有意義。所有,一旦直播停播,直播URL也就失效了,而且由于是實時直播的,所有播放器在播直播視頻的時候是沒有進度條的。
-
點播
點播的視頻是一個云端的文件,文件只要沒有被提供方刪除,就隨時可以播放,(類似優(yōu)酷,愛奇藝),而且由于整個視頻都在服務器上,所以播放是有進度條的。
2.常見的直播協(xié)議有那些?
目前常見的直播協(xié)議有三種: RTMP 、FLV 、HLS
-
RTMP
RTMP 協(xié)議比較全能,既可以用來推送又可以用來直播,其核心理念是將大塊的視頻幀和音頻幀”剁碎“,然后以小數(shù)據(jù)包的形式在互聯(lián)網(wǎng)上進行傳輸,而且支持加密,一次隱私性相對比較理想,單拆包組報的過程比較復雜,所以在還想并發(fā)時也容易出現(xiàn)一些不可預期的穩(wěn)定性問題。
-
FLV
FLV協(xié)議由Adobe公司推出,格式極其簡單,只是在大塊的視頻幀和音頻幀投幣膠乳一些標記頭信息,由于這種機制的簡介,在延遲表現(xiàn)和大規(guī)模并發(fā)方面都很成熟。唯一的不足就是在手機瀏覽器上的支持非常有限,但是用作手機端APP直播協(xié)議卻異常合適。
-
HLS
HLS協(xié)議是蘋果推出的解決方案,將視頻分成5-10秒的視頻小分片,然后用m3u8索引表進行管理,由于客戶端下載到的視頻都是5-10秒的完整數(shù)據(jù),所以視頻的流暢并很好,但是同樣引入了很大的延遲(HLS 的一般延遲在10-30s)。
直播協(xié)議 | 優(yōu)點 | 缺點 | 播放延遲 |
---|---|---|---|
FLV | 成熟度高,高并發(fā)無壓力 | 需要集成SDK才能播放 | 2s-3s |
RTMP | 優(yōu)質(zhì)線路下理論延遲最低 | 高并發(fā)情況下表現(xiàn)不佳 | 1s-3s |
HLS(m3u8) | 手機瀏覽器支持度高 | 延遲非常高 | 10s-30s |
常見的點播協(xié)議有哪些?
目前常見的點播協(xié)議有三種:MP4、HLS 和 FLV。
-
MP4
非常經(jīng)典的文件格式,在移動端和PC瀏覽器上的支持度都很好。但是MP4的視頻文件格式比較復雜,所以處理成本高,而且由于索引表復雜度高,導致市場稍大,的MP4文件在線播放是加載速度會很慢。
-
HLS
蘋果公司力推的標準,在移動端的瀏覽器上的支持度較好,但IE的支持情況下依賴FLASH的二次開發(fā)工程。其精簡的m3u8的索引結(jié)構(gòu)可以規(guī)避MP4的索引慢問題,如果用于點播,非常不錯的選擇。
-
FLV
Adobe公司所推的標準,目前直播最常用的封裝格式,在PC端游FLASH的強力支持,但是在移動端只有app 實現(xiàn)播放器才有可能支持,大部分手機端瀏覽器不支持。目前騰訊云的直播錄制,采用的就是FLV視頻格式。
點播協(xié)議 | 優(yōu)點 | 缺點 |
---|---|---|
FLV | 格式簡單問題少,適合直播轉(zhuǎn)錄制場景 | 手機瀏覽器支持差,需集成SDK才能播放 |
MP4 | 手機瀏覽器支持度高 | 格式過于復雜,容錯性很差,對播放器要求高 |
HLS(m3u8) | 手機瀏覽器支持度高 | 大量小分片的文件組織形式,錯誤率和維護成本高于單一文件 |