帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
淺談MPEG-4技術架構
 

【作者: Robert D. Turney】   2003年12月05日 星期五

瀏覽人次:【3522】

多媒體壓縮技術在採用新MPEG-4技術之後,將面臨另一波轉變。這次轉變的幅度預期將與1990年代發展至MPEG-2壓縮技術一樣產生關鍵性的影響,其影響力將逐漸遍及更廣大之應用領域,例如視訊通訊建置上。許多現今提供音效與資料服務的系統在未來都將提供即時影音的功能,而MPEG-4將成為這個領域的關鍵技術。「MPEG-4」這個名詞包含許多不同的技術,將視不同的ISO 版本標準、設定檔(Profile)以及壓縮比率(Level)而定。本文將探討所有的MPEG-4建置技術,並介紹其需求、架構以及建置策略,亦將特別討論運算方面的問題,更深入瞭解MPEG-4的建置。在影像編碼解決方案上,平台式FPGA能為影片產業提供所需的頻寬、設計工具以及矽元件,以合理的價位進行MPEG-4影片壓縮演算法。


MPEG簡介

ISO MPEG(International Standards Organization、Moving Picture Experts Group),最廣為所知的就是MPEG-2視覺標準,這項標準廣泛使用於DVD、廣播和各種應用(此為與國際電信聯盟共同制定的成果-ITU H.262)。一般人不熟悉的是MPEG-2中可用來建置各種影片編碼機制,例如像MPEG-2傳輸、音效以及符合標準。建立一套標準需要許多流程,包括從擬定草案一直發展到最後確立出的國際性標準。從開始到結束,通常需要二到四年的時間讓技術逐漸被接納、匯整、整合以及採用。整套技術可切分成許多部份,分頭進行這些流程。ISO MPEG標準的前四個部份,包括系統、視訊、音效以及確認,分別由不同的MPEG小組來負責。


MPEG-4 標準的規畫從1995年開始,至今仍針對各個層面進行修訂。這項技術包括16個部份,如(表一)所示。


(表一) MPEG-4 標準的各部份規範
MPEG-4 Part Description
Part 1 Systems
Part 2 Visual
Part 3 Audio
Part 4 Conformance testing
Part 5 Reference software
Part 6 Delivery Multimedia Integration Framework DMIF
Part 7 Optimized software for MPEG-4 tools
Part 8 MPEG-4 over IP networks
Part 9 Reference hardware description
Part 10 Advanced Video CodingAVC
Part 11 Scene description and application engine
Part 12 ISO media file format
Part 13 Intellectual Property Management and ProtectionIPMPextensions
Part 14 MP4 file format
Part 15 AVC file format
Part 16 Animation Framework extensionAFX

本文將詳細介紹Part 2與Part 10有關視訊編碼的部份(參照表一)


。本文以MPEG-4為重點,但業界一般對建置在軟體或矽元件的MPEG-4,仍未有明確的界定。MPEG-4 第一版在1998年通過,(圖一)說明這項技術在視訊編碼/解碼器版本改良上的發展。MPEG運算語法上改良的新版本,讓技術具備回溯相容性。這部份的修訂已套用於MPEG-4的Part 2視訊應用部份(參照表一)。運用2001至2003年針對MPEG-4 Part 10(Advanced Video Codec;AVC)所修正的技術,這部份的新規格則不具備回溯相容性。



《圖一 MPEG-4 發展時間表》
《圖一 MPEG-4 發展時間表》

制定一項標準的過程包括MPEG的技術、支援工具被匯集、合併以及採納成工作小組草案(WD)、委員會草案(CD)、最終委員會草案(FCD)、國際標準草案(DIS)、最終國際標準草案(FDIS)以及國際標準(IS)。標準的修正通常是增加更多的設定檔。在MPEG-4 Version 2增補條文1與2中,增加製片與串流細微顆粒可調性(FGS)設定檔,增補條文3則加入Simple Scalable level 0 與Advanced Simple Scalable level 3b二個設定檔。目前的 MPEG 可分 MPEG Level 1 到 Level 4 四種規格。MPEG定義位元流與解碼相容性,不會直接影響編碼的運作。


MPEG-4壓縮技術

為進一步瞭解MPEG設定檔與其壓縮比率(Level),以下將MPEG-4簡易設定檔(Simple Profile)以及MPEG-4 核心設定檔(Core Profiles)為例來說明。簡易設定檔(Simple Profile)以矩型的I與P frames 為基礎,運用基本的動作補償離散餘弦轉換法編碼技術(DCT)。其中P frames採Inter-Coded技術,I frames採Intra-Coded技術,來排除多餘的畫素資料。支援I、P、與B frames 視訊物件平面(VOPs),皆採用Arbitrary Shape Coding編碼以及二元影像定義機制。故業界須發展一套建置技術,讓離散餘弦轉換法(DCT)能與核心設定檔相互轉譯,配合簡易設定檔採用8×8 的離散餘弦轉換法(DCT)。(表二)列出了22種MPEG-4所使用的設定檔。


