當(dāng)前位置:首頁(yè) > 百科知識(shí) > 安防 > 正文

H.264

H.264,同時(shí)也是MPEG-4第十部分,是由ITU-T視頻編碼專(zhuān)家組(VCEG)和ISO/IEC動(dòng)態(tài)圖像專(zhuān)家組(MPEG)聯(lián)合組成的聯(lián)合視頻組(JVT,Joint Video Team)提出的高度壓縮數(shù)字視頻編解碼器標(biāo)準(zhǔn)。這個(gè)標(biāo)準(zhǔn)通常被稱(chēng)之為H.264/AVC(或者AVC/H.264或者H.264/MPEG-4 AVC或MPEG-4/H.264 AVC)而明確的說(shuō)明它兩方面的開(kāi)發(fā)者。 H264標(biāo)準(zhǔn)各主要部分有Access Unit delimiter(訪問(wèn)單元分割符),SEI(附加增強(qiáng)信息),primary coded picture(基本圖像編碼),Redundant Coded Picture(冗余圖像編碼)。還有Instantaneous Decoding Refresh(IDR,即時(shí)解碼刷新)、Hypothetical Reference Decoder(HRD,假想?yún)⒖冀獯a)、Hypothetical Stream Scheduler(HSS,假想碼流調(diào)度器)。

 背景介紹

  H.264是國(guó)際標(biāo)準(zhǔn)化組織(ISO)和國(guó)際電信聯(lián)盟(ITU)共同提出的繼MPEG4之后的新一代數(shù)字視頻壓縮格式。H.264是ITU-T以H.26x系列為名稱(chēng)命名的視頻編解碼技術(shù)標(biāo)準(zhǔn)之一。H.264是ITU-T的VCEG(視頻編碼專(zhuān)家組)和ISO/IEC的MPEG(活動(dòng)圖像編碼專(zhuān)家組)的聯(lián)合視頻組(JVT:joint video team)開(kāi)發(fā)的一個(gè)數(shù)字視頻編碼標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)最早來(lái)自于ITU-T的稱(chēng)之為H.26L的項(xiàng)目的開(kāi)發(fā)。H.26L這個(gè)名稱(chēng)雖然不太常見(jiàn),但是一直被使用著。H.264是ITU-T以H.26x系列為名稱(chēng)命名的標(biāo)準(zhǔn)之一,AVC是ISO/IEC MPEG一方的稱(chēng)呼。

  國(guó)際上制定視頻編解碼技術(shù)的組織有兩個(gè),一個(gè)是“國(guó)際電聯(lián)(ITU-T)”,它制定的標(biāo)準(zhǔn)有H.261、H.263、H.263+等,另一個(gè)是“國(guó)際標(biāo)準(zhǔn)化組織(ISO)”它制定的標(biāo)準(zhǔn)有MPEG-1、MPEG-2、MPEG-4等。而H.264則是由兩個(gè)組織聯(lián)合組建的聯(lián)合視頻組(JVT)共同制定的新數(shù)字視頻編碼標(biāo)準(zhǔn),所以它既是ITU-T的H.264,又是ISO/IEC的MPEG-4高級(jí)視頻編碼(Advanced Video Coding,AVC)的第10 部分。因此,不論是MPEG-4 AVC、MPEG-4 Part 10,還是ISO/IEC 14496-10,都是指H.264。

  1998年1月份標(biāo)準(zhǔn)開(kāi)始草案征集,1999年9月,完成第一個(gè)草案,2001年5月制定了其測(cè)試模式TML-8,2002年6月的 JVT第5次會(huì)議通過(guò)了H.264的FCD板。2003年3月正式發(fā)布。在2005年又開(kāi)發(fā)出了H.264的更高級(jí)應(yīng)用標(biāo)準(zhǔn)MVC 和 SVC 版本。

  國(guó)際電聯(lián)ITU和MPEG組織在發(fā)布了H.264標(biāo)準(zhǔn)之后,很快就發(fā)布公告,為下一代視頻編解碼標(biāo)準(zhǔn)H.265征集技術(shù)方案。為H.265設(shè)定的技術(shù)性能指標(biāo)是:壓縮效率比H.264提高1倍、且不明顯提高編碼和解碼的計(jì)算量。據(jù)MPEG組織2009年西安會(huì)議的回顧,尚無(wú)一個(gè)技術(shù)提案達(dá)到上述指標(biāo)。

  H.264是在MPEG-4技術(shù)的基礎(chǔ)之上建立起來(lái)的,其編解碼流程主要包括5個(gè)部分:幀間和幀內(nèi)預(yù)測(cè)(Estimation)、變換(Transform)和反變換、量化(Quantization)和反量化、環(huán)路濾波(Loop Filter)、熵編碼(Entropy Coding)。

  H.264標(biāo)準(zhǔn)的主要目標(biāo)是:與其它現(xiàn)有的視頻編碼標(biāo)準(zhǔn)相比,在相同的帶寬下提供更加優(yōu)秀的圖象質(zhì)量。通過(guò)該標(biāo)準(zhǔn),在同等圖象質(zhì)量下的壓縮效率比以前的標(biāo)準(zhǔn)(MPEG2)提高了2倍左右。

  H.264可以提供11個(gè)等級(jí)、7個(gè)類(lèi)別的子協(xié)議格式(算法),其中等級(jí)定義是對(duì)外部環(huán)境進(jìn)行限定,例如帶寬需求、內(nèi)存需求、網(wǎng)絡(luò)性能等等。等級(jí)越高,帶寬要求就越高,視頻質(zhì)量也越高。類(lèi)別定義則是針對(duì)特定應(yīng)用,定義編碼器所使用的特性子集,并規(guī)范不同應(yīng)用環(huán)境中的編碼器復(fù)雜程度。

 優(yōu)勢(shì)

  1.低碼率(Low Bit Rate):和MPEG2和MPEG4 ASP等壓縮技術(shù)相比,在同等圖像質(zhì)量下,采用H.264技術(shù)壓縮后的數(shù)據(jù)量只有MPEG2的1/8,MPEG4的1/3。

   2.高質(zhì)量的圖像:H.264能提供連續(xù)、流暢的高質(zhì)量圖像(DVD質(zhì)量)。

  3.容錯(cuò)能力強(qiáng):H.264提供了解決在不穩(wěn)定網(wǎng)絡(luò)環(huán)境下容易發(fā)生的丟包等錯(cuò)誤的必要工具。

   4.網(wǎng)絡(luò)適應(yīng)性強(qiáng):H.264提供了網(wǎng)絡(luò)抽象層(Network Abstraction Layer),使得H.264的文件能容易地在不同網(wǎng)絡(luò)上傳輸(例如互聯(lián)網(wǎng)CDMA,GPRS,WCDMA,CDMA2000等)。

  H.264最大的優(yōu)勢(shì)是具有很高的數(shù)據(jù)壓縮比率,在同等圖像質(zhì)量的條件下,H.264的壓縮比是MPEG-2的2倍以上,是MPEG-4的1.5~2倍。舉個(gè)例子,原始文件的大小如果為88GB,采用MPEG-2壓縮標(biāo)準(zhǔn)壓縮后變成3.5GB,壓縮比為25∶1,而采用H.264壓縮標(biāo)準(zhǔn)壓縮后變?yōu)?79MB,從88GB到879MB,H.264的壓縮比達(dá)到驚人的102∶1。低碼率(Low Bit Rate)對(duì)H.264的高的壓縮比起到了重要的作用,和MPEG-2和MPEG-4 ASP等壓縮技術(shù)相比,H.264壓縮技術(shù)將大大節(jié)省用戶(hù)的下載時(shí)間和數(shù)據(jù)流量收費(fèi)。尤其值得一提的是,H.264在具有高壓縮比的同時(shí)還擁有高質(zhì)量流暢的圖像,正因?yàn)槿绱?,?jīng)過(guò)H.264壓縮的視頻數(shù)據(jù),在網(wǎng)絡(luò)傳輸過(guò)程中所需要的帶寬更少,也更加經(jīng)濟(jì)。

 特點(diǎn)

  H264標(biāo)準(zhǔn)的主要特點(diǎn)如下:

  1.更高的編碼效率:同H.263等標(biāo)準(zhǔn)的特率效率相比,能夠平均節(jié)省大于50%的碼率。

  2.高質(zhì)量的視頻畫(huà)面:H.264能夠在低碼率情況下提供高質(zhì)量的視頻圖像,在較低帶寬上提供高質(zhì)量的圖像傳輸是H.264的應(yīng)用亮點(diǎn)。

  3.提高網(wǎng)絡(luò)適應(yīng)能力:H.264可以工作在實(shí)時(shí)通信應(yīng)用(如視頻會(huì)議)低延時(shí)模式下,也可以工作在沒(méi)有延時(shí)的視頻存儲(chǔ)或視頻流服務(wù)器中。

  4.采用混合編碼結(jié)構(gòu):同H.263相同,H.264也使用采用DCT變換編碼加DPCM的差分編碼的混合編碼結(jié)構(gòu),還增加了如多模式運(yùn)動(dòng)估計(jì)、幀內(nèi)預(yù)測(cè)、多幀預(yù)測(cè)、基于內(nèi)容的變長(zhǎng)編碼、4x4二維整數(shù)變換等新的編碼方式,提高了編碼效率。

  5.H.264的編碼選項(xiàng)較少:在H.263中編碼時(shí)往往需要設(shè)置相當(dāng)多選項(xiàng),增加了編碼的難度,而H.264做到了力求簡(jiǎn)潔的“回歸基本”,降低了編碼時(shí)復(fù)雜度。

  6.H.264可以應(yīng)用在不同場(chǎng)合:H.264可以根據(jù)不同的環(huán)境使用不同的傳輸和播放速率,并且提供了豐富的錯(cuò)誤處理工具,可以很好的控制或消除丟包和誤碼。

  7.錯(cuò)誤恢復(fù)功能:H.264提供了解決網(wǎng)絡(luò)傳輸包丟失的問(wèn)題的工具,適用于在高誤碼率傳輸?shù)臒o(wú)線網(wǎng)絡(luò)中傳輸視頻數(shù)據(jù)。

  8.較高的復(fù)雜度:264性能的改進(jìn)是以增加復(fù)雜性為代價(jià)而獲得的。據(jù)估計(jì),H.264編碼的計(jì)算復(fù)雜度大約相當(dāng)于H.263的3倍,解碼復(fù)雜度大約相當(dāng)于H.263的2倍。

 技術(shù)

  H.264和以前的標(biāo)準(zhǔn)一樣,也是DPCM加變換編碼的混合編碼模式。但它采用“回歸基本”的簡(jiǎn)潔設(shè)計(jì),不用眾多的選項(xiàng),獲得比H.263++好得多的壓縮性能;加強(qiáng)了對(duì)各種信道的適應(yīng)能力,采用“網(wǎng)絡(luò)友好”的結(jié)構(gòu)和語(yǔ)法,有利于對(duì)誤碼和丟包的處理;應(yīng)用目標(biāo)范圍較寬,以滿(mǎn)足不同速率、不同解析度以及不同傳輸(存儲(chǔ))場(chǎng)合的需求。

  技術(shù)上,它集中了以往標(biāo)準(zhǔn)的優(yōu)點(diǎn),并吸收了標(biāo)準(zhǔn)制定中積累的經(jīng)驗(yàn)。與H.263 v2(H.263+)或MPEG-4簡(jiǎn)單類(lèi)(Simple Profile)相比,H.264在使用與上述編碼方法類(lèi)似的最佳編碼器時(shí),在大多數(shù)碼率下最多可節(jié)省50%的碼率。H.264在所有碼率下都能持續(xù)提供較高的視頻質(zhì)量。H.264能工作在低延時(shí)模式以適應(yīng)實(shí)時(shí)通信的應(yīng)用(如視頻會(huì)議),同時(shí)又能很好地工作在沒(méi)有延時(shí)限制的應(yīng)用,如視頻存儲(chǔ)和以服務(wù)器為基礎(chǔ)的視頻流式應(yīng)用。H.264提供包傳輸網(wǎng)中處理包丟失所需的工具,以及在易誤碼的無(wú)線網(wǎng)中處理比特誤碼的工具。

  在系統(tǒng)層面上,H.264提出了一個(gè)新的概念,在視頻編碼層(Video Coding Layer,VCL)和網(wǎng)絡(luò)提取層(Network Abstraction Layer,NAL)之間進(jìn)行概念性分割,前者是視頻內(nèi)容的核心壓縮內(nèi)容之表述,后者是通過(guò)特定類(lèi)型網(wǎng)絡(luò)進(jìn)行遞送的表述,這樣的結(jié)構(gòu)便于信息的封裝和對(duì)信息進(jìn)行更好的優(yōu)先級(jí)控制。

  編碼

  1.幀內(nèi)預(yù)測(cè)編碼

  幀內(nèi)編碼用來(lái)縮減圖像的空間冗余。為了提高H.264幀內(nèi)編碼的效率,在給定幀中充分利用相鄰宏塊的空間相關(guān)性,相鄰的宏塊通常含有相似的屬性。因此,在對(duì)一給定宏塊編碼時(shí),首先可以根據(jù)周?chē)暮陦K預(yù)測(cè)(典型的是根據(jù)左上角宏塊、左邊宏塊和上面宏塊,因?yàn)榇撕陦K已經(jīng)被編碼處理),然后對(duì)預(yù)測(cè)值與實(shí)際值的差值進(jìn)行編碼,這樣,相對(duì)于直接對(duì)該幀編碼而言,可以大大減小碼率。

  H.264提供9種模式進(jìn)行4×4像素宏塊預(yù)測(cè),包括1種直流預(yù)測(cè)和8種方向預(yù)測(cè)。在圖中,相鄰塊的A到I共9個(gè)像素均已經(jīng)被編碼,可以被用以預(yù)測(cè),如果我們選擇模式4,那么,a、b、c、d4個(gè)像素被預(yù)測(cè)為與E相等的值,e、f、g、h4個(gè)像素被預(yù)測(cè)為與F相等的值,對(duì)于圖像中含有很少空間信息的平坦區(qū),H.264也支持16×16的幀內(nèi)編碼。

  2.幀間預(yù)測(cè)編碼

  幀間預(yù)測(cè)編碼利用連續(xù)幀中的時(shí)間冗余來(lái)進(jìn)行運(yùn)動(dòng)估計(jì)和補(bǔ)償。H.264的運(yùn)動(dòng)補(bǔ)償支持以往的視頻編碼標(biāo)準(zhǔn)中的大部分關(guān)鍵特性,而且靈活地添加了更多的功能,除了支持P幀、B幀外,H.264還支持一種新的流間傳送幀——SP幀,如圖3所示。碼流中包含SP幀后,能在有類(lèi)似內(nèi)容但有不同碼率的碼流之間快速切換,同時(shí)支持隨機(jī)接入和快速回放模式。圖3 SP-幀示意圖H.264的運(yùn)動(dòng)估計(jì)有以下4個(gè)特性。

  (1)不同大小和形狀的宏塊分割

  對(duì)每一個(gè)16×16像素宏塊的運(yùn)動(dòng)補(bǔ)償可以采用不同的大小和形狀,H.264支持7種模式,如圖4所示。小塊模式的運(yùn)動(dòng)補(bǔ)償為運(yùn)動(dòng)詳細(xì)信息的處理提高了性能,減少了方塊效應(yīng),提高了圖像的質(zhì)量。

  (2)高精度的亞像素運(yùn)動(dòng)補(bǔ)償

  在H.263中采用的是半像素精度的運(yùn)動(dòng)估計(jì),而在H.264中可以采用1/4或者1/8像素精度的運(yùn)動(dòng)估值。在要求相同精度的情況下,H.264使用1/4或者1/8像素精度的運(yùn)動(dòng)估計(jì)后的殘差要比H.263采用半像素精度運(yùn)動(dòng)估計(jì)后的殘差來(lái)得小。這樣在相同精度下,H.264在幀間編碼中所需的碼率更小。

  (3)多幀預(yù)測(cè)

  H.264提供可選的多幀預(yù)測(cè)功能,在幀間編碼時(shí),可選5個(gè)不同的參考幀,提供了更好的糾錯(cuò)性能,這樣更可以改善視頻圖像質(zhì)量。這一特性主要應(yīng)用于以下場(chǎng)合:周期性的運(yùn)動(dòng)、平移運(yùn)動(dòng)、在兩個(gè)不同的場(chǎng)景之間來(lái)回變換攝像機(jī)的鏡頭。

  (4)去塊濾波器

  H.264定義了自適應(yīng)去除塊效應(yīng)的濾波器,這可以處理預(yù)測(cè)環(huán)路中的水平和垂直塊邊緣,大大減少了方塊效應(yīng)。

  3.整數(shù)變換

  在變換方面,H.264使用了基于4×4像素塊的類(lèi)似于DCT的變換,但使用的是以整數(shù)為基礎(chǔ)的空間變換,不存在反變換因?yàn)槿∩岫嬖谡`差的問(wèn)題,變換矩陣如圖5所示。與浮點(diǎn)運(yùn)算相比,整數(shù)DCT變換會(huì)引起一些額外的誤差,但因?yàn)镈CT變換后的量化也存在量化誤差,與之相比,整數(shù)DCT變換引起的量化誤差影響并不大。此外,整數(shù)DCT變換還具有減少運(yùn)算量和復(fù)雜度,有利于向定點(diǎn)DSP移植的優(yōu)點(diǎn)。

  4.量化

  H.264中可選52種不同的量化步長(zhǎng),這與H.263中有31個(gè)量化步長(zhǎng)很相似,但是在H.264中,步長(zhǎng)是以12.5%的復(fù)合率遞進(jìn)的,而不是一個(gè)固定常數(shù)。

  在H.264中,變換系數(shù)的讀出方式也有兩種:之字形(Zigzag)掃描和雙掃描,如圖6所示。大多數(shù)情況下使用簡(jiǎn)單的之字形掃描;雙掃描僅用于使用較小量化級(jí)的塊內(nèi),有助于提高編碼效率。圖6 變換系數(shù)的讀出方式

  5.熵編碼

  視頻編碼處理的最后一步就是熵編碼,在H.264中采用了兩種不同的熵編碼方法:通用可變長(zhǎng)編碼(UVLC)和基于文本的自適應(yīng)二進(jìn)制算術(shù)編碼(CABAC)。

  在H.263等標(biāo)準(zhǔn)中,根據(jù)要編碼的數(shù)據(jù)類(lèi)型如變換系數(shù)、運(yùn)動(dòng)矢量等,采用不同的VLC碼表。H.264中的UVLC碼表提供了一個(gè)簡(jiǎn)單的方法,不管符號(hào)表述什么類(lèi)型的數(shù)據(jù),都使用統(tǒng)一變字長(zhǎng)編碼表。其優(yōu)點(diǎn)是簡(jiǎn)單;缺點(diǎn)是單一的碼表是從概率統(tǒng)計(jì)分布模型得出的,沒(méi)有考慮編碼符號(hào)間的相關(guān)性,在中高碼率時(shí)效果不是很好。

  因此,H.264中還提供了可選的CABAC方法。算術(shù)編碼使編碼和解碼兩邊都能使用所有句法元素(變換系數(shù)、運(yùn)動(dòng)矢量)的概率模型。為了提高算術(shù)編碼的效率,通過(guò)內(nèi)容建模的過(guò)程,使基本概率模型能適應(yīng)隨視頻幀而改變的統(tǒng)計(jì)特性。內(nèi)容建模提供了編碼符號(hào)的條件概率估計(jì),利用合適的內(nèi)容模型,存在于符號(hào)間的相關(guān)性可以通過(guò)選擇要編碼符號(hào)鄰近的已編碼符號(hào)的相應(yīng)概率模型來(lái)去除,不同的句法元素通常保持不同的模型

  H.264的目標(biāo)應(yīng)用涵蓋了大部分的視頻服務(wù),如有線電視遠(yuǎn)程監(jiān)控、交互媒體、數(shù)字電視、視頻會(huì)議、視頻點(diǎn)播、流媒體服務(wù)等。

  H.264為解決不同應(yīng)用中的網(wǎng)絡(luò)傳輸?shù)牟町?。定義了兩層:視頻編碼層(VCL:Video Coding Layer)負(fù)責(zé)高效的視頻內(nèi)容表示,網(wǎng)絡(luò)提取層(NAL:Network AbstractionLayer)負(fù)責(zé)以網(wǎng)絡(luò)所要求的恰當(dāng)?shù)姆绞綄?duì)數(shù)據(jù)進(jìn)行打包和傳送(如圖所示: 標(biāo)準(zhǔn)的整體框架)。

標(biāo)準(zhǔn)的整體框架

  基本層次(Baseline Profile):該層次使用了H.264的除了B-Slices,CABAC以及交織編碼模式外所有的特性。該層次主要使用于低時(shí)延的實(shí)時(shí)應(yīng)用場(chǎng)合。

  主要層次(Main Profile):包含Baseline profile的所有特性,并包括了B-slices,CABAC以及交織編碼模式。它主要針對(duì)對(duì)時(shí)延要求不高,當(dāng)壓縮率和質(zhì)量要求較高的場(chǎng)合。

  擴(kuò)展層次(Profile X):支持所有Baseline profile的特性,但不支持CABAC以及基于宏塊的自適應(yīng)幀場(chǎng)編碼。該層次主要針對(duì)的時(shí)各種網(wǎng)絡(luò)視頻流傳輸方面的應(yīng)用。

  1.分層設(shè)計(jì) H.264的算法在概念上可以分為兩層:視頻編碼層負(fù)責(zé)高效的視頻內(nèi)容表示,網(wǎng)絡(luò)提取層(NAL:Network Abstraction Layer)負(fù)責(zé)以網(wǎng)絡(luò)所要求的恰當(dāng)?shù)姆绞綄?duì)數(shù)據(jù)進(jìn)行打包和傳送。在VCL和NAL之間定義了一個(gè)基于分組方式的接口,打包和相應(yīng)的信令屬于NAL的一部分。這樣,高編碼效率和網(wǎng)絡(luò)友好性的任務(wù)分別由VCL和NAL來(lái)完成。

  VCL層包括基于塊的運(yùn)動(dòng)補(bǔ)償混合編碼和一些新特性。與前面的視頻編碼標(biāo)準(zhǔn)一樣,H.264沒(méi)有把前處理和后處理等功能包括在草案中,這樣可以增加標(biāo)準(zhǔn)的靈活性。

  NAL負(fù)責(zé)使用下層網(wǎng)絡(luò)的分段格式來(lái)封裝數(shù)據(jù),包括組幀、邏輯信道的信令、定時(shí)信息的利用或序列結(jié)束信號(hào)等。例如,NAL支持視頻在電路交換信道上的傳輸格式,支持視頻在Internet上利用RTP/UDP/IP傳輸?shù)母袷?。NAL包括自己的頭部信息、段結(jié)構(gòu)信息和實(shí)際載荷信息,即上層的VCL數(shù)據(jù)。(如果采用數(shù)據(jù)分割技術(shù),數(shù)據(jù)可能由幾個(gè)部分組成)。

  2.高精度、多模式運(yùn)動(dòng)估計(jì)

  H.264支持1/4或1/8像素精度的運(yùn)動(dòng)矢量。在1/4像素精度時(shí)可使用6抽頭濾波器來(lái)減少高頻噪聲,對(duì)于1/8像素精度的運(yùn)動(dòng)矢量,可使用更為復(fù)雜的8抽頭的濾波器。在進(jìn)行運(yùn)動(dòng)估計(jì)時(shí),編碼器還可選擇"增強(qiáng)"內(nèi)插濾波器來(lái)提高預(yù)測(cè)的效果。

  在H.264的運(yùn)動(dòng)預(yù)測(cè)中,一個(gè)宏塊(MB)可以按圖2被分為不同的子塊,形成7種不同模式的塊尺寸。這種多模式的靈活和細(xì)致的劃分,更切合圖像中實(shí)際運(yùn)動(dòng)物體的形狀,大大提高了運(yùn)動(dòng)估計(jì)的精確程度。在這種方式下,在每個(gè)宏塊中可以包含有1、2、4、8或16個(gè)運(yùn)動(dòng)矢量。在H.264中,允許編碼器使用多于一幀的先前幀用于運(yùn)動(dòng)估計(jì),這就是所謂的多幀參考技術(shù)。例如2幀或3幀剛剛編碼好的參考幀,編碼器將選擇對(duì)每個(gè)目標(biāo)宏塊能給出更好的預(yù)測(cè)幀,并為每一宏塊指示是哪一幀被用于預(yù)測(cè)。

  3.4×4塊的整數(shù)變換

  H.264與先前的標(biāo)準(zhǔn)相似,對(duì)殘差采用基于塊的變換編碼,但變換是整數(shù)操作而不是實(shí)數(shù)運(yùn)算,其過(guò)程和DCT基本相似。這種方法的優(yōu)點(diǎn)在于:在編碼器中和解碼器中允許精度相同的變換和反變換,便于使用簡(jiǎn)單的定點(diǎn)運(yùn)算方式。也就是說(shuō),這里沒(méi)有"反變換誤差"。變換的單位是4×4塊,而不是以往常用的8×8塊。由于用于變換塊的尺寸縮小,運(yùn)動(dòng)物體的劃分更精確,這樣,不但變換計(jì)算量比較小,而且在運(yùn)動(dòng)物體邊緣處的銜接誤差也大為減小。為了使小尺寸塊的變換方式對(duì)圖像中較大面積的平滑區(qū)域不產(chǎn)生塊之間的灰度差異,可對(duì)幀內(nèi)宏塊亮度數(shù)據(jù)的16個(gè)4×4塊的DC系數(shù)(每個(gè)小塊一個(gè),共16個(gè))進(jìn)行第二次4×4塊的變換,對(duì)色度數(shù)據(jù)的4個(gè)4×4塊的DC系數(shù)(每個(gè)小塊一個(gè),共4個(gè))進(jìn)行2×2塊的變換。

  H.264為了提高碼率控制的能力,量化步長(zhǎng)的變化的幅度控制在12.5%左右,而不是以不變的增幅變化。變換系數(shù)幅度的歸一化被放在反量化過(guò)程中處理以減少計(jì)算的復(fù)雜性。為了強(qiáng)調(diào)彩色的逼真性,對(duì)色度系數(shù)采用了較小量化步長(zhǎng)。

  4.統(tǒng)一的VLC

  H.264中熵編碼有兩種方法,一種是對(duì)所有的待編碼的符號(hào)采用統(tǒng)一的VLC(UVLC :Universal VLC),另一種是采用內(nèi)容自適應(yīng)的二進(jìn)制算術(shù)編碼(CABAC:Context-Adaptive Binary Arithmetic Coding)。CABAC是可選項(xiàng),其編碼性能比UVLC稍好,但計(jì)算復(fù)雜度也高。UVLC使用一個(gè)長(zhǎng)度無(wú)限的碼字集,設(shè)計(jì)結(jié)構(gòu)非常有規(guī)則,用相同的碼表可以對(duì)不同的對(duì)象進(jìn)行編碼。這種方法很容易產(chǎn)生一個(gè)碼字,而解碼器也很容易地識(shí)別碼字的前綴,UVLC在發(fā)生比特錯(cuò)誤時(shí)能快速獲得重同步。

  5.幀內(nèi)預(yù)測(cè)

  在先前的H.26x系列和MPEG-x系列標(biāo)準(zhǔn)中,都是采用的幀間預(yù)測(cè)的方式。在H.264中,當(dāng)編碼Intra圖像時(shí)可用幀內(nèi)預(yù)測(cè)。對(duì)于每個(gè)4×4塊(除了邊緣塊特別處置以外),每個(gè)像素都可用17個(gè)最接近的先前已編碼的像素的不同加權(quán)和(有的權(quán)值可為0)來(lái)預(yù)測(cè),即此像素所在塊的左上角的17個(gè)像素。顯然,這種幀內(nèi)預(yù)測(cè)不是在時(shí)間上,而是在空間域上進(jìn)行的預(yù)測(cè)編碼算法,可以除去相鄰塊之間的空間冗余度,取得更為有效的壓縮。

  按照所選取的預(yù)測(cè)參考的點(diǎn)不同,亮度共有9類(lèi)不同的模式,但色度的幀內(nèi)預(yù)測(cè)只有1類(lèi)模式。

  6.面向IP和無(wú)線環(huán)境

  H.264 草案中包含了用于差錯(cuò)消除的工具,便于壓縮視頻在誤碼、丟包多發(fā)環(huán)境中傳輸,如移動(dòng)信道或IP信道中傳輸?shù)慕研浴?/p>

  為了抵御傳輸差錯(cuò),H.264視頻流中的時(shí)間同步可以通過(guò)采用幀內(nèi)圖像刷新來(lái)完成,空間同步由條結(jié)構(gòu)編碼(slice structured coding)來(lái)支持。同時(shí)為了便于誤碼以后的再同步,在一幅圖像的視頻數(shù)據(jù)中還提供了一定的重同步點(diǎn)。另外,幀內(nèi)宏塊刷新和多參考宏塊允許編碼器在決定宏塊模式的時(shí)候不僅可以考慮編碼效率,還可以考慮傳輸信道的特性。

  除了利用量化步長(zhǎng)的改變來(lái)適應(yīng)信道碼率外,在H.264中,還常利用數(shù)據(jù)分割的方法來(lái)應(yīng)對(duì)信道碼率的變化。從總體上說(shuō),數(shù)據(jù)分割的概念就是在編碼器中生成具有不同優(yōu)先級(jí)的視頻數(shù)據(jù)以支持網(wǎng)絡(luò)中的服務(wù)質(zhì)量QoS。例如采用基于語(yǔ)法的數(shù)據(jù)分割(syntax-based data partitioning)方法,將每幀數(shù)據(jù)的按其重要性分為幾部分,這樣允許在緩沖區(qū)溢出時(shí)丟棄不太重要的信息。還可以采用類(lèi)似的時(shí)間數(shù)據(jù)分割(temporal data partitioning)方法,通過(guò)在P幀和B幀中使用多個(gè)參考幀來(lái)完成。

  在無(wú)線通信的應(yīng)用中可以通過(guò)改變每一幀的量化精度或空間/時(shí)間分辨率來(lái)支持無(wú)線信道的大比特率變化。可是,在多播的情況下,要求編碼器對(duì)變化的各種比特率進(jìn)行響應(yīng)是不可能的。因此,不同于MPEG-4中采用的精細(xì)分級(jí)編碼FGS(Fine Granular Scalability)的方法(效率比較低),H.264采用流切換的SP幀來(lái)代替分級(jí)編碼。

  由于藍(lán)光格式的統(tǒng)一,使得市面上絕大多數(shù)的高清視頻均是采用H.264的格式編碼,它又分為四個(gè)最主要步驟,分別是流處理,逆變換,動(dòng)態(tài)補(bǔ)償,去方塊濾波,這四步也是資源消耗的主要四個(gè)部分。

  H.264解碼的四個(gè)步驟中的第一步“CAVLC/CABAC解碼”是最為消耗運(yùn)算資源,這方面遠(yuǎn)高于其他三步(簡(jiǎn)單的說(shuō),CAVLC/CABAC是H.264編碼規(guī)范中兩種不同的算法,都是為了提高壓縮比,其中CABAC比CAVLC壓縮率更高,但解碼時(shí)自然也要求更高)。

  如果所有四個(gè)步驟全采用處理器純軟件解碼運(yùn)算,當(dāng)碰上HDDVD版本的高碼率H.264視頻,處理器的負(fù)載會(huì)非常巨大,即使能流暢播放高清視頻,也會(huì)因?yàn)樘幚砥鲏毫^(guò)重而影響其他同時(shí)開(kāi)啟的應(yīng)用程序的執(zhí)行效率。

  如果讓處理器解碼“CAVLC/CABAC解碼”和“反向轉(zhuǎn)換(Inverse Transformation)”兩部分,由顯示核心承擔(dān)“運(yùn)動(dòng)補(bǔ)償”和“解碼去塊”功能,則可以在一定程度上降低處理器的壓力。不過(guò)對(duì)于使用單核處理器或低端雙核處理器的用戶(hù)來(lái)說(shuō),這依然無(wú)法很好的應(yīng)付這類(lèi)視頻;其次,碰上編碼率更高的視頻,依然會(huì)給處理器造成很大的處理難度,導(dǎo)致視頻播放的不確定性,可能消費(fèi)者會(huì)遇到某些視頻可以流暢播放,但是有些視頻卻丟幀的情況。

  冗余處理

  H.264與以前的國(guó)際標(biāo)準(zhǔn)如H.263和MPEG-4相比,為達(dá)到高效的壓縮,充分利用了各種冗余,統(tǒng)計(jì)冗余和視覺(jué)生理冗余。

  1.統(tǒng)計(jì)冗余:頻譜冗余(指色彩分量之間的相關(guān)性),空間冗余,還有時(shí)間冗余。這是視頻壓縮區(qū)別于靜止圖像的根本點(diǎn),視頻壓縮主要利用時(shí)間冗余來(lái)實(shí)現(xiàn)大的壓縮比。

  2.視覺(jué)生理冗余視覺(jué)生理冗余是由于人類(lèi)的視覺(jué)系統(tǒng)(HVS)特性造成的,比如人眼對(duì)色彩分量的高頻分量沒(méi)有對(duì)亮度分量的高頻分量敏感,對(duì)圖像高頻(即細(xì)節(jié))處的噪聲不敏感等。

  針對(duì)這些冗余,視頻壓縮算法采用了不同的方法加以利用,但主要的考慮是集中在空間冗余和時(shí)間冗余上。H.264也采用混合(hybrid)結(jié)構(gòu),即對(duì)空間冗余和時(shí)間冗余分別進(jìn)行處理。對(duì)空間冗余,標(biāo)準(zhǔn)通過(guò)變換及量化達(dá)到消除的目的,這樣編碼的幀叫I幀;而時(shí)間冗余則是通過(guò)幀間預(yù)測(cè),即運(yùn)動(dòng)估計(jì)和補(bǔ)償來(lái)去除,這樣編碼的幀叫P幀或B幀。與以前標(biāo)準(zhǔn)不同的是,H.264在編碼I幀時(shí),采用了幀內(nèi)預(yù)測(cè),然后對(duì)預(yù)測(cè)誤差進(jìn)行編碼。這樣就充分利用了空間相關(guān)性,提高了編碼效率。H.264幀內(nèi)預(yù)測(cè)以16x16的宏塊為基本單位。首先,編碼器將與當(dāng)前宏塊同一幀的鄰近像素作為參考,產(chǎn)生對(duì)當(dāng)前宏塊的預(yù)測(cè)值,然后對(duì)預(yù)測(cè)殘差進(jìn)行變換與量化,再對(duì)變換與量化后的結(jié)果做熵編碼。熵編碼的結(jié)果就可以形成碼流了。由于在解碼器端能夠得到的參考數(shù)據(jù)都是經(jīng)過(guò)反變換與反量化后的重建圖像,因此為了使編解碼一致,編碼器端用于預(yù)測(cè)的參考數(shù)據(jù)就和解碼器端一樣,也是經(jīng)過(guò)反變換與反量化后的重建圖像。

 市場(chǎng)

  按編解碼功能劃分,H.264市場(chǎng)可劃分為解碼市場(chǎng)、編碼市場(chǎng)。

  解碼

  H.264解碼產(chǎn)品,主要有:支持H.264標(biāo)準(zhǔn)的解碼集成電路,含專(zhuān)用解碼芯片和系統(tǒng)芯片SoC;支持H.264標(biāo)準(zhǔn)的解碼軟件,用于各類(lèi)電子產(chǎn)品。

  最先大規(guī)模采用H.264解碼芯片的,是衛(wèi)星高清機(jī)頂盒。由于H.264技術(shù)能夠顯著提高壓縮效率,一個(gè)衛(wèi)星轉(zhuǎn)發(fā)器發(fā)送的高清電視節(jié)目,可以從過(guò)去的1個(gè)頻道增加到3個(gè)頻道(配合DVB-S2等新型傳輸技術(shù)),故美國(guó)及歐洲的衛(wèi)星運(yùn)營(yíng)商從2004年起相繼采用H.264解碼芯片。至今,支持H.264標(biāo)準(zhǔn),已經(jīng)成為各類(lèi)高清機(jī)頂盒SoC芯片的標(biāo)準(zhǔn)配置,且被高清電視機(jī)的SoC芯片廣泛采用。

  隨著互聯(lián)網(wǎng)視頻服務(wù)的快速崛起,各類(lèi)智能電子設(shè)備都陸續(xù)支持視頻網(wǎng)絡(luò)下載及播放。H.264標(biāo)準(zhǔn)一直是網(wǎng)絡(luò)視頻的主要壓縮技術(shù)之一,且在又有逐步取代Flash視頻格式的發(fā)展趨勢(shì)。其主要支持者,是微軟的IE瀏覽器和蘋(píng)果公司的系列產(chǎn)品,前者保證了H.264在桌面設(shè)備市場(chǎng)的優(yōu)勢(shì),后者保證了H.264在便攜設(shè)備市場(chǎng)的優(yōu)勢(shì)。

  然而,由于谷歌公司決定在其新一代瀏覽器Chrome中支持新的視頻編解碼技術(shù)WebM、而不支持H.264,使得H.264在網(wǎng)絡(luò)視頻市場(chǎng)的前景受到很大的挑戰(zhàn)。

  編碼

  由于H.264出色的編碼效率,使其很快就被以視頻監(jiān)控設(shè)備為主體的編碼設(shè)備市場(chǎng)所接受。H.264高效的編碼效率,對(duì)相同視頻節(jié)目占用較小的網(wǎng)絡(luò)帶寬和存儲(chǔ)空間。

  H.264編碼器的主要指標(biāo)有:支持的分辨率和幀率,編碼延時(shí),編碼碼流兼容性,碼流控制精度等指標(biāo)。大部分編碼器分辨率支持到1920X1080,幀率為25幀(PAL)或者30幀(N制),編碼延時(shí)在200毫秒以上。

 錯(cuò)誤恢復(fù)

  錯(cuò)誤恢復(fù)的工具隨著視頻壓縮編碼技術(shù)的提高在不斷改進(jìn)。舊的標(biāo)準(zhǔn)(H.261、H263、MPEG-2的第二部分)中,使用片和宏塊組的劃分、幀內(nèi)編碼宏 塊、幀內(nèi)編碼片和幀內(nèi)編碼圖像來(lái)防止錯(cuò)誤的擴(kuò)散。之后改進(jìn)的標(biāo)準(zhǔn)(H.263+、MPEG-4)中,使用多幀參考和數(shù)據(jù)分割技術(shù)來(lái)恢復(fù)錯(cuò)誤。

  H.264標(biāo)準(zhǔn)在以前的基礎(chǔ)上提出了三種關(guān)鍵技術(shù):(1)參數(shù)集合,(2) 靈活的宏塊次序(FMO),(3)冗余片(RS)來(lái)進(jìn)行錯(cuò)誤的恢復(fù)。

  幀內(nèi)編碼

  H.264中幀內(nèi)編碼的技術(shù)和以前標(biāo)準(zhǔn)一樣,值得注意的是:

  (1)H.264中的幀內(nèi)預(yù)測(cè)編碼宏塊的參考宏塊可以是幀間編碼宏塊,幀內(nèi)預(yù)測(cè)宏塊并不像H.263中的幀內(nèi)編碼一樣,而采用預(yù)測(cè)的幀內(nèi)編碼比非預(yù)測(cè)的幀 內(nèi)編碼有更好的編碼效率,但減少了幀內(nèi)編碼的重同步性能,可以通過(guò)設(shè)置限制幀內(nèi)預(yù)測(cè)標(biāo)記來(lái)恢復(fù)這一性能。

  (2)只包含幀內(nèi)宏塊的片有兩種,一種是幀內(nèi)片(Islice),一種是立即刷新片(IDRslice),立即刷新片必存在于立即刷新圖像 (IDRpicture)中。與短期參考圖像相比,立即刷新圖像有更強(qiáng)壯的重同步性能。在無(wú)線IP網(wǎng)絡(luò)環(huán)境下,為了提高幀內(nèi)圖像的重同步性能,要采用率失真優(yōu)化編碼和設(shè)置限制幀內(nèi)預(yù)測(cè)標(biāo)記。

  圖像分割

  H.264支持一幅圖像劃分成片,片中宏塊的數(shù)目是任意的。在非FMO模式下,片中的宏塊次序是同光柵掃描順序,F(xiàn)MO模式下比較特殊。片的劃分可以適配不同的MTU尺寸,也可以用來(lái)交織分組打包。

  參考圖像選擇

  參考圖像數(shù)據(jù)選擇,不論是基于宏塊、基于片,還是基于幀,都是錯(cuò)誤恢復(fù)的有效工具。對(duì)于有反饋的系統(tǒng),編碼器獲得傳輸中丟失圖像區(qū)域的信息后,參考圖像可 以選擇解碼已經(jīng)正確接收的圖像對(duì)應(yīng)的原圖像區(qū)域作參考。在沒(méi)有反饋的系統(tǒng)中,將會(huì)使用冗余的編碼來(lái)增加錯(cuò)誤恢復(fù)性能。

  數(shù)據(jù)劃分

  通常情況下,一個(gè)宏塊的數(shù)據(jù)是存放在一起而組成片的,數(shù)據(jù)劃分使得一個(gè)片中的宏塊數(shù)據(jù)重新組合,把宏塊語(yǔ)義相關(guān)的數(shù)據(jù)組成一個(gè)劃分,由劃分來(lái)組裝片。在H.264中有三種不同的數(shù)據(jù)劃分。

  頭信息劃分:包含片中宏塊的類(lèi)型,量化參數(shù)和運(yùn)動(dòng)矢量,是片中最重要的信息。

  幀內(nèi)信息劃分:包含幀內(nèi)CBPs和幀內(nèi)系數(shù),幀內(nèi)信息可以阻止錯(cuò)誤的蔓延。

  幀間信息劃分:包含幀間CBPs和幀間系數(shù),通常比前兩個(gè)劃分要大得多。幀內(nèi)信息劃分結(jié)合頭信息解出幀內(nèi)宏塊,幀間信息劃分結(jié)合頭信息解出幀間宏塊。

  幀間信息劃分的重要性最低,對(duì)重同步?jīng)]有貢獻(xiàn)。當(dāng)使用數(shù)據(jù)劃分時(shí),片中的數(shù)據(jù)根據(jù)其類(lèi)型被保存到不同的緩存,同時(shí)片的大小也要調(diào)整,使得片中最大的劃分小于MTU尺寸。解碼端若獲得所有的劃分,就可以完整重構(gòu)片;解碼端若發(fā)現(xiàn)幀內(nèi)信息或幀間信息劃分丟失,可用的頭信息仍然有很好的錯(cuò)誤恢復(fù)性能。這是因?yàn)楹陦K類(lèi)型和宏塊的運(yùn)動(dòng)矢量含有宏塊的基本特征。

  使用參數(shù)集

  序列的參數(shù)集(SPS)包括了一個(gè)圖像序列的所有信息,圖像的參數(shù)集(PPS)包括了一個(gè)圖像所有片的信息。多個(gè)不同的序列和圖像參數(shù)集經(jīng)排序存放在解碼 器。編碼器參考序列參數(shù)集設(shè)置圖像參數(shù)集,依據(jù)每一個(gè)已編碼片的片頭的存儲(chǔ)地址選擇合適的圖像參數(shù)集來(lái)使用。對(duì)序列的參數(shù)和圖像的參數(shù)進(jìn)行重點(diǎn)保護(hù)才能很 好地增強(qiáng)H.264錯(cuò)誤恢復(fù)性能。

  在差錯(cuò)信道中使用參數(shù)集的關(guān)鍵是保證參數(shù)集及時(shí)、可靠地到達(dá)解碼端。例如,在實(shí)時(shí)信道中,編碼器用可靠控制協(xié)議及早將他們以帶外傳輸?shù)姆绞桨l(fā)送,使控制協(xié) 議能夠在引用新參數(shù)的第一個(gè)片到達(dá)之前把它們發(fā)給解碼器;另外一個(gè)辦法就是使用應(yīng)用層保護(hù),重發(fā)多個(gè)備份文件,確保至少有一個(gè)備份數(shù)據(jù)到達(dá)解碼端;第三個(gè) 辦法就是在編解碼器的硬件中固化參數(shù)集設(shè)置。

  宏塊次序(FMO)

  靈活的宏塊次序是H.264的一大特色,通過(guò)設(shè)置宏塊次序映射表(MBAmap)來(lái)任意地指配宏塊到不同的片組,F(xiàn)MO模式打亂了原宏塊順序,降低了編碼 效率,增加了時(shí)延,但增強(qiáng)了抗誤碼性能。FMO模式劃分圖像的模式各種各樣,重要的有棋盤(pán)模式、矩形模式等。當(dāng)然FMO模式也可以使一幀中的宏塊順序分 割,使得分割后的片的大小小于無(wú)線網(wǎng)絡(luò)的MTU尺寸。經(jīng)過(guò)FMO模式分割后的圖像數(shù)據(jù)分開(kāi)進(jìn)行傳輸,以棋盤(pán)模式為例,當(dāng)一個(gè)片組的數(shù)據(jù)丟失時(shí)可用另一個(gè)片 組的數(shù)據(jù)(包含丟失宏塊的相鄰宏塊信息)進(jìn)行錯(cuò)誤掩蓋。實(shí)驗(yàn)數(shù)據(jù)顯示,當(dāng)丟失率為(視頻會(huì)議應(yīng)用時(shí))10%時(shí),經(jīng)錯(cuò)誤掩蓋后的圖像仍然有很高的質(zhì) 量。

  冗余片方法

  前邊提到了當(dāng)使用無(wú)反饋的系統(tǒng)時(shí),就不能使用參考幀選擇的方法來(lái)進(jìn)行錯(cuò)誤恢復(fù),應(yīng)該在編碼時(shí)增加冗余的片來(lái)增強(qiáng)抗誤碼性能。要注意的是這些冗余片的編碼參 數(shù)與非冗余片的編碼參數(shù)不同,也就是用一個(gè)模糊的冗余片附加在一個(gè)清晰的片之后。在解碼時(shí)先解清晰的片,如果其可用就丟棄冗余片;否則使用冗余模糊片來(lái)重 構(gòu)圖像。

 優(yōu)勢(shì)

  1.低碼率(Low Bit Rate):和MPEG2和MPEG4 ASP等壓縮技術(shù)相比,在同等圖像質(zhì)量下,采用H.264技術(shù)壓縮后的數(shù)據(jù)量只有MPEG2的1/8,MPEG4的1/3。

  2.高質(zhì)量的圖象:H.264能提供連續(xù)、流暢的高質(zhì)量圖象(DVD質(zhì)量)。

  3.容錯(cuò)能力強(qiáng):H.264提供了解決在不穩(wěn)定網(wǎng)絡(luò)環(huán)境下容易發(fā)生的丟包等錯(cuò)誤的必要工具。

  4.網(wǎng)絡(luò)適應(yīng)性強(qiáng):H.264提供了網(wǎng)絡(luò)抽象層(Network Abstraction Layer),使得H.264的文件能容易地在不同網(wǎng)絡(luò)上傳輸(例如互聯(lián)網(wǎng),CDMA,GPRS,WCDMA,CDMA2000等)。

  H.264最大的優(yōu)勢(shì)是具有很高的數(shù)據(jù)壓縮比率,在同等圖像質(zhì)量的條件下,H.264的壓縮比是MPEG-2的2倍以上,是MPEG-4的1.5~2倍。舉個(gè)例子,原始文件的大小如果為88GB,采用MPEG-2壓縮標(biāo)準(zhǔn)壓縮后變成3.5GB,壓縮比為25∶1,而采用H.264壓縮標(biāo)準(zhǔn)壓縮后變?yōu)?79MB,從88GB到879MB,H.264的壓縮比達(dá)到驚人的102∶1。低碼率(Low Bit Rate)對(duì)H.264的高的壓縮比起到了重要的作用,和MPEG-2和MPEG-4 ASP等壓縮技術(shù)相比,H.264壓縮技術(shù)將大大節(jié)省用戶(hù)的下載時(shí)間和數(shù)據(jù)流量收費(fèi)。尤其值得一提的是,H.264在具有高壓縮比的同時(shí)還擁有高質(zhì)量流暢的圖像,正因?yàn)槿绱?,?jīng)過(guò)H.264壓縮的視頻數(shù)據(jù),在網(wǎng)絡(luò)傳輸過(guò)程中所需要的帶寬更少,也更加經(jīng)濟(jì)。

  H.264/AVC/MPEG-4 第 10 部分包含一些新功能,使它比舊標(biāo)準(zhǔn)更多有效地壓縮視頻,為各種網(wǎng)絡(luò)環(huán)境中的應(yīng)用提供更大的靈活性。尤其是,一些這類(lèi)關(guān)鍵功能包括:

  多畫(huà)面間圖片預(yù)測(cè)包括以下功能:

  以前使用圖片作為編碼引用更靈活的方式,比在過(guò)去的標(biāo)準(zhǔn),允許達(dá) 16 參考幀 (或 32 引用字段,在交錯(cuò)編碼的情況下),在某些情況下使用。這就是與先前的標(biāo)準(zhǔn),不同地方限制通常之一 ;或常規(guī)"B 圖片"(B-幀),兩個(gè)。此特定功能通常允許適度的改進(jìn)的比特率和質(zhì)量在大多數(shù)場(chǎng)景中。但在某些類(lèi)型的場(chǎng)面,例如那些與重復(fù)的動(dòng)作或背部來(lái)回現(xiàn)場(chǎng)削減或被揭露的背景區(qū)域,它允許比特率顯著減少,同時(shí)保持清晰。

  可變塊大小運(yùn)動(dòng)補(bǔ)償(分塊) 與大為 16 × 16 和 4 × 4,使精確的運(yùn)動(dòng)區(qū)域分割為小塊大小。支持的 luma 預(yù)測(cè)塊大小包括 16 × 16、 16 × 8、 8 × 16、 8 × 8、 8 × 4、 4 × 8 和 4 × 4,其中許多可以在單個(gè)宏塊一起使用。色度預(yù)測(cè)塊大小是根據(jù)色度抽樣在使用相應(yīng)地變小。

  與最大值 32 在建造的 16 B 宏塊的情況下使用每個(gè)宏塊 (一個(gè)或兩個(gè)每個(gè)分區(qū)) 的多個(gè)運(yùn)動(dòng)矢量的能力 4 × 4 分區(qū)。運(yùn)動(dòng)向量的每個(gè) 8 × 8 或更大的分區(qū)區(qū)域可以指向不同的參考圖片。

  在B 幀,包括宏-塊,從而導(dǎo)致更多有效的編碼使用 B 幀時(shí)使用任何宏塊類(lèi)型的能力。此功能尤其是漏掉了從MPEG-4 ASP.

  六個(gè)水龍頭篩選半 pel luma樣本預(yù)測(cè),更鋒利的亞像素運(yùn)動(dòng)補(bǔ)償?shù)耐茖?dǎo)。季像素運(yùn)動(dòng)是由線性插值法的 halfpel 值,以節(jié)省電能,處理派生的。

  季像素精度運(yùn)動(dòng)補(bǔ)償,使移動(dòng)領(lǐng)域的位移的精確描述。為色度分辨率通常是減半兩個(gè)垂直和水平方向 (見(jiàn)4:2:0) 因此色度的運(yùn)動(dòng)補(bǔ)償使用八分之一色度像素網(wǎng)格單位。

  加權(quán)的預(yù)測(cè),允許一個(gè)編碼器,以執(zhí)行運(yùn)動(dòng)補(bǔ)償時(shí), 指定縮放和偏移量的使用,并提供一個(gè)重要的好處,在特殊情況下的性能 — — 到黑色淡入淡出、 淡入和跨-淡入淡出的過(guò)渡等。這包括 B-幀,隱式加權(quán)的預(yù)測(cè)和顯式加權(quán)預(yù)測(cè)為 P 幀。

  空間預(yù)測(cè)從邊緣的相鄰塊的"內(nèi)部"編碼,而不是在MPEG-2中找到的"直流"僅預(yù)測(cè)部分 2 和變換系數(shù)預(yù)測(cè)在H.263v2和 MPEG-4 部分 2 中找到。這包括 16 × 16、 8 × 8 和 4 × 4 (其中只有一種類(lèi)型可以被用在每個(gè)宏塊內(nèi)的 luma 預(yù)測(cè)塊大小).

  無(wú)損的宏塊編碼功能,其中包括:

  無(wú)損"PCM 宏塊"的代表性模式直接代表視頻數(shù)據(jù)樣本,允許特定區(qū)域的完美代表和允許一個(gè)嚴(yán)格的限制,放在每個(gè)宏塊的編碼數(shù)據(jù)的數(shù)量。

  增強(qiáng)無(wú)損宏塊的代表性模式允許特定區(qū)域時(shí)通常使用比 PCM 模式極大地少量位完美地再現(xiàn)。

  靈活的隔行掃描-掃描視頻編碼功能,其中包括:

  宏塊自適應(yīng)幀-字段 (MBAFF) 編碼、 編碼為 16 × 16 宏塊允許在域模式下 (與 MPEG-2,凡在被編碼為一個(gè)幀的圖片加工場(chǎng)模式結(jié)果在加工中 16 × 8 半宏塊相比) 的幀的圖片使用宏塊的雙結(jié)構(gòu)。

  圖片自適應(yīng)幀字段編碼 (每或 PicAFF) 允許自由地選擇的混合的圖片編碼在這兩個(gè)字段組合在一起進(jìn)行編碼或作為個(gè)別單一字段要么作為完整的幀。

  新變換設(shè)計(jì)功能,包括:

  精確匹配整數(shù) 4 × 4 塊空間變換,允許精確地放置的殘余信號(hào)很少的"響"經(jīng)常發(fā)現(xiàn)與事先編解碼器的設(shè)計(jì)。這種設(shè)計(jì)是在概念上類(lèi)似于知名的離散余弦變換 (DCT),介紹了在 1974 年由N.艾哈邁德、 T.Natarajan 和 K.R.Rao,這是引文 1 中的離散余弦變換。然而,它是簡(jiǎn)化和作出提供確切地指定解碼。

  精確匹配整數(shù) 8 × 8 塊空間變換,允許高度相關(guān)的地區(qū)要壓縮更有效地比與 4 × 4 變換。這種設(shè)計(jì)是在概念上類(lèi)似于知名離散余弦變換,但簡(jiǎn)化并作出提供確切地指定解碼。

  自適應(yīng)編碼器選擇之間的 4 × 4 和 8 × 8 的變換塊大小的整數(shù)轉(zhuǎn)換操作。

  中學(xué)的阿達(dá)瑪變換應(yīng)用于色度 DC 系數(shù) (和也luma中一種特殊情況),獲取更多壓縮在光滑的區(qū)域的主空間變換的"DC"系數(shù)上執(zhí)行。

  量化設(shè)計(jì)包括:

  對(duì)數(shù)步大小控制更容易位率管理由編碼器和簡(jiǎn)化逆量化縮放

  縮放矩陣由基于感性的量化優(yōu)化編碼器選擇自定義的頻率量化

  有助于防止對(duì)其他DCT常見(jiàn)的阻塞工件中循環(huán)去塊效應(yīng)濾波器-基于圖像壓縮技術(shù),從而更好地視覺(jué)外觀和壓縮效率

  熵編碼設(shè)計(jì)包括:

  上下文自適應(yīng)二進(jìn)制算術(shù)編碼(算術(shù)) 算法對(duì)無(wú)損壓縮的語(yǔ)法元素在視頻流知道在給定的上下文中的語(yǔ)法元素的概率。算術(shù)比 CAVLC 更有效地壓縮數(shù)據(jù),但需要更多的處理進(jìn)行解碼。

  上下文自適應(yīng)可變長(zhǎng)度編碼(CAVLC),這是較低復(fù)雜性替代的算術(shù)編碼量化的變換系數(shù)值。雖然比算術(shù),CAVLC 更低的復(fù)雜性是更詳細(xì)和更有效率比通常用于將代碼系數(shù)在其他事先設(shè)計(jì)的方法。

  一種常用簡(jiǎn)單和高度結(jié)構(gòu)化變長(zhǎng)編碼(VLC) 技術(shù)為許多不通過(guò)算術(shù)或 CAVLC,稱(chēng)為指數(shù)-戈隆布編碼(或哥倫布) 編碼的語(yǔ)法元素。

  損失復(fù)原功能包括:

  允許相同的視頻語(yǔ)法要在許多網(wǎng)絡(luò)環(huán)境中使用的網(wǎng)絡(luò)抽象層(宇) 定義。H.264 的一個(gè)非?;镜脑O(shè)計(jì)概念是以生成自包含的數(shù)據(jù)包,若要?jiǎng)h除標(biāo)題重復(fù)和 MPEG-4 頭擴(kuò)展代碼 (港燈)。這被通過(guò)解耦信息有關(guān)的多個(gè)切片從媒體流。更高級(jí)別的參數(shù)的組合稱(chēng)為一個(gè)參數(shù)集。H.264 規(guī)格包括兩種類(lèi)型的參數(shù)設(shè)置: 序列參數(shù)設(shè)置 (SPS) 和圖片參數(shù)設(shè)置 (PPS)。設(shè)置仍保持不變?cè)诰幋a的視頻序列,整個(gè)活動(dòng)序列參數(shù)和活動(dòng)圖片參數(shù)設(shè)置仍保持不變內(nèi)編碼的圖片。序列和圖像參數(shù)集的結(jié)構(gòu)包含如圖片大小,可選編碼模式被雇用和宏塊到切片組映射信息。

  靈活宏塊排序(FMO),也稱(chēng)為切片組和任意切片訂購(gòu) (ASO),這是技術(shù)重組訂購(gòu)的基本地區(qū) (塊) 圖片中的表示形式。通常被視為一個(gè)錯(cuò)誤或損失的魯棒性特點(diǎn),魚(yú)類(lèi)統(tǒng)營(yíng)處和麻生太郎還可用于其他目的。

  數(shù)據(jù)分區(qū) (DP),提供的能力,更重要的是并不太重要的語(yǔ)法元素分成不同的數(shù)據(jù)包的數(shù)據(jù)),使不等錯(cuò)誤保護(hù) (UEP) 的應(yīng)用程序和其他類(lèi)型的錯(cuò)誤或損失的魯棒性改進(jìn)功能。

  冗余片 (RS),錯(cuò)誤/丟失的魯棒性功能,允許編碼器發(fā)送額外所代表的圖片 (通常在低保真) 地區(qū),如果主要表示法是損壞或丟失,可以使用。

  幀編號(hào)、 一種功能,允許創(chuàng)建"子序列",通過(guò)額外的照片等圖片,檢測(cè)和隱秘性的整個(gè)圖片,網(wǎng)絡(luò)數(shù)據(jù)包丟失或通道錯(cuò)誤可能會(huì)導(dǎo)致?lián)p失之間可選列入啟用世俗的可擴(kuò)展性。

  切換切片,稱(chēng)為 SP 和硅切片,允許一個(gè)編碼器,以直接一個(gè)解碼器,以跳到正在進(jìn)行的視頻流為這種目的作為視頻流的位率切換和"欺騙模式"操作。當(dāng)解碼器跳進(jìn)視頻流使用 SP/SI 功能的中間時(shí),它可以精確匹配解碼的圖片在那盡管作為引用在切換之前在所有使用不同的圖片或沒(méi)有圖片視頻流中的位置。

  為防止意外仿真的啟動(dòng)代碼,這是特殊序列的編碼的數(shù)據(jù),允許隨機(jī)訪問(wèn)成位流中的位和字節(jié)對(duì)齊方式可以失去字節(jié)同步的系統(tǒng)中恢復(fù)一個(gè)簡(jiǎn)單的自動(dòng)過(guò)程。

  補(bǔ)充增強(qiáng)信息 (SEI) 和視頻可用性信息 (VUI),是額外的信息,可以插入到位流以增強(qiáng)視頻的應(yīng)用,為多種目的。包含 3D 安排的 SEI FPA (幀包裝安排) 消息:

  0: 棋盤(pán)-像素或者是從 L 和 R

  1: 按列交錯(cuò)列變更-L 和 R

  2: 行交替-L 和 R 按行隔行掃描

  3: 并排的-L 是在左邊,右邊 R

  4: 上下-L 是在上面,R 的底部

  5: 幀交替-每個(gè)框架的一個(gè)視圖

  輔助圖片,可以用于這種目的作為alpha 合成.

  支持單色 (4:0:0) 4:2:0、 4:2:2 和 4:4:4色度抽樣(根據(jù)所選的配置文件)。

  示例支持位深度精度從 8 到 14 位每個(gè)樣品 (根據(jù)所選的配置文件)。

  對(duì)個(gè)別顏色進(jìn)行編碼的能力的飛機(jī)作為他們自己的獨(dú)特圖片切片結(jié)構(gòu),宏塊模式、 運(yùn)動(dòng)矢量等,允許編碼器以一種簡(jiǎn)單的并行結(jié)構(gòu)設(shè)計(jì) (支持僅在三個(gè) 4:4:4 能夠配置文件)。

  圖片順序計(jì)數(shù)、 可以使保持的圖片和隔絕計(jì)時(shí)信息,允許進(jìn)行的計(jì)時(shí)信息的解碼圖片中的樣本值排序的功能和控制/改變了單獨(dú)的系統(tǒng)而不會(huì)影響已解碼的圖片內(nèi)容。

  這些技術(shù),以及其他幾個(gè)幫助 H.264 要執(zhí)行明顯優(yōu)于任何事先的標(biāo)準(zhǔn)在各式各樣的各式各樣的應(yīng)用程序環(huán)境的情況下。H.264 可以經(jīng)常執(zhí)行從根本上比 MPEG-2 視頻 — — 通常獲得相同質(zhì)量的比特率的一半或更少,尤其是對(duì)高比特率和高分辨率的情況。

  像其他的 ISO/IEC MPEG 視頻標(biāo)準(zhǔn),H.264/AVC 有一個(gè)參考軟件實(shí)現(xiàn),可免費(fèi)下載。它的主要目的是給的 H.264/AVC 的功能,而不是有用的應(yīng)用程序本身是示例。也正在一些參考硬件設(shè)計(jì)工作,在運(yùn)動(dòng)圖像專(zhuān)家組。上述完成 H.264/AVC 涵蓋 H.264 的所有配置文件的功能。編解碼器的配置文件是一組的功能的確定,以滿(mǎn)足特定集規(guī)格的預(yù)期應(yīng)用該編解碼器。這意味著許多人列出的功能不受支持的某些配置文件。下一節(jié)中討論了各種配置文件的 H.264/AVC。

 配置文件

  該標(biāo)準(zhǔn)定義了 21 套的能力,被稱(chēng)為配置文件,針對(duì)特定的應(yīng)用程序的類(lèi)。非可縮放 2D 視頻應(yīng)用程序的配置文件包括以下內(nèi)容:

  受約束的基準(zhǔn)配置文件 (CBP)

  主要為低成本的應(yīng)用程序,此配置文件是最通常用于視頻會(huì)議和移動(dòng)應(yīng)用程序。它對(duì)應(yīng)的是共同的基線、 主和高配置文件之間的功能子集。

  基線配置文件 (BP)

  主要是為需要額外的數(shù)據(jù)損失魯棒性的低成本應(yīng)用程序,此配置文件用于在一些視頻會(huì)議和移動(dòng)應(yīng)用程序。此配置文件包括中約束的基準(zhǔn)配置文件,支持的所有功能加上的魯棒性的損失 (或作其它用途例如低延遲多點(diǎn)視頻流合成) 可以使用的三個(gè)附加功能。此配置文件的重要性已褪色有些自定義的約束的基線配置文件的 2009 年。所有約束的基準(zhǔn)配置文件碼也被看作是碼的基準(zhǔn)配置文件,這些兩個(gè)配置文件共享相同的配置文件標(biāo)識(shí)符代碼值。

  擴(kuò)展配置文件 (XP)

  作為流媒體視頻配置文件,此配置文件有相對(duì)較高的抗壓能力和魯棒性的數(shù)據(jù)損失和服務(wù)器流切換到一些額外技巧。

  主配置文件 (MP)

  此配置文件用于定義,在 DVB 標(biāo)準(zhǔn)中使用的 MPEG-4 格式的標(biāo)準(zhǔn)清晰度數(shù)字電視廣播。它是不,不過(guò),用于高清晰度電視廣播節(jié)目,作為高配置文件在 2004 年為該應(yīng)用程序開(kāi)發(fā)時(shí)褪色此配置文件的重要性。

  高配置文件 (HiP)

  廣播和光盤(pán)的存儲(chǔ)應(yīng)用程序,尤其是對(duì)高清晰度電視的應(yīng)用程序的主配置文件 (例如,這是通過(guò)藍(lán)光光盤(pán)的存儲(chǔ)格式和數(shù)字電視高清晰度電視廣播服務(wù)的配置文件)。

  逐步高調(diào) (抑制)

  類(lèi)似于高配置文件,但沒(méi)有字段編碼功能的支持。

  受約束的高配置文件

  類(lèi)似于逐步高配置文件中,但無(wú) B (bi 預(yù)測(cè)) 切片的支持。

  高 10 配置文件 (Hi10P)

  此配置文件超越了典型的主流消費(fèi)者的產(chǎn)品能力,在高配置文件,生成添加支持為每個(gè)樣本的解碼的圖像精度達(dá) 10 位。

  高 4:2:2 的配置文件 (Hi422P)

  我主要針對(duì)專(zhuān)業(yè)使用的應(yīng)用程序的隔行掃描的視頻,此配置文件生成上高 10 配置文件中,添加支持為 4:2:2色度抽樣格式同時(shí)使用每個(gè)樣本的達(dá) 10 位解碼圖片精度。

  高 4:4:4 預(yù)測(cè)配置文件 (Hi444PP)

  此配置文件生成上高 4:2:2 的配置文件,支持最多 4:4:4 色度采樣,每個(gè)樣品,達(dá) 14 位和另外支持高效無(wú)損地區(qū)編碼和編碼的每一幅圖片作為單獨(dú)的顏色的三個(gè)平面。

  便攜式攝像機(jī)、 編輯和專(zhuān)業(yè)的應(yīng)用程序,標(biāo)準(zhǔn)包含四個(gè)附加幀內(nèi)-僅配置文件,它們被定義為相應(yīng)的其他配置文件的簡(jiǎn)單子集。這些是主要為專(zhuān)業(yè)人員 (例如攝像機(jī)和編輯系統(tǒng)) 的應(yīng)用程序:

  高 10 內(nèi)配置文件

  高 10 配置文件限制所有內(nèi)部使用。

  高 4:2:2 內(nèi)部配置文件

  高 4:2:2 的配置文件限制為所有內(nèi)部使用。

  高 4:4:4 內(nèi)部配置文件

  高 4:4:4 的配置文件限制為所有內(nèi)部使用。

  CAVLC 4:4:4 的內(nèi)部配置文件

  高 4:4:4 的配置文件限制為所有內(nèi)部使用和 CAVLC 熵編碼 (即,不支持算術(shù))。

  由于該的可伸縮視頻編碼(SVC) 的擴(kuò)展,標(biāo)準(zhǔn)包含五個(gè)額外可擴(kuò)展的配置文件,它們被定義為 (由第二個(gè)單詞中的可擴(kuò)展的配置文件名稱(chēng)標(biāo)識(shí)) 的基底圖層的 H.264/AVC 配置文件組合和實(shí)現(xiàn)可伸縮擴(kuò)展的工具:

  可擴(kuò)展的基準(zhǔn)配置文件

  主要針對(duì)視頻會(huì)議、 移動(dòng)和監(jiān)視應(yīng)用程序,此配置文件生成的基底圖層 (的位流的一個(gè)子集) 必須符合該約束的基線配置文件上。對(duì)于可伸縮性工具,啟用的可用工具的一個(gè)子集。

  可擴(kuò)展約束的基準(zhǔn)配置文件

  可擴(kuò)展的基準(zhǔn)配置文件的一個(gè)子集主要供實(shí)時(shí)通信的應(yīng)用程序。

  可擴(kuò)展的高配置文件

  主要是針對(duì)廣播和流媒體應(yīng)用程序,此配置文件生成的基底圖層必須符合 H.264/AVC 高配置文件上。

  可擴(kuò)展約束的高配置文件

  子集的可擴(kuò)展的高配置文件主要用于實(shí)時(shí)通信的應(yīng)用程序。

  可擴(kuò)展高內(nèi)部配置文件

  主要針對(duì)生產(chǎn)應(yīng)用程序,此配置文件是約束為所有內(nèi)部使用的可擴(kuò)展高配置文件。

  由于該多視圖視頻編碼(MVC) 的擴(kuò)展,標(biāo)準(zhǔn)包含了兩個(gè)多視圖的配置文件:

  立體聲高配置文件

  此配置文件的目標(biāo)是兩個(gè)視圖立體3D 視頻和 MVC 擴(kuò)展的間查看預(yù)測(cè)能力的高配置文件的工具結(jié)合在一起。

  多視角高配置文件

  此配置文件支持使用間圖片 (世俗) 和 MVC 視圖間預(yù)測(cè),兩個(gè)或多個(gè)視圖,但不支持字段圖片和宏塊自適應(yīng)幀字段編碼。

  多視角深度高配置文件

 版本

  AVC 標(biāo)準(zhǔn)的版本包括以下完成修改、 更正和修正 (日期是最后批準(zhǔn)日期在國(guó)際電信聯(lián)盟-T,雖然最后"國(guó)際標(biāo)準(zhǔn)"批準(zhǔn)日期在 ISO/IEC 是有些不同的稍晚在大多數(shù)情況下)。每個(gè)版本代表的集成到文本的下一個(gè)較低版本的更改。加粗面臨版本是版本,其中包括相對(duì)較重大技術(shù)改進(jìn)。

  版本 1:(2003 年 5 月 30 日)第一次批準(zhǔn)的包含基準(zhǔn),主要是和擴(kuò)展配置文件的 H.264/AVC 版本。

  版本 2: (2004 年 5 月 7 日) 包含各種次要更正更正。

  版本 3:(3 月 1,2005 年)H.264/AVC 包含提供包含高,高 10、 (FRExt)的保真度范圍擴(kuò)展的第一修正案增添主要高 4:2:2,和高 4:4:4配置文件。

  版本 4: (2005 年 9 月 13 日) 更正包含各種次要更正和添加三個(gè)縱橫比的指標(biāo)。

  版本 5: (2006 年 6 月 13 日) 組成的事先去除的修訂高 4:4:4 (作為在 ISO/IEC 的更正處理) 的配置文件。

  版本 6: (2006 年 6 月 13 日) 修訂組成的次要擴(kuò)展喜歡擴(kuò)展色域的顏色空間支持(與上述縱橫比指標(biāo)在 ISO/IEC 捆綁)。

  版本 7: (2007 年 4 月 6 日) 修訂包含另外的高 4: 4: 4 預(yù)測(cè)和四個(gè)內(nèi)唯一配置文件 (高 10 內(nèi),高 4: 2: 2 內(nèi),高 4:4:4 內(nèi),和CAVLC 4: 4: 4 內(nèi))。

  版本 8:(11 月 22,2007 年)H.264/AVC 包含的可伸縮視頻編碼(SVC) 修正案,包含可擴(kuò)展的基線、可擴(kuò)展性高,和可擴(kuò)展的高幀內(nèi)的配置文件項(xiàng)重大補(bǔ)充。

  版本 9: (2009 年 1 月 13 日) 包含一些小的修改更正。

  版本 10: (2009 年 3 月 16 日) 修訂包含新的配置文件 (約束的基線配置文件) 與只有共同以前支持的各種功能的子集定義指定的配置文件。

  版本 11:(3 月 16,2009 年)H.264/AVC 含有多視圖視頻編碼(MVC) 的擴(kuò)展,包括多視圖高配置文件修訂重大補(bǔ)充。

  12 版: (2010 年 3 月 9 日) 修訂包含新 MVC 的配置文件 (立體聲高配置文件) 定義的兩個(gè)視圖視頻編碼與交錯(cuò)編碼工具和指定額外的 SEI 消息 (幀包裝安排 SEI 消息) 的支持。

  13 版: (2010 年 3 月 9 日) 包含一些小的修改更正。

  第 14 版: (2011 年 6 月 29 日) 指定一個(gè)新的水平 (水平 5.2) 支持更高處理速率在每秒和一個(gè)新的配置文件 (逐步高配置文件) 支持只編碼工具以前指定的高配置文件的幀最大宏塊的修訂。

  版本 15: (2011 年 6 月 29 日) 包含一些小的修改更正。

  版本 16: (2012 年 1 月 13 日) 包含的三個(gè)新的配置文件主要用于實(shí)時(shí)通信的應(yīng)用程序定義的修訂:約束高、可擴(kuò)展約束的基線,和可擴(kuò)展約束高配置文件。

  版本 17: (2013 年 4 月 13 日) 與其他 SEI 消息指標(biāo)修訂。

  版本 18: (2013 年 4 月 13 日) 修訂以指定的深度映射數(shù)據(jù)的 3D 立體視頻,包括一個(gè)多視圖深度高配置文件的編碼。

  版本 19: (2013 年 4 月 13 日) 更正更正為多視圖視頻子碼流提取過(guò)程中的錯(cuò)誤。

  20 版: (2013 年 4 月 13 日) 指定額外的顏色空間標(biāo)識(shí)符 (包括支持ITU-R 建議 BT.2020 UHDTV) 和其他的修正模型中的色調(diào)映射信息 SEI 消息的類(lèi)型。

  編碼和解碼

  請(qǐng)參見(jiàn):列表的照相機(jī)與板載視頻流編碼

  因?yàn)?H.264 編碼和解碼要求大量的計(jì)算能力在特定類(lèi)型的算術(shù)運(yùn)算,在通用 Cpu 運(yùn)行的軟件實(shí)現(xiàn)高效率通常較少力量。不過(guò),最新的四核通用 x 86 Cpu 有足夠的計(jì)算能力來(lái)執(zhí)行實(shí)時(shí)標(biāo)清及高清編碼。壓縮效率取決于視頻的算法實(shí)現(xiàn),不在是否使用硬件或軟件來(lái)實(shí)現(xiàn)。因此,硬件和軟件基于的執(zhí)行更是電源效率、 靈活性和成本之間的差異。為提高電源效率和減少硬件形式因素,可能雇用專(zhuān)用硬件,為完整的編碼或解碼過(guò)程中,或在 CPU 控制的環(huán)境內(nèi)加速援助。

  基于 CPU 的解決辦法是已知是靈活得多,尤其是編碼必須進(jìn)行時(shí)同時(shí)多格式、 多比特率和各項(xiàng)決議 (多屏幕視頻) 和可能用上的容器格式支持的附加功能,先進(jìn)綜合的廣告功能等?;?CPU 的軟件解決方案通常使得更容易在相同的 CPU 內(nèi)的多個(gè)并發(fā)編碼會(huì)話進(jìn)行負(fù)載平衡。

  介紹了在 2011 年 1 月 CES (消費(fèi)電子展) 的第 2 代英特爾"桑迪橋"酷睿 i3/i5/i7處理器提供稱(chēng)為英特爾快速同步視頻上芯片硬件全面高清 H.264 編碼器。

  硬件 H.264 編碼器可以是ASICFPGA。FPGA 是一個(gè)一般的可編程芯片。要使用 FPGA 作為硬件編碼器,H.264 編碼器設(shè)計(jì)需要自定義應(yīng)用程序的芯片。完整的高清 H.264 編碼器可以在一個(gè)單一的低成本 FPGA 芯片上運(yùn)行 2009 年 (高配置文件、 水平 4.1,1080p,30 幀/秒)。

  ASIC 編碼器與 H.264 編碼器功能,可從許多不同的半導(dǎo)體公司,但在 ASIC 中使用的核心設(shè)計(jì)通常由芯片及媒體, On2 (原 Hantro,由谷歌收購(gòu)),想象力的技術(shù),NGCodec 等幾個(gè)公司的一個(gè)授權(quán)。一些公司已提供的 FPGA 和 ASIC 產(chǎn)品。

  德州儀器生產(chǎn)一線的ARM+ 執(zhí)行 DSP H264 BP 的 DSP 內(nèi)核編碼 1080p 30 幀每秒。這允許 (其中,作為高度優(yōu)化的 DSP 代碼實(shí)現(xiàn)) 的編解碼器的靈活性時(shí)正在比通用 CPU 上的軟件效率更高。


內(nèi)容來(lái)自百科網(wǎng)