亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        視頻云直播中的關(guān)鍵幀技術(shù)探秘

        2016-11-26 03:11:56
        網(wǎng)絡(luò)安全和信息化 2016年9期
        關(guān)鍵詞:設(shè)置

        迅達云SpeedyCloud工程副總裁,2010年始涉足云計算行業(yè),至今積累了大量架構(gòu)、研發(fā)、運維、運營、管理等經(jīng)驗,曾就職于Joyent、藍(lán)汛、Yottaa等公司。2013年加入SpeedyCloud迅達云,現(xiàn)在負(fù)責(zé)技術(shù)的總體把控、技術(shù)可行性調(diào)研等工作。

        關(guān)鍵幀的痛點

        在視頻領(lǐng)域,電影、電視、數(shù)字視頻等可視為隨時間連續(xù)變換的許多張畫面,而幀則指這些畫面當(dāng)中的每一張。不過如果按照如此的方式存儲視頻的話,文件勢必會變得很大,所以需要專門的算法對視頻文件進行編碼。一旦視頻進行編碼之后,得到的文件可以看做是連續(xù)的一組幀的集合,而這一組幀中的每一個都是有自己的類型的。幀的類型分為以下3種:

        *Inter Frame(I幀)

        *P-Frame(P幀)

        *B-Frame(B幀)

        對于B幀和P幀來說需找到對應(yīng)的一個或者多個參考幀才能解碼出來(如圖1)。

        對于非I幀來說想要進行解碼就需要多個參考幀進行計算,由此引出了Groupof Picture(以下簡稱GoP)的概念。

        對于P幀和B幀來說,他們所包含的內(nèi)容可以理解為針對其參考幀的一個patch,也就是一個變化量。

        GoP性能調(diào)優(yōu)分析

        GoP顧名思義就是有一組幀組成的一個序列。Wikipedia上給出的一個圖簡單的解釋了GoP是怎么回事(如圖 2)。

        GoP由I幀開始,后面跟隨者一組B幀和P幀,直到下一個I幀之前的幀為一個GoP。了解了GoP之后,就會發(fā)現(xiàn)播放器只有在拿到某個GoP中的I幀之后才能播放視頻。

        圖1 B幀和P幀對應(yīng)多個參考幀

        GoP到底應(yīng)該設(shè)置多大?那么GoP的大小到底有什么影響呢?

        GoP設(shè)置較大時:

        好處:由于B幀和P幀的字節(jié)大小會比I幀小很多,所以GoP越長,所包含的B幀和P幀越多,相應(yīng)的壓縮比也會更高,在同樣的碼率下,視頻會更清晰一些。

        壞處:對于視頻直播來說,播放器連接到服務(wù)器的時間是不固定的,當(dāng)播放器在GoP中間連接服務(wù)器,并獲取了中間的B幀和P幀,這時播放器是無法對這些幀進行解碼的,需要進行丟棄。所以會導(dǎo)致客戶端的首屏播放時間變長。

        GoP設(shè)置較小時:

        好處:由于GoP設(shè)置小可以降低I幀間隔時間,對于直播來說可以實現(xiàn)秒開的功能。

        壞處:由于GoP時間比較短,會導(dǎo)致I幀的比例增高,壓縮比降低。同樣碼率情況下視頻的質(zhì)量會有所下降。

        為什么HLS視頻加載會慢?

        HLS格式的視頻分為兩個部分。首先,HLS會根據(jù)指定的切片時間和實際的GoP大小對視頻進行切割,并生成.ts文件。其次,HLS會生成一個.m3u8文件來保存這些ts文件的索引。

        對于.ts文件的切割來講,并不是告訴直播服務(wù)器指定1秒切一個.ts文件他就能保證1秒切一個.ts文件的。.ts文件的切割還是要根據(jù)直播視頻的實際GoP大小來進行切割的。之前已經(jīng)講過,任何一個視頻流在播放端需要能獲取到完整的GoP才能播放,所以一個.ts文件所實際包含的時間是GoP的整數(shù)倍。

        例如:當(dāng)視頻的GoP設(shè)置為1秒,.ts切片時間為2秒時,實際的.ts文件切片所包含的視頻為2秒。當(dāng)視頻的GoP設(shè)置為5秒,.ts切片時間為2妙時,實際的.ts文件切片所包含的視頻為5秒。

        圖 2 GoP示意圖

        如果視頻流的GoP大小設(shè)置不合適的話,那么HLS的切片時間就會變長,同時也會增加HLS的延遲。這個特性對于HLS直播來講簡直就是延遲殺手。

        如果是HLS點播的話,流的GoP設(shè)置過大也會影響點播視頻的加載時間。一般的一個720P的視頻,如果切片時間為2秒的話,單個.ts文件也就是在百K字節(jié)上下。但如果源視頻的GoP很大,會導(dǎo)致第一個.ts文件所包含的視頻時常變長(比如10秒),同時導(dǎo)致.ts文件的大小膨脹到接近1M字節(jié)上下。

        為什么RTMP直播首屏渲染速度很慢?

        RTMP協(xié)議本身也會抽象出一個Packet的概念來封裝H264編碼中的幀,也就是一個Packet會包含1到多個幀,播放器以Packet為單位來進行解碼。那么RTMP的問題在于客戶端連接的時間點是否合適。

        例如一個RTMP直播流的GoP設(shè)置為2秒,如果客戶端接入時間剛好是第4秒,那么客戶端會獲取一個包含I幀的Packet,由于I幀是自描述的,所以客戶端可以直接解碼出該幀的畫面并顯示出來。但是當(dāng)客戶端的接入之間為第5秒,那么他會獲得一個包含B幀或者P幀的Packet,由于客戶端拿到的數(shù)據(jù)是一個不完整的GoP,所以客戶端只好拋棄當(dāng)前獲取的Packet中視頻的數(shù)據(jù),而且只有當(dāng)獲取到包含下一個GoP的I幀的Packet時才能解碼出圖像。因此客戶端會等待1秒才能播放出畫面。

        由此我們可以得出一個結(jié)論:GoP的大小會影響RTMP播放端的首幀加載時間。

        為了優(yōu)化首幀加載時間,我們可以在流媒體服務(wù)器端增加一個緩存,把上一個GoP緩存在內(nèi)存中。如果客戶端接入的話,我們首先放出來的是上一個GoP。這樣客戶端接到的數(shù)據(jù)永遠(yuǎn)是一I幀開頭的數(shù)據(jù)。

        結(jié)論

        在視頻直播和點播盛行的年代,對于GoP大小的取舍還是需要看具體應(yīng)用場景。對于直播來講,對延遲要求敏感的應(yīng)用來說,1~2秒的GoP大小還是比較合適的,至于GoP緩存來講,還是不用為好。如果是對延遲要求不敏感,對首屏播放時間很敏感的應(yīng)用,GoP還是1~2秒最為合適,GoP緩存應(yīng)該是必備的。另外直播使用HLS的話,延遲是絕對PK不過RTMP的。

        對于點播的應(yīng)用來說,視頻加載速度是個硬指標(biāo),如果不是HLS格式的話,GoP大小適當(dāng)選大一點可以降低視頻文件大小,提高視頻打開速度。

        HLS格式的話,還是推薦在2秒左右,否則很影響視頻打開速度的。

        其實視頻直播技術(shù)的挑戰(zhàn)很多,這次分享的只是其中一小部分,也是迅達云SpeedyCloud研發(fā)團隊的經(jīng)驗總結(jié),希望能夠和大家多交流,一起為技術(shù)社區(qū)發(fā)展做些有益的事情。

        猜你喜歡
        設(shè)置
        中隊崗位該如何設(shè)置
        少先隊活動(2021年4期)2021-07-23 01:46:22
        船舶防火結(jié)構(gòu)及設(shè)置的缺陷與整改
        水上消防(2020年5期)2020-12-14 07:16:18
        中外醫(yī)學(xué)專業(yè)與??圃O(shè)置對比分析及啟示
        特殊場景下列控等級轉(zhuǎn)換的設(shè)置方案
        7招教你手動設(shè)置參數(shù)
        動車段(所)股道有效長設(shè)置研究
        我國中小學(xué)將設(shè)置人工智能相關(guān)課程
        玩具世界(2017年9期)2017-11-24 05:17:29
        吃紙的妖怪
        本刊欄目設(shè)置說明
        中俄臨床醫(yī)學(xué)專業(yè)課程設(shè)置的比較與思考
        性xxxx18免费观看视频| 久久国产女同一区二区| 蜜桃高清视频在线看免费1| 国内精品久久久久影院优| 无遮挡边摸边吃奶边做视频免费| 国产日产精品久久久久久| 久久99精品免费国产| 91久久综合精品久久久综合| 国产精品v片在线观看不卡| 猫咪www免费人成网最新网站| 开心激情站开心激情网六月婷婷| 国产精品老熟女乱一区二区| 24小时日本在线视频资源| 内射交换多p国产| 中文字幕无码免费久久| 日本人妻精品有码字幕| 国产成人喷潮在线观看| 久热香蕉视频| 国产精品麻豆成人av| 国产亚洲成人精品久久| 久久精品国产久精国产| 国产白丝网站精品污在线入口| 午夜一区二区在线视频| 亚洲中文久久精品字幕| 国语自产偷拍精品视频偷| 亚洲国产精品线观看不卡| 青青草手机在线免费视频| 成人试看120秒体验区| 亚洲首页一区任你躁xxxxx| 中文字幕日本人妻一区| 亚洲精品av一区二区| 欧美另类高清zo欧美| 狠狠干视频网站| 日本高清视频一区二区| 欧美大屁股xxxx高跟欧美黑人 | 国产在线观看入口| 一本色道亚州综合久久精品| 久草青青91在线播放| 午夜不卡av免费| 国产福利小视频91| 亚洲一二三区免费视频|