h.264 並不明確地規定乙個編解碼器如何實現,而是
和該位元流的解碼方法,
各個廠商的編碼器和解碼器在此框架下應能夠互通,在實現上具有較大靈
活性,而且有利於相互競爭。
h.264 編碼器和解碼器的功能組成分別見圖:
h.264 編碼器
h.264 解碼器
從上述二圖可見, h.264 和基於以前的標準(如 h.261、 h.263、 mpeg-1、 mpeg-4)中的編譯碼
時空間細節很多,有時大面積的平坦。這種內容的多變性就必須採用相應的自適應的技術措施;由
於通道在環境惡劣下也是多變的,例如網際網路,有時暢通,有時不暢,有時阻塞,又如無線網路,
有時發生嚴重衰落,有時衰耗很小,這就要求採取相應的自適應方法來對抗這種通道畸變帶來的不
良影響。這兩方面的多變帶來了自適應壓縮技術的複雜性。
h.264 就是利用實現的複雜性獲得壓縮
效能的明顯改善。
由於大規模積體電路技術和工藝的迅猛進步,今天已完全具備了實現的可能性。
在描述多功能塊的細節前,我們還是對 h.264 編碼器、解碼器的主要功能描述如後,以便對編碼
器有乙個總的了解
h.264 編碼器
編碼器採用的仍是變換和**的混合編碼法。由圖可知,輸入的幀或場 fn 以巨集塊為單位被編碼器處理。首先,按幀內或幀間**編碼的方法進行處理。
如果採用幀內**編碼,其**值 pred(圖中用 p 表示)是由當前片中前面已編碼的參考影象
經運動補償( mc)後得出,其中參考影象用 f』n-1 表示。為了提高**精度,從而提高壓縮比,實際的參考影象可在過去或未來(指顯示次序上)已編碼解碼重建和濾波的幀中進行選擇。
**值 pred 和當前塊相減後,產生乙個殘差塊 dn,經塊變換、量化後產生一組量化後的變換
係數 x,再經熵編碼,與解碼所需的一些邊資訊(如**模式量化引數、運動向量等)一起組成一
個壓縮後的碼流,經 nal(網路自適應層)供傳輸和儲存用。
正如上述,為了提供進一步**用的參考影象,編碼器必須有重建影象的功能。因此必須使殘差
影象經反量化、反變換後得到的 dn』與**值 p 相加,得到 ufn』(未經濾波的幀)。為了去除編碼解碼環路中產生的雜訊,為了提高參考幀的影象質量,從而提高壓縮影象效能,設定了乙個環路濾波器,濾波後的輸出 fn』即重建影象可用作參考影象。
h.264 解碼器
由上圖可知,由編碼器的 nal 輸出乙個壓縮後的 h.264 壓縮位元流。由圖 6.2,經熵解碼得到
量化後的一組變換係數 x,再經反量化、反變換,得到殘差 dn』。利用從該位元流中解碼出的頭信
息,解碼器就產生乙個**塊 pred,它和編碼器中的原始 pred 是相同的。當該解碼器產生的 pred
與殘差 dn』相加後,就產生 ufu』,再經濾波後,最後就得到濾波後的 fn』,這個 fn』就是最後的解碼輸出影象。
H264 編譯碼框架簡介
2 h264和以前的標準 如h261 h263 mpeg 1 mpeg 4 的編解碼器實現流程沒有太大區別,主要的不同在於各功能塊的細節。3 h264就是利用實現的複雜性獲得壓縮效能的明顯改善。至於複雜度的評估,以後會介紹 下面介紹一下h264的編碼器框圖 編碼器採用的仍是變換和 的混合編碼法。在圖...
H264 解碼耗時分析
在數字基帶處理器上 的最佳放置 美國模擬器件公司 jose fridman 最近幾年,高速緩衝儲存器 caches 在dsp和嵌入式系統中已經很普遍。在快取記憶體出現前,嵌入式軟體需要對片內sram和片外sram sdram和flash等所有物理儲存資源中的 進行管理。軟體工程師必須根據執行時間統計...
海思h264解碼庫
海思的dll,解碼h264 解碼後轉出yuv12 呼叫方法 if h264dec.hi264decau dechandle,ph264data,framelen,0,ref decodeframe,0 0 ph264data是h264幀的控制代碼,framelen是h264幀的長度,decodefr...