日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

一文讀懂音頻開發(fā)入門基礎(chǔ)知識(shí)

 xglzlxy 2019-12-12

在現(xiàn)實(shí)生活中,音頻(audio)主要用在兩大場(chǎng)景中:語音(voice)和音樂(music)。語音主要用于溝通通信,如打電話,現(xiàn)在由于語音識(shí)別的發(fā)展,人機(jī)語音交互也是語音的一個(gè)應(yīng)用,目前正在風(fēng)口上,好多大廠都推出了智能音箱。音樂主要用于欣賞,如音樂播放。

一文讀懂音頻開發(fā)入門基礎(chǔ)知識(shí)

下面簡(jiǎn)單介紹音頻的基礎(chǔ)知識(shí):

采樣和采樣頻率:

現(xiàn)在是數(shù)字時(shí)代,在音頻處理時(shí)要先把音頻的模擬信號(hào)變成數(shù)字信號(hào),這叫A/D轉(zhuǎn)換。要把音頻的模擬信號(hào)變成數(shù)字信號(hào),就需要采樣,或者叫抽樣。當(dāng)要把音頻播放出來時(shí)則需要把數(shù)字信號(hào)轉(zhuǎn)換成模擬信號(hào),這叫D/A轉(zhuǎn)換。一秒鐘內(nèi)采樣的次數(shù)稱為采樣頻率。根據(jù)Nyquist采樣定理,要想重建原始信號(hào),采樣頻率必須大于信號(hào)中最高頻率的兩倍。采樣頻率越高,越接近原始信號(hào),但是也加大了運(yùn)算處理的復(fù)雜度。人能感受到的頻率范圍為20HZ--20kHZ, 一般音樂的采樣頻率為44.1kHZ(根據(jù)Nyquist采樣定理,采樣頻率大于信號(hào)中最高頻率的兩倍), 更高的可以是48kHZ和96kHZ,不過一般人用耳聽感覺不出差別了。語音主要是以溝通為主,不需要像音樂那樣清晰,分窄帶和寬帶。窄帶頻率范圍為300Hz--3400Hz,相應(yīng)的采樣頻率為8000Hz; 寬帶頻率范圍為50Hz--7000Hz,相應(yīng)的采樣頻率為16000Hz,用16k采樣的語音就稱為高清語音了。現(xiàn)在主流的語音采樣頻率為16kHz。

采樣位數(shù):

數(shù)字信號(hào)是用0和1來表示的。采樣位數(shù)就是采樣值用多少位0和1來表示,也叫采樣精度,用的位數(shù)越多就越接近真實(shí)聲音。如用8位表示,采樣值取值范圍就是-128--127,如用16位表示,采樣值取值范圍就是-32768--32767?,F(xiàn)在一般都用16位采樣位數(shù)。

聲道(channel)

通常語音只用一個(gè)聲道。而對(duì)于音樂來說,既可以是單聲道(mono),也可以是雙聲道(即左聲道右聲道,叫立體聲stereo),還可以是多聲道,叫環(huán)繞立體聲,多用于影院中。

音頻采集和播放

一般用專門的芯片(通常叫codec芯片)采集音頻,做A/D轉(zhuǎn)換,然后把數(shù)字信號(hào)通過I2S總線(主流用I2S總線,也可以用其他總線,比如PCM總線)送給CPU處理(也有的會(huì)把codec芯片與CPU芯片集成在一塊芯片中)。當(dāng)要播放時(shí)CPU會(huì)把音頻數(shù)字信號(hào)通過I2S總線送給codec芯片,然后做D/A轉(zhuǎn)換得到模擬信號(hào)再播放出來。這部分對(duì)語音和音樂是通用的,只是用的采樣率有可能不一樣,音樂的采樣率用的高一些。

編解碼

如果把采樣值直接保存或者發(fā)送,會(huì)占用很大的存儲(chǔ)空間或者很大的流量。以16kHz采樣率16位采樣位數(shù)單聲道為例,一秒鐘就有32000(2字節(jié)*16000)字節(jié)。通常需要把采樣后的數(shù)字信號(hào)壓縮后才保存或者發(fā)送。把采樣值壓縮叫編碼(encode),形成比特流(bitstream). 把比特流還原出采樣值叫解碼(decode),統(tǒng)稱編解碼(codec)。

音頻的編解碼

通常也把音頻采樣過程叫脈沖編碼調(diào)制編碼,即PCM(Pulse Code Modulation)編碼,采樣值也叫PCM值。為了節(jié)省保存空間或者發(fā)送流量,會(huì)對(duì)PCM值壓縮。

目前主要有三大技術(shù)標(biāo)準(zhǔn)組織制定壓縮標(biāo)準(zhǔn):
a)ITU,主要制定有線語音的壓縮標(biāo)準(zhǔn)(g系列),有g(shù)711/g722/g726/g729等。
b)3GPP,主要制定無線語音的壓縮標(biāo)準(zhǔn)(amr系列等), 有amr-nb/amr-wb。后來ITU吸納了amr-wb,形成了g722.2。
c)MPEG,主要制定音樂的壓縮標(biāo)準(zhǔn),有11172-3,13818-3/7,14496-3等。

一些大公司或者組織也制定壓縮標(biāo)準(zhǔn),比如iLBC,OPUS。

無損壓縮和有損壓縮:把PCM數(shù)據(jù)壓縮后無任何損傷叫無損壓縮,不過壓縮程度不高。把PCM數(shù)據(jù)壓縮后有損傷叫有損壓縮,最多可以壓到幾十分之一,不過音頻質(zhì)量差些。

音頻前后處理

音頻處理是指對(duì)PCM數(shù)據(jù)(也叫線性數(shù)據(jù))進(jìn)行處理,從而達(dá)到想要的效果,如回聲消除。

對(duì)音頻編碼前的PCM數(shù)據(jù)進(jìn)行處理叫音頻前處理,主要用于語音中,來去除各種干擾,使聲音更清晰,主要有回聲消除、噪聲抑制、增益控制等。

對(duì)音頻解碼后的PCM數(shù)據(jù)進(jìn)行處理叫音頻后處理,主要用于音樂中,來產(chǎn)生各種音效,使音樂更動(dòng)聽,主要有均衡器、混響等。

音頻傳輸

這里主要是指網(wǎng)絡(luò)傳輸,通過網(wǎng)絡(luò)把音頻數(shù)據(jù)傳給對(duì)方。語音和音樂兩種場(chǎng)景下有明顯的區(qū)別。

對(duì)于語音來說,實(shí)時(shí)性要求很高,主要用RTP/UDP做承載,由于UDP是不可靠傳輸,會(huì)丟包亂序等,影響語音質(zhì)量,所以要采取相應(yīng)的措施,主要有PLC(丟包補(bǔ)償)、FEC(前向糾錯(cuò))、重傳、jitter buffer等。

對(duì)于音樂來說,以前是播放本地音樂文件,近些年隨著網(wǎng)絡(luò)帶寬的加大,可以播放云端的音樂文件了。播放時(shí)要把音樂文件傳給播放器,一般是邊播放邊下載,播放音樂對(duì)實(shí)時(shí)性要求不高,一般用HTTP/TCP做承載,也就不存在丟包亂序等問題了。

在軟件實(shí)現(xiàn)時(shí),語音的傳輸要做好是不容易的,尤其在無線網(wǎng)絡(luò)環(huán)境下。個(gè)人覺得它是除了音頻算法外最難的部分(算法是有門檻的,需要精通數(shù)字信號(hào)處理)。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多