音視頻轉碼曾被視為一種直接的、傳統(tǒng)的處理過程,可將源視頻編碼,生成略差于原始未壓縮內(nèi)容的版本,然后將其重新解碼為傳輸或觀看所要求的格式。
隨著視頻壓縮算法種類的日益豐富,且越來越多的低成本消費類系統(tǒng)也都開始支持視頻功能,工程師肩負著設計出兼具低成本與良好視頻性能系統(tǒng)的重擔,因此必須認真審視上述這種簡單模式匹配算法(brute force approach)。盡管這種方法能產(chǎn)生高質(zhì)量視頻效果,但由于視頻偽像被當作有效數(shù)據(jù)包含在編碼中,視頻質(zhì)量會隨著每個編碼/解碼循環(huán)操作而遞減。此外,該算法還存在其他缺點。
● 對處理器要求高:在算法效率不斷提高的同時,其復雜性也越來越高,需要更高的處理能力,尤其是在需要實時轉換的情況下。
● 對存儲器資源要求高:解碼/編碼操作通常需要將被解碼的數(shù)據(jù)存儲在存儲器中,而額外的存儲器則會增加系統(tǒng)的材料清單成本。尤其對那些價格敏感型消費類產(chǎn)品而言,這將關系到產(chǎn)品在市場中的成敗。
移動設備上的視頻回放功能就是一個需要減少處理器負載以及節(jié)約存儲器資源的很好應用實例。盡管手機本身不進行轉碼工作,而只是在視頻點播(VoD)服務器或視頻網(wǎng)關上進行轉碼,但移動電視/移動視頻電話仍然還受其他五點限制,分別是:
● 網(wǎng)絡帶寬;
● 移動電話的處理能力;
● 顯示屏分辨率;
● 存儲器容量;
● 移動電話的能耗,人們往往不把這一因素視為視頻回放所要考慮的條件。
盡管移動視頻設備的處理能力一代比一代強大,但用手持設備捕獲的HD或SD視頻全都需要處理,這樣才能被網(wǎng)絡服務器上的終端設備播放。表1給出了不同視頻編碼參數(shù)對解碼設備所需資源選擇的大致影響。該表專門對采用運動補償與離散余弦變換(DCT)技術實現(xiàn)視頻壓縮的基于塊的視頻編解碼器進行了分析。
表1 編碼參數(shù)的影響
對上述關鍵參數(shù)稍加修改,就會產(chǎn)生迥異的結果。降低細節(jié)解析度(可在編碼進程中通過提高量化因數(shù)來實現(xiàn))可將視頻解碼的能耗降低75%~85%,但視頻質(zhì)量僅下降5%~13%。
轉碼技術的選擇
過去幾年來,業(yè)界針對轉碼工作提出了幾種不同的方法,可提高處理與存儲器資源的使用效率。大多數(shù)這種方案都建立在這樣一種認識基礎之上,即我們能通過更先進的技術對初始編碼過程中創(chuàng)建的量子化和頻率域信息進行修改,更好地加以利用,摒棄其中無用的東西,而不必簡單地對原始視頻內(nèi)容進行重構。
換言之,就是說既可摒棄某些信息,也可在來源與目標之間轉換頻率域信息,而無須進入像素域進行解碼。
具體而言,傳統(tǒng)方案的最重要優(yōu)勢在于,其交付的視頻與原始視頻內(nèi)容相比具有極高的保真度。因此,如果采用其他的轉碼技術,那么就需在保證盡可能高的視頻質(zhì)量的同時,還要降低對系統(tǒng)處理功能和存儲器資源的要求。只有讓轉碼技術與特定的應用相匹配,才能實現(xiàn)上述目標。
通常說來,轉碼可采用三種通用方案或架構,以下給出每種方案的簡單定義及其比較評定。
● 松弛耦合轉碼器:這種轉碼技術大多數(shù)采用解碼的輸入視頻中的運動矢量和其他附屬信息進行編碼。再編碼過程可對運動矢量進行微調(diào),或根據(jù)編碼要求進行更高效的運動矢量計算。該方法消除了去耦轉碼器所面臨的復雜計算問題,同時還能實現(xiàn)幾乎相同的視頻質(zhì)量。
● 緊密耦合轉碼:再編碼通過采用運動矢量實現(xiàn),并且無須進入像素域對運動矢量信息進行再計算。轉碼工作也可在轉換域中進行。這里需要重點考慮的問題是,由于這種方法根本不進行運動再估計,因此不能更改分辨率。這種方法最大程度地降低了對存儲器和處理器的要求,但代價是降低了畫質(zhì)。緊密耦合轉碼算法難以制定,但可根據(jù)具體要求進行開發(fā)。
● 碼率轉換器:在轉換域對位流進行部分解碼,并用網(wǎng)絡可支持的所需比特率對位流進行再編碼。視頻格式在轉碼流過程中不發(fā)生變化,無須逆變換,且在頻率域進行再量化。通常采用這種方法來解決具體的問題。例如,線纜頭端的通道容量在線纜廠已衰減,但又需要確保向終端設備傳輸?shù)囊曨l質(zhì)量和分辨率基本不變。
圖1 應用中最常用的松弛耦合轉碼器的典型流程圖
使轉碼器與應用相匹配
在諸如機頂盒、視頻會議、IPTV以及一些VoD等對畫質(zhì)要求較高的應用中,通常采用去耦和松弛耦合轉碼技術。決定采用何種轉碼技術需要評估特定應用的預期表現(xiàn)與存儲器帶寬。
緊密耦合轉碼最適合存儲器有限或者不需要高畫質(zhì)的系統(tǒng)。移動電話的點對點視頻電話應用就是一個很好的例子,因為視頻只需顯示在小屏幕上,而且分辨率相對較低,無須通過整個網(wǎng)絡傳輸高保真視頻。此外,對大量生產(chǎn)的設備,尤其是移動電話而言,合計還能節(jié)約大量處理功耗、存儲器容量及物料清單成本。
如前所述,碼率轉換器通常適用于有線電視、IPTV及視頻電話應用中的某些特殊情況,并根據(jù)可用的系統(tǒng)帶寬來匹配傳輸數(shù)據(jù)速率。其可以轉換音頻和視頻的碼率,而且?guī)缀醺杏X不到品質(zhì)的下降。
平臺考慮事項
長期以來,設計工程師一直都非常清楚地認識到,針對每個產(chǎn)品需求分別進行設計,效率遠不如在初期就設計一個統(tǒng)一靈活的平臺來滿足各種不同的需求。機頂盒(STB)就是一個很好的例子,這種產(chǎn)品存在眾多型號要求。在估算處理性能及其他平臺參數(shù)方面,轉碼發(fā)揮著重要的作用。
由于對STB而言最重要的就是實現(xiàn)高質(zhì)量視頻,因此只能將松弛耦合轉碼作為主要方法。
STB設計能否成功進入市場不僅取決于設計初期選擇什么樣的平臺,而且也取決于隨后設計方案的逐步實施。STB的價位各不相同并在全球各地銷售,與采用標準化格式的視頻會議系統(tǒng)截然不同,其必須滿足各種不同視頻格式的需要。
STB 設計人員需要考慮以下一些更高級的設計決策:
● STB應同時處理多少個頻道(如主視頻和畫中畫)以及室內(nèi)每個房間中的多少臺電視。
● 需要采用哪些產(chǎn)品差異化功能來贏得市場優(yōu)勢(例如畫中畫、專有圖像、藍光光盤刻錄、視頻通信、連接至 IP 網(wǎng)絡、有線電視網(wǎng)絡等)。
● 市場部給出的初步價格點是多少。
與大多數(shù)設計的典型情況一樣,上述這三項標準彼此密切相關,因而是平臺創(chuàng)建的重要因素,所有產(chǎn)品變體在此基礎上演變產(chǎn)生。這意味著,不僅應讓靈活的處理器與可滿足各種設計的兼容性開發(fā)軟件相配合,而且還應提供廣泛的固件庫、算法和支持。
設置性能標準
支持HDTV 1080p標準是體現(xiàn)STB平臺高端性能的重要指標,STB必須支持這種高級別的吞吐量,并實時調(diào)整顯示輸出。
此外,必須支持各種內(nèi)容源和數(shù)字顯示格式。低端有CIF格式及其分支,如QCIF格式等,可應用于視頻流中并為DTV上的拆分屏幕應用提供基礎支持。
眾所周知,HD對帶寬有著很高的要求,這就意味著我們應當支持各種壓縮算法,其中包括H.264/MPEG-4 part 10/AVC以及WMV9/VC-1等高級編解碼算法。通常需要將常規(guī)的MPEG-2傳輸流轉碼為高級編解碼。
轉碼硬件必須與整個STB系統(tǒng)中的其他系統(tǒng)進行良好交互,其中包括數(shù)字調(diào)諧器、解多路復用器 (Demuxer)和解調(diào)器、DDR2存儲器、PCI總線,以及向STB SoC傳輸音/視頻的高帶寬接口。圖2是常見的架構示意圖。
圖2 典型的STB系統(tǒng)架構
圖3 基于達芬奇技術的TMS320DM6467數(shù)字媒體處理器方框圖
德州儀器(TI)基于達芬奇(DaVinciTM)技術的數(shù)字媒體處理器可實施這種架構。該架構的簡化版如圖3所示。
為了滿足多房間觀看電視和多頻道欣賞的要求,可通過DDR2和PCI連接多個DM6467數(shù)字媒體處理器,以在不同設備間交換數(shù)據(jù),并確保架構的可擴展性。例如,如果應用需要將攝像機上的SD或HD個人視頻通過STB硬盤驅動器傳輸?shù)绞謾C上,那么通過精巧的工程設計(Clever engineering)方案就可使用另一個解碼方法將基于達芬奇技術的DM6467等處理器壓縮到服務中。