王岳平
(棗莊學(xué)院光電工程學(xué)院,山東 棗莊 277160)
在我們觀看一部Flash電影時(shí),吸引我們的不僅僅是絢麗的視覺(jué)場(chǎng)景,而且還包括復(fù)雜的聽(tīng)覺(jué)特征。聲音可以增強(qiáng)影片視覺(jué)畫(huà)面的存在感、擴(kuò)展視覺(jué)空間,在Flash電影中聲音主要表現(xiàn)在兩個(gè)方面:背景音樂(lè)和聲音效果。本文首先定義了Flash電影中的聲音特征屬性,然后分析了聲音的存儲(chǔ)結(jié)構(gòu)和壓縮算法,最后介紹了如何在Flash電影中提取聲音特征。
在Flash電影中,音頻分為兩種:事件音頻、流式音頻。
在Flash電影播放過(guò)程中,事件音頻的播放一般都會(huì)有特定的事件相伴隨,比如點(diǎn)擊鼠標(biāo)、鍵盤(pán),或播放過(guò)程到達(dá)某一個(gè)特殊點(diǎn),都會(huì)伴隨著特定的音頻播放。在使用事件音頻之前,必須對(duì)其進(jìn)行定義,定義以后就可以多次使用。在Flash電影中,事件音頻的定義和存儲(chǔ)結(jié)構(gòu)需要用得到三種標(biāo)簽:Define-Sound、Start-Sound1和Start-Sound2標(biāo)簽。構(gòu)成事件音頻取樣的標(biāo)簽為Define-Sound標(biāo)簽,事件音頻的類(lèi)型由Sound-Info記錄定義,類(lèi)型包括音量控制、循環(huán)標(biāo)志、同步、淡入、淡出。調(diào)節(jié)Flash電影初始放映聲音的標(biāo)簽為Start-Sound1標(biāo)簽,調(diào)節(jié)Flash電影初始放映非事件音頻類(lèi)的標(biāo)簽為Start-Sound2標(biāo)簽。
在Define-Sound標(biāo)簽定義事件音頻時(shí),特征參數(shù)包括分辨率、采樣率、聲道標(biāo)記。如表1為Define-Sound標(biāo)簽的結(jié)構(gòu)特征及其說(shuō)明。

