視頻轉(zhuǎn)碼技術(shù)及其轉(zhuǎn)碼技術(shù)的實(shí)現(xiàn)詳解
本文簡(jiǎn)單介紹了視頻轉(zhuǎn)碼技術(shù)的定義、分類及實(shí)現(xiàn)手段,重點(diǎn)分析了如何在視頻工程中使用轉(zhuǎn)碼技術(shù),包括轉(zhuǎn)碼技術(shù)的使用方式及其優(yōu)勢(shì)所在。分析了在流方式和文件方式下如何使用轉(zhuǎn)碼技術(shù)。通過(guò)對(duì)移動(dòng)非線性編輯系統(tǒng)遠(yuǎn)程傳輸視頻數(shù)據(jù)和節(jié)目制作網(wǎng)絡(luò)素材集中上載兩個(gè)工程實(shí)例的分析,探討了轉(zhuǎn)碼系統(tǒng)工作的靈活性和通用性。闡明了作者對(duì)在專業(yè)視頻領(lǐng)域內(nèi),配合計(jì)算機(jī)設(shè)備及網(wǎng)絡(luò)架構(gòu),使用轉(zhuǎn)碼技術(shù)前景的看法。
1 引言
從一個(gè)簡(jiǎn)單的問(wèn)題開始我們的討論:對(duì)于一個(gè)視頻工程技術(shù)人員而言,工作中所需面對(duì)的視音頻編碼方式有多少種?
以編碼和壓縮方式的大類而言,我們需要面對(duì) MoTIon-JPEG 、 MPEG 、 DV 、 H.261H.263 等不同系列的壓縮編碼方式;每一種編碼方式我們又需面對(duì)不同的子類或子級(jí),如討論 DVB ,經(jīng)常就要涉及 MPEG-2 MP@ML 和 MP@HL ;不同廠商的視頻產(chǎn)品,也根據(jù)各自情況采用不同的 幀內(nèi)、幀間編碼關(guān)系及不同的碼流; GOP 長(zhǎng)度、 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 長(zhǎng)度、相同碼流的編碼方式產(chǎn)生 MPEG-2 視頻文件,但由于在文件封裝上的不同,二者產(chǎn)生的視頻文件是無(wú)法相互直接使用的,這種情況在數(shù)字視頻領(lǐng)域相當(dāng)普遍,有時(shí)甚至在同一廠商所開發(fā)的不同系列的視頻產(chǎn)品中,數(shù)據(jù)流或文件也是無(wú)法相互識(shí)別的。
我們不想在這里探討哪一種編碼壓縮方式更好、更優(yōu)秀,本文想要討論的是:在采用不同壓縮編碼方式的視頻設(shè)備之間如何高質(zhì)量、高效效率的共享和交換視音頻數(shù)據(jù)。
現(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)部使用何種編碼方式,均通過(guò)內(nèi)置的 SDI 編解碼器將視頻數(shù)據(jù)編解碼為標(biāo)準(zhǔn)的 SDI 數(shù)據(jù)流,進(jìn)行傳輸。
無(wú)論設(shè)備 A 內(nèi)部的采用何種壓縮編碼方式,在向設(shè)備 B 傳輸視頻數(shù)據(jù)時(shí),首先通過(guò)其內(nèi)置的數(shù)據(jù)解碼單元將視頻數(shù)據(jù)解碼送至 SDI 編碼器,封裝轉(zhuǎn)換成 SDI 數(shù)據(jù)流,再通過(guò) SDI 接口傳輸給設(shè)備 B 的 SDI 接口,設(shè)備 B 將其通過(guò) SDI 解碼器,送至其本身的數(shù)據(jù)編碼單元,對(duì)視頻數(shù)據(jù)重新編碼進(jìn)行處理或存儲(chǔ)。
這種數(shù)據(jù)交換的前提,是不同的設(shè)備存在遵從相同協(xié)議的接口,如 SDI 接口,并具備相應(yīng)的編解碼硬件設(shè)備,使用一種可以共同識(shí)別的數(shù)據(jù)流作為中介進(jìn)行視音頻數(shù)據(jù)的交換。
我們換一個(gè)角度來(lái)看,這種方式本身可以看成是一個(gè)編碼方式轉(zhuǎn)換,即轉(zhuǎn)碼的過(guò)程。它將設(shè)備 A 中編碼處理的視頻數(shù)據(jù)解碼,通過(guò) 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ù)編解碼所帶來(lái)的設(shè)備開銷和信號(hào)質(zhì)量下降,并且可以利用多種的傳輸通道,而不局限于指定的接口通道,可以大大的提高工作效率。
這正是本文想要和大家探討的,如何靈活的利用轉(zhuǎn)碼方式,在基于不同編碼方式的設(shè)備間共享視頻數(shù)據(jù),提高工作效率,同時(shí)討論在工程方面的可能會(huì)遇到的問(wèn)題及解決方案。
2 視頻轉(zhuǎn)碼技術(shù)
視頻轉(zhuǎn)碼技術(shù),顧名思義就是在通過(guò)某種手段改變現(xiàn)有視頻數(shù)據(jù)的編碼方式。視頻轉(zhuǎn)碼技術(shù)使用的目的不同,其實(shí)現(xiàn)的手段也各不相同。大致上可以分為兩類:
一、不同編碼格式之間的視頻數(shù)據(jù)轉(zhuǎn)碼
不同編碼格式之間的數(shù)據(jù)轉(zhuǎn)碼,指通過(guò)轉(zhuǎn)碼方法改變視頻數(shù)據(jù)的編碼格式。通常這種數(shù)據(jù)轉(zhuǎn)碼會(huì)改變視頻數(shù)據(jù)的現(xiàn)有碼流和分辨率。
例如我們可以將基于 MPEG-2 格式的視頻數(shù)據(jù)轉(zhuǎn)換為 DV 、 MPEG-4 或其它編碼格式,同時(shí)根據(jù)其轉(zhuǎn)碼目的,指定轉(zhuǎn)碼產(chǎn)生視頻數(shù)據(jù)的碼流和分辨率。我們可以將 MPEG-2 全 I 幀 50Mbps 的視頻源數(shù)據(jù)轉(zhuǎn)換為 25Mbps 碼流的 DV 格式數(shù)據(jù),用于筆記本移動(dòng)編輯系統(tǒng),同時(shí)產(chǎn)生一個(gè) 300*200 低分辨率的 MPEG-4 文件,使用 REAL 或者微軟的 WMV 格式進(jìn)行封裝,通過(guò)互聯(lián)網(wǎng)絡(luò)傳輸至主管領(lǐng)導(dǎo)處用于審看。
這種轉(zhuǎn)碼方式設(shè)計(jì)的算法較為復(fù)雜,其實(shí)質(zhì)上是一個(gè)重新編碼的過(guò)程,涉及的算法復(fù)雜度和系統(tǒng)開銷,是由轉(zhuǎn)碼所需圖像質(zhì)量要求及轉(zhuǎn)碼前后兩種編碼方式的相關(guān)度所決定的。
二、相同編碼格式之間的視頻數(shù)據(jù)轉(zhuǎn)碼
相同編碼格式的數(shù)據(jù)轉(zhuǎn)碼,指不改變壓縮格式,只通過(guò)轉(zhuǎn)碼手段改變其碼流或頭文件信息。根據(jù)其使用目的,可分為改變碼流和不改變碼流兩種。
如我們可以將 MPEG-2 全 I 幀 50Mbps 碼流的視頻數(shù)據(jù)轉(zhuǎn)碼為 MPEG-2 IBBP 幀 8Mbps 碼流的視頻數(shù)據(jù),直接用于播出服務(wù)器用于播出?;蛘呶覀儗⒒?SONY 視頻服務(wù)器頭文件封裝的 MPEG-2 全 I 幀 50Mbps 碼流的視頻文件,改變其頭文件和封裝形式,使之可以在給予 MATROX 板卡的編輯系統(tǒng)上直接編輯使用。
這種轉(zhuǎn)碼方式的復(fù)雜度要小于不同編碼格式轉(zhuǎn)碼的復(fù)雜度,而且對(duì)視頻工程上而言,更加具有可操作性。
3 視頻數(shù)據(jù)轉(zhuǎn)碼的實(shí)現(xiàn)
視頻數(shù)據(jù)不同編碼之間的相互轉(zhuǎn)化有很多算法可以實(shí)現(xiàn),許多運(yùn)動(dòng)圖像專家對(duì)此也作了深入的研究,針對(duì)不同的編碼方式提出了相當(dāng)多可行的方案。這些方案共同的特點(diǎn)就是充分利用所需相互轉(zhuǎn)換編碼之間的共同特征,盡量減少編解碼所帶來(lái)的圖像質(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ū)別。我們可以通過(guò)一些方法提高轉(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)碼算法在不同需求的編碼轉(zhuǎn)換時(shí),可以得到不同的時(shí)間及系統(tǒng)消耗復(fù)雜度。這些不同復(fù)雜度算法的是否采用取決于用戶對(duì)工作任務(wù)的要求。比如工作任務(wù)需要實(shí)時(shí)獲得轉(zhuǎn)碼結(jié)果,要求高可靠性,并且對(duì)轉(zhuǎn)碼前后的數(shù)據(jù)的編碼方式及碼流指定不變。那么我們可以采用高效的轉(zhuǎn)碼算法,必要時(shí)犧牲一些圖像質(zhì)量,將算法固化在硬件芯片板卡上,從而滿足任務(wù)需求。如果工作任務(wù)對(duì)轉(zhuǎn)碼同步性要求并不高,不要求實(shí)時(shí)輸出,但對(duì)圖像質(zhì)量有很高的要求,我們可以采用一些效率較低,但圖像質(zhì)量損失較小的轉(zhuǎn)碼算法。可以將算法固定在硬件芯片中,也可以使用通用的計(jì)算機(jī)運(yùn)算系統(tǒng)、存儲(chǔ)系統(tǒng)和數(shù)據(jù)交換系統(tǒng),使用軟件算法進(jìn)行轉(zhuǎn)碼工作,這些方式的具體應(yīng)用方式在本文的后半部分會(huì)詳細(xì)介紹。
下面來(lái)看一下這些轉(zhuǎn)碼工作是如何實(shí)現(xiàn)的。
一、傳統(tǒng)面向流方式的視頻轉(zhuǎn)碼
由于視頻數(shù)據(jù)自身的特點(diǎn),數(shù)據(jù)量的龐大和線性的存儲(chǔ)格式,長(zhǎng)期以來(lái)傳統(tǒng)的視頻編碼轉(zhuǎn)換都是面向數(shù)據(jù)流進(jìn)行操作。其工作原理如一個(gè)制式轉(zhuǎn)換器一樣,輸入端輸入連續(xù)的 NTSC 制信號(hào),同時(shí)在輸出端輸出實(shí)時(shí)的 PAL 制信號(hào)。
這種方式的優(yōu)點(diǎn)是可以以實(shí)時(shí)或者接近實(shí)時(shí)的方式輸出轉(zhuǎn)碼結(jié)果,轉(zhuǎn)碼算法固化在板卡芯片上,轉(zhuǎn)碼工作基本上是由硬件完成,穩(wěn)定性好。但其缺點(diǎn)也是顯而易見的,轉(zhuǎn)碼單元針對(duì)特定的源編碼方式和目標(biāo)編碼方式,用戶基本無(wú)法對(duì)碼流的大小和附加信息進(jìn)行控制,靈活性較差。而為了滿足實(shí)時(shí)處理的要求,有時(shí)必須需要犧牲一些圖像的質(zhì)量。另外的缺點(diǎn)就是這種基于流方式的視頻轉(zhuǎn)碼,輸入和輸出基本同步,不能以快于實(shí)時(shí)的速度進(jìn)行編碼轉(zhuǎn)換。
隨著計(jì)算機(jī)技術(shù)的日益進(jìn)步,非線性存儲(chǔ)手段日益完善,我們可以通過(guò)文件的方式存儲(chǔ)視頻數(shù)據(jù)。這樣就為視頻數(shù)據(jù)提供了新的,更加靈活高效的轉(zhuǎn)碼手段。
二、使用計(jì)算機(jī)及其相關(guān)設(shè)備面向文件方式進(jìn)行視頻轉(zhuǎn)碼
使用計(jì)算機(jī)設(shè)備改變單幅圖像的編碼方式已經(jīng)是一個(gè)非常成熟的技術(shù),但受到計(jì)算機(jī)運(yùn)算能力和存儲(chǔ)能力的限制,很長(zhǎng)一段時(shí)間內(nèi),對(duì)于符合廣播級(jí)要求的專業(yè)視頻數(shù)據(jù)的編碼轉(zhuǎn)換處理一直沒有什么好的解決方案。但隨著計(jì)算機(jī)設(shè)備運(yùn)算能力的增強(qiáng)和存儲(chǔ)容量的日益擴(kuò)大、其數(shù)據(jù)接口已經(jīng)可以滿足視頻數(shù)據(jù)處理的需求,使用計(jì)算機(jī)及其相關(guān)設(shè)備處理視頻數(shù)據(jù)已經(jīng)成為現(xiàn)在的主流,同時(shí)也給視頻轉(zhuǎn)碼提供了更好性價(jià)比的平臺(tái)。我們可以使用計(jì)算機(jī)設(shè)備,利用軟件手段,進(jìn)行靈活高效的轉(zhuǎn)碼工作。
我們來(lái)看一看如何使用計(jì)算機(jī)系統(tǒng)進(jìn)行轉(zhuǎn)碼工作。
這種利用計(jì)算機(jī)設(shè)備進(jìn)行轉(zhuǎn)碼的工作方式具有非常大的靈活性,可以對(duì)以文件方式或以流方式存在的視頻數(shù)據(jù)進(jìn)行處理。其本質(zhì)均是在計(jì)算機(jī)設(shè)備的存儲(chǔ)器內(nèi)開設(shè)足夠大數(shù)據(jù)的緩存地帶,將所需處理的視頻數(shù)據(jù)文件或流分成許多大小適合的片段,放入其中。由軟件提供轉(zhuǎn)碼算法,并控制計(jì)算機(jī)系統(tǒng)進(jìn)行轉(zhuǎn)碼工作。圖 -7 中所示的數(shù)據(jù)接口的概念也非常的靈活,它可以使計(jì)算機(jī)設(shè)備的外部接口,如千兆以太、 Fiber Channel 通道,也可以是其本身的內(nèi)置存儲(chǔ)通道接口。我們來(lái)看一下他們是如何工作的。
計(jì)算機(jī)設(shè)備先將需轉(zhuǎn)換編碼方式的視頻數(shù)據(jù)文件放入外部存儲(chǔ)或本地存儲(chǔ)設(shè)備中。然后將該視頻文件拆分成適合計(jì)算機(jī)設(shè)備處理的數(shù)據(jù)片段,放入高速緩存中,由軟件提供轉(zhuǎn)碼算法,利用計(jì)算機(jī)設(shè)備的處理能力對(duì)數(shù)據(jù)片段進(jìn)行編碼轉(zhuǎn)換。轉(zhuǎn)換完成后將數(shù)據(jù)片段送入指定區(qū)域存儲(chǔ),同時(shí)高速緩存區(qū)獲取新的數(shù)據(jù)片段。循環(huán)這種方式直到所有的拆分?jǐn)?shù)據(jù)片段均得到了轉(zhuǎn)碼處理,合并轉(zhuǎn)碼完成的視頻數(shù)據(jù)文件片段,輸出我們所需要得到的視頻數(shù)據(jù)。
這種拆分?jǐn)?shù)據(jù)的方式同樣也適合于以流方式存在的視頻數(shù)據(jù),比如我們可以使用數(shù)據(jù)接口直接與數(shù)字視頻數(shù)據(jù)流連接,不經(jīng)過(guò)任何的編解碼將其存儲(chǔ)到計(jì)算機(jī)轉(zhuǎn)碼設(shè)備的指定緩存區(qū)域,變線性的數(shù)據(jù)流存在方式為非線性的數(shù)據(jù)存儲(chǔ)方式,然后可以使用圖— 8 所示的數(shù)據(jù)拆分方式進(jìn)行轉(zhuǎn)碼處理,經(jīng)合并后,可以選擇文件方式或依然保持流方式的數(shù)據(jù)輸出。
采用這種方式的轉(zhuǎn)碼工作,具有很強(qiáng)的靈活性,數(shù)字信號(hào)接口并不需要識(shí)別接收到的數(shù)據(jù)流為何種格式編碼、封裝如何。只需將數(shù)據(jù)如實(shí)記錄到緩存區(qū),由轉(zhuǎn)碼軟件決定采用何種轉(zhuǎn)碼手段,針對(duì)何種數(shù)據(jù)流的編碼格式和封裝方法進(jìn)行編碼轉(zhuǎn)換工作。如我們?cè)诮涌谟布?biāo)準(zhǔn)相同的情況下,可以對(duì) DV 流、 TS 流、 FTP 文件流等多種方式的數(shù)據(jù)流輸入進(jìn)行編碼轉(zhuǎn)換,并不需要更換硬件接口和編解碼設(shè)備,只需更改轉(zhuǎn)碼軟件的轉(zhuǎn)碼處理手段及控制手段即可
我們看一下轉(zhuǎn)碼軟件究竟是如何進(jìn)行工作的。
不同的轉(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)碼軟件的交互,提供用戶對(duì)轉(zhuǎn)碼的編碼方式、碼流及其它的一些軟件提供的選項(xiàng)進(jìn)行控制。
轉(zhuǎn)碼算法模塊可以固化到轉(zhuǎn)碼軟件中,也可以以插件的方式存在。當(dāng)轉(zhuǎn)碼軟件處理不同的編碼轉(zhuǎn)換任務(wù)時(shí),根據(jù)需要使用不同的轉(zhuǎn)碼算法插件,可以在不改變其它功能模塊配置的情況下,靈活的擴(kuò)展軟件功能。
使用計(jì)算機(jī)設(shè)備配合轉(zhuǎn)碼軟件,進(jìn)行專業(yè)視頻編碼轉(zhuǎn)換工作,具有以下一些優(yōu)點(diǎn):
? 硬件設(shè)施相對(duì)簡(jiǎn)單
使用計(jì)算機(jī)設(shè)備及軟件進(jìn)行轉(zhuǎn)碼工作,無(wú)需使用專用的編解碼芯片或板卡。對(duì)數(shù)據(jù)的處理完全由軟件來(lái)控制完成。
? 轉(zhuǎn)碼范圍廣、靈活性好
使用軟件轉(zhuǎn)碼,可以由用戶根據(jù)需求對(duì)轉(zhuǎn)碼設(shè)置進(jìn)行控制。包括目標(biāo)碼流的的大小、級(jí)別、壓縮方式、封裝方式等方面均可以由用戶來(lái)指定,根據(jù)不同的需求直接使用相應(yīng)的轉(zhuǎn)碼算法,轉(zhuǎn)碼算法可以作為插件存在于軟件中,便于隨時(shí)更新或升級(jí),而無(wú)需對(duì)整個(gè)系統(tǒng)進(jìn)行改動(dòng)。
三、轉(zhuǎn)碼的復(fù)雜度和資源消耗隨需求不同發(fā)生變化。運(yùn)用軟件轉(zhuǎn)碼系統(tǒng)可以對(duì)不同的轉(zhuǎn)碼要求分別對(duì)待。有時(shí)候我們僅僅是想改變視頻文件的封裝方式,而不改變其壓縮編碼的方式,這種方式就非常適合。例如我們有這樣的需求,需將 SONY 的 MAV 系列服務(wù)器中的 MPEG-2 I 幀 50M 碼流 編碼 的視頻文件轉(zhuǎn)碼為 Ma trox DigiSuite DTV 板卡可支持的視頻文件形式,用于節(jié)目制作網(wǎng)絡(luò)編輯。由于 DTV 板卡支持 MPEG-2 I 幀 50M 碼流的視頻數(shù)據(jù),我們?cè)谶M(jìn)行轉(zhuǎn)碼工作的時(shí)候可以僅僅只改變視頻文件的封裝形式,而不改變其中涉及視頻數(shù)據(jù)內(nèi)容的壓縮編碼。這樣可以大大降級(jí)轉(zhuǎn)碼工作的復(fù)雜度和系統(tǒng)消耗,同時(shí)可以保證視頻數(shù)據(jù)的質(zhì)量不因重新編解碼而受到損傷。
4 轉(zhuǎn)碼系統(tǒng)在實(shí)際工程中的應(yīng)用
在電視技術(shù)工程中,已經(jīng)有不少的應(yīng)用轉(zhuǎn)碼系統(tǒng)的實(shí)際例子。我們下面就通過(guò)兩個(gè)工程實(shí)例來(lái)進(jìn)一步的分析基于計(jì)算機(jī)設(shè)備的轉(zhuǎn)碼系統(tǒng)的工作原理和應(yīng)用前景。
一、轉(zhuǎn)碼系統(tǒng)在移動(dòng)非線性編輯系統(tǒng)遠(yuǎn)程傳輸中的應(yīng)用
隨著筆記本電腦性能的日益增強(qiáng),商家已經(jīng)敏銳的看到使用基于筆記本電腦的移動(dòng)非線性編輯系統(tǒng)在遠(yuǎn)程編輯傳輸上的應(yīng)用前景。基于軟件的編輯手段使編輯系統(tǒng)的價(jià)格大大的降低,設(shè)備的便攜性使現(xiàn)場(chǎng)編輯成為可能。但這些并不是移動(dòng)非編優(yōu)勢(shì)的全部,還有非常重要的一個(gè)吸引用戶的特點(diǎn):使用移動(dòng)非線性編輯系統(tǒng),配合相應(yīng)的網(wǎng)絡(luò)接入設(shè)備,就可以利用現(xiàn)有的公用通訊網(wǎng)絡(luò)進(jìn)行視頻數(shù)據(jù)的傳輸。使利用廉價(jià)的公共互聯(lián)網(wǎng)絡(luò)、電信網(wǎng)絡(luò)或者移動(dòng)通訊網(wǎng)絡(luò),替代專用昂貴的、點(diǎn)對(duì)點(diǎn)的通訊線路進(jìn)行視頻數(shù)據(jù)傳輸成為可能。
移動(dòng)編輯系統(tǒng)可以使用遍布城鎮(zhèn)的廉價(jià)的寬帶、 ADSL 線路、 GPRS 無(wú)線通訊所構(gòu)成的公用互聯(lián)通訊網(wǎng)絡(luò)取代微波、光纖通道、衛(wèi)星等專用昂貴的數(shù)據(jù)鏈接通路進(jìn)行視頻數(shù)據(jù)的傳輸。
但使用公用網(wǎng)絡(luò)傳輸視頻素材,不可避免的要遇到公共網(wǎng)絡(luò)帶寬的瓶頸問(wèn)題,比如給予以太局域網(wǎng)的寬帶互聯(lián)網(wǎng)絡(luò)接入,其最高傳輸速率一般不會(huì)超過(guò) 4Mbps ,而根據(jù)路由的不同及干線帶寬的限制,實(shí)際傳輸?shù)乃俾蕰?huì)更低。對(duì)于 50M 碼流的 MPEG2 全 I 幀編碼或 25M 碼流的 DV 編碼而言,公用網(wǎng)絡(luò)的數(shù)據(jù)傳輸率是難以忍受的。我們以 DV 25M 碼流的編碼方式為例,在 Windows 操作系統(tǒng)下,一分鐘的 DV 文件約為 220MB 左右,在互聯(lián)網(wǎng)絡(luò)上以 200KBps 的速度傳輸,其需要 4100 秒左右,即 68 分鐘左右。即視頻數(shù)據(jù)時(shí)長(zhǎng)和傳輸所需時(shí)長(zhǎng)之比是 1 : 68 。這種效率的傳輸方式雖然在理論上是可行的,但在實(shí)際應(yīng)用中,由于不同網(wǎng)絡(luò)狀況,速度各有差別,而且在傳輸中任何的一次中斷都有可能使整個(gè)視頻文件的不可使用,從而導(dǎo)致必須從頭重新傳輸。所以這種工作方式在實(shí)際工作中是不具有可操作性的。
那么如何使用公用互聯(lián)通訊網(wǎng)絡(luò),高效,便捷的將節(jié)目視頻數(shù)據(jù)傳回編輯地點(diǎn)或者直接用于播出呢?可以利用基于軟件轉(zhuǎn)碼的視頻數(shù)據(jù)傳輸系統(tǒng)解決這個(gè)問(wèn)題。
我們可以根據(jù)具體需要,將節(jié)目視頻數(shù)據(jù)通過(guò)軟件轉(zhuǎn)碼系統(tǒng)轉(zhuǎn)換為指定格式,指定碼流編碼方式,以文件分割的方式分成若干個(gè)大小合適的數(shù)據(jù)包,通過(guò)公共互聯(lián)網(wǎng)絡(luò)以 FTP 的方式將這些數(shù)據(jù)包發(fā)送給異地的接收端,并提供數(shù)據(jù)校驗(yàn)手段。接收端在收到各個(gè)數(shù)據(jù)包后,將這些數(shù)據(jù)包和并編碼為接收端指定的數(shù)據(jù)編碼方式,在這個(gè)過(guò)程中如遇到數(shù)據(jù)包丟失,則接收端要求傳輸方重新發(fā)送該數(shù)據(jù)包,而不需重新將視頻數(shù)據(jù)從頭傳輸。
如在實(shí)際工作中遇到這樣一個(gè)問(wèn)題:工作任務(wù)要求將異地拍攝的突發(fā)新聞素材及時(shí)傳至遠(yuǎn)方的電視臺(tái)。兩地之間無(wú)專用視頻信號(hào)傳輸線路或?qū)S镁€路租金過(guò)于昂貴,公用互聯(lián)網(wǎng)絡(luò)接入?yún)s很方便。拍攝的原素材為 DV 的壓縮編碼格式,電視臺(tái)的編輯和播出系統(tǒng)使用的是 MPEG-2 的壓縮編碼格式。為了達(dá)到快速、高效、廉價(jià)的將節(jié)目素材傳回電視臺(tái),可以采用以下的工作方式。
首先使用移動(dòng)非線性編輯系統(tǒng)本機(jī)上的軟件轉(zhuǎn)碼系統(tǒng)將源視頻數(shù)據(jù)( DV )轉(zhuǎn)碼為用戶指定編碼方式和碼流的視頻數(shù)據(jù)文件。編碼方式和碼流的指定根據(jù)用戶的具體需要,如對(duì)注重內(nèi)容性的突發(fā)新聞和一些不需要進(jìn)行再次復(fù)雜編輯的視頻數(shù)據(jù),用戶可以選擇適當(dāng)?shù)臓奚曨l數(shù)據(jù)圖像質(zhì)量來(lái)?yè)Q取更高的壓縮比的文件用于在公共互聯(lián)網(wǎng)絡(luò)上傳輸,比如將每分鐘 220MB 左右的 DV 文件轉(zhuǎn)碼為每分鐘 60MB 的高壓縮比的 MPEG-4 文件。在網(wǎng)絡(luò)狀況不變的情況下,其傳輸時(shí)間可以減少為直接傳輸 DV 文件所需花費(fèi)時(shí)間的四分之一,代價(jià)是犧牲圖像質(zhì)量,但其圖像質(zhì)量的損失肉眼幾乎不能區(qū)別。隨后將 MPEG-4 文件拆分為若干個(gè)數(shù)據(jù)包。通過(guò) FTP 方式將這些數(shù)據(jù)包發(fā)送到遠(yuǎn)端的電視臺(tái)接收端。接收端將這些文件合并后得到的 MPEG-4 文件,根據(jù)用戶指定的碼流和編碼方式,通過(guò)轉(zhuǎn)碼系統(tǒng)將該文件轉(zhuǎn)碼為指定封裝格式的 MPEG-2 文件,直接用于編輯或播出。
采用這種傳輸方式有以下特點(diǎn):用戶可以控制所需傳輸文件的大小,根據(jù)自身需要及網(wǎng)絡(luò)狀況進(jìn)行靈活調(diào)整;用戶可以對(duì)視頻數(shù)據(jù)圖像質(zhì)量進(jìn)行控制,可以在傳輸數(shù)據(jù)的同時(shí)改變圖像的分辨率及編碼方式;將視頻數(shù)據(jù)文件拆分成若干的數(shù)據(jù)包進(jìn)行傳輸,可以充分的利用公用互聯(lián)通訊網(wǎng)絡(luò)的資源,同時(shí)具有斷點(diǎn)續(xù)傳的功能;用戶在拆分和合并數(shù)據(jù)包時(shí)可以加入自定義的加密解密方式,可以使數(shù)據(jù)在互聯(lián)網(wǎng)上的傳輸更加安全;拆分文件、編碼傳輸、合并文件等工作可以同時(shí)進(jìn)行,如在編碼的過(guò)程中可以將已經(jīng)編碼完成的部分拆分成數(shù)據(jù)包,直接發(fā)送到接收端,接收端可以邊接收邊合并,并將已經(jīng)合并的數(shù)據(jù)進(jìn)行編碼工作,可以大大的提高工作效率。
值得一提的是,圖像質(zhì)量損失的大小是在用戶指定傳輸?shù)木幋a方式和碼流的大小時(shí)確定的。在傳輸至目的地時(shí)將收到的視頻數(shù)據(jù)轉(zhuǎn)碼為高碼流的編碼方式時(shí),只會(huì)在視頻數(shù)據(jù)中加入冗余信息,而不能改變圖像質(zhì)量。因此用戶可以根據(jù)自己的需求,通過(guò)調(diào)整傳輸碼流的大小控制圖像質(zhì)量和傳輸時(shí)間的平衡關(guān)系。
轉(zhuǎn)碼系統(tǒng)在這個(gè)工程中主要用于改變視頻數(shù)據(jù)的編碼方式及碼流大小,以適合使用低速網(wǎng)絡(luò)進(jìn)行傳輸,并且在傳輸過(guò)程中通過(guò)控制編碼方式和碼流的大小,對(duì)傳輸?shù)膱D像質(zhì)量進(jìn)行控制。在下面的一個(gè)工程例子中,我們通過(guò)對(duì)如何利用轉(zhuǎn)碼系統(tǒng)進(jìn)行高效的視頻素材數(shù)據(jù)的收錄工作的分析,從而探討轉(zhuǎn)碼系統(tǒng)應(yīng)用的另外一種側(cè)重,即對(duì)視頻數(shù)據(jù)編碼的封裝方式和冗余信息的轉(zhuǎn)碼,而較少的觸及視頻數(shù)據(jù)內(nèi)容本身的編碼方式和碼流大小,提高不同數(shù)字視頻設(shè)備產(chǎn)生的視頻數(shù)據(jù)的通用性,并且減少傳輸中的編解碼環(huán)節(jié)對(duì)視頻數(shù)據(jù)質(zhì)量的影響。
二、轉(zhuǎn)碼系統(tǒng)在集中收錄系統(tǒng)中的應(yīng)用
我們?cè)诨?Ma trox DigiSuite DTV 板卡的節(jié)目制作網(wǎng)絡(luò)中,設(shè)計(jì)一個(gè)集中上載系統(tǒng),目的是改變傳統(tǒng)使用編輯板卡本身進(jìn)行上載工作的方式,利用視頻服務(wù)器的多通道,高穩(wěn)定性和編碼的靈活性進(jìn)行視頻數(shù)據(jù)的集中上載。通過(guò)轉(zhuǎn)碼系統(tǒng)將服務(wù)器產(chǎn)生的視頻文件格式轉(zhuǎn)換為編輯系統(tǒng)可以使用的視頻數(shù)據(jù)格式,同時(shí)將衛(wèi)星收錄、已經(jīng)存在的視音頻文件及其它途徑獲取的視頻源通過(guò)轉(zhuǎn)碼系統(tǒng)引入編輯網(wǎng)絡(luò)中。從而提高視頻數(shù)據(jù)上載的效率及靈活性,減少編輯站點(diǎn)有于上載工作所花費(fèi)的非編輯占機(jī)時(shí)間,并且將不同壓縮編碼格式的視頻數(shù)據(jù)方便的引入編輯系統(tǒng)中來(lái)。
該方案的工作原理是利用帶存儲(chǔ)單元的多通道視頻服務(wù)器,作為集中上載的第一個(gè)環(huán)節(jié),視頻輸入通道分別與錄像機(jī)、攝像機(jī)、切換臺(tái)等傳統(tǒng)前期節(jié)目相連。錄制控制工作站通過(guò) 422 控制矩陣控制視頻服務(wù)器的輸入通道進(jìn)行節(jié)目素材上載,以視頻服務(wù)器所提供的視頻文件格式存儲(chǔ)在服務(wù)器本機(jī)存儲(chǔ)單元內(nèi)。視頻服務(wù)器利用千兆異步接口通過(guò)網(wǎng)關(guān)與千兆以太交換機(jī)連接,利用標(biāo)準(zhǔn)的 FTP 協(xié)議將服務(wù)器內(nèi)的視頻文件,通過(guò)轉(zhuǎn)碼系統(tǒng)傳輸至節(jié)目制作網(wǎng)絡(luò)的硬盤存儲(chǔ)陣列中,提供給編輯環(huán)境進(jìn)行編輯制作工作。
這種工作方式建立后,具有極強(qiáng)的靈活性。傳統(tǒng)使用 SDI 、模擬復(fù)合分量接口的設(shè)備可以使用視頻服務(wù)器連接上載,而對(duì)提供千兆以太接口的設(shè)備,如硬盤錄像機(jī)、 SONY 的帶標(biāo)準(zhǔn)以太接口的錄像機(jī)設(shè)備及基于文件系統(tǒng)的藍(lán)光盤攝錄設(shè)備、 P2 卡設(shè)備等,都可以通過(guò)標(biāo)準(zhǔn)的千兆以太接口和集中上載系統(tǒng)中的千兆交換機(jī)連接,通過(guò) 422 控制或以太網(wǎng)絡(luò)和控制環(huán)節(jié)連接??梢苑奖愕睦?FTP 方式進(jìn)行高速文件上載的工作,并且在加入這些設(shè)備時(shí),對(duì)集中上載的系統(tǒng)配置和控制操作無(wú)需進(jìn)行大的調(diào)整或更改。轉(zhuǎn)碼系統(tǒng)在集中收錄系統(tǒng)中處于核心地位。
轉(zhuǎn)碼系統(tǒng)是由轉(zhuǎn)碼服務(wù)器、轉(zhuǎn)碼調(diào)度服務(wù)器、用戶控制界面和相應(yīng)的以太網(wǎng)絡(luò)及 Fiber Channel 網(wǎng)絡(luò)聯(lián)接交換設(shè)備組成。其中具體負(fù)責(zé)轉(zhuǎn)碼工作的轉(zhuǎn)碼服務(wù)器是一臺(tái)或幾臺(tái)帶有千兆以太及 FC 接口的高性能計(jì)算機(jī)設(shè)備。視頻數(shù)據(jù)通過(guò)千兆以太接口進(jìn)入轉(zhuǎn)碼服務(wù)器,經(jīng)過(guò)轉(zhuǎn)碼處理后通過(guò) FC 端口輸出至節(jié)目制作網(wǎng)絡(luò)的硬盤存儲(chǔ)陣列或者其它存儲(chǔ)機(jī)構(gòu)。用戶通過(guò)用戶控制界面對(duì)轉(zhuǎn)碼調(diào)度服務(wù)器進(jìn)行配置調(diào)整,指定轉(zhuǎn)碼的編碼方式及碼流。轉(zhuǎn)碼調(diào)度服務(wù)器通過(guò)以太連接控制轉(zhuǎn)碼服務(wù)器進(jìn)行轉(zhuǎn)碼工作。轉(zhuǎn)碼服務(wù)器可以在視頻數(shù)據(jù)從千兆以太接口輸入到從 Fiber Channel 接口輸出的數(shù)據(jù)遷移過(guò)程中,改變視頻數(shù)據(jù)的編碼方式或文件封裝的格式,將視頻數(shù)據(jù)文件由視頻服務(wù)器所支持的文件格式轉(zhuǎn)換為編輯環(huán)境所識(shí)別和可使用的視頻文件格式。同樣的,對(duì)于可以提供千兆異步接口的視頻設(shè)備均可通過(guò)網(wǎng)關(guān)和千兆以太網(wǎng)絡(luò)連接,在數(shù)據(jù)遷移中進(jìn)行視頻數(shù)據(jù)的轉(zhuǎn)碼工作
在這種工作方式下,轉(zhuǎn)碼系統(tǒng)可以盡可能的減少對(duì)視頻數(shù)據(jù)本身的編碼方式和碼流大小進(jìn)行改變。比如對(duì)服務(wù)器中的 MPEG-2 文件,可以改變其封裝方式和頭文件直接用于編輯工作站使用。同樣,所有編輯站點(diǎn)可以處理使用的編碼方式,如 DTV 板卡支持處理 MPEG-2 、 DV25 和 DV50 的編碼方式,基于這些編碼方式的視頻數(shù)據(jù),均可以高效、方便的引入編輯系統(tǒng)中,而不需要對(duì)視頻數(shù)據(jù)的內(nèi)容數(shù)據(jù)進(jìn)行重復(fù)的編解碼工作,從而避免了由于傳輸環(huán)節(jié)造成的圖像質(zhì)量損失。
由于純粹的轉(zhuǎn)碼運(yùn)算工作在這項(xiàng)任務(wù)中已經(jīng)不是轉(zhuǎn)碼速度的瓶頸,轉(zhuǎn)碼時(shí)間的大小取決于數(shù)據(jù)接口的速度,如理論上可提供千兆左右傳輸速度的千兆以太和 FC 接口,在只改變文件包裝方式的情況下,實(shí)際上可以將 MPEG-2 全 I 幀 50M 碼流的文件以 1/5~1/10 于文件時(shí)長(zhǎng)的時(shí)間進(jìn)行收錄引入工作,從而大大減少了由于素材上載而帶來(lái)的時(shí)間消耗
總結(jié)
上面兩個(gè)工程實(shí)例代表了轉(zhuǎn)碼系統(tǒng)在兩個(gè)側(cè)重方向上的應(yīng)用,轉(zhuǎn)碼系統(tǒng)在移動(dòng)非線性編輯傳輸視頻數(shù)據(jù)時(shí),通過(guò)改變碼流減少了碼流的大小,從而提高了傳輸?shù)乃俣?,并通過(guò)文件拆分的方式,將大塊整體的數(shù)據(jù)轉(zhuǎn)變?yōu)樾K分散的數(shù)據(jù),從而降低了由通道的不穩(wěn)定帶來(lái)的傳輸風(fēng)險(xiǎn)。而在集中收錄系統(tǒng)應(yīng)用轉(zhuǎn)碼系統(tǒng)時(shí),利用高速穩(wěn)定的傳輸通道,使用改變文件或流封裝的方式來(lái)提高視頻數(shù)據(jù)的通用性。并且可以利用高速的 FTP 的傳輸方式以超實(shí)時(shí)的速度將視頻素材引入編輯環(huán)境中。
通過(guò)對(duì)這兩個(gè)具體工程中的應(yīng)用分析,可以看到轉(zhuǎn)碼系統(tǒng)在視頻領(lǐng)域內(nèi)的應(yīng)用前景是非常廣闊的。以前必須使用昂貴的專業(yè)硬件設(shè)備才能進(jìn)行的視頻數(shù)據(jù)編解碼、碼流轉(zhuǎn)換等工作,現(xiàn)在通過(guò)日益強(qiáng)大的計(jì)算機(jī)技術(shù),可以利用轉(zhuǎn)碼軟件來(lái)完成。同時(shí)轉(zhuǎn)碼技術(shù)在視頻數(shù)據(jù)的傳輸、存儲(chǔ)和通用性增強(qiáng)方面也可以提供很好的解決方案。
專業(yè)視頻領(lǐng)域中的轉(zhuǎn)碼技術(shù)是從通用技術(shù)脫身發(fā)展而來(lái),反過(guò)來(lái)可以大大的降級(jí)專業(yè)視頻設(shè)備投入的成本,增強(qiáng)其通用性和靈活性。這種借用它山之石,將通用產(chǎn)品技術(shù)專業(yè)化的成功范例在業(yè)內(nèi)已經(jīng)有相當(dāng)多的成功例子,如千兆以太接口和光盤技術(shù)在硬盤錄像機(jī)和藍(lán)光盤設(shè)備上的應(yīng)用,如半導(dǎo)體存儲(chǔ)設(shè)備在 P2 卡上的應(yīng)用等等。我們相信,這種基于軟件的轉(zhuǎn)碼系統(tǒng)的工作模式將會(huì)是專業(yè)視頻領(lǐng)域內(nèi)的下一個(gè)成果范例,并會(huì)帶來(lái)視頻領(lǐng)域內(nèi)的另一場(chǎng)變革。
評(píng)論