視頻�(zhuǎn)碼技�(shù),顧名思義就是在通過某種手段改變�(xiàn)有視頻數(shù)�(jù)的編碼方�。視頻轉(zhuǎn)碼技�(shù)使用的目的不�,其�(shí)�(xiàn)的手段也各不相同。現(xiàn)在交換視頻數(shù)�(jù)的普遍做法是將編碼完成的視頻�(shù)�(jù)解壓縮為基帶信號(hào),根�(jù)情況�(jìn)行再編碼,并加以適當(dāng)?shù)姆庋b,使用相同的接口�(xié)�,以流的方式,在不同的視頻產(chǎn)品之間�(jìn)行傳輸共�。如在不同的視頻�(chǎn)品間使用 SDI 連接,不論設(shè)備內(nèi)部使用何種編碼方�,均通過�(nèi)置的 SDI �解碼�將視頻數(shù)�(jù)編解碼為�(biāo)�(zhǔn)� SDI �(shù)�(jù)�,�(jìn)行傳輸�
從一�(gè)簡單的問題開始我們的討論:對于一�(gè)視頻工程技�(shù)人員而言,工作中所需面對的視音頻編碼方式有多少種?
以編碼和壓縮方式的大類而言,我們需要面� MoTIon-JPEG � MPEG � DV � H.261\H.263 等不同系列的壓縮編碼方式;每一種編碼方式我們又需面對不同的子類或子級(jí),如討論 DVB ,經(jīng)常就要涉� MPEG-2 MP@ML � MP@HL ;不同廠商的視頻產(chǎn)品,也根�(jù)各自情況采用不同� 幀�(nèi)、幀間編碼關(guān)系及不同的碼�; GOP 長度� I � B � P 幀� 50 � 25 Mbps 等名詞現(xiàn)在已�(jīng)成為視頻�(chǎn)品技�(shù)參數(shù)的重要組成部�;每�(gè)廠商在視頻數(shù)�(jù)的封裝上也有各自的編碼方�,不同廠商開�(fā)的視頻服�(wù)�,如 Grass Valley � Profile 系列服務(wù)器和 SONY � MAV 系列的服�(wù)器,雖然可以支持以相� GOP 長度、相同碼流的編碼方式�(chǎn)� MPEG-2 視頻文件,但由于在文件封裝上的不�,二者產(chǎn)生的視頻文件是無法相互直接使用的,這種情況在數(shù)字視頻領(lǐng)域相�(dāng)普遍,有�(shí)甚至在同一廠商所開發(fā)的不同系列的視頻�(chǎn)品中,數(shù)�(jù)流或文件也是無法相互�(shí)別的�
無論�(shè)� A �(nèi)部的采用何種壓縮編碼方式,在向設(shè)� B 傳輸視頻�(shù)�(jù)�(shí),首先通過其內(nèi)置的�(shù)�(jù)解碼單元將視頻數(shù)�(jù)解碼送至 SDI 編碼�,封裝轉(zhuǎn)換成 SDI �(shù)�(jù)流,再通過 SDI 接口傳輸給設(shè)� B � SDI 接口,設(shè)� B 將其通過 SDI 解碼器,送至其本身的�(shù)�(jù)編碼單元,對視頻�(shù)�(jù)重新編碼�(jìn)行處理或存儲(chǔ)�
這種�(shù)�(jù)交換的前�,是不同的設(shè)備存在遵從相同協(xié)議的接口,如 SDI 接口,并具備相應(yīng)的編解碼硬件�(shè)�,使用一種可以共同識(shí)別的�(shù)�(jù)流作為中介�(jìn)行視音頻�(shù)�(jù)的交��
我們換一�(gè)角度來看,這種方式本身可以看成是一�(gè)編碼方式�(zhuǎn)�,即�(zhuǎn)碼的過程。它將設(shè)� A 中編碼處理的視頻�(shù)�(jù)解碼,通過 SDI 編解碼器�(zhuǎn)換成 SDI �,傳輸給�(shè)� B ,再將其傳換成為�(shè)� B 所使用的數(shù)�(jù)編碼方式�(jìn)行處理和存儲(chǔ)�
在這種情況�,如果我們可以使用直接的�(zhuǎn)碼手段,將基于設(shè)� A 編碼方式的視頻數(shù)�(jù)�(zhuǎn)換為�(shè)� B 可以�(shí)別并使用的數(shù)�(jù)編碼格式,為�(shè)� B 處理或存�(chǔ),可以減少重�(fù)編解碼所帶來的設(shè)備開銷和信號(hào)�(zhì)量下�,并且可以利用多種的傳輸通道,而不局限于指定的接口通道,可以大大的提高工作效率�
視頻�(shù)�(jù)不同編碼之間的相互轉(zhuǎn)化有很多算法可以�(shí)�(xiàn),許多運(yùn)�(dòng)圖像專家對此也作了深入的研究,針對不同的編碼方式提出了相�(dāng)多可行的方案。這些方案共同的特�(diǎn)就是充分利用所需相互�(zhuǎn)換編碼之間的共同特征,盡量減少編解碼所帶來的圖像質(zhì)量損失,同時(shí)�(dá)到時(shí)間和資源消耗的平衡�
如我們將一�(gè) MPEG-2 的視頻數(shù)�(jù)�(zhuǎn)換成 MPEG-4 的視頻數(shù)�(jù),當(dāng)然可以采用的方法是先� MPEG-2 的視頻解壓縮成單 幀的圖像序列,再將其重新壓縮編碼成� MPEG-4 的視頻數(shù)�(jù)
但這種�(zhuǎn)碼方式的�(yùn)算復(fù)雜度的使� SDI �(shù)�(jù)流作為中介的�(yùn)算復(fù)雜度并沒有什么區(qū)�。我們可以通過一些方法提高轉(zhuǎn)碼的效率,降低運(yùn)算復(fù)雜度,比� MPEG-2 � MPEG-4 在其編碼算法上有很多相通的地方,在 DCT 變換� MC �(yùn)�(dòng)�(bǔ)�� MV �(yùn)�(dòng)�(bǔ)�?shù)确矫嬗性S多可以公用的地方,我們并不需要將其完全解碼成�(dú)立的圖像序列,可利用不同編碼方式間的相關(guān)性�(jìn)行轉(zhuǎn)碼工�
MPEG-2 視頻�(shù)�(jù)中所有的頭信息被解碼后都直接送到 MPEG -4 編碼器中�(jìn)行編�,其中少�(shù)頭信息需要調(diào)�,以適應(yīng)新的編碼格式。� DCT 系數(shù)� MV 信息被重�,省去了�(yùn)�(dòng)估計(jì)� DCT 的系�(tǒng)消�。同�(shí) MPEG -4 做運(yùn)�(dòng)�(bǔ)�?shù)臅r(shí)�,也可以直接利用 MPEG -2 解碼器解碼得出的�(yùn)�(dòng)矢量的信��
不同的轉(zhuǎn)碼軟件有其各自特�(diǎn),但不外乎有以下幾�(gè)功能模塊組成:數(shù)�(jù)接口模塊、硬件接口模塊、存�(chǔ)管理模塊、轉(zhuǎn)碼算法模�、數(shù)�(jù)處理模塊、控制管理模塊和用戶界面模塊�
每�(gè)模塊各自�(fù)�(zé)軟件工作的一�(gè)或幾�(gè)方面:數(shù)�(jù)接口模塊�(fù)�(zé)處理�(shù)�(jù)的輸入和輸出,硬件接口模塊負(fù)�(zé)與計(jì)算機(jī)硬件�(qū)�(dòng)程序通信,存�(chǔ)管理模塊�(fù)�(zé)�(nèi)村等存儲(chǔ)空間的分�,轉(zhuǎn)碼算法模塊提供轉(zhuǎn)碼處理工作的算法手段,數(shù)�(jù)處理模塊�(jìn)行轉(zhuǎn)碼的具體�(shù)�(jù)處理,控制管理模塊�(jìn)行整�(gè)�(zhuǎn)碼工作的控制和信息處�,用戶界面模塊提供用戶與�(zhuǎn)碼軟件的交互,提供用戶對�(zhuǎn)碼的編碼方式、碼流及其它的一些軟件提供的選項(xiàng)�(jìn)行控��
�(zhuǎn)碼算法模塊可以固化到�(zhuǎn)碼軟件中,也可以以插件的方式存在。當(dāng)�(zhuǎn)碼軟件處理不同的編碼�(zhuǎn)換任�(wù)�(shí),根�(jù)需要使用不同的�(zhuǎn)碼算法插�,可以在不改變其它功能模塊配置的情況�,靈活的�(kuò)展軟件功��