表1 Define-Sound標(biāo)簽的結(jié)構(gòu)特征及其說(shuō)明
聲音的唯一標(biāo)識(shí)代碼是Sound-ID,播放聲音時(shí)Star-Sound1控制標(biāo)簽首先調(diào)用Sound-ID。在Flash電影中,聲音格式可以分為:MP3壓縮格式(用2表示)、ADPCM壓縮格式(用1表示)、位壓縮小字節(jié)格式(用3表示)、Nelly-moser格式(用6表示)和未壓縮格式(用0表示),格式不同說(shuō)明聲音內(nèi)容不同。Sound-Rate(聲音采樣率)是把聲音在A/D轉(zhuǎn)換的過(guò)程中,在每一秒鐘時(shí)間內(nèi)的采樣次數(shù),理論上要想讓聲音質(zhì)量較好地呈現(xiàn),采樣率越高越好。Sound-Size(分辨率)是單個(gè)采樣點(diǎn)表示音頻的位數(shù),F(xiàn)lash音頻文件中的位數(shù)為8位或16位。分辨率是用一個(gè)指數(shù)來(lái)描述的,用8位分辨率來(lái)描述采樣點(diǎn)指的是用2的8次方級(jí)深度表示采樣點(diǎn),同樣用16位分辨率描述采樣點(diǎn)指的是用2的16次方表示采樣點(diǎn)。聲音越細(xì)致,內(nèi)容信息越多,表明聲音的分辨率越大,占用空間越大。聲道類(lèi)型分為兩種:?jiǎn)温暤馈㈦p聲道,單聲道包含的內(nèi)容信息是雙聲道包含的內(nèi)容信息的一半,因此雙聲道音頻文件占用空間是單聲道音頻文件的一倍。
Define-Sound標(biāo)簽用來(lái)定義聲音,Start-Sound控制標(biāo)簽控制播放器播放聲音的開(kāi)始或者暫停。Sound-ID表示聲音的唯一標(biāo)識(shí)ID,Sound-Info定義聲音播放方式,調(diào)整Sound-Info記錄中的Sync-Stop就可以實(shí)現(xiàn)暫停播放。Start-Sound2標(biāo)簽和Start-Sound1控制標(biāo)簽的內(nèi)容差不多,唯一的區(qū)別就是Start-Sound2標(biāo)簽控制播放的聲音,不再是單個(gè)聲音而是其他Flash電影文件中定義的聲音。
Sound-Info記錄是用來(lái)標(biāo)注怎樣播放一個(gè)Define-Sound標(biāo)簽定義的事件音頻。記錄中可以調(diào)整的聲音屬性有:是否循環(huán)及循環(huán)數(shù)、重放時(shí)的開(kāi)始和結(jié)束位置、音量控制的聲音封裝。
Flash電影文件也支持流式音頻格式,流式聲音內(nèi)容信息的下載與播放與電影文件的時(shí)間軸密不可分,音頻的前幾幀載入后即可進(jìn)行播放,聲音數(shù)據(jù)塊隨著Flash電影的幀進(jìn)行存儲(chǔ)。在Flash電影中,音頻流與播放畫(huà)面是同步的,聲音內(nèi)容根據(jù)幀的排列被分成很多塊,若電影播放速度快,有些聲音塊就會(huì)跳過(guò)不進(jìn)行播放,保持聲音塊的播放與畫(huà)面播放同步。在Flash電影文件中,主要時(shí)間軸上特定時(shí)刻只有一個(gè)對(duì)應(yīng)流式音頻進(jìn)行播放,但對(duì)每個(gè)Flash影片剪輯有自己的時(shí)間軸,可以有自己特定的流式音頻。
在Flash電影聲音文件中有流式音頻時(shí),必須由Sound-Stream-Head1或者Sound-Stream-Head2標(biāo)簽定義音頻信息格式、播放格式和聲音數(shù)據(jù)塊中樣本平均數(shù)之后,第一個(gè)音頻數(shù)據(jù)包才能進(jìn)行播放。Sound-Stream-Head1標(biāo)簽中定義的采樣率有四種:5.5 kHz、11 kHz、22 kHz和44 kHz,分辨率為16位,播放類(lèi)型為單聲道或者雙聲道。此外,在Flash電影中流式聲音的壓縮格式只支持MP3壓縮、ADPCM算法壓縮這兩種格式。Flash電影中的采樣率、分辨率和聲音類(lèi)型,在播放的過(guò)程中,可以忽略它們。Sound-Stream-Head2標(biāo)簽在Sound-Stream-Head1標(biāo)簽功能的基礎(chǔ)上,加載了音頻壓縮類(lèi)型和音頻分辨率類(lèi)型。除了MP3壓縮和ADPCM壓縮這兩種壓縮類(lèi)型之外,還有Nelly-moser壓縮、小字節(jié)無(wú)壓縮和無(wú)壓縮等類(lèi)型。如表2所示為Sound-Stream-Head2標(biāo)簽的結(jié)構(gòu)特征及其說(shuō)明。

