Rick Tewell
早在19世紀(jì)50年代,連環(huán)畫(huà)偵探就用Dick Tracy發(fā)明的手表直接從自己的手腕上打出電話。他能打通的人數(shù)肯定有限,但他的這一舉動(dòng)給所有親眼目睹的人都留下了深刻印象。 當(dāng)然,移動(dòng)電話技術(shù)現(xiàn)已無(wú)處不在,因此現(xiàn)在的年輕人對(duì)Detective Tracy的手表都不以為然。現(xiàn)有的這種類似的技術(shù)設(shè)備可以讓我們將視頻流通過(guò)無(wú)線方式傳輸?shù)饺魏我粋(gè)地方的便攜式設(shè)備上。這項(xiàng)技術(shù)一旦成功,便攜式實(shí)時(shí)視頻會(huì)議就能成為現(xiàn)實(shí)。
現(xiàn)在,Dick Tracy的手表發(fā)明已經(jīng)過(guò)去50年了,電信基礎(chǔ)設(shè)施也達(dá)到了數(shù)十億美元,我們已經(jīng)成功地解決了許多音頻問(wèn)題的挑戰(zhàn)——但是,對(duì)于無(wú)線視頻技術(shù)呢?大部分的技術(shù)都到位了——剩下的唯一一個(gè)主要問(wèn)題就是消費(fèi)需求及一個(gè)使企業(yè)開(kāi)發(fā)可行解決方案的經(jīng)濟(jì)模式。其中最重要的一項(xiàng)技術(shù)是MPEG-4視頻標(biāo)準(zhǔn),及它的早期實(shí)現(xiàn)。MPEG-4非常適合無(wú)線移動(dòng)視頻設(shè)備,這一問(wèn)題下面將會(huì)談到。我們先來(lái)了解一些技術(shù)背景,讓它帶我們進(jìn)入正題。
音頻流這項(xiàng)技術(shù)本身是可取的——例如在音樂(lè)播放和電話交談中。然而,視頻——當(dāng)然它需要伴音——卻有所不同。在19世紀(jì)20年代,有聲技術(shù)得到足夠發(fā)展以后,有聲電影就立即取代了無(wú)聲電影。今天,無(wú)聲視頻在消費(fèi)者的眼中已經(jīng)是種用處不大的設(shè)備。將聲音添加到電影中去的兩個(gè)關(guān)鍵問(wèn)題是“音頻同步”和“放大”。在視頻流的環(huán)境中——不論通過(guò)無(wú)線或有線網(wǎng)絡(luò)——音頻/視頻同步這一基本問(wèn)題仍然在困擾著我們。 我們可以容忍視頻出現(xiàn)偶爾出現(xiàn)些小故障,但我們對(duì)聲音斷續(xù)和音頻不同步等音頻差異卻極度敏感。人耳可以分辨出僅相差幾毫秒的音頻差錯(cuò),因此,視頻和音頻的精確同步對(duì)視頻傳輸?shù)某晒κ侵陵P(guān)重要的。
要通過(guò)無(wú)線方式將視頻和音頻同時(shí)傳輸,就必須先利用技術(shù)將視頻和音頻同時(shí)送入容器中,并要它們?cè)趥鬏斨啊⒅泻椭蠖己喜⒃谝黄稹1M管我們對(duì)音頻和視頻的編碼和解碼都談到了很多、也寫(xiě)到了很多,但對(duì)將已編碼的音頻流和視頻流都置于容器當(dāng)中,以在有線或無(wú)線網(wǎng)絡(luò)上傳輸?shù)募夹g(shù)卻了解不夠。本文的目的就是幫助大家進(jìn)一步了解音頻和視頻的傳輸技術(shù)。
A/V容器格式
那么,什么是A/V容器格式呢?簡(jiǎn)單地說(shuō),A/V容器格式就是容納音頻和視頻樣本的信息框(見(jiàn)圖1),它的另一個(gè)名稱叫做“文件格式”。容器格式并不是一種編碼或壓縮的手段,事實(shí)上,許多容器都不具備這種功能。它們只是告訴我們A/V樣本們是怎樣共存于一個(gè)“文件”當(dāng)中。AVI、MOV、ASF、MPEG-1系統(tǒng)流、MPEG-2節(jié)目流、MPEG-2傳輸流以及MPEG-4系統(tǒng)流都是A/V容器格式。
 |
