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

        ?

        基于多核處理器的SVC高清實(shí)時(shí)編碼

        2013-07-20 02:50:44黃亮
        關(guān)鍵詞:宏塊層間殘差

        黃亮

        浙江大學(xué) 數(shù)字技術(shù)及儀器研究所,杭州 310027

        基于多核處理器的SVC高清實(shí)時(shí)編碼

        黃亮

        浙江大學(xué) 數(shù)字技術(shù)及儀器研究所,杭州 310027

        1 引言

        隨著視頻應(yīng)用的發(fā)展,高壓縮率的H.264/AVC視頻編碼標(biāo)準(zhǔn)取得了非常廣泛的應(yīng)用[1-2]。針對(duì)不同處理器能力的計(jì)算平臺(tái)、顯示設(shè)備,不同視頻質(zhì)量需求的終端用戶,需要不同特性的視頻碼流的問題[3],JVC(Joint Video Coding)增加了H.264/AVC視頻標(biāo)準(zhǔn)附錄[4],命名為SVC。SVC[5](可伸縮視頻編碼)具有時(shí)域、空域、質(zhì)量3個(gè)層次上的分級(jí)特性,比H.264/AVC具有更好的網(wǎng)絡(luò)環(huán)境及終端適應(yīng)性,可廣泛用于視頻會(huì)議、視頻網(wǎng)站無縫切換服務(wù)等。

        雖然SVC的多層結(jié)構(gòu)能很好地解決如上所述問題,但是伴隨層數(shù)的增加,編碼器的復(fù)雜度也大幅增加。文獻(xiàn)[6]以x264為基礎(chǔ),僅僅實(shí)現(xiàn)了時(shí)域可伸縮的編碼方案,也只能支持最大分辨率QVGA的實(shí)時(shí)編碼,在高清視頻方面,SVC的實(shí)時(shí)應(yīng)用方案較少。多核技術(shù)的飛速發(fā)展,為高復(fù)雜度的SVC視頻編碼提供了強(qiáng)有力的平臺(tái)支撐。TileraGx36處理器集成了36個(gè)核心,每個(gè)核都是一個(gè)通用處理器,可獨(dú)立搭載一個(gè)Linux操作系統(tǒng),其64位的CPU架構(gòu)及SIMD處理指令對(duì)高運(yùn)算復(fù)雜度的多媒體應(yīng)用是極大的支持,并且該平臺(tái)提供多核處理的硬件同步,編程性較好。

        目前,SVC相關(guān)的實(shí)時(shí)并行編碼方案較少,工程上主要集中在小分辨率及FPGA上的實(shí)現(xiàn)。文獻(xiàn)[7]從減少層間采樣的內(nèi)存帶寬方面對(duì)SVC進(jìn)行優(yōu)化;文獻(xiàn)[8]對(duì)SVC在CIF分辨率下3個(gè)層間預(yù)測(cè)工具進(jìn)行了全面的性能評(píng)估;文獻(xiàn)[9-10]從并行濾波的角度提高SVC算法運(yùn)算速度;文獻(xiàn)[11]實(shí)現(xiàn)了Intel處理器上的并行編碼,但僅限于質(zhì)量和時(shí)間的可伸縮性。本文在分析SVC視頻編碼算法的基礎(chǔ)上,結(jié)合JSVM9.18模型,以x264為基礎(chǔ)添加SVC的相關(guān)功能,充分利用Tilera多核處理器的平臺(tái)特性,對(duì)SVC核心模塊進(jìn)行了SIMD匯編優(yōu)化,指令cache優(yōu)化,內(nèi)存優(yōu)化等,并結(jié)合SVC算法及平臺(tái)的靈活性,提出了一種多層次的并行編碼方式,包括時(shí)間層對(duì)齊的空間層級(jí)并行編碼,動(dòng)態(tài)Slice大小編碼,多核并行濾波,動(dòng)態(tài)核數(shù)分配編碼。

        圖1 SVC編碼結(jié)構(gòu)圖

        2 SVC算法結(jié)構(gòu)

        SVC編碼算法具有時(shí)域、空域、質(zhì)量3個(gè)層次上的可伸縮性質(zhì)??沼蚩缮炜s(Spatial Scalability,D層)指將原始圖像通過下采樣生成兩幅或多幅空間分辨率不同的圖像,然后將各個(gè)圖像壓縮成一個(gè)空間分辨率較低的基本層和數(shù)個(gè)空間分辨率較高的增強(qiáng)層。在相同分辨率下,可以包含多種不同質(zhì)量的碼流即質(zhì)量可伸縮(Quality scalability,Q層),它通過選用不同的量化等級(jí)或者將編碼后的殘差系數(shù)分配到不同的片中(MGS Vector),使碼流中能包括不同質(zhì)量等級(jí)的碼流。時(shí)域可伸縮(Temporal Scalability,T層)指將不同幀率的圖像壓縮成一個(gè)幀率最低的基本層和多個(gè)幀率較高的增強(qiáng)層,可通過丟棄碼流中的某些幀達(dá)到改變幀率的目的。圖1所示為SVC空域可伸縮編碼框架。

        在基本的H264混合編碼結(jié)構(gòu)之上,為了充分消除層間冗余信息,SVC提供三種層間預(yù)測(cè)方式:層間幀內(nèi)預(yù)測(cè);層間運(yùn)動(dòng)預(yù)測(cè);層間殘差預(yù)測(cè)。當(dāng)基本層參考宏塊采用幀內(nèi)預(yù)測(cè)編碼時(shí),增強(qiáng)層對(duì)應(yīng)宏塊可采用層間幀內(nèi)預(yù)測(cè),以基本層宏塊的重建數(shù)據(jù)作為增強(qiáng)層當(dāng)前宏塊的預(yù)測(cè)數(shù)據(jù)。采用層間運(yùn)動(dòng)預(yù)測(cè)方式,可利用基本層參考宏塊的分割形式、參考索引、運(yùn)動(dòng)矢量來預(yù)測(cè)增強(qiáng)層的宏塊運(yùn)動(dòng)信息。層間殘差預(yù)測(cè)方式利用了層間紋理及運(yùn)動(dòng)信息高度相關(guān)的特點(diǎn),增強(qiáng)層可利用基本層重建殘差數(shù)據(jù)在DCT之前減去基本層重建殘差,并允許在頻域進(jìn)一步減小殘差。三種層間預(yù)測(cè)方式在分辨率不同的層之間,均需要進(jìn)行必要的上采樣操作。

        本設(shè)計(jì)采用4層時(shí)間層,2層空間層,2層質(zhì)量層的結(jié)構(gòu),可提供16種不同的碼率。D0層為640×352,D1層為1 280×720,Q0層QP為34,Q1層QP為28。為減小編碼延遲,采取零延遲的分級(jí)P幀[12]的時(shí)間分層方式,結(jié)構(gòu)如圖2所示。

        圖2 分級(jí)P幀時(shí)間分層結(jié)構(gòu)圖

        3 多核并行編碼算法

        3.1 時(shí)間層對(duì)齊的空間層級(jí)并行

        在本文的SVC算法結(jié)構(gòu)中,由于D1Q0層(1 280×720分辨率的質(zhì)量基本層)需要對(duì)D0Q1(640×352分辨率的質(zhì)量增強(qiáng)層)進(jìn)行層間上采樣的工作,且模式選擇上需要綜合考慮本層運(yùn)動(dòng)搜索和層間預(yù)測(cè)的結(jié)果,運(yùn)算量非常大,使其成為整個(gè)并行算法的瓶頸。按照本文的算法,Q1層的模式選擇部分直接取自Q0,運(yùn)算量較小,因此采用基于空間層的層間并行算法,即D0Q0+D0Q1與D1Q0+D1Q1并行編碼,以達(dá)到取長(zhǎng)補(bǔ)短的效果。

        由于同一時(shí)間點(diǎn)上的D1層在空間上直接依賴D0層,D0和D1的并行化可通過錯(cuò)幀方式實(shí)現(xiàn),通常的做法是D0層的第1幀首先編碼,隨后D0的第2幀與D1層的第1幀并行編碼,以此類推??紤]到SVC的時(shí)間可伸縮結(jié)構(gòu),各個(gè)時(shí)間層的參考幀與編碼幀的時(shí)間相關(guān)性各不相同,導(dǎo)致編碼效率也不盡相同,總體來說,編碼效率上滿足T3>T2>T1>T0,加之T3層的幀不作為參考幀,并不需要去方塊濾波,這種差異更加明顯。但若采用GOP級(jí)的并行[13]方案,勢(shì)必增加延時(shí),不利于實(shí)時(shí)應(yīng)用。綜合考慮,為了減小兩空間層中不同時(shí)間層編碼性能不均衡性,如圖3所示,采取在T3時(shí)間層上對(duì)齊的方式進(jìn)行并行編碼,有效地均衡兩個(gè)空間層編碼時(shí)間,獲得了較高的并行效率。

        圖3 時(shí)間層對(duì)齊的空間層級(jí)并行方案

        圖3中的數(shù)字代表幀序號(hào),啟動(dòng)階段D0層獨(dú)自編碼兩幀,流水線階段D0層的第3幀與D1層的第1幀同時(shí)編碼,以此類推,圖3以D1層為例闡述了編碼過程:

        (1)Slice初始化。包括Q0及Q1層的參考幀管理,Slice頭部初始化,碼流緩沖區(qū)初始化,cabac初始化等。

        (2)宏塊級(jí)編碼。對(duì)Q0及Q1層的宏塊輪流進(jìn)行編碼,且所有層間預(yù)測(cè)均按宏塊級(jí)進(jìn)行,如Q0層宏塊依次為A,B,C,…,Q1層宏塊為a,b,c,…,則編碼順序?yàn)锳,a,B,b,C,c,…,這樣在編碼宏塊a時(shí)可直接利用宏塊A的殘差或者重建數(shù)據(jù),從而避免了整幀殘差或重建數(shù)據(jù)的存儲(chǔ)與拷貝。一個(gè)宏塊的編碼過程可分為層間運(yùn)動(dòng)上采樣,層間幀內(nèi)上采樣,層間殘差上采樣,標(biāo)準(zhǔn)H.264幀內(nèi)預(yù)測(cè),層間幀內(nèi)預(yù)測(cè),運(yùn)動(dòng)搜索,帶殘差預(yù)測(cè)的運(yùn)動(dòng)搜索,層間運(yùn)動(dòng)預(yù)測(cè),運(yùn)動(dòng)補(bǔ)償,模式仲裁,DCT,量化,Z掃描及熵編碼,反量化,IDCT,殘差/幀內(nèi)重建數(shù)據(jù)拷貝(以備層間預(yù)測(cè)使用)和宏塊語(yǔ)素修正(如cbp為0時(shí)transform_8×8等需要修正)。

        (3)去塊濾波。依次對(duì)Q0、Q1層進(jìn)行濾波,濾波模塊包括標(biāo)準(zhǔn)H.264的LPF以及需要進(jìn)行層間幀內(nèi)上采樣宏塊的LPF。

        (4)碼流拼接。由于各個(gè)Slice并行編碼,最后需要將各個(gè)Slice的碼流拼接在一起。

        3.2 基于時(shí)間層的動(dòng)態(tài)Slice劃分

        在同一幅圖像上,不同的區(qū)域的復(fù)雜度也可能各不相同,這種內(nèi)容上的差異使得各個(gè)Slice的編碼時(shí)間各不相同,也直接導(dǎo)致了整個(gè)編碼器的均衡程度降低。另一方面,在去方塊濾波開始之前,各個(gè)核必須完成對(duì)應(yīng)Slice的編碼,因此各個(gè)Slice必須在并行濾波之前進(jìn)行同步,同步的時(shí)間開銷直接取決于各個(gè)核對(duì)Slice編碼的均衡程度。

        可定義編碼均衡度為:公式中,B代表編碼均衡度,Ti、Tj分別表示第i個(gè)和第j個(gè)Slice的編碼時(shí)間,n表示總Slice數(shù)。公式(1)反映了Slice間編碼的整體均衡度,各個(gè)Slice編碼時(shí)間相差越明顯,B的值越小,而理想情況下,若各Slice編碼時(shí)間完全相同,則編碼均衡度B為100%。動(dòng)態(tài)Slice劃分目的就是提高編碼均衡度。

        根據(jù)圖1的編碼結(jié)構(gòu),每個(gè)Slice的編碼過程可以劃分為兩個(gè)階段:

        (1)獨(dú)立編碼(包括層間幀內(nèi)、運(yùn)動(dòng)、殘差上采樣、模式選擇、變換量化、熵編碼等);

        (2)濾波(包括LPF和INTRA濾波)。

        動(dòng)態(tài)Slice劃分針對(duì)第一個(gè)階段,在層級(jí)并行的基礎(chǔ)上,動(dòng)態(tài)調(diào)整各個(gè)Slice的大小。本設(shè)計(jì)采用了基于PID控制(比例積分微分控制,是控制系統(tǒng)中常用的一種方法)的Slice大小動(dòng)態(tài)劃分的策略,即在Slice個(gè)數(shù)一定的前提下,根據(jù)已編碼幀的即時(shí)統(tǒng)計(jì)信息決定當(dāng)前幀的各個(gè)Slice中宏塊的個(gè)數(shù)??紤]到SVC的時(shí)間分層結(jié)構(gòu),為了避免不同時(shí)間層之間因參考關(guān)系不同造成的編碼效率差異,本文算法針對(duì)每個(gè)時(shí)間層單獨(dú)控制。設(shè)每個(gè)時(shí)間層Slice數(shù)為n,整幀總宏塊數(shù)為frame_mb_count,首先設(shè)定一個(gè)控制目標(biāo)值target,控制流程如下所示。

        (1)首先初始化各Slice中宏塊個(gè)數(shù):

        (2)對(duì)各個(gè)Slice并行編碼,統(tǒng)計(jì)執(zhí)行時(shí)間Ti;

        (3)計(jì)算實(shí)際值與目標(biāo)值的誤差error及累積誤差error_sum:

        (4)根據(jù)同一時(shí)間層中前一幀的誤差、當(dāng)前的誤差,以及累積誤差計(jì)算新的Slice宏塊數(shù):

        以上式中,target代表理想情況下每個(gè)Slice的編碼時(shí)間占整幀編碼時(shí)間的比例,target=1/n;Ti為第i個(gè)Slice的編碼時(shí)間;error為目標(biāo)值target與實(shí)際值的誤差,例如當(dāng)某一Slice編碼時(shí)間超過平均值,error的值為負(fù),將起到減小mb_num的作用;error_sum為累積誤差;pre_error為前一次的誤差;K、I、D分別為比例、積分、微分調(diào)節(jié)系數(shù);K×error即時(shí)成比例地反應(yīng)控制系統(tǒng)的偏差error,偏差一旦產(chǎn)生,調(diào)節(jié)器立即產(chǎn)生控制作用;I×error_sum主要用于消除系統(tǒng)靜態(tài)誤差;D×(error-pre_error)能反應(yīng)偏差信號(hào)的變化速率,并能在偏差信號(hào)的值變得太大之前,在系統(tǒng)中引入一個(gè)有效的早期修正信號(hào),從而加快系統(tǒng)的響應(yīng)速度,減小調(diào)節(jié)時(shí)間;常量C,用以調(diào)節(jié)宏塊增加或減少的程度。實(shí)驗(yàn)中K=0.7,I=0.2,D=0.1,C=256。

        3.3 去方塊濾波的并行化

        去方塊濾波是SVC算法中關(guān)鍵的一個(gè)模塊,它能有效地降低重建圖像的塊效應(yīng)。但是宏塊在濾波順序[14]上存在嚴(yán)格的依賴關(guān)系,即當(dāng)前宏塊的去方塊濾波必須在其上邊宏塊、右上宏塊以及左邊宏塊去方塊濾波之后進(jìn)行。由于這種限制,如果各個(gè)Slice編碼完成之后由一個(gè)核串行地對(duì)整幀圖像執(zhí)行濾波操作,而其他核處于空閑狀態(tài),整個(gè)濾波過程會(huì)非常漫長(zhǎng),核的利用率也比較低。本文采用一種多核并行濾波方案,將整幀的濾波工作分配成多個(gè)核進(jìn)行,每個(gè)核負(fù)責(zé)一個(gè)“豎條”的濾波工作。圖4顯示了640×352分辨率圖像的濾波過程。

        圖4 并行濾波方案

        圖4中,數(shù)字序號(hào)代表宏塊序號(hào)。按照這種方式濾波,Core 1首先依次對(duì)10個(gè)宏塊濾波,然后Core 1繼續(xù)對(duì)下一行10個(gè)宏塊濾波,同時(shí)Core 2開始對(duì)第一行10個(gè)宏塊濾波,依此類推,“豎條”邊緣的宏塊濾波前需要同步,如宏塊60,需要判斷宏塊21是否已經(jīng)濾波完成,宏塊61需要判斷宏塊60是否完成濾波。各個(gè)核濾波的列數(shù)可按如下公式迭代算出:

        其中,RoundDown()為向下取整函數(shù),M為一幀的宏塊列數(shù),N為所使用的核數(shù),Ki為第i個(gè)核需要濾波的列數(shù)。i從1開始,按照公式迭代計(jì)算出K1,K2,…,KN,這樣可以保證M不是N的整數(shù)倍時(shí)仍能將所有列分配到各個(gè)核上。

        3.4 動(dòng)態(tài)核數(shù)分配方案

        視頻序列內(nèi)容豐富多變,實(shí)際應(yīng)用中,視頻序列的紋理復(fù)雜度隨時(shí)間波動(dòng),導(dǎo)致編碼器性能不穩(wěn)定。表1為采用固定核數(shù)對(duì)各個(gè)序列進(jìn)行編碼的性能統(tǒng)計(jì)。

        表1 固定核數(shù)編碼性能統(tǒng)計(jì)

        表1中,視頻會(huì)議錄像Gman序列耗時(shí)最短,馬拉松比賽人群奔跑場(chǎng)景的Crowd run耗時(shí)最長(zhǎng),兩者相差接近7 Mcycles,變化幅度達(dá)到21%??梢姡煌瑘?chǎng)景的視頻對(duì)編碼器性能的要求不同,如果僅用滿足最低要求的核數(shù)來編碼,在遇到復(fù)雜場(chǎng)景時(shí)會(huì)達(dá)不到實(shí)時(shí)的幀率;反之,若按照最復(fù)雜場(chǎng)景來分配核數(shù),在遇到低復(fù)雜度視頻時(shí)會(huì)浪費(fèi)核數(shù),整個(gè)系統(tǒng)能耗比降低;再者,視頻場(chǎng)景的變化是必然的,也很難預(yù)估恰好合適的核數(shù)。因此,本文采用動(dòng)態(tài)核數(shù)分配方案,使整個(gè)系統(tǒng)始終保持較高的能耗比。其基本做法是以前一秒已編碼幀的統(tǒng)計(jì)信息為依據(jù),預(yù)估下一秒應(yīng)分配的核數(shù)。核數(shù)調(diào)整公式為:

        其中,t為初始設(shè)定的一個(gè)目標(biāo)幀率,c為當(dāng)前階段的實(shí)際幀率,m為當(dāng)前所使用的核數(shù),n為下一秒需要的核數(shù),RoundDown()為向下取整函數(shù)。當(dāng)實(shí)際編碼幀率高于目標(biāo)幀率即c>t時(shí),n的值相應(yīng)減小,由于一個(gè)核負(fù)責(zé)兩個(gè)Slice(Q0+Q1)的編碼,所以對(duì)應(yīng)的Slice個(gè)數(shù)相應(yīng)減小,反之亦然。當(dāng)核數(shù)發(fā)生變化時(shí),Slice大小重新平均分配。核數(shù)調(diào)節(jié)之后,空閑的核可用做系統(tǒng)其他用途或者進(jìn)入睡眠等待。

        4 實(shí)驗(yàn)結(jié)果與分析

        在TILERA公司的TileraGx36平臺(tái)上(1GHz主頻,36核處理器),對(duì)上述方案進(jìn)行了測(cè)試,選取的序列為Rush hour、Pair、Crowd run、Gman,結(jié)果如下:

        (1)動(dòng)態(tài)Slice大小劃分方案實(shí)驗(yàn)結(jié)果

        圖5、圖6是對(duì)CrowdRun序列D0層4組Slice的編碼時(shí)間統(tǒng)計(jì)。測(cè)試序列特點(diǎn)是圖像上半部分是天空,下半部分是人群奔跑的場(chǎng)景,如圖5,整體編碼性能在34 Mcycles上下擺動(dòng),各Slice編碼時(shí)間差異明顯,按照公式(1),整體均衡度只有56.47%。由圖6可見,采用動(dòng)態(tài)Slice大小劃分方式后,從第2幀開始,各個(gè)Slice編碼時(shí)間逐漸達(dá)到均衡,最終穩(wěn)定在32 Mcycles上下,相比固定Slice劃分,平均執(zhí)行時(shí)間降低了5.89%,整體性能得到了提高,編碼均衡度達(dá)到97.33%,比固定Slice劃分提高了40.86%。

        圖5 固定Slice大小劃分編碼時(shí)間

        圖6 動(dòng)態(tài)Slice大小劃分編碼時(shí)間

        (2)去方塊濾波的并行化方案實(shí)驗(yàn)結(jié)果

        圖7所示為4核濾波結(jié)果,相比串行濾波,并行濾波的執(zhí)行時(shí)間減少了56.44%,加速比平均達(dá)到了2.3。

        圖7 串行與并行濾波性能比較(D0Q0層)

        (3)動(dòng)態(tài)核數(shù)分配方案實(shí)驗(yàn)結(jié)果

        為顯著起見,將4個(gè)序列按照復(fù)雜度從低到高拼接起來,依次為Gman、Pair、Rush hour、Crowd run,如圖8所示,隨著視頻復(fù)雜度的增加,所用核數(shù)動(dòng)態(tài)跟隨性較好,能較快地使編碼性能穩(wěn)定在所設(shè)定的目標(biāo)值附近。相比表1固定核數(shù)的編碼方式,動(dòng)態(tài)核數(shù)分配方式將編碼器性能波動(dòng)控制在2.4%之內(nèi),使SVC編碼器自適應(yīng)地響應(yīng)不同復(fù)雜度的場(chǎng)景。

        圖8 動(dòng)態(tài)核數(shù)分配方案性能統(tǒng)計(jì)

        (4)串行最優(yōu)與并行方案性能比較

        如圖9,基于x264的經(jīng)過優(yōu)化的串行算法雖然比JSVM9.18開源版本快了不少,在TileraGx36平臺(tái)上也只能達(dá)到1.5幀/s左右,而并行算法的幀率穩(wěn)定在30幀/s左右,滿足了實(shí)時(shí)應(yīng)用的要求。各個(gè)序列加速比分別為19.87、19.66、21.82、19.16,均在19以上,相比文獻(xiàn)[15]中的并行方案提高了10.5。

        圖9 串行與并行總體性能比較

        5 結(jié)束語(yǔ)

        本文在分析SVC編碼算法的基礎(chǔ)上,以可移植性較好的x264開源代碼為基礎(chǔ)添加SVC的功能,針對(duì)SVC編碼算法的特點(diǎn),提出了時(shí)間層對(duì)齊的空間層級(jí)并行編碼方案,采用了直接根據(jù)編碼時(shí)間來動(dòng)態(tài)調(diào)整Slice宏塊個(gè)數(shù)的方案,各個(gè)核的均衡程度得到了提高。本文還針對(duì)任務(wù)依賴性比較強(qiáng)的去塊濾波模塊提出了并行化濾波方案,有效地提高了并行加速比。此外,結(jié)合平臺(tái)特性,對(duì)編碼核數(shù)采取動(dòng)態(tài)調(diào)整策略,使有限的資源得到合理的利用。整個(gè)編碼方案實(shí)現(xiàn)了720P高清視頻的SVC實(shí)時(shí)編碼,具有較高的工程實(shí)用性。

        [1]李占林,林其偉.H.264可分級(jí)編碼技術(shù)的研究[J].微計(jì)算機(jī)信息,2007,23(12):300-302.

        [2]任宏.H.264擴(kuò)展標(biāo)準(zhǔn)-可伸縮視頻編碼(SVC)及其中精細(xì)可伸縮編碼的研究[D].成都:成都電子科技大學(xué),2009.

        [3]劉娜.可伸縮視頻編碼算法研究與優(yōu)化[D].北京:北京郵電大學(xué),2010.

        [4]Wiegand T.Draft ITU-T recommendation and final draft international standard of joint video specification,Technical Report JVT-G050[R].2003.

        [5]駱政崎,余松煜,宋利,等.H.264可分級(jí)擴(kuò)展技術(shù)的介紹和分析[J].中國(guó)圖象圖形學(xué)報(bào),2006(11):1578-1583.

        [6]孔群娥,曾學(xué)文.基于x264實(shí)現(xiàn)H.264的時(shí)域可伸縮編碼[J].微計(jì)算機(jī)應(yīng)用,2011,32(3).

        [7]Su Y,Tsai S,Chuang T.Mapping scalable video coding decoder on multi-core stream processors[C]//Proceedings of the Picture Coding Symposium,2009.

        [8]Li X,Amon P,Hutter A.Performance analysis of inter-layer prediction in scalable video coding extension of H.264/AVC[J]. IEEE Transactions on Brodcasting,2011,57(1).

        [9]Cervero T,Otero A,López S.A novel scalable Deblocking Filter architecture for H.264/AVC and SVC video codecs[C]//Proceedings of the IEEE International Conference on Multimedia and Expo,2011.

        [10]Yan C,Dai F,Zhang Y.Parallel deblocking filter for H.264/AVC on the TILERA many-core systems[C]//Proceedings of the 17th International Multimedia Modeling Conference(MMM 2011),2011,6523:51-61.

        [11]Yao K,Sun J,Liu J.A novel parallel encoding framework for scalable video coding[C]//Proceedings of the IEEE Visual Communications and Image Processing(VCIP 2011),2011.

        [12]畢厚杰,王健.新一代視頻壓縮編碼標(biāo)準(zhǔn)——H.264/AVC[M]. 2版.北京:人民郵電出版社,2009-11.

        [13]Vander E B,Jaspers E G T,Gelderblom R H.Mapping of H.264decodingonamultiprocessorarchitecture[C]//Proceedings of the SPIE Conf on Image and Video Communications and Processing,2003:707-718.

        [14]Reichel J,Schwarz H,Wien M.Scalable video coding:working draft 1[C]//Proceedings of the Joint Video Team(JVT)14th Meeting,Hong Kong,China,17-21 January,2005.

        [15]Huang Y,Shen Y,Wu J.Scalable computation for spatially scalable video coding using NVIDIA CUDA and multi-core CPU[C]//Proceedings of the 2009 ACM Multimedia Conference,with Colocated Workshops and Symposiums MM’09,2009:361-370.

        HUANG Liang

        Institute of Advanced Digital Technology and Instrument,Zhejiang University,Hangzhou 310027,China

        Due to the complexity of Scalable Video Coding(SVC)algorithm,a TileraGx36-oriented SVC parallel coding algorithm for HD video is proposed.This algorithm implements temporal layer aligned parallel coding in spatial level.Within a layer, due to the diversity of images,a dynamic Slice partition based on statistics is proposed to achieve dynamic coding balance among Slices,and for the high dependence of LPF module,a parallel loop filter method is proposed.A dynamic core allocation scheme is proposed considering the platform features.Experimental results show that the whole solution speeds up the encoding process by more than 19 times and implements real time encoding for 720P high definition sequences.

        Scalable Video Coding(SVC)algorithm;multi-core processor;temporal layer aligned spatial level parallel coding; dynamic Slice partition;parallel loop filter;dynamic core allocation

        針對(duì)SVC(Scalable Video Coding)視頻編碼算法的高復(fù)雜度,提出了一種面向TileraGx36多核平臺(tái)的針對(duì)高清視頻的SVC并行編碼算法。在層間,提出基于時(shí)間層對(duì)齊的空間層級(jí)并行編碼;在層內(nèi),針對(duì)圖像變化的多樣性,為實(shí)現(xiàn)Slice間編碼性能的動(dòng)態(tài)均衡,提出了直接根據(jù)統(tǒng)計(jì)時(shí)間的Slice級(jí)動(dòng)態(tài)分割方法,并針對(duì)依賴性較強(qiáng)的去方塊濾波模塊實(shí)現(xiàn)了多核并行濾波方案。結(jié)合平臺(tái)特點(diǎn),實(shí)現(xiàn)了多核處理器核數(shù)的動(dòng)態(tài)分配方案。實(shí)驗(yàn)結(jié)果表明,整個(gè)方案并行加速比超過19,實(shí)現(xiàn)了最大分辨率720P視頻序列的實(shí)時(shí)編碼。

        可伸縮視頻編碼(SVC)算法;多核處理器;時(shí)間層對(duì)齊的空間層級(jí)并行;動(dòng)態(tài)Slice劃分;并行濾波;動(dòng)態(tài)核數(shù)分配

        A

        TP391.41

        10.3778/j.issn.1002-8331.1211-0174

        HUANG Liang.High definition real time SVC encoding based on multi-core processor.Computer Engineering and Applications,2013,49(13):170-174.

        國(guó)家自然科學(xué)基金儀器專項(xiàng)(No.40927001)。

        黃亮(1987—),男,碩士研究生,主要研究方向:基于嵌入式平臺(tái)的多媒體應(yīng)用。E-mail:huangliangzju@sina.com

        2012-11-15

        2013-02-28

        1002-8331(2013)13-0170-05

        猜你喜歡
        宏塊層間殘差
        基于雙向GRU與殘差擬合的車輛跟馳建模
        基于超聲檢測(cè)的構(gòu)件層間粘接缺陷識(shí)別方法
        基于殘差學(xué)習(xí)的自適應(yīng)無人機(jī)目標(biāo)跟蹤算法
        基于遞歸殘差網(wǎng)絡(luò)的圖像超分辨率重建
        基于層間接觸的鋼橋面鋪裝力學(xué)分析
        上海公路(2018年3期)2018-03-21 05:55:40
        結(jié)合多分辨率修正曲率配準(zhǔn)的層間插值
        基于選擇特征宏塊的快速視頻穩(wěn)像
        大段合采油井層間干擾主控因素研究
        平穩(wěn)自相關(guān)過程的殘差累積和控制圖
        河南科技(2015年8期)2015-03-11 16:23:52
        基于宏塊合并的H.264模式選擇算法
        粉嫩的18在线观看极品精品| 亚洲第一页综合图片自拍| 男女一边摸一边做爽爽的免费阅读| 99久久免费精品高清特色大片| 老熟女熟妇嗷嗷叫91| 一级午夜理论片日本中文在线| 人妖国产视频一区二区| 精品久久久久久无码专区| 国产精品视频露脸| 亚洲AV无码一区二区三区ba| 日本女同伦理片在线观看| 成人国产一区二区三区av| 无码日韩精品一区二区免费暖暖| 久久久久人妻一区精品色欧美| 亚洲天堂资源网| 亚洲视频一区二区久久久| 黑人玩弄极品人妻系列视频| 亚洲av中文无码乱人伦在线咪咕| 亚洲av无码精品色午夜在线观看| 美女裸体自慰在线观看| av毛片在线播放网址| 国产麻豆剧传媒精品国产av| 日本韩国男男作爱gaywww| 日本乱偷人妻中文字幕在线| 亚洲男人的天堂精品一区二区| 国产一区二区亚洲av| 国产一区二区免费在线视频| 少妇夜夜春夜夜爽试看视频| 亚洲精品黑牛一区二区三区| 亚洲人成无码区在线观看| 久久免费的精品国产v∧| 久久99精品这里精品动漫6| 一区二区三区四区午夜视频在线| 又黄又刺激的网站久久| 日韩毛片无码永久免费看| 亚洲av美女在线播放啊| 日本一级二级三级在线| 国产亚洲精品97在线视频一| 性裸交a片一区二区三区| 久久狠狠高潮亚洲精品暴力打| 在线看不卡的国产视频|