表2 Sound-Stream-Head2標(biāo)簽的結(jié)構(gòu)特征及其說(shuō)明
Sound-Stream-Block標(biāo)簽是用來(lái)定義與幀數(shù)據(jù)混合存儲(chǔ)的音頻信息。在定義Sound-Stream-Block標(biāo)簽的時(shí)候,Sound-Stream-Head1或Sound-Stream-Head2兩個(gè)標(biāo)簽必須是已經(jīng)定義好了。一個(gè)Flash電影幀中只包含一個(gè)Sound-Stream-Block標(biāo)簽。Sound-Stream-Head1標(biāo)簽中定義的壓縮類(lèi)型決定了流式聲音數(shù)據(jù)塊中的內(nèi)容信息。壓縮類(lèi)型為無(wú)壓縮或者小字節(jié)無(wú)壓縮時(shí),流式聲音數(shù)據(jù)塊中有初始未壓縮采樣;壓縮類(lèi)型為ADPCM壓縮時(shí),流式聲音數(shù)據(jù)塊中有ADPCM音頻數(shù)據(jù)記錄;壓縮類(lèi)型為MP3壓縮時(shí),流式聲音數(shù)據(jù)塊中有MP3音頻數(shù)據(jù)記錄;壓縮類(lèi)型為Nelly-moser壓縮時(shí),流式聲音數(shù)據(jù)塊中有NELLY-MOSER-DATA記錄。
在Flash電影中,音頻文件的壓縮方法主要有MP3壓縮和ADPCM壓縮等壓縮算法。
MP3全稱(chēng)是Moving Picture Experts Group Audio Layer III,是當(dāng)今比較流行的一種數(shù)字編碼和有損壓縮格式,主要是用來(lái)降低音頻數(shù)據(jù)量。MP3壓縮對(duì)音頻文件進(jìn)行壓縮時(shí),壓縮掉的只是人耳聽(tīng)不到的波形信息,因此壓縮后的音頻對(duì)大多數(shù)用戶(hù)來(lái)說(shuō),在聽(tīng)覺(jué)感受上音質(zhì)沒(méi)有很大區(qū)別。另外,MP3壓縮格式的壓縮率比較高,最高壓縮率可以達(dá)到1∶12。
Flash電影中MP3的壓縮過(guò)程,首先把音頻波形文件加載到Flash文件中進(jìn)行編輯,然后把音頻波形文件以MP3格式隨著Flash文件輸出,在隨著Flash文件輸出的過(guò)程中自動(dòng)會(huì)對(duì)音頻波形文件進(jìn)行格式轉(zhuǎn)換和壓縮。MP3壓縮格式的壓縮率比較高,既保證了聲音無(wú)失真?zhèn)鬏敚挚s小了帶有音頻文件的Flash電影占用空間。持續(xù)時(shí)間較長(zhǎng)的音頻文件和流式音頻聲音文件,進(jìn)行壓縮時(shí)比較適合采用MP3壓縮格式。在制作Flash電影過(guò)程中,載入音頻文件進(jìn)行壓縮時(shí),MP3壓縮格式是第一選擇,F(xiàn)lash電影制作軟件中既可加載MP3格式文件,也可將導(dǎo)入其它格式文件在輸出時(shí)壓縮成MP3格式。
在Flash電影中,MP3音頻參數(shù)表現(xiàn)在兩個(gè)方面,分別是采樣率和MP3幀的存儲(chǔ)數(shù)組。采樣率用于在幀上細(xì)分流式音頻,MP3幀的存儲(chǔ)數(shù)組是用來(lái)存儲(chǔ)音頻文件中聲音的數(shù)據(jù)。MPEG音頻幀在MP3音樂(lè)文件和MP3幀記錄中是一樣的,都是由前32位幀存儲(chǔ)頭信息,后面一個(gè)字節(jié)數(shù)組來(lái)存儲(chǔ)聲音編碼的樣本。如表3所示為MP3-FRAME標(biāo)簽的結(jié)構(gòu)特征及其說(shuō)明。
ADPCM指的是自適應(yīng)差分脈沖編碼調(diào)制,英文全稱(chēng)是Adaptive Differential Pulse Code Modulation,ADPCM調(diào)制方式是一種針對(duì)16位(或8位或者更高)聲音波形屬性的一種有損壓縮方式。ADPCM調(diào)制對(duì)聲音采樣時(shí)的頻率是固定不變的,采樣時(shí)對(duì)采樣點(diǎn)的實(shí)際信號(hào)幅值和預(yù)測(cè)信號(hào)幅值的變化量,對(duì)此變化量進(jìn)行量化編碼,量化編碼采用不均勻的方式進(jìn)行。當(dāng)幅值變化量很小時(shí),就會(huì)大大減少不均勻量化編碼的編碼位數(shù)。ADPCM算法壓縮方式既有自適應(yīng)脈沖編碼調(diào)制系統(tǒng)的自適應(yīng)性,又有差分脈沖編碼調(diào)制系統(tǒng)的差分性,使得這兩種特性較好地結(jié)合在一起。自適應(yīng)特性可以用來(lái)改變量化階,也就是較小的幅值變化量用小量化階來(lái)編碼,較大的幅值變化量用大的量化階來(lái)編碼;利用差分特性可以利用過(guò)去樣本值估計(jì)后面樣本預(yù)測(cè)值,使得預(yù)測(cè)值和實(shí)際值間的幅值變化量最小。在Flash電影文件中,ADPCM調(diào)制方式只是針對(duì)16位或8位的聲音波形屬性進(jìn)行壓縮。對(duì)16位聲音波形壓縮時(shí),壓縮比為4∶1,即存儲(chǔ)采樣數(shù)據(jù)時(shí)是4位,這種壓縮方式是一種有損壓縮,用于時(shí)間很短的時(shí)間聲音輸出。
ADPCM-SOUNDATA記錄的定義中包括編碼大小和存儲(chǔ)ADPCM信息的ADPCM-PACKETS。在Flash電影中,ADPCM編碼樣本格式有四種:4位、5位、6位和7位。依據(jù)聲音聲道數(shù)量的不同,ADPCM-PACKETS可分為兩種存儲(chǔ)結(jié)構(gòu):ADPCM-MONOPACKET和ADPCM-STEREOPACKET。
上述提到,事件音頻的內(nèi)容結(jié)構(gòu)是由Define-Sound、Start-Sound1和Start-Sound2三種標(biāo)簽來(lái)定義的,流式音頻的內(nèi)容結(jié)構(gòu)是由Sound-Stream-Head1和Sound-Stream-Head2兩種標(biāo)簽來(lái)定義的,在對(duì)Flash電影中的聲音特征屬性進(jìn)行分析提取時(shí),可以對(duì)這些定義音頻文件的標(biāo)簽進(jìn)行分析提取,進(jìn)而分析其聲音的內(nèi)部結(jié)構(gòu)和特征屬性。如表4所示為Flash電影中聲音特征屬性描述。