圖1:A/V容器格式 |
A/V容器格式的基本概念是:一個(gè)容納將被傳輸?shù)侥康牡氐囊纛l和視頻流的盒子。“目的地”文件包括居于CD-ROM、DVD這樣的硬盤(pán)驅(qū)動(dòng)器上,或置于局域網(wǎng)或互聯(lián)網(wǎng)遠(yuǎn)端的存儲(chǔ)設(shè)備上。有時(shí)候,接收端直到容器打開(kāi)之后才知道里面裝的是什么。所有的容器格式都會(huì)附有報(bào)頭,以告知接收端容器中傳輸?shù)膬?nèi)容。
 |
圖2:音頻/視頻編碼器 |
AVI文件
一種早期基于PC技術(shù)的A/V容器叫做AVI——音頻視頻交錯(cuò)(Audio/Video Interleaved)。AVI文件含有AVI文件的報(bào)頭,還含有音頻和視頻的樣本。AVI文件的報(bào)頭中含有一個(gè)四字符代碼(FOURCC),說(shuō)明文件內(nèi)視頻流的類型。該FOURCC告訴接收端觀看文件需要什么樣的視頻解碼器。 http://www.fourcc.org/codecs.php上有一組可用的四字代碼。AVI文件不是為網(wǎng)絡(luò)上的碼流(有線網(wǎng)絡(luò)或無(wú)線網(wǎng)絡(luò))而設(shè)計(jì)的。AVI文件事實(shí)上比常用的PC網(wǎng)絡(luò)更早出現(xiàn)。圖3為AVI文件中一個(gè)視頻流和一個(gè)音頻流的典型分布圖。
 |
圖3: RIFF AVI數(shù)據(jù)塊。 |
盡管視頻流和音頻流傳輸AVI文件,因?yàn)橐纛l流和視頻流可以交錯(cuò)編碼,但是當(dāng)網(wǎng)絡(luò)的信息包丟失時(shí),AVI文件不會(huì)在音頻流和視頻流內(nèi)為的嵌入式時(shí)標(biāo)提供讓兩者重新達(dá)成同步的機(jī)制。另外,由于索引常常出現(xiàn)在文件的末尾,因此很多人都等到文件收到——即整個(gè)文件都傳輸完之后再試圖啟動(dòng)AVI文件。請(qǐng)注意,如何才能對(duì)AVI文件中的音頻和視頻采用任何一種壓縮手段處理呢?
由于AVI文件簡(jiǎn)單靈活, 是最常用最普遍的A/V容器格式之一。例如,從數(shù)碼相機(jī)中捕捉到的A/V就包含在視窗操作系統(tǒng)下的AVI 文件中。DivX這種流行的公共域MPEG-4編解碼器就把它本身包含在在視窗操作系統(tǒng)下的AVI 文件中。所以,未來(lái)好幾十年我們?nèi)匀粫?huì)使用AVI這一文件格式,但是它不能也不會(huì)流動(dòng)。這是可下載容器格式的最好例證。下面我們來(lái)看看另一種非常流行的容器格式——MPEG。
MPEG容器格式
許多人都認(rèn)為MPEG不是一種容器格式,而是一項(xiàng)編碼或壓縮技術(shù)。按理說(shuō),這種理解是正確的。MPEG不僅指定了視頻、音頻解碼的有效手段,而且指定了視頻、音頻解碼在比特流或容器中的分布情況。MPEG將基本流(音頻流和視頻流)在容器中的分布稱為“系統(tǒng)”。在MPEG中,單一基本流的孤立存在是不“合法”的;只有加進(jìn)系統(tǒng)信息之后,才會(huì)產(chǎn)生有效的MPEG比特流。在MPEG-1中,MPEG中的系統(tǒng)信息或?qū)佣际侵苯觽鬏數(shù)模换玖髋c系統(tǒng)流之間的關(guān)系緊密,二者能夠組成完整的MPEG流。這種關(guān)系在MPEG-2中更加緊密,在MPEG-4中又進(jìn)一步緊密。
那么,MPEG系統(tǒng)流和MPEG層的目的是什么呢?簡(jiǎn)單地說(shuō),就是記錄基本流下所發(fā)生的情況。流層提供時(shí)標(biāo)、音頻同步、封包及其它的一些性能,讓基本流的錄音重放裝置可靠并使視頻和音頻精確同步。
MPEG-1是為一種無(wú)錯(cuò)誤傳輸環(huán)境如CD-ROM而設(shè)計(jì)的。MPEG-2增強(qiáng)了在容易出現(xiàn)錯(cuò)誤的網(wǎng)絡(luò)上的傳輸能力,這就是說(shuō),處理這樣的環(huán)境的MPEG-2系統(tǒng)層的復(fù)雜性更高;并且,它與MPEG-1保持后向兼容性。圖4為MPEG-2中MPEG系統(tǒng)層的范圍。
 |
