姜寧 劉華平
摘要:不同的標(biāo)準(zhǔn)中,對(duì)多通道的音頻數(shù)據(jù)存儲(chǔ)標(biāo)準(zhǔn)是不一樣的。為了同步多通道新數(shù)據(jù)與傳送機(jī)制,不同地標(biāo)準(zhǔn)組織就必需制定一套標(biāo)準(zhǔn)來(lái)保證產(chǎn)品中應(yīng)用層和硬件輸出的數(shù)據(jù)在邏輯上保護(hù)一致。該文先詳細(xì)分析了杜比和微軟在多通道數(shù)據(jù)排布標(biāo)準(zhǔn)的差異性的前提下,給出了這些標(biāo)準(zhǔn)之間的兼容方法,這樣可以讓同一臺(tái)硬件設(shè)備兼容這二種多媒體音頻數(shù)據(jù)的正確播放。
關(guān)鍵詞:多通道;杜比技術(shù);兼容性
中圖分類號(hào):TP311文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2012)21-5211-03
隨著技術(shù)向前的發(fā)展,人們對(duì)音頻的音質(zhì)要求越來(lái)越高,例如高采集率,每個(gè)采集點(diǎn)采用24位或32位來(lái)量化,通道已由原來(lái)2個(gè)通道擴(kuò)展到多通道。目前在多通道音頻壓縮方面做得好的幾個(gè)公司有: DOLBY, Microsoft, DTS,還有MPEG中的AAC codec,這些隸屬于不同組織形成的音頻壓縮算法,在多通道默認(rèn)排布上有些差別,但各個(gè)算法中又有相應(yīng)的接口,使得同一設(shè)備上能兼容多種多通道音頻壓縮算法。
1 DOLBY多通道數(shù)據(jù)排布標(biāo)準(zhǔn)
DOLBY多通道音頻數(shù)據(jù)排布標(biāo)準(zhǔn),以5.1 channel AC3 decoder為例,DOLBY其它的技術(shù),如EAC3,可以去參考其技術(shù)文檔:
AC3數(shù)字壓縮算法能壓縮1至5.1通道的PCM數(shù)據(jù),得到32kpbs至640kpbs碼流。0.1 channel是一超低音頻通道。AC3基本算法框架如圖1[1]。
圖1 DOLBY AC3編解碼器的架構(gòu)圖
從圖1中,我們可以看出當(dāng)AC3有6個(gè)通道數(shù)據(jù)時(shí),其實(shí)6個(gè)通道數(shù)據(jù)輸出的默認(rèn)順序是:左通道,中通道,右通道,左環(huán)繞通道,右環(huán)繞通道,低頻通道。所以在產(chǎn)品的硬件應(yīng)用時(shí),必須保證軟件的輸出與硬件設(shè)備聲道定義的一致。
AC3音頻編碼模式:
MODE10: Center Channel
MODE20: Left Channel, Right Channel
MODE30: Left Channel, Center Channel, Right channel
MODE21: Left Channel, Right Channel, Mono Surround Channel
MODE31: Left Channel, Center Channel, Right Channel, Mono Surround Channel
MODE22: Left Channel, Right Channel, Left Surround Channel, Right Surround Channel
MODE32: Left Channel, Center Channel, Right Channel, Left Surround Channel, Right Surround Channel如果低音特效頻道打開的,各種模式下都是加在最后。如MODE10:Center Channel, LEF Channel.
2微軟多通道數(shù)據(jù)排布標(biāo)準(zhǔn)
Microsoft Multimedia方面也有很多自己的編解碼器,如Windows Media Audio(WMA), WMA professional profile就支持多通道,因此Microsoft也有自己的多通道音頻數(shù)據(jù)排布的標(biāo)準(zhǔn).
WMA編解碼有以下三大類Profile: WMA standard, WMA professional, WMA Lossless. WMA standard最多支持二個(gè)通道的音頻數(shù)據(jù),WMA professional和Lossless最高會(huì)支持到8通道。多通道存在的情況下就存在多個(gè)通道輸出排布的問(wèn)題,在這仍然以5.1通道來(lái)說(shuō)明Microsoft Multimedia多通道音頻數(shù)據(jù)排布的標(biāo)準(zhǔn)。
Microsoft Multimedia 5.1 channels命名如下[3]:
Front Left --- FL
Front Right --- FR
Front Center --- FC
Low Frequency --- LF
Back Left --- BL
Back Right --- BR
這6個(gè)通道根據(jù)應(yīng)用不同,其中一個(gè)或多個(gè)通道來(lái)組合排布應(yīng)用在不同的場(chǎng)所[2]。
3杜比與微軟標(biāo)準(zhǔn)兼容[4]
通過(guò)對(duì)杜比和微軟5.1聲道數(shù)據(jù)排布標(biāo)準(zhǔn)解析,可以看出這二個(gè)標(biāo)準(zhǔn)在聲道排布有點(diǎn)差別,以5.1通道為例:
杜比標(biāo)準(zhǔn)5.1通道排布順序如下,這些數(shù)據(jù)是按通道排布順序交叉存放(通道名字統(tǒng)一到微軟標(biāo)準(zhǔn)):
SPEAKER_FRONT_LEFT, SPEAKER_FRONT_CENTER, SPEAKER_FRONT_RIGHT, SPEAKER_SIDE_LEFT (Surround Left), SPEAKER_SIDE_RIGHT (Surround Right), SPEAKER_LOW_FREQUENCY.
微軟標(biāo)準(zhǔn)5.1通道排布順序如下,這些數(shù)據(jù)是按通道排布順序交叉存放:
SPEAKER_FRONT_LEFT, SPEAKER_FRONT_RIGHT, SPEAKER_FRONT_CENTER, SPEAKER_LOW_FREQUENCY, SPEAK ER_SIDE_LEFT, SPEAKER_SIDE_RIGHT.
當(dāng)使用默認(rèn)多通道排布,AC3解碼和WMA Professional解碼器就能不共用同一硬件設(shè)備,因?yàn)檫@二個(gè)標(biāo)準(zhǔn)在多通道音頻排布不致。如整個(gè)解決方案以DOLBY 5.1通道排布設(shè)計(jì)的,以一個(gè)音頻數(shù)據(jù)塊(6 Samples)來(lái)說(shuō),Sample1是SPEAKER_FRONT_LEFT對(duì)應(yīng)硬件輸出接口SPDIF1; Sample2是SPEAKER_FRONT_CENTER對(duì)應(yīng)硬件輸出接口SPDIF2; Sample3是 SPEAKER_FRONT_RIGHT對(duì)應(yīng)硬件輸出接口是SPDIF3; Sample4是SPEAKER_SIDE_LEFT對(duì)應(yīng)硬件輸出接口SPDIF4; Sample5是SPEAKER_SIDE_RIGHT對(duì)應(yīng)硬件輸出接口SPDIF5; Sample6是SPEAKER_LOW_FREQUENCY對(duì)應(yīng)硬件接口SPDIF6.此時(shí),將來(lái)符合微軟多通道排布標(biāo)準(zhǔn)的音頻數(shù)據(jù)在這同一設(shè)備上播放時(shí),SPDIF接口就會(huì)輸出錯(cuò)誤邏輯的音頻數(shù)據(jù),原本應(yīng)該輸出 SPEAKER_FRONT_CENTER音頻數(shù)據(jù)的SPDIF2接口就會(huì)輸出SPEAKER_FRONT_RIGHT音頻數(shù)據(jù);原本應(yīng)該輸出SPEAKER_SIDE_LEFT音頻數(shù)據(jù)的SPDIF4接口就會(huì)輸出SPEAKER_LOW_FREQUENCY.
不同標(biāo)準(zhǔn)多通道排布差異問(wèn)題解決方法往往是通過(guò)解碼器軟件設(shè)計(jì):首先設(shè)定各個(gè)硬件音頻數(shù)據(jù)輸出接口,然后通過(guò)軟件去改變多通道音頻數(shù)據(jù)交叉排布順序:
如硬件接口排布按微軟標(biāo)準(zhǔn)來(lái):SPDIF1 --- SPEAKER_FRONT_LEFT;
SPDIF2 --- SPEAKER_FRONT_RIGHT;
SPDIF3 --- SPEAKER_FRONT_CENTER;
SPDIF4 --- SPEAKER_LOW_FREQUENCY;
SPDIF5 --- SPEAKER_SIDE_LEFT;
SPDIF6 --- SPEAKER_SIDE_RIGHT
如要在同一硬件設(shè)備上兼容AC3解碼器的輸出,就必需要改變解碼器的PCM數(shù)據(jù)輸出的排布.在軟件設(shè)計(jì)時(shí)就是通過(guò)輸出指針來(lái)改變多通道數(shù)據(jù)交叉存放的順序。
微軟多通道音頻數(shù)據(jù)排布順序的改變可以通過(guò)Channel Mask來(lái)實(shí)現(xiàn),詳細(xì)可以參見文獻(xiàn)[2]。
4結(jié)論
多通道音頻數(shù)據(jù)的應(yīng)用已由傳統(tǒng)家庭影院擴(kuò)展到手持移動(dòng)終端設(shè)備如智能手機(jī),且一臺(tái)設(shè)備往往不止支持一種多通道標(biāo)準(zhǔn)協(xié)議的音頻格式。該文詳細(xì)解析了杜比和微軟多通道音頻數(shù)據(jù)排布的差異,在此基礎(chǔ)上給出解決這種標(biāo)準(zhǔn)差異兼容的方法,有利于多通道音頻應(yīng)用中的軟件和硬件設(shè)計(jì)。
參考文獻(xiàn):
[1] AC3 Codec specification document --- Digital Audio Compression Standard (AC3)[Z].
[2] WMA Professional 10.0 specification document --- An Overview of Windows Media Audio Professional Decoding[Z].
[3] Multiple Channel Audio Data and WAVE Files[EB/OL].http://msdn.microsoft.com/en-us/windows/hardware/gg463006.aspx.
[4] VisualOn Inc: Enabling a high-quality multimedia experience across the connected device ecosystem[EB/OL].www.visualon.com.
[5]劉品-博客園[EB/OL].http://www.cnblogs.com/huaping-audio/.