国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

iOS音頻系列(四)--音頻的文件格式和數(shù)據(jù)格式

2019-11-14 10:42:52
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在音頻開(kāi)發(fā)中 .WAVs和.MP3有什么不同呢,或者還有的.AAC和.CAF之前又有什么區(qū)別呢,這些概念在這篇文章以后應(yīng)該會(huì)有一定的理解.

文件格式和數(shù)據(jù)格式

如果要理解每一個(gè)音頻文件,就需要了解它的兩個(gè)部分的內(nèi)容:文件格式和數(shù)據(jù)格式.文件格式又稱為音頻容器,數(shù)據(jù)格式又可以認(rèn)為是編碼格式.

文件格式(音頻容器)描述的是存儲(chǔ)在文件系統(tǒng)的文件的本身,而存儲(chǔ)在文件中的音頻數(shù)據(jù)是可以被編碼成各種各樣的格式的.比如,我們常見(jiàn)的CAF文件是一個(gè)文件格式(音頻容器),它可以用來(lái)存儲(chǔ)音頻編碼格式為MP3,LPCM或者其他的音頻編碼格式.

音頻數(shù)據(jù)格式(音頻編碼)

這里先來(lái)理解音頻編碼,在音頻相關(guān)的內(nèi)容中,音頻編碼是最重要的.

iphone中支持的音頻格式如下:

AAC: 被設(shè)計(jì)用來(lái)取代MP3音頻編碼的.它會(huì)壓縮原來(lái)的聲音,因此會(huì)減少存儲(chǔ)空間.實(shí)際中ACC比MP3更好的壓縮率.

AMR: AMR是一個(gè)編碼格式用于壓縮語(yǔ)音的音頻編碼格式.

linear PCM: 是標(biāo)準(zhǔn)的線性脈沖編碼,一般是將模擬聲音轉(zhuǎn)化成數(shù)字信號(hào),這是一個(gè)未壓縮的音頻格式.由于是未壓縮的音頻編碼格式,因此播放時(shí)候用這種格式最是最好的選擇,但是會(huì)占用過(guò)多的空間.

MP3: …

IMA4: …未壓縮

該選哪個(gè)數(shù)據(jù)音頻格式

首先明確自己有哪些需求:

如果用于播放的音頻,選用LPCM,IMA4等其他的未壓縮或者輕度壓縮的音頻格式.如果使用壓縮率較高的AAC,MP3等這些iPhone直接硬件支持快速解碼(解壓縮).但是,硬件解碼時(shí)候每次只支持一個(gè)文件.因此,如果需要同時(shí)播放多個(gè)需要解碼(解壓縮)的文件,就需要通過(guò)代碼進(jìn)行軟件解碼,非常慢.

所以如何選擇數(shù)據(jù)音頻格式,這里有些建議:

如果空間足夠,那么最好使用的音頻編碼格式使用LPCM.不僅播放最快,而且可以同時(shí)播放多個(gè)音樂(lè)而不太占用CPU的資源.如果對(duì)空間有要求,最好使用ACC音頻編碼來(lái)進(jìn)行音樂(lè)的播放,IMA4音頻編碼進(jìn)行系統(tǒng)聲音的編碼.

多種LPCM的變體

對(duì)于LPCM音頻編碼是iPhone中使用非壓縮音頻數(shù)據(jù)最好的數(shù)據(jù)格式.同時(shí),根據(jù)具體的存儲(chǔ)方式,又有多種變種.音頻數(shù)據(jù)可以存儲(chǔ)于大端或者小端模式,用float或者integer存儲(chǔ),也可以使用不同的bit-width存儲(chǔ).

而在iPhone中,使用的最平凡的是:little-endian integer 16bit(或者LEI16 short類(lèi)型)的格式.在Mac中,使用native-endian(和電腦一致) float point 32bit.如果是在Mac上生成音頻數(shù)據(jù),那么最好生成合適的格式,再轉(zhuǎn)化成iPhone使用的格式.

文件格式(音頻容器)

iPhone支持許多文件格式(音頻容器)包括:MPEG-1(.mp3),MPEG-2 ADTS(.aac),AIFF,CAF,WAVE等.但是通常在iPhone中使用的容器格式就CAF,因?yàn)樗梢杂脕?lái)封裝iPhone所支持的所有音頻格式.

Bit Rates比特率

比特率是一個(gè)和音頻數(shù)據(jù)格式關(guān)系密切的概念.

音頻文件的比特率就是只單位時(shí)間內(nèi)傳送的bit數(shù),單位是bit/s,kbit/s.更高的比特率會(huì)導(dǎo)致更大的文件.我們?cè)谑褂糜行┮纛l數(shù)據(jù)格式例如AAC或者M(jìn)P3時(shí),需要我們?nèi)ピO(shè)置比特率,這個(gè)參數(shù)與音頻格式在壓縮過(guò)程的壓縮率有關(guān).當(dāng)我們讓比特率變低,那么音頻質(zhì)量就會(huì)更差.

注釋: 1kbit/s = 1000bit/s,而不是1024bit/s

我們需要權(quán)衡比特率的大小和聲音文件的質(zhì)量,選擇合適的比特率.如果我們使用的是語(yǔ)音聲音,那么比特率可以適當(dāng)?shù)鸵稽c(diǎn).

下面是常見(jiàn)的比特率:

32kbit/s: AM 無(wú)限電廣播的質(zhì)量48kbit/s: 很長(zhǎng)的語(yǔ)音對(duì)話64kbit/s: 正常長(zhǎng)度的語(yǔ)音對(duì)話的比特率96kbit/s: FM廣播128kbit/s: MP3音樂(lè)329kbit/s: CD的比特率500kbit/s~1411kbit/s: 無(wú)損音頻編碼格式,比如LPCM

采樣率

最后一個(gè)專(zhuān)業(yè)術(shù)語(yǔ):采樣率.可以見(jiàn)前面的文章.


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 辽源市| 江都市| 松江区| 镇江市| 萝北县| 新巴尔虎右旗| 迁西县| 鄂温| 土默特左旗| 清流县| 获嘉县| 汤原县| 德清县| 鄢陵县| 西丰县| 安远县| 沈阳市| 姚安县| 冷水江市| 巴南区| 孟州市| 当涂县| 岳普湖县| 文昌市| 昌都县| 墨玉县| 景谷| 拜城县| 永昌县| 庆城县| 台湾省| 南皮县| 西藏| 丘北县| 镇康县| 铁岭市| 武平县| 许昌县| 湖北省| 麻江县| 苗栗县|