RTMP
RTMP協(xié)議比較全能,既可以用來推送又可以用來直播,其核心理念是將大塊的視頻幀和音頻幀“剁碎”,然后以小數(shù)據(jù)包的形式在互聯(lián)網(wǎng)上進行傳輸;
FLV
FLV協(xié)議由Adobe公司主推,格式極其簡單,只是在大塊的視頻幀和音視頻頭部加入一些標(biāo)記頭信息,由于這種極致的簡潔,在延遲表現(xiàn)和大規(guī)模并發(fā)方面都很成熟。唯一的不足就是在手機瀏覽器上的支持非常有限,但是用作手機端APP直播協(xié)議卻異常合適。
HLS
蘋果推出的解決方案,將視頻分成5-10秒的視頻小分片,然后用m3u8索引表進行管理,由于客戶端下載到的視頻都是5-10秒的完整數(shù)據(jù),故視頻的流暢性很好,但也同樣引入了很大的延遲(HLS的一般延遲在10-30s左右)。相比于FLV, HLS在iPhone和大部分android手機瀏覽器上的支持非常給力,所以常用于QQ和微信朋友圈的URL分享;
I幀
即Intra-coded picture(幀內(nèi)編碼圖像幀),不參考其他圖像幀,只利用本幀的信息進行編碼
P幀
即Predictive-codedPicture(預(yù)測編碼圖像幀),利用之前的I幀或P幀,采用運動預(yù)測的方式進行幀間預(yù)測編碼
GOP
在視頻編碼序列中,GOP即Group of picture(圖像組),指兩個I幀之間的距離,Reference(參考周期)指兩個P幀之間的距離。一個I幀所占用的字節(jié)數(shù)大于一個P幀,一個P幀所占用的字節(jié)數(shù)大于一個B幀。
硬編碼vs軟編碼
軟編碼實現(xiàn)直接、簡單,參數(shù)調(diào)整方便,升級易,但CPU負載重,性能較硬編碼低,低碼率下質(zhì)量通常比硬編碼要好一點;硬編碼:性能高,低碼率下通常質(zhì)量低于軟編碼器;
FPS
每秒顯示/編碼/解碼/采集、處理的幀數(shù)(Frames per Second,簡稱:FPS),由于人類眼睛的特殊生理結(jié)構(gòu),如果所看畫面之幀率高于16的時候,就會認為是連貫的,此現(xiàn)象稱之為視覺暫留。