表4 Flash電影中聲音特征屬性描述
對(duì)事件音頻來(lái)說(shuō),特征參數(shù)中的聲音長(zhǎng)度的取值是短、中、長(zhǎng),這三種取值是用音頻中的樣本數(shù)量來(lái)界定的,當(dāng)樣本數(shù)量<20000時(shí),取值為短;當(dāng)20000<樣本數(shù)量<60000時(shí),取值為中;當(dāng)樣本數(shù)量>60000時(shí),取值為長(zhǎng)。對(duì)流式音頻來(lái)說(shuō),聲音長(zhǎng)度是用音頻中的樣本數(shù)量和每個(gè)樣本中的子樣本數(shù)量的乘積來(lái)表示的,取值定義和事件音頻是一樣的,當(dāng)樣本數(shù)量<20000時(shí),取值為短;當(dāng)20000<樣本數(shù)量<60000時(shí),取值為中;當(dāng)樣本數(shù)量>60000時(shí),取值為長(zhǎng)。
在Flash電影中,對(duì)聲音特征屬性進(jìn)行提取標(biāo)注的方法有兩種。第一種:根據(jù)Flash電影中對(duì)事件音頻和流式音頻的定義,構(gòu)建Flash電影中聲音特征屬性提取的程序平臺(tái),在程序平臺(tái)上可以對(duì)聲音的特征屬性進(jìn)行提取,并在程序平臺(tái)的顯示界面上呈現(xiàn)出來(lái),另外也可以直接保存到電腦的指定位置;第二種:根據(jù)Flash電影中聲音特征參數(shù)字段定義,組建聲音特征索引庫(kù),使用聲音結(jié)構(gòu)屬性標(biāo)注程序,把提取出的聲音特征屬性放置到特征索引庫(kù)中,完成對(duì)Flash電影中聲音特征屬性的標(biāo)注。
Flash聲音特征屬性的提取平臺(tái)包括兩部分:提取聲音特征屬性和保存聲音特征屬性。通過(guò)分析Flash電影中定義播放事件音頻的Define-Sound標(biāo)簽、Start-Sound1標(biāo)簽、Start-Sound2標(biāo)簽分析提取事件音頻的特征屬性;通過(guò)分析Sound-Stream-Head1標(biāo)簽、Sound-Stream-Head2標(biāo)簽等分析流式音頻的特征屬性。提取的聲音的特征屬性有Flash電影中聲音的數(shù)量、ID、聲音的類(lèi)型以及事件聲音的采樣率、位分辨率、聲道,流式聲音還添加了播放采樣率、播放位分辨率、播放聲道信息。提取的聲音特征屬性可以以txt文檔的形式保存到電腦上。如圖1所示為Flash電影聲音的特征提取界面。