圖4:MPEG-2系統(tǒng)。 |
MPEG-1因其子集具備一種稱為“約束參數(shù)比特流”或CPB的性能而得到廣泛應(yīng)用。這種性能是為在CD-ROM上儲(chǔ)存符合紅皮書(shū)音頻標(biāo)準(zhǔn)規(guī)定的、相同數(shù)量的視頻和音頻數(shù)據(jù)而設(shè)計(jì)的。這意味著在一張74分鐘的CD-ROM上,你能存足足74分鐘的視頻和音頻。這個(gè)標(biāo)準(zhǔn)被稱為白皮書(shū)或視頻CD(VCD)。在44.1kHz的采樣率條件下,視頻數(shù)據(jù)率被定為1.15Mb/s,音頻數(shù)據(jù)率為224 Kb/s;視頻大小被鎖定為352x240 30fps NTSC和352x280 25fps PAL(也被稱為CIF)。
這一標(biāo)準(zhǔn)運(yùn)作良好,但卻只有“標(biāo)準(zhǔn)”電視性能的四分之一,并且常在電視公眾中引起爭(zhēng)議,但當(dāng)時(shí)來(lái)說(shuō)這仍是一項(xiàng)令人驚訝的技術(shù)成果。在大約1.5 Mbit/s(125 Kbytes/s)比特率下,現(xiàn)有的電纜調(diào)制解調(diào)器能輕松地傳輸MPEG-1 CPB流,但是對(duì)于無(wú)線蜂窩技術(shù)網(wǎng)絡(luò)來(lái)說(shuō),要可靠地做好這一點(diǎn)還有很長(zhǎng)一段路要走。此外,MPEG-1缺少更正網(wǎng)絡(luò)傳輸和重新同步中錯(cuò)誤的能力。MPEG-2具有這一功能性,但是,到該技術(shù)趕上實(shí)際實(shí)施的時(shí)候,MPEG-4和其它的流格式已經(jīng)展示在人們面前。
MPEG-2具有更高的數(shù)據(jù)傳輸率,其范圍是6到10 Mbit/s。比特率在6Mbit/s和9Mbit/s之間的MPEG-2(720x480分辨率)是DVD的理想選擇,因此也被選來(lái)做這項(xiàng)工作;然而,在那個(gè)比特率之下,網(wǎng)絡(luò)傳輸就要困難的多,但是畫(huà)面質(zhì)量能夠達(dá)到觀看電視的標(biāo)準(zhǔn)。MPEG-2還具有封包、容錯(cuò)和校正、快進(jìn)倒帶及其它一些廣播所需的功能。那么 MPEG-2是否也適合無(wú)線/移動(dòng)流視頻設(shè)備呢?網(wǎng)絡(luò)頻道必須以1MB/s的速率傳輸數(shù)據(jù),才能保證MPEG-2視頻能可靠傳輸、可回放和可觀看。因此,人們一直在探索最佳的視頻流格式。MPEG-4就是答案。
為什么答案是MPEG-4?
要求: 高壓縮率、高視頻質(zhì)量和強(qiáng)大的系統(tǒng)層;MPEG-4能夠?yàn)闊o(wú)線移動(dòng)視頻設(shè)備提供這些理想性能。(注:這里沒(méi)有涉及到MPEG-3,是從MPEG-2直接上升到MPEG-4;常被誤認(rèn)為是MPEG-3的MP3音頻事實(shí)上是MPEG-1音頻的第三層)。
MPEG-4格式在1MBit/s的比特率下能達(dá)到MPEG-2 720x480分辨率的質(zhì)量。如果把該視頻降為MPEG-1CPB,就能得到350KBit/s的數(shù)據(jù)率及合理的可接收視頻效果。若進(jìn)一步縮小比例,就可能得到100KB/s的數(shù)據(jù)率。當(dāng)然,由于質(zhì)量的下降,視頻已不值得看了。我們認(rèn)為352x240的分辨率或通用交換格式(CIF,Common Interchange Format)是能夠接受的最小視頻清晰度。QCIF很有趣,并且在一些網(wǎng)絡(luò)頻道上是必不可少的。下表1列出了視頻清晰度的常用術(shù)語(yǔ)。
我們暫且不考慮視頻清晰度的問(wèn)題,先來(lái)看看是否適合用無(wú)線方式傳輸MPEG-4視頻流。要回答這個(gè)問(wèn)題,我們得從兩個(gè)方面來(lái)研究MPEG-4——視頻壓縮能力和系統(tǒng)層。現(xiàn)有的移動(dòng)電話使用通用分組無(wú)線業(yè)務(wù)(GPRS)標(biāo)準(zhǔn)的2.5G技術(shù),其網(wǎng)絡(luò)數(shù)據(jù)傳輸率能達(dá)到接近112kbps。這一速率并不快,也不算可靠,看你用在哪里。3G的網(wǎng)絡(luò)數(shù)據(jù)傳輸率接近2Mbps,這是一個(gè)很大的提高。盡管2.5G w/GPRS能支持一些視頻流,但直到3G出現(xiàn)之后,利用移動(dòng)電話隨時(shí)隨地收看視頻流才普及起來(lái)。當(dāng)然,數(shù)據(jù)管道越寬,視頻質(zhì)量越高。
我們現(xiàn)在來(lái)仔細(xì)地看看一些數(shù)據(jù),以將它們列入本文。大多數(shù)寬帶網(wǎng)數(shù)據(jù)率都是用每幾秒多少比特來(lái)表示。由于每個(gè)字節(jié)有8比特,因此我們把它更簡(jiǎn)單地表示為每秒鐘多少個(gè)字節(jié)或bps除以8。那么,2.5G w/GPRS就是速度為每秒鐘14000字節(jié)的通道(14kBps。注:大寫(xiě)B(tài)表示字節(jié))。相應(yīng)地,3G是速率為250kBps的通道。光盤(pán)驅(qū)動(dòng)器在1X下的傳輸數(shù)據(jù)的速度為150kBps。由于3G的帶寬為250kBps,理論上講,將MPEG-1 CPB視頻、音頻流直接傳輸?shù)?G接收端應(yīng)該沒(méi)有什么問(wèn)題。當(dāng)然,我們也許只用通道的60%來(lái)為視頻服務(wù),但這已經(jīng)能得到非常好的視頻效果了。既然它的壓縮效果比MPEG-1好得多,那么,我們能否利用3G技術(shù)得到DVD格式的效果呢。對(duì)MPEG-4來(lái)說(shuō),答案是肯定的。
MPEG-1需要數(shù)據(jù)傳輸速率達(dá)到每秒600kBps(4.8Mbps)的通道,才能達(dá)到全D1的視頻清晰度。這就顯然要求3G那樣的帶寬預(yù)算為。DVD(目前使用MPEG-2視頻壓縮)常以每秒6Mbps的速度壓縮。所以,要想使用3G技術(shù)體驗(yàn)視頻內(nèi)容,需要的壓縮技術(shù)不是MPEG-1 也不是MPEG-2。現(xiàn)在我們?nèi)圆磺宄谝淮?G技術(shù)的實(shí)施能否使DVD視頻體驗(yàn)成為可能;但如果可能的話,那MPEG-4及相關(guān)的壓縮技術(shù)就能給我們一個(gè)方向。那么現(xiàn)行的3G技術(shù)能使視頻性能最終達(dá)到什么樣的境界呢,我們認(rèn)為會(huì)是CIF。如前所述,30幀數(shù)的CIF畫(huà)面質(zhì)量已相當(dāng)清晰,被定為目前的視頻基準(zhǔn)。那么,如果有傳輸率為2Mbps的通道,而CPB VCD又適應(yīng)于這一通道,我們?yōu)槭裁床恢苯佑肕PEG-1呢?理由很簡(jiǎn)單,在同樣的比特率下,MPEG-4的壓縮效率是它的3倍,而且在某些條件下效率會(huì)更高。這就意味著,傳輸率為300-400 kbps的MPEG-4流與1.2Mbps下的MPEG-1 CPB具有同樣的CI畫(huà)面質(zhì)量。
富士通已將MPEG-4的芯片添加到移動(dòng)媒體處理器(MMP)的新產(chǎn)品線中。富士通節(jié)能型MPEG-4內(nèi)核能達(dá)到每秒2Mbps的比特率,并以每秒30fps的速度為CIF編碼或解碼(見(jiàn)圖5),這一標(biāo)準(zhǔn)比較適合幀率為15fps的QCIF的視頻電話。MPEG-4內(nèi)核有兩個(gè)值得注意的特點(diǎn)。一是具有自適應(yīng)運(yùn)動(dòng)移動(dòng)向量技術(shù)的運(yùn)動(dòng)估值電路的運(yùn)算量是傳統(tǒng)運(yùn)動(dòng)監(jiān)測(cè)系統(tǒng)的1/20。二是它的自動(dòng)時(shí)鐘門(mén)控只為現(xiàn)有的編碼/解碼所需要的功能塊提供時(shí)間。簡(jiǎn)言之,富士通MPEG-4內(nèi)核是目前GPRS 2.5G無(wú)線電話及視頻效果要求更高的、下一代3G電話的理想選擇。
 |
