天天看點

視訊編碼标準史詳說

視訊編碼标準史詳說

1990年,國際電信聯盟遠端通信标準化組織,英文簡稱ITU-T,釋出了第一個實用化的視訊編碼國際标準——H261。可以說,H261奠定了現代編碼的主要架構,圖像的分塊,幀内/幀間的預測,DCT,Zig-Zag掃描,這種預測加變換的混合編碼模式在目前依然流行。相比從1到n,從0到1可能更有挑戰性,也更有跨時代的意義。可惜的是,H261支援的分辨率,在目前來看,小的可憐,CIF(352x288)和QCIF(176x144),當下也沒有什麼人用了!

視訊編碼标準史詳說

1993年,ISO/IEC的圖像專家組頒布了視訊編碼标準MPEG-1,主要包括系統、音頻、視訊等5部分。MPEG-1限制了諸多參數,如圖像的寬度不多于768像素,圖像的高度不多于576像素,運動矢量範圍在-64~63.5,輸出比特率不高于1865000bps等等。除了CIF外,MPEG-1定義了一種352x240的格式,稱其為SIF。

MPEG-2約等于H.262?

1995年,ISO/IEC頒布了視訊編碼标準MPEG-2,主要包括系統、音頻、視訊等10個部分。其中的視訊部分被ITU-T接納,成為H.262視訊編碼标準。MPEG-2視訊部分标準(H.262)主要有如下的擴充:

  • 不同的level和profile用于區分不同的應用;
  • 針對圖像組資料做宏塊分割的時候,可以按照幀或場進行分割;
  • 規定了4種幀圖像的運動預測和運動補償方式(基于幀的預測,基于場的預測,16x8的運動補償以及雙基預測模式);
  • 引入了3種編碼的可分級性,空間可分級性,時間可分級性,信噪比可分級性,基于此可以同時提供不同的編碼服務水準。

1996年,ITU-T繼續發力,公布了用于低碼率的視訊編碼标準H.263:

  • 該标準依然采用混合編碼的基本架構,針對低碼率應用進行了優化;
  • 繼續擴充了對視訊分辨率的支援,增加了sub-QCIF(128x96),4CIF(704x576),16CIF(1408x1152)等格式;
  • 對于運動估計的精度,提升到了半像素;
  • 對于Zig-zag掃描後的資料采用三元VLC編碼。

1999年,ISO/IEC頒布了MPEG-4(視聽對象的編碼),主要包括系統、視覺資訊、音頻、一緻性、參考軟體、多媒體傳送內建架構、優化軟體、IP種的一緻性、參考硬體描述,AVC等。MPEG-4這對視訊圖像的描述基于場景和對象,編碼也是基于對象。舉個簡單栗子:一幅圖像裡有人、有樹,該圖像從編碼的角度則被抽象為背景、人、和樹,編碼的時候也以形狀,紋理等為基礎去定義相關的編碼算法。

視訊編碼标準史詳說

再次聯手

終于說到H.264,H.264是ITU-T的視訊編碼專家組和ISO/IEC的活動圖像編碼專家組的聯合視訊組開發的新一代視訊編碼标準。它既是ITU-T的H.264,也是MPEG-4的第10部分AVC,是以也叫H264/AVC。

相比以往的編碼标準,H.264/AVC的編碼效率大幅提升,大約是H.263的一倍。H264引入了多方向幀内預測,多模式運動估計,變換的宏塊大小達到4x4,增加了差錯控制。

HEVC

在H.264取得巨大成功後,ITU-T與ISO/IEC再次合作,在2013年4月正式釋出了HEVC編碼标準,我們也習慣稱之為H.265。H265基本的編碼架構依舊是預測加變換的模式,但其壓縮效率進一步的提升。在H.264/AVC(High Profile)的基礎上,不影響品質的前提下,視訊流的碼率減少50%。

如今H.264已獨步天下多年,随着4k,8k等分辨率的不斷提升,HEVC也開始迎頭趕上,逐漸的滲透到各行各業!伴随着壓縮率的不斷提升,值得注意的是,我們的計算複雜度也在不斷提升。H.264相比H.263有着3倍複雜度的提升,H.265的目标也是計算複雜度相比H.264不超過3倍。我們編碼效率的提升,是用計算能力的提高來換取的,換句話說,我們将網絡的傳輸壓力,轉嫁到了CPU或者GPU,提高了計算壓力!

随着5G的不斷普及,也随着晶片行業摩爾定律的不再适用,網絡空間和計算效率之間這個平衡點的尋找,也許,在不久的将來會有所轉變,從一味的提高編碼效率,節省帶寬,轉到盡可能的減少計算資源的消耗!

H.266,H.267,H.26X...相信會一直延續下去,到時候會更關注碼率消耗,還是會更關注計算消耗,讓我們拭目以待!