圖1 Flash電影聲音的特征屬性提取界面
碩思閃客精靈是一款用于瀏覽和解析Flash電影(.swf文件和.exe文件)的工具。它能夠?qū)lash電影中的圖片、矢量圖、聲音、字體、文字、按鈕、影片片段、幀等基本元素完全分解,還可以對(duì)flash影片動(dòng)作(Action)進(jìn)行解析,清楚地顯示其動(dòng)作的代碼,讓您對(duì)Flash動(dòng)畫(huà)的構(gòu)造一目了然。
我們以碩思閃客精靈反編譯的聲音元素個(gè)數(shù)作為標(biāo)準(zhǔn),評(píng)價(jià)我們所開(kāi)發(fā)的Flash聲音特征屬性的提取平臺(tái)的查準(zhǔn)率和查全率,公式1、2所示為查準(zhǔn)率、查全率的計(jì)算公式。通過(guò)對(duì)Flash電影樣本庫(kù)中每一類(lèi)的100個(gè)Flash電影文件進(jìn)行分析,得到每一類(lèi)中100個(gè)電影所含的元素個(gè)數(shù),求得每一類(lèi)Flash電影中這個(gè)元素的平均個(gè)數(shù)。所以表中的平臺(tái)提取元素個(gè)數(shù)和碩思提取的元素個(gè)數(shù)都是指每一類(lèi)Flash電影所包含的平均元素個(gè)數(shù)。
查準(zhǔn)率=平臺(tái)提取元素個(gè)數(shù)/平臺(tái)提取的元素總數(shù) (1)
查全率=平臺(tái)提取元素個(gè)數(shù)/碩思軟件提取元素總數(shù)(2)

表5 Flash電影聲音元素分析統(tǒng)計(jì)表
表5所示為Flash電影聲音元素分析統(tǒng)計(jì)表。如表所示,F(xiàn)lash電影中MTV、動(dòng)畫(huà)、廣告類(lèi)聲音元素的查準(zhǔn)率達(dá)到100%,查全率都在85%以上,課件、游戲兩類(lèi)Flash電影的查準(zhǔn)率分別為99.86%、89.03%,查全率都是100%,提取效果較好,達(dá)到了實(shí)驗(yàn)?zāi)繕?biāo)。Flash電影聲音內(nèi)容特征提取平臺(tái)對(duì)聲音的提取分為對(duì)事件聲音的提取和對(duì)流式聲音的提取。事件聲音的提取是按照Define-Sound定義標(biāo)簽,流式聲音的提取是按照Sound-Stream-Head1標(biāo)簽、Sound-Stream-Head2標(biāo)簽。MTV、動(dòng)畫(huà)、廣告類(lèi)Flash動(dòng)畫(huà)中以流式聲音為主,包含少量的事件聲音。在提取過(guò)程中是按照Sound-Stream-Head1標(biāo)簽或Sound-Stream-Head2標(biāo)簽來(lái)計(jì)算流式聲音的數(shù)量,在實(shí)際Flash電影文件中有些流式聲音塊被事件聲音隔開(kāi),提取平臺(tái)依舊算作一個(gè)聲音,而在碩思閃客精靈軟件中則算作兩個(gè)聲音,所以MTV、動(dòng)畫(huà)、廣告類(lèi)平臺(tái)提取的聲音個(gè)數(shù)會(huì)偏少。課件、游戲類(lèi)Flash電影中主要包含事件聲音,文件中可能包含流式聲音SoundStreamHead1標(biāo)簽或Sound-StreamHead2標(biāo)簽,而后面并沒(méi)有流式聲音塊,沒(méi)有流式聲音,提取平臺(tái)卻當(dāng)成了一個(gè)聲音,所以平臺(tái)提取的課件、游戲類(lèi)聲音會(huì)偏多,出現(xiàn)查準(zhǔn)率偏差。
[1]Kim Y.A Temporal Locality-Aware Page-Mapped Flash Transla- Layer[J].Journal of Computer Science&Technology,2013:1026-3.
[2]任曉芳.基于Flash動(dòng)畫(huà)的自適應(yīng)多媒體流在跨設(shè)備視頻會(huì)議中用[J].科學(xué)技術(shù)與工程,2014,11(31):262-268.
[3]王岳平.Flash電影中圖形特征的提取與研究[J].棗莊學(xué)院學(xué)報(bào),2015,32(2):135-139.
[4]邵長(zhǎng)俠.Flash組成元素的內(nèi)容特征提取與標(biāo)注研究[D].山東師范大學(xué),2012.
[5]石朝暉.Flash技術(shù)在動(dòng)畫(huà)電影中的應(yīng)用研究[J].電影文學(xué),2012,(15):52-53.
[6]蔡鵬.Flash動(dòng)畫(huà)在網(wǎng)頁(yè)制作中的應(yīng)用及相關(guān)探討[J].電子技術(shù)與軟件工程,2013,(19):90.
[7]錢(qián)翔.動(dòng)感視覺(jué)——試論電影蒙太奇藝術(shù)表現(xiàn)手法在Flash動(dòng)畫(huà)中的運(yùn)用[J].科技資訊,2010,(5):240.