方法說明: 采用聲音的stream方式,有個主要的缺點:它非常的增加文件體積大小。 這個是由于stream技術(shù)本身造成的。如果你使用一個2秒的聲音,循環(huán)100次,那么聲音的總長度為200秒,我們用stream方式導(dǎo)入這200秒的聲音。如果聲音的原始大小為10k,那么輸出的swf文件將包括大約1M的聲音,這是估計值,考慮到聲音的質(zhì)量以及一些其他的因素,它的實際大小應(yīng)該是800~900k。如果用56k撥號上網(wǎng)的平均下載速度4.5k來考慮,用戶需要大概200秒(超過3分鐘)的時間來下載。如果考慮更低的上網(wǎng)速度比如2.5k,那么需要大概5~6分鐘才能下載完.
于是得出結(jié)論:文件大小是個大問題.
一個有趣的現(xiàn)象就是,如果我們使用比較小的聲音來使用stream方式,那么最后輸出的swf文件大小將會小很多。如果整個音樂是采用killersound教程里使用的技術(shù)(www.killersound.com),那么采用一個聲音文件(比如最小的那個)作為stream方式而其他聲音文件使用event方式就已經(jīng)足夠了。經(jīng)過多次測試,我們得到以下的結(jié)論:利用layer將其中一個聲音文件設(shè)置成stream,其他聲音文件則不設(shè)置為sream方式,效果是完美的。這也意味著Flash可以作為一個混音器來使用。
那么我們怎樣才能更深層次的減少文件體積呢?如果我們選擇壓縮聲音質(zhì)量(比如: ADPCM, 5 kHz, 4 bit)結(jié)果將不會讓我們滿意。文件體積是小很多了,但是聲音效果太差了! 解決方法就是下面的 str0 以及 str00 技術(shù),這就是我們所謂的 "NULLSOUND STREAMING" 技術(shù)。
在開始講述這項技術(shù)之前,讓我們來看一看比較結(jié)果: 應(yīng)用這項技術(shù)最明顯的例子就是 killersound 為虛擬現(xiàn)實開發(fā)的片頭上。 這個片頭包含了1分鐘的復(fù)雜音樂和音效。使用了5個聲音文件,每個文件都有不同的壓縮位數(shù)從而達到整體的音質(zhì)要求。在這個例子里,背景音樂只需要8kbit/s的mp3文件(因為里面包含了主要的低頻部分),高頻的鼓聲等部分則需要32kbit/s的mp3文件。根據(jù)我們后面要介紹的技術(shù),我們還需要使用一個0.1秒長的"NULLSOUND"文件。因為我們需要保持動畫和聲音的同步,片頭的幀率必須恒定,這就意味著我們必須采用stream方式。 在傳統(tǒng)的方式中,只有一個或者所有的聲音全部都被設(shè)置成stream方式,這樣的話,stream聲音本身的比特率必須設(shè)置的很高以滿足某些音質(zhì)的需求,這也意味著我們浪費了不少的空間。采用新的NULLSOUND stream技術(shù)的話,我們可以為每個聲音文件設(shè)置不同的比特率,從而保證文件變小。
下面的表格中顯示了片頭在不同技術(shù)下面的輸出文件大小。 str1和str5采用了傳統(tǒng)的方式,str0和str00則采用了新技術(shù)。需要提到的是,文件不但包含了音樂,也包含了動畫,所以文件體積比較大。 str1 : 1個循環(huán)音效設(shè)置成 STREAM音質(zhì)為MP3, 48 kbit/s, MONO,其他音效設(shè)置成EVENT音質(zhì)為根據(jù)不同音效分別設(shè)置不同的優(yōu)化值 結(jié)果:音樂大小 595 KB (文件大小 1.25 MB ) str5 : 5個音效全部設(shè)置成 STREAM音質(zhì)為MP3, 48 kbit/s, MONO 結(jié)果音樂大小 594 KB (文件大小 1.24 MB ) str0 : "NULLSOUND"音效設(shè)置為streamed 音質(zhì)為 MP3, 8 kbit/s, MONO, 其他音效設(shè)置為EVENT音質(zhì)為根據(jù)不同音效分別設(shè)置不同的優(yōu)化值 結(jié)果:音樂大小 192 KB ! (文件大小 847 KB ) str00: "NULLSOUND"音效設(shè)置為streamed 音質(zhì)為 MP3, 8 kbit/s, MONO, 其他音效設(shè)置為EVENT音質(zhì)為根據(jù)不同音效分別設(shè)置不同的優(yōu)化值 結(jié)果:音樂大小 59 KB !!! (文件大小 714 KB ) 這些結(jié)果是有說服力的,假如我們制作一個“無聲”版本(所有的動畫保持原狀,只刪除了所有的聲音)那么輸出文件大小為655kb 。如果我們比較一下兩個文件的大小差異的話,結(jié)果說明采用str00方式的整個聲音文件只占用59kb!!!而采用傳統(tǒng)方式的話,音樂文件將占用595kb. 進一步說明:如果有5到6個2,3秒的聲音文件,構(gòu)成1,2,3分鐘甚至更多時間,音樂文件占用的體積將低于70~80k.相對的,如果采用傳統(tǒng)方法處理的話,占用文件大小將是1MB甚至更多。
出處:藍色理想
責(zé)任編輯:jimbob
上一頁 NullSound技術(shù) 一 下一頁 NullSound技術(shù) 三
◎進入論壇Flash專欄版塊參加討論
|