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