圖5:MPEG系統(tǒng)。 |
MPEG-4系統(tǒng)層
MPEG-4相對(duì)于MPEG-1和MPEG-2的一個(gè)主要優(yōu)勢(shì)就在于它的“系統(tǒng)”層。大致地看看MPEG-4系統(tǒng)能幫我們更好地了解MPEG-4在目前和今后生活中發(fā)揮的重要作用。許多人都認(rèn)為MPEG-4只是一種更好的音頻和視頻壓縮標(biāo)準(zhǔn)。這當(dāng)然是正確的,但MPEG-4還有很多其他的性能,這些性能會(huì)涉及到今后幾年的視頻廣播產(chǎn)業(yè)。 除音頻、視頻壓縮之外,MPEG-4還為動(dòng)漫編碼增加了3D環(huán)境和圖像,提供了碼流互動(dòng)、數(shù)字版權(quán)管理、多個(gè)網(wǎng)絡(luò)間的內(nèi)容分發(fā)(包括IP和MPEG-2傳輸流DVB)。數(shù)百家公司都參與到MPEG-4標(biāo)準(zhǔn)的研發(fā)中來(lái),事實(shí)上,MPEG-4包含了20條國(guó)際標(biāo)準(zhǔn)組織(ISO)的規(guī)格,以及幾個(gè)行業(yè)組織,如3GPP(http://www.3gpp.org)和國(guó)際流媒體聯(lián)合會(huì)或ISMA(http://www.isma.tv)的標(biāo)準(zhǔn)。下圖6是MPEG-4標(biāo)準(zhǔn)的視圖書(shū)館表示。
據(jù)MPEG-4工作組透露,MPEG-4 “系統(tǒng)”是用來(lái)提供“一些必要的設(shè)施,以詳細(xì)說(shuō)明視聽(tīng)對(duì)象是如何排列在MPEG-4終端而形成完成的圖像場(chǎng)景、用戶端是如何與內(nèi)容互動(dòng)以及視頻、音頻流是如何得到傳輸或儲(chǔ)存的”。
同樣據(jù)工作組透露,“ MPEG-4提供的大部分功能出自系統(tǒng)部分。由于系統(tǒng)負(fù)責(zé)(在其它問(wèn)題中)碼流管理和場(chǎng)景描繪,因此它的作用就好比源編碼技術(shù)的‘打包器’”。
 |
圖6:MPEG-4容器的容量。 |
MPEG-4系統(tǒng)中的一部分是它的文件或 “容器格式”。一條如富士通MPEG-4內(nèi)核所產(chǎn)生的單一MPEG-4視頻基本碼流不能孤立存在,它必須被置于“容器”中,以得到MPEG-4解碼器的處理和解碼。這就是說(shuō),在從一移動(dòng)電話傳到另一電話之前,MPEG-4視頻必須被放在容器格式(MPEG-4文件)中。這個(gè)文件詳細(xì)說(shuō)明了MP4容器中的內(nèi)容以及MP4文件接收端播放視頻和音頻的方式。沒(méi)有該框架,接收端就無(wú)法辨別接收到的數(shù)據(jù)。一個(gè)合理格式化了的MP4文件對(duì)于MPEG-4終端間的互通性來(lái)說(shuō)是非常關(guān)鍵的。有關(guān)MPEG-4系統(tǒng)的知識(shí),請(qǐng)?jiān)斠?jiàn)http://www.chiariglione.org/mpeg/faq/mp4-sys/mp4-sys.htm.
富士通的移動(dòng)媒體處理器(MMP)能產(chǎn)生一種MPEG-4 視頻基本流(ES),也被稱為.M4V。這一視頻基本流與MPEG-4音頻基本流相結(jié)合,就構(gòu)成了一個(gè)叫.MP4文件的“可視”視頻。那么,這一結(jié)合是在什么情況下由什么而產(chǎn)生的呢? 對(duì)富士通MMP而言,答案是MP4富士通軟件庫(kù)。富士通MPEG-4 數(shù)字視頻編解碼器芯片與富士通MP4儲(chǔ)存庫(kù)相結(jié)合就能產(chǎn)生MPEG-4符合性文件,這些文件在所有的MPEG-4終端都能互通。但是,沒(méi)有經(jīng)過(guò)MP4文件壓縮的MPEG-4視頻基本流,不是能用在所有的MPEG-4符合性終端上播放。