(表二) MPEG-4 設定檔一覽表
MPEG-4 Profile Levels Number of Levels MacroBlocks/s  Range Kbits/s Range Technology Notes
Simple 4 1485 – 11,880 64 – 384 Rectangular I, P frames
Adv Simple 6 2970 – 48600 128 – 8000 Rectangular I, P, B frames ¼ pel ME   Global ME Interlaced L4, L5
Simple Scalable 2 7425 – 23,760 128, 256 Rectangular Simple as base layer
FGS 6 2970 – 48,600 128 – 8000 Rectangular Adv Simple or Simple as base layer
ARTS 4 1485 – 11,880 64 – 2000 Rectangular Higher error resilience and bandwidth tolorance
Core 2 5940 – 23,760 384 – 2000 Arbitrary shape Binary shape
Core Scalable 3 7425 – 60,480 768 – 4000 Arbitrary shape Rect temporal Rect & Arb Spatial
Main 3 23,760 – 489,600 2000 – 38,400 Arbitrary shape Gray shape Sprites Interlaced
ACE 4 5940 – 244,800 384 – 38,400 Arbitrary shape Main + ¼ pel ME, GME
N-Bit 1 11,880 2000 Arbitrary shape 4-12 bits
Simple Studio 4 129,600 – 1,474,560 180 – 1800 Mbit Arbitrary shape I frame
Core Studio 4 259,200 – 2,949,120 90 – 900 Mbit Arbitrary shape I,P frame
Scalable Textu re 3 1584 – 262,144 NA Wavelet
Adv Scalable Texture 3 1584 – 262,144 NA Wavelet Scalable shape coding
Adv Core 2 5940 – 23,760 ; 16,384 – 262,144 384 – 2000 NA Core + Adv Scalable Texture
Simple Face 2 NA 16 – 32 1 – 4 objects
Simple FBA 2 NA 32 – 64 1 – 4 objects
Basic Animated 2D 2 1584 – 16,384 64 – 128 Simple Face + Scalable Texture 1-8 objects 480  – 1748 nodes
Hybrid 2 2970 – 11,880 ; 1584 – 16,384 384 – 2000 ;64 - 128 Core + Simple Face + Scalable Texture 1-8 objects 480 – 1748 nodes
AVC Baseline 5 1485 – 983,040 64 – 240,000 I, P frames Integer DCT Hadamard CAVLC
AVC Main 5 1485 – 983,040 64 – 240,000 I, P, B frames Integer DCT Hadamard CAVLC, CABAC
AVC Extended 5 1485 – 983,040 64 – 240,000 Integer DCT Hadamard CAVLC

  • ACE:Advance coding efficiency


  • AVC:Advanced Video Codec


  • ARTS:Advanced Real Time Simple


  • CAVLC:Context-based Adaptive Variable Length Coding


  • CABAC:Context-based Adaptive Binary Arithmetic Coding


  • DCT:Discrete Cosign Transform


  • FBA:Face and body animation


  • FGS:Fine Grain Scalability


  • GME:Global Motion Estimation


  • ME:Motion Estimation



表二列出每種設定檔的壓縮比率、每秒處理的巨大區塊(Macroblock)的數量、支援的位元率以及技術差異。一個巨大區塊指的是一個16×16共256個像素所組成的區域,故巨大區塊可用來代表整體畫格更新速度。


壓縮比率(Level)在MPEG詞彙定義是指參數在設定檔(Profile)內的適用範圍。部份參數指的是物件的數量、獨特量化矩陣(Unique Quantization Table)的數量、Video Complexity Verifier(VCV)緩衝區的大小、VCV 解碼速率以及以每秒1000bits的傳輸速率。緩衝區大小與更新率的適用範圍,加上設定檔內的技術,即可明確界定應用領域的運作點。例如,假設國際多媒體串流聯盟(ISMA 1.0)決定要在兩個運算點(Operating Point)進行互通性轉譯作業。在影像部份,他們可選擇Simple@Level1 與Advanced Simple@Level3 ,研發業者即可開始建置影像的規格。應用軟體研發業者可評估哪種設定檔與壓縮比率(Level)最適合用來測量低成本解決方案所需的位元率與處理效能。


MPEG-4中的複雜變數

