維基百科,自由的百科全書
視頻編解碼器是指可以壓縮或解壓縮數字視頻的程序或設備。通常這種壓縮屬於有損數據壓縮。歷史上,視頻信號以模擬形式存儲在磁帶上。隨著光盤的出現和進入市場,音頻信號以數字形式存儲,視頻信號也是數字格式,壹些相關技術也有所發展。
音頻和視頻都需要可定制的壓縮方法。工程師和數學家嘗試了許多不同的方法來解決這個問題。
在以下因素之間存在著復雜的平衡:視頻的質量、表示視頻所需的數據量(通常稱為碼率)、編碼算法和解碼算法的復雜度、對數據丟失和錯誤的魯棒性、編輯的便利性、隨機存取、編碼算法設計的完善性、端到端延遲等因素。
app應用
在日常生活中,視頻編解碼器的應用非常廣泛。例如,DVD(MPEG-2)、VCD(MPEG-1)、各種衛星和地面電視廣播系統以及互聯網。在線視頻資料通常由許多不同的編解碼器壓縮。為了正確瀏覽這些資料,用戶需要下載並安裝編解碼器包——壹個為PC編譯的編解碼器組件。
隨著DVD刻錄機的出現,用戶自己進行視頻壓縮變得越來越流行。由於商店出售的DVD通常容量較大(雙層),而雙層DVD刻錄機目前並不十分流行,因此用戶有時會將DVD素材壓縮兩次,以便完全存儲在單面DVD上。
視頻編解碼器設計
典型的數字視頻編解碼器的第壹步是將來自攝像機的視頻輸入從RGB顏色空間轉換到YCbCr顏色空間,並且通常伴隨著顏色采樣以生成4:2:0格式的視頻(有時在隔行掃描的情況下采用4:2:2采樣方法)。轉換到YCbCr色度空間將帶來兩個好處:1)這部分地去除了色度信號中的相關性並提高了可壓縮性。2)這樣就把亮度信號分開了,亮度信號對視覺感知最重要,而色度信號對視覺感知相對不太重要,所以可以采樣到更低的分辨率(4:2:0或4:2:2)而不影響人的觀看感知。
在真正編碼之前,在空間或時間域進行采樣可以有效地減少原始視頻數據的數據量。
輸入視頻圖像通常被分成宏塊並被單獨編碼。宏塊的大小通常是16x16亮度塊信息和對應的色度塊信息。然後,使用塊運動補償從編碼幀預測當前幀的數據。然後,使用塊變換或子帶分解來降低空間域的統計相關性。最常見的變換是8×8離散余弦變換。然後對變換後的輸出系數進行量化,量化後的系數進行熵編碼,成為輸出碼流的壹部分。實際上,在使用DCT變換時,通常將量化後的二維系數通過之字形掃描表示為壹維,然後通過對連續零系數的個數和非零系數的級別進行編碼得到壹個符號,並且通常有特殊符號來表示剩余的所有系數都等於零。這時候熵編碼通常采用變長編碼。
解碼基本上執行與編碼過程完全相反的過程。不能完全恢復原始信息的步驟就是量化。這時候就要盡可能的還原原始信息。這個過程叫做逆量子化,雖然量子化本身註定是壹個不可逆的過程。
視頻編解碼的設計通常是標準化的,也就是有公布的文檔來準確規範怎麽做。實際上,為了使編碼後的碼流具有互操作性(即A編碼器編碼的碼流可以被B解碼器解碼,反之亦然),規範解碼器的解碼過程就足夠了。通常情況下,編碼過程並不完全由壹個標準定義,用戶可以自由設計自己的編碼器,只要用戶設計的編碼器生成的碼流符合解碼規範即可。因此,相同的視頻源由不同的編碼器根據相同的標準進行編碼,並且解碼的輸出圖像的質量可能經常有很大不同。
常見視頻編解碼器
許多視頻編解碼器可以很容易地在個人電腦和消費電子產品上實現,這使得同時在這些設備上實現多個視頻編解碼器成為可能,避免了壹個占主導地位的編解碼器由於兼容性原因對其他編解碼器的開發和推廣造成的影響。最後,我們可以說,沒有任何編解碼器可以取代所有其他編解碼器。以下是壹些常用的視頻編解碼器,按它們成為國際標準的時間順序排列:
H.261
H.261主要用於老式的視頻會議和可視電話產品。H.261是ITU-T開發的第壹個數字視頻壓縮標準。本質上,所有後續標準視頻編解碼器都基於它所涉及的內容。它使用常見的YCbCr色彩空間、4:2:0色度采樣格式、8位采樣精度、16×16宏塊、塊運動補償、8×8塊的離散余弦變換、量化、量化系數的之字形掃描、遊程符號映射和霍夫曼編碼。H.261僅支持逐行視頻輸入。
MPEG-1第二部分
MPEG-1的第二部分主要用在VCD上,壹些網絡視頻也用這種格式。這種編解碼器的質量與原來的VHS錄像帶大致相當,但值得註意的是,VCD屬於數字視頻技術,不會像VHS錄像帶壹樣隨著播放的次數和時間逐漸失去質量。如果輸入的視頻源質量足夠好,碼率足夠高,VCD在各方面都能給出比VHS更高的質量。但是為了達到這個目標,VCD通常需要比VCD標準更高的比特率。其實如果所有VCD播放器都能播放的話,高於1150kbps的視頻比特率或者高於352x288的視頻分辨率都是不能用的。壹般來說,這種限制通常只對部分單機VCD播放器(包括部分DVD播放器)有效。MPEG-1的第三部分還包括當前常見的*.mp3音頻編解碼器。如果考慮通用性,MPEG-1的視頻/音頻編解碼器可以說是最通用的編解碼器,世界上幾乎所有的電腦都可以播放MPEG-1格式的文件。幾乎所有的DVD播放器都支持VCD播放。從技術上講,與H.261標準相比,MPEG-1增加了半像素運動補償和雙向運動預測幀。和H.261壹樣,MPEG-1只支持逐行視頻輸入。
MPEG-2第2部分
MPEG-2的第二部分相當於H.262,用於DVD、SVCD、大多數數字視頻廣播系統和有線電視分配系統。在標準DVD上使用時,支持高畫質和寬屏;在SVCD使用時,它的質量不如DVD,但比VCD高得多。不幸的是,SVCD在壹張CD上最多可以容納40分鐘的內容,而VCD可以容納壹個小時,這意味著SVCD的平均比特率高於VCD。MPEG-2也將用於新壹代DVD標準HD-DVD和藍光(藍光光盤)。從技術上來說,與MPEG-1相比,MPEG-2最大的改進在於支持隔行視頻。MPEG-2是壹個相當老的視頻編碼標準,但它有很大的普及性和市場接受度。
263
H.263主要用於視頻會議、可視電話和網絡視頻。在壓縮逐行視頻源方面,H.263較其之前的視頻編碼標準有了很大的性能提升。尤其是在低碼率端,在保證壹定質量的前提下,可以大大節省碼率。
MPEG-4第2部分
MPEG-4標準的第二部分可用於網絡傳輸、廣播和媒體存儲。與MPEG-2和第壹版H.263相比,其壓縮性能有所提高。與以前的視頻編碼標準的主要區別是“面向對象”的編碼方法和其他壹些沒有用於提高普通視頻編碼壓縮率的技術。當然也介紹了壹些提高壓縮能力的技術,包括壹些H.263技術和1/4像素的運動補償。像MPEG-2壹樣,它支持逐行掃描和隔行掃描。
MPEG-4第10部分
MPEG-4的第十部分在技術上與ITU-T H.264標準相同,有時稱為“AVC”)。這個新開發的標準是ITU-T VCEG和ISO/IEC MPEG完成的最好的視頻編碼標準,並得到越來越多的應用。該標準引入了壹系列可以大幅提升壓縮性能的新技術,無論是高比特率還是低比特率,都可以大幅超越以往的標準。已經使用並將使用H.264技術的產品包括,例如,索尼的PSP、Nero的Nero數字產品套件、蘋果的Mac OS X v10.4以及新壹代DVD標準HD-DVD和藍光。
迪維,XviD和3ivx
DivX、XviD和3ivx視頻編解碼器基本上使用MPEG-4第二部分的技術,有些文件以後綴*結尾。avi,*.mp4,*。ogm或*。mkv使用這些視頻編解碼器。
野型腮腺炎病毒
WMV(Windows Media Video)是微軟的壹系列視頻編解碼器,包括WMV 7、WMV 8、WMV 9和WPV 10。該系列編解碼器可應用於從撥號互聯網接入到高清電視(HDTV)寬帶視頻的窄帶視頻。使用Windows Media Video的用戶還可以將視頻文件刻錄到CD、DVD或其他設備上。它也適合用作媒體服務器。WMV可以看作是MPEG-4的增強版。WMV的最新版本是SMPTE正在制定的VC-1標準。WMV-9(VC-1,開發代碼“Corona”)剛推出的時候叫VC-9,後來被SMPTE改名為VC-1(VC指視頻編解碼器)。
RealVideo
RealVideo是由RealNetworks開發的視頻編解碼器。近幾年有過壹段低迷期,後被市場看好。最近特別是在BT電影行業,特別受青睞。
索倫森3
Sorenson 3是蘋果軟件QuickTime使用的編解碼器。互聯網上許多QuickTime格式的視頻都是用這種編解碼器壓縮的。
Cinepak
Cinepak也是apple的軟件QuickTime使用的舊編解碼器。好處是即使很老的電腦(比如486)也能支持,播放流暢。
Indeo視頻
Indeo Video Indeo Video是英特爾開發的壹種編解碼器。
上面提到的所有編解碼器都有各自的優點和缺點。經常看到有文章對比這些編解碼器。這時候最重要的是兼顧編碼率和清晰度(通常指規律失真特性和魯棒性)。
H.264/MPEG-4 AVC
維基百科,自由的百科全書
H.264,即MPEG-4的第十部分,是由ITU-T視頻編碼專家組(VCEG)和ISO/IEC運動圖像專家組(MPEG)組成的聯合視頻小組(JVT)提出的高度壓縮的數字視頻編解碼標準。ITU-T的H.264標準和ISO/iempeg-4 Part 10(正式名稱為ISO/IEC 14496-10)在編解碼技術上是相同的,也叫AVC,即高級視頻編碼。第壹版標準的最終草案(FD)於2003年5月完成。
H.264是以H.26x系列命名的ITU-T標準之壹,AVC是ISO/IEC MPEG的名稱。這個標準通常被稱為H.264/AVC(或者AVC/H.264或者H.264/MPEG-4 AVC或者MPEG-4/H.264 AVC),明確說明了它的兩個開發者。這個標準起源於ITU-T項目的開發,叫做H.26L,雖然H.26L這個名字並不常見,但是壹直在用。有時該標準也被稱為“JVT編解碼器”,因為它是由JVT組織開發的(兩個組織聯合開發同壹個標準並非史無前例,之前的視頻編碼標準MPEG-2也是由MPEG和ITU-T聯合開發的——所以MPEG-2在ITU-T命名規範中被稱為H.262)。
H.264/AVC項目最初的目標是希望新的編解碼器能夠以比以前的視頻標準(如MPEG-2或H.263)低得多的比特率(例如壹半或更低)提供良好的視頻質量。同時也沒有增加很多復雜的編碼工具,導致硬件難以實現。另壹個目標是適應性,即編解碼器的使用範圍很廣(例如,它既包括高比特率,也包括低比特率,還包括不同的視頻分辨率),並且可以在各種網絡和系統上工作(例如多播、DVD存儲、RTP/IP分組網絡、ITU-T多媒體電話系統)。
JVT最近完成了原始標準的擴展,稱為保真度範圍擴展(FRExt)。該擴展通過支持更高的像素精度(包括10位和12位像素精度)和更高的色度精度(包括YUV 4:2:2和YUV 4:4:4)來支持更高精度的視頻編碼。這壹擴展增加了壹些新功能(如4x4和8x8的自適應整數變換、用戶定義的量化加權矩陣、幀間高效無損編碼、支持新的色度空間和色度交錯變換)。擴建的設計於2004年7月完成,草稿也於2004年9月完成。
自2003年5月完成該標準的最早版本以來,JVT已經完成了該標準的壹輪勘誤表,新壹輪勘誤表已於近期完成並獲得ITU-T的批準,即將獲得MPEG的批準。
技術細節
H.264/AVC包含壹系列新功能,這使得它不僅比以前的編解碼器更有效,而且可以用於各種網絡應用。這些新功能包括:
多參考幀的運動補償。與以前的視頻編碼標準相比,H.264/AVC以更靈活的方式使用更多的編碼幀作為參考幀。在某些情況下,可以使用多達32個參考幀(在以前的標準中,B幀的參考幀數量是1或2)。該功能可以降低編碼率或提高大多數場景序列的質量,並且它可以顯著降低某些類型的場景序列的編碼率,例如快速重復閃爍、重復裁剪或背景遮擋。
可變塊尺寸運動補償。使用最大值為16×16,最小值為4×4的塊進行運動估計和運動補償,可以更準確地分割出圖像序列中的運動區域。
為了減少“振鈴”效應並最終獲得更清晰的圖像,使用六抽頭濾波器來生成半個像素的亮度分量預測值。
宏塊對結構允許16x16的宏塊用於場模式(與MPEG-2中的16x8相比)。
像素精度為1/4的運動補償可以提供更精確的運動塊預測。由於色度通常是亮度采樣的1/2(見4:2:0),運動補償的精度達到1/8像素精度。
加權運動預測是指在使用運動補償時增加權重和偏移量的方法。可以在壹些特殊場合提供相當大的編碼增益,比如淡入、淡出、淡出再淡入。
使用環內去塊濾波器,這可以減少基於離散余弦變換(DCT)的其他視頻編解碼器中通常存在的塊效應。
壹個匹配的整數4×4變換(類似於離散余弦變換的設計),同樣在高精度擴展中,采用整數8×8變換,可以在4×4變換和8×8變換之間自適應選擇。
在第壹次4×4變換後,對DC系數(特殊情況下為色度的DC系數和亮度的DC系數)進行哈達瑪變換,從而在平滑區域獲得更好的壓縮效果。
有利於相鄰塊邊界像素的幀內空間預測(優於MPEG-2視頻中使用的DC系數預測和H.263+及MPEG-4視頻中使用的變換系數預測)。
基於上下文的二進制算術編碼(CABAC)可以在已知相應上下文概率分布的情況下,靈活地對各種語法元素進行無損熵編碼。
基於上下文的可變長度編碼(CAVLC)用於編碼量化的變化系數。與CABAC相比,它具有更低的復雜度和壓縮比,但與以前視頻編碼標準中使用的熵編碼方案相比,它是相當有效的。
稱為Exp-Golomb的簡單熵編碼方案用於編碼既非CABAC也非CAVLC的語法元素。
使用網絡抽象層(NAL)使相同的視頻語法適用於各種網絡環境。序列參數集(SPSs)和圖像參數集(PPSs)用於提供更高的魯棒性和靈活性。
切換片(包括SP和SI)使編碼器能夠指示解碼器跳轉到正在處理的視頻流,用於解決視頻流速率切換和特技模式操作。當解碼器使用SP/SI條帶跳轉到視頻流的中間時,可以得到完全壹致的解碼重建圖像,除非後續解碼幀參考切換幀之前的圖像作為參考幀。
靈活宏塊排序(靈活宏塊排序的FMO,也稱為切片組技術)和任意切片排序的ASO用於改變宏塊的編碼順序,宏塊是圖像編碼的最基本單元。它可以用於提高旁路信道中的碼流的魯棒性和壹些其他目的。
數據分割(Data partitioning,DP for Data partitioning)可以將不同重要性的語法元素分別打包傳輸,使用UEP進行不等錯誤保護等技術,提高視頻流對抗信道錯誤/丟包的魯棒性。
冗余切片的RS也是壹種提高碼流健壯性的技術。使用這種技術,編碼器可以發送圖像的某個區域(或全部)的另壹個編碼表示(通常是較低分辨率的編碼流),以便當主表示錯誤或丟失時,可以用冗余的第二編碼表示對其進行解碼。
壹種字節碼流的自動打包方法,用於避免碼流中起始碼的重復。起始碼是用於碼流中隨機訪問和重新同步的碼字。
補充用於補充增強信息的SEI和用於視頻可用性信息的Vui增加了向視頻流添加信息的方法,為各種應用提供了借口。
輔助圖片可以用來實現壹些特殊的功能,比如alpha合成。
幀數,支持創建壹個視頻序列的子序列(支持時域的可伸縮性),也支持檢測和隱藏丟失的整幀圖像(由網絡丟包或信道誤碼引起)。
圖像順序計數,利用該功能使得每幀圖像的順序和解碼圖像的像素值與時間信息無關(即使用單獨的系統來傳輸、控制和改變時間信息,從而不影響解碼圖像的像素值。)
這些技術與其他壹些技術壹起,使H.264與以前的視頻編解碼器相比,性能有了顯著提高,並支持各種環境中更廣泛的應用。與MPEG-2相比,H.264的壓縮性能大大提高,在相同的圖像質量下,碼率可以降低到壹半甚至更少。
和其他MPEG視頻標準壹樣,H.264/AVC也提供了壹個參考軟件,可以免費下載。其主要目的是為演示H.264/AVC的各種功能提供壹個演示平臺,而不是作為壹個直接的應用平臺(下載地址見以下鏈接)。目前,壹些硬件參考設計也正在MPEG中實現。
專利許可證
與MPEG-2 Part I、Part II和MPEG-4 Part II壹樣,使用H.264/AVC的制造商和服務提供商需要向其產品中使用的專利的持有者支付專利許可費。這些專利許可的主要來源是壹個名為MPEG-LA,LLC的私人組織(事實上,這個組織與MPEG標準化組織沒有任何關系,但它也管理MPEG-2第壹部分系統和第二部分視頻。視頻和其他技術的MPEG-4第二部分專利許可)。
app應用
競爭下壹代DVD格式的兩種主要技術計劃在2005年下半年增加H.264/AVC HP作為必要的播放器特征,包括:
DVD論壇開發的HD-DVD格式
由藍光協會(BDA)開發的藍光光盤格式
2004年下半年,歐洲DVB標準組織采用H.264/AVC進行歐洲的電視廣播。
在2004年下半年,法國總理Jean-Pierre_Raffarin宣布選擇H.264/AVC作為法國HDTV接收機和數字電視地面廣播服務的要求。
美國的ATSC標準組織正在考慮美國電視廣播采用H.264/AVC的可能性。
南韓的數字多媒體廣播(DMB)服務將采用H.264/AVC。
H.264/AVC編解碼器將用於日本ISDB-T提供的移動小區廣播服務,包括主要的廣播服務提供商:
日本廣播協會(NHK)
東京廣播公司
日本電視臺
朝日電視臺(朝日電視臺)
富士電視臺
東京電視臺
直接衛星廣播衛星服務將使用該標準,包括:
新聞集團/DirecTV(在美國)
Echostar/Dish Network/Voom TV(在美國)
1080歐元(歐洲)
首映(德國)
英國天空廣播公司(在英國和愛爾蘭)
第三代移動通信合作組織(3GPP)已經批準H.264/AVC作為其第六版移動多媒體電話服務標準的可選技術。
美國國防部下屬的運動圖像標準委員會的MISB已經接受H.264/AVC作為其推薦的視頻編解碼器。
互聯網工程任務組的IETF已經完成了有效載荷打包格式(RFC 3984 ),作為通過實時傳輸協議RTP傳輸H.264/AVC碼流的打包方法。
互聯網流媒體聯盟ISMA已經接受H.264/AVC作為其ISMA 2.0的技術規範。
MPEG組織將H.264/AVC完全集成到其系統協議(如MPEG-2和MPEG-4系統)和ISO媒體格式協議中。
國際電信聯盟的ITU-T標準組已經采用H.264/AVC作為其H.32x系列多媒體電話系統的系統規範的壹部分。隨著ITU-T的采用,H264/AVC在視頻會議系統中得到了廣泛的應用,並獲得了兩大視頻電話產品提供商(Polycom和Tandberg)的支持。事實上,所有新的視頻會議產品都支持H.264/AVC。
H.264很可能會被各種VOD用於視頻點播,用於在互聯網上直接向個人電腦提供電影和電視節目的點播服務。
產品和實施
幾家公司正在制造可以解碼H.264/AVC視頻的可編程芯片。2005年6月5438+10月,Broadcom(BCM 7411)、Conexant(CX 2418x)、Neomatic (MiMagic 6)和STMicroelectronics(STB 7100)提供樣品進行測試。西格瑪設計公司預計在2005年3月提供樣品。這些芯片的出現將極大地推動可以播放標清和高清的低成本H.264/AVC視頻的快速推廣。這五個芯片中的四個(除了Neomagic的芯片,它是針對低能耗應用的)都具有播放高清視頻的能力,並且大多數都將支持標準中的高配置。
蘋果公司已經將H.264集成到Mac OS X版本v10.4(昵稱為Tiger),並於2005年5月發布了支持H.264的Quicktime版本。2005年4月,蘋果公司升級了其軟件DVD Studio Pro,以支持授權的高清內容。該軟件支持將HD-DVD格式的內容錄制到標準DVD或HD-DVD媒體上(盡管還沒有相應的刻錄機)。為了播放記錄在標準DVD上的HD-DVD內容,所需的硬件是PowerPC G5,軟件是Apple DVD Player v4.6,以及Mac OS X v10.4或更新版本。
Envivio已經能夠為H.264組播提供標清實時編碼器和離線高清(720p,1080i,1080p)編碼器。Envivio還為windows、Linux和Macintosh平臺提供H.264解碼器、H.264視頻服務器和授權工具。
Modulus Viode為廣播和電話提供具有廣播質量的H.264標清實時編碼器,並宣布將於2005年年中提供高清實時編碼器(ME6000)。2004年4月,該公司在NAB展示了高清實時編碼器,並獲得了“Pick Hit”獎。該公司使用大規模集成電路邏輯技術。
Tandberg電視臺推出了EN5990實時編碼器。DirecTV和BSkyB已將EN5990編碼器用於其直接衛星廣播服務(DBS)。
Harmonic還推出了他們的實時編碼器(型號:div com MV 100)。TF1(法國廣播公司)和Video Networks Limited (VNL)已經宣布在他們位於倫敦的家庭視頻點播服務中使用該產品。Pace Micro已經為壹些主要的直播衛星公司提供了機頂盒。
索尼PSP(PlayStation Portable)為H.264主概要Level 3解碼提供硬件支持。
Nero AG開發的軟件包和Nero Digital公司發布的Ateme***提供了對H.264編碼的支持,在Doom9中獲得了“Pick Hit”[1]]獎。
Sorenson提供H.264的實現相關的編解碼軟件Sorenson AVC Pro編解碼已經包含在Sorenson Squeeze 4.1中用於MPEG-4。
x264的編解碼軟件是免費軟件版本,通過GPL授權的方式下載。
最新消息:InterVideo的WinDVD 7於2005年6月24日正式發布。發行版本分為WindVD 7黃金版WinDVD 7黃金白金版。白金版支持H.264/MPEG-4 AVC解碼播放,推薦配置為P4 3.6G(非原版)
最新消息:ATI於2005年10月5日發布的鐳龍X1300、X1600和X1800系列圖形芯片支持H.264硬件加速解碼。