今天南昌APP制作開發(fā)公司-百恒網絡主要想跟大家介紹一下音頻文件優(yōu)化方面的知識,不過在討論音頻文件優(yōu)化之前,小編先跟大家說一下音頻文件格式。在iOS平臺中,主要的音頻文件格式有以下4種:
1、WAV文件
WAV是一種由微軟和IBM聯(lián)合開發(fā)的用于音頻數(shù)字存儲的文件格式。WAV文件的格式靈活, 可以存儲多種類型的音頻數(shù)據(jù)。由于文件較大,不太適合于移動設備這些存儲容量小的設備。
2、MP3(MPEG Audio Layer 3)文件
MP3利用MPEG Audio Layer 3技術,將數(shù)據(jù)以1∶10甚至1∶12的壓 縮率壓縮成容量較小的文件。MP3是一種有損壓縮格式,它盡可能地去掉人耳無法感覺的部分和不敏感的部分。這么高的壓縮比率非常適合于移動設備這些存儲容量小的設備,現(xiàn)在非常流行。
3、CAFF(Core Audio File Format)文件
CAFF是蘋果開發(fā)的專門用于Mac OS X和iOS系統(tǒng)的無壓縮音頻格式,它被設計用來替換老的WAV格式。
4、AIFF(Audio Interchange File Format)文件
AIFF是蘋果開發(fā)的專門用于Mac OS X系統(tǒng)的專業(yè)的音頻文件格式。AIFF的壓縮格式是AIFF-C(或AIFC),將數(shù)據(jù)以4∶1壓縮率進行壓縮,應用于Mac OS X和iOS 系統(tǒng)。
音頻文件優(yōu)化包括了文件格式和文件大小的優(yōu)化,同時也要考慮到文件使用場景、采用的技術(OpenAL、 AVAudioPlayer)等因素。在iOS應用中,使用本地音頻資源文件的主要應用場景是背景音樂和音樂特效,下面百恒網絡就從這兩個方面為大家介紹相關的優(yōu)化技術。
1. 背景音樂優(yōu)化
背景音樂會在應用中反復播放,它會一直駐留在內存中并耗費CPU,所以更合適比較小的文件,而壓縮文件是不錯的選擇。壓縮文件主要有AIFC和MP3兩種格式,一般我們選擇AIFC,因為這是蘋果推薦的格式。但是我們獲得的原始文件格式不一定是AIFC,這種情況下我們需要使用afconvert工具將其轉換為AIFC格式。在終端中執(zhí)行如下命令:
$ afconvert -f AIFC -d ima4 Fx08822_cast.wav
其中-f AIFC參數(shù)用于轉換為AIFC格式,-d ima4參數(shù)指定解碼方式,F(xiàn)x08822_cast.wav是要轉換的源文件。轉換成功后,會在相同目錄下生成Fx08822_cast.aifc文件。當然,afconvert工具也可以轉換MP3等其他壓縮格式文件。如果我們同時有WAV文件,就應該優(yōu)先采用WAV文件。MP3本身是有損壓縮,如果再經過afconvert轉換,音頻的質量會受到影響。
2. 音樂特效優(yōu)化
音樂特效用于很多游戲中,如發(fā)射子彈、敵人被打死或按鈕點擊等發(fā)出的聲音,這些聲音都是比較短的。如果追求震撼的3D效果,可以采用蘋果專用的無壓縮CAFF格式文件,其他格式的文件盡量不要考慮。一般不要使 用壓縮音頻文件,這主要是因為音樂特效通常采用OpenAL技術,它只接受無壓縮的音頻文件。另外,壓縮音頻文件都會造成音質的丟失。如果我們沒有CAFF格式的文件,也可以使用afconvert工具將其轉換為CAFF格式。在終端中執(zhí)行如下命令:
$ afconvert -f caff -d LEI16 Fx08822_cast.wav
其中-f caff參數(shù)用于轉換為CAFF格式,-d LEI16參數(shù)指定解碼方式,F(xiàn)x08822_cast.wav是要轉換的源文件。默認 音頻的采樣頻率為22050Hz,如果想提高音頻采樣頻率,可以通過如下命令:
$ afconvert -f caff -d LEI16@44100 Fx08822_cast.wav
其中-d LEI16@44100參數(shù)中的44100表示音頻采用頻率為44100Hz。
如果我們采用的資源文件不在本地,而是在分布在網絡云服務器中,那么情況就另當別論了。應用在加載這些音頻文件時,帶寬往往是要考慮的問題,減小文件大小勝過對音質的要求,這種情況下MP3格式是非常適合的。
綜上所述可知,音頻文件在使用本地資源的情況下,應用于背景音樂時AIFC格式是不二選擇,而應用于音樂特效時就應該選擇CAFF 格式了。如果是資源來源于網絡,南昌APP制作開發(fā)公司-百恒網絡則建議大家采用MP3格式文件。
以上便是百恒網絡為大家介紹的關于IOS開發(fā)中音頻文件優(yōu)化的方法,希望對各位開發(fā)者有所幫助,了解更多關于IOS開發(fā)方面的知識,歡迎大家訪問百恒網絡官網!