在各種數位影像應用廣泛建置時,MPEG-4解決方案領域衍生出各種複雜的版本變化。由於許多變因,讓我們在設計一套精密影像編碼/解碼器時,很難估算出真正需要的運算效能。在建置MPEG 4過程中,許多企業與業界人士建立相關的參考程式碼,這些程式碼通常能正常運作,但在即時運作(Real Time Operation)或是記憶體管理(Memory Management)上往往效能不彰。事實上,MPEG-4同時擁有Part 5 參考軟體與Part 7最佳化的參考軟體(參照表一)。但即使是最佳化的參考軟體,因為它有避免使用特定廠商自行研發的處理器程式碼的情況,其速度仍比商業用解決方案慢三到五倍。市場上有兩種支援不同處理器的設定工具,能協助業者評估MPEG程式碼的複雜度。IMEC的Atomium工具以記憶體傳輸器為中心的角度進行最佳化,而EPFL SIT工具則以運算最佳化的角度進行評估。這些設定工具的角色是大略測試MPEG-4設定檔中特定技術的複雜度。



《圖二 MPEG-4 處理需求》
《圖二 MPEG-4 處理需求》

在瞭解不同MPEG-4技術的運算複雜度後,下一個探討的主題就是編碼/解碼器所需傳送的資料量。這方面可透過每秒巨大區塊(Macroblock)參數來瞭解。如圖二所示,簡易設定檔(Simple Profile)涵蓋level 1 至level 3壓縮比率 ,進階簡易設定檔涵蓋level 0到level 5壓縮比率、以及主要設定檔 涵蓋level 2 到level 4壓縮比率的資料。值得注意的是,除了三種設定檔(如表二所示),使用不同的技術之外,不同運作點的流量亦有相當大的差異。此外,若納入Studio設定檔,則範圍可延伸至每秒300萬個巨大區塊。更複雜的是,運算MOPS與應用種類有直接關連,因此在測試每種設定時須重複輸入不同的資料。


建置MPEG-4

如何建置MPEG-4的各種標準?假設已設定單一或一系列的運算點(設定檔與壓縮比率),要如何達到即時的運作模式?以MPEG-4技術評估適合的設定檔,平行處理需求配合像是每秒處理的巨大區塊(Macroblock)系統層面的參數,即可以軟體建置影像管線架構(Video Pipeline Architecture)。FPGA可提供充裕的平行機制處理效能,針對各種影像編碼/解碼器建置低成本的即時處理解決方案。若考量目前的MOPS,就能發現通用型處理器的效能約為2000 MOPS。DSP處理器能將效能提高至8000 MOPS,但其缺點為須透過有限的運算單元處理資料流。


《圖三 FPGA重新配置圖》
《圖三 FPGA重新配置圖》

擁有特別運算功能的多媒體處理器,其位元運算可提供2萬 MOPS的處理效能。但FPGA與ASIC具有更高的彈性,可擴充至10萬MOPS以上的處理效能。


因為FPGA是SRAM型元件,所以亦有另一項明顯的優勢:能重複編程。因此FPGA能支援多組運算點,這些運作點有不同數量的通道,如(圖三)所示。在有需要時,可將不同的MPEG-4技術重新編程到FPGA。該模式可支援未來的MPEG-4設定檔與壓縮比率,只要不超越FPGA元件的運算上限。系統層面的需求,例如像國際多媒體串流聯盟(ISMA),通常有許多不同的運作點來因應不同的應用需求。業者可研發有限的設備元件,並搭配FPGA的可重複編程能力,滿足不同市場的需求。


結論

在本文中討論到MPEG-4代表的意義。旨在讓讀者瞭解這個詞彙的涵義,讓每個人聽到MPEG-4解決方案時都會確認對方指的是哪一類MPEG-4技術。最後筆者也提出一套以可編程FPGA技術且具有成本效益解決方案,此方案可用來支援多個運算點與新興的MPEG-4 Part 10技術。(作者任職於美商智霖)


相關文章
借助自行調適加速平台 機器人快速適應環境變化
借助自行調適系統模組 加速邊緣創新
借助Zynq RFSoC DFE因應5G大規模部署挑戰
半導體創新成果轉化 AI運算世界加速來臨
CXL、CCIX和SmartNIC助力 PCIe 5加速飛奔
comments powered by Disqus
相關討論
  相關新聞
» 新唐科技MA35D0 微處理器系列適用於工業邊緣設備
» SIG:2028年藍牙裝置年度總出貨量將達到75億台
» 羅姆旗下SiCrystal與意法半導體擴大SiC晶圓供貨協議
» 美光針對用戶端和資料中心等市場 推出232層QLC NAND
» 摩爾斯微電子在台灣設立新辦公室 為進軍亞太寫下新里程碑


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.3.137.164.241
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw