|
馬上註冊,結交更多好友,享用更多功能,讓你輕鬆玩轉社區。
您需要 登錄 才可以下載或查看,沒有賬號?註冊
x
MPEG-4技術的應用將使當前很多提供聲音和資料服務的系統得到進一步的擴展,根據涉及ISO標準的版本、部分、類(profile)和等級(level)的不同,MPEG-4對應不同的技術。本文將討論所有不同的MPEG-4技術,研究MPEG-4的需求、架構和實現策略,並討論計算需求以更好地理解MPEG-4的實現。
MPEG-4標準活動開始於1995年,至今還在不斷發展之中。此標準由如表所示的16部分組成,本文將詳細討論該標準的第二和第十部分,這兩部分是關於視頻編碼處理。在很多出版物中經常出現MPEG-4,但常常並沒有嚴格區分出MPEG-4到底是用軟體還是硬體來實現的,本文試圖更明確闡述“MPEG-4”這個術語。有關MPEG句法的一部分新版本使標準實現向後相容,這是MPEG-4的第二部分。在新的不能後向相容的技術引入MPEG標準後,在2001-2003期間又創建了MPEG-4的第10部分,即高級視頻編碼(AVC)。
標準的創建需要通過工作草案(WD)、委員會草案(CD)、最終委員會草案(FCD)、草案國際標準(DIS)、最終草案國際標準(FDIS)和最終國際標準(IS)這一系列過程,在該過程中伴隨著技術的彙集、融合和應用。標準的修正通常都會增加更多的類,MPEG-4的第二版修正1和2就增加了FGS類,而修正3又增加了簡單可擴展level 0和高級簡單可擴展level 3b。MPEG的類規定了用於協同操作點(interoperability point)的技術,等級規定了一個類的範圍或大小。此外,MPEG還定義了碼流和解碼器的一致性問題,但並沒有直接規定解碼器的功能。
壓縮技術與MPEG-4
為了更好地理解類和等級,先瞭解MPEG-4的簡單類(Simple profile)和核心類(Core file)。簡單類採用矩形I幀和P幀,具有基於運動補償離散余弦變換(DCT)基本功能的編碼處理。I幀為幀內編碼,而P幀為幀間編碼,這兩類編碼方式是為了降低冗餘資訊。核心類可以採用I幀、P幀和B幀視頻物件平面(VOP),並具有採用二進位形狀定義的任意形狀編碼功能。因此,如果採用核心類則必須開發出一種形狀自適應DCT來實現與核心類的互操作,而在簡單類中需要採用標準的8×8 DCT技術。
在MPEG的術語中,等級表示在一個類中的參數範圍。一些重要參數有:物件數量、量化表數量、視頻複雜度驗證子(VCV)緩衝大小、VCV解碼器速率(單位:kbps)。緩衝器大小和速度的限制,以及類採用的技術所規定的操作點(operate point)都明確定義了該類適合的應用領域。例如,假如互聯網流媒體聯盟(ISMA 1.0)決定在兩個操作點之間的互操作,對於視頻部分他們可以選擇Simple@Level1和Advanced Simple@Level3。開發工程師可以根據所要求的通道碼率和處理要求,選擇一個最具成本效益的類和等級。
MPEG-4複雜度變化
隨著數位視頻的廣泛應用,目前已經存在多種不同的MPEG-4解決方案複雜度。由於存在好幾種不確定因素,使得在設計一個複雜的視頻編解碼器之前很難確定真正所需要的計算能力。由於MPEG參考代碼的編制過程中會有若干公司和會員單位參與,儘管代碼在功能上是正確的,但在即時性和記憶體管理上並沒有實現優化。事實上,MPEG-4有第5部分的參考軟體和第7部分的優化參考軟體。即使是優化的參考軟體,由於它必須避免採用特定供應商的處理器代碼,因而比商業解決方案還是慢3到5倍。目前有兩個獨立於處理器的評估工具可以幫助評估MPEG參考代碼的複雜度:IMEC公司的Atomium工具評估軟體的記憶體轉移情況,而EPFL SIT工具以運營商的角度來評估最優化情況。這些評估工具的作用就是要給出在MPEG-4的類中的某項技術複雜程度的總體認識。
在瞭解了不同的MPEG-4技術的計算複雜性之後,下一步就是要知道編碼器和解碼器需要處理的原始資料量,通過瞭解每秒中宏塊數量就可以輕易地得到該資料。圖1中列出了簡單類的level 1到level 3,高級類的level 0到level 5,主類的level 2到level 4。值得注意的是,除了三個類的技術不同以外,不同操作點在單位時間內能處理的數量具有很大的差異。此外,如果包含了演播室類(Studio profile),這個範圍可以達到每秒三百萬個宏塊。
MPEG-4的實現
假定你能夠確定一個或一系列操作點,怎樣才能實現即時操作呢?通過正確的MPEG-4技術的類估計,為滿足類似於每秒內的巨集塊數的系統級參數的並行特性要求,將採用一種具有軟體配合的視頻管線架構(video pipeline architecture),FPGA可以提供這種必要的並行特性來實現即時的、具有成本效益的視頻編解碼器。考慮矽器件的MOPS(百萬操作每秒)參數,目前有約2,000MOPS的通用處理器,而採用DSP處理器可以將這個數字提高到約8,000MOPS,但存在資料流程由限運算單元處理的缺點。帶有專用處理引擎的媒體處理器,如位元運算單元可以將該參數提升到20,000MOPS,但FPGA和ASIC具有更高的設計自由度,可以擴展到100,000MOPS以上。
FPGA基於SRAM技術的特點使其具有可再編程功能。因此,對於一個給定的FPGA設計可以支持幾種操作點和不同的通道數,如圖2所示。在必要的情況下,不同的MPEG-4技術還可以編程在同一個FPGA中,在不超出FPGA計算能力條件下,甚至還可能支援MPEG-4標準未來的類和等級。像ISMA這樣的系統級要求經常具有不同的操作點以滿足不同的應用需要,利用FPGA的重編程的特性可以開發出足不同市場需求的設備。
轉載 http://www.52video.net/art_view24133.html |
|