音視頻技術(shù)從零開(kāi)始-音頻基礎(chǔ)
本人目前音視頻技術(shù)基本零基礎(chǔ)(在公司里耳濡目染德澈,聽(tīng)過(guò)一些概念缸逃,有著膚淺的理解休讳,實(shí)際是一頭霧水)脆霎,鑒于本人在一個(gè)短視頻公司工作(不好意思不懂這些),本身其實(shí)對(duì)這塊也比較感興趣滞项,加上之前一直沒(méi)下決心系統(tǒng)學(xué)習(xí)這塊知識(shí)狭归,現(xiàn)在想開(kāi)始從零開(kāi)始系統(tǒng)學(xué)習(xí)音視頻技術(shù),并記錄學(xué)習(xí)筆記「音視頻從零開(kāi)始」系列文判,希望能幫到更多零基礎(chǔ)想學(xué)習(xí)音視頻技術(shù)的同學(xué)
注:系列文章都是通過(guò)查找各個(gè)資料加上我個(gè)人理解總結(jié)出來(lái)的學(xué)習(xí)筆記过椎,文章最后會(huì)附上參考文章或書(shū)籍的連接,如果有理解不對(duì)或有涉及知識(shí)侵權(quán)的地方戏仓,請(qǐng)及時(shí)評(píng)論聯(lián)系我
這是音視頻技術(shù)從零開(kāi)始學(xué)習(xí)筆記的第一篇疚宇,從音頻技術(shù)相關(guān)的概念開(kāi)始,本篇不涉及任何編程相關(guān)內(nèi)容赏殃。個(gè)人認(rèn)為敷待,概念理解清楚對(duì)以后編程模塊的邊界、職責(zé)劃分以及該使用哪些工具有很大的幫助嗓奢。
圖1-音頻技術(shù)核心概念
采樣
模擬信號(hào)(連續(xù)信號(hào))是連續(xù)的讼撒,意味著不會(huì)失真(音質(zhì)好),比如磁帶、唱片中就通過(guò)物理介質(zhì)(通過(guò)唱片表面的起伏跌宕根盒,或者是磁帶上的磁粉引起的磁場(chǎng)強(qiáng)度來(lái)表示音箱上振膜的即時(shí)位置)保存著音頻的模擬信號(hào)钳幅。
我們都知道唱片和磁帶已經(jīng)逐漸離開(kāi)人們的視野,就是因?yàn)橥ㄟ^(guò)物理手段無(wú)法長(zhǎng)久的保存音頻信號(hào)炎滞,唱片會(huì)磨損敢艰,磁帶會(huì)老化,那用什么方法能夠長(zhǎng)久的保存音頻信息呢册赛?
目前钠导,使用最多的方法就是通過(guò)數(shù)字來(lái)保存音頻,那么又如何將音頻轉(zhuǎn)為數(shù)字呢森瘪?首先先通過(guò)圖中「采樣」手段牡属,將模擬信號(hào)轉(zhuǎn)為離散信號(hào),離散信號(hào)可以理解為不連續(xù)信號(hào)扼睬,把一段連續(xù)函數(shù)按照一定規(guī)則斷開(kāi)逮栅。
圖2-采樣信號(hào) 原圖鏈接
此圖為CD標(biāo)準(zhǔn)的采樣信號(hào)圖,圖中的「采樣率44.1Khz」就是斷開(kāi)函數(shù)的規(guī)則窗宇,每 1s 將一段波分為 44100 個(gè)矩形措伐,經(jīng)過(guò)采樣,得到了一個(gè)有一堆柱形圖組成的圖形(離散信號(hào))
為什么音頻的采樣率是 44.1Khz 呢军俊?對(duì)于高質(zhì)量的音頻(人耳能夠聽(tīng)到的頻率范圍是 20hz-20Khz)侥加,根據(jù)采樣定理,按比人能聽(tīng)到的最大頻率的2倍進(jìn)行采樣可以保證聲音在被數(shù)字化處理后粪躬,還能有質(zhì)量保障
量化
圖3-量化(信號(hào)處理)
經(jīng)過(guò)采樣后担败,我們發(fā)現(xiàn)圖中的縱坐標(biāo)是沒(méi)有值的,無(wú)法表示每段樣本的數(shù)字大小镰官,這時(shí)候就需要引入量化的概念氢架。通俗易懂地講「量化」就是在沿水平方向再將信號(hào)圖按照一定數(shù)字范圍切斷,保證每段樣本能用數(shù)字描述朋魔。這個(gè)數(shù)字的最終物理意義是反應(yīng)在音響振膜位置,比如用[0-10萬(wàn)]進(jìn)行量化卿操,最終反應(yīng)在振膜的位置就是 0-10萬(wàn)警检。
那么CD的量化標(biāo)準(zhǔn)是什么呢?采用16bit(short)害淤,也就是2的16次方扇雕,總共65536,然后為了由于振膜是可以發(fā)生正向和負(fù)向位移窥摄,所以用[-32767,32768]進(jìn)行量化镶奉。
所以圖中虛線(xiàn)范圍就代表了量化的數(shù)字范圍,最終的紅色曲線(xiàn)就是量化的結(jié)果,數(shù)字信號(hào)
編碼
經(jīng)過(guò)量化后哨苛,每一個(gè)采樣都是一個(gè)數(shù)字鸽凶,那這么多的數(shù)字該如何存儲(chǔ)呢?這就需要第三個(gè)概念:「編碼」建峭,所謂編碼玻侥,就是按照一定的格式記錄采樣和量化后的數(shù)據(jù),比如順序存儲(chǔ)或壓縮存儲(chǔ)等亿蒸。
這里涉及很多種格式凑兰,通常所說(shuō)的音頻的裸數(shù)據(jù)格式就是脈沖編碼調(diào)制數(shù)據(jù),簡(jiǎn)稱(chēng) PCM (Pulse Code Modulation)边锁。描述一段 PCM 通常需要以下三個(gè)概念
- 量化格式(SampleFormat)
- 采樣率(SampleRate)
- 聲道數(shù)(Channel)
還以CD標(biāo)準(zhǔn)為例姑食,量化格式 16bit,采樣率 44100茅坛,聲道數(shù) 2音半。
這里對(duì)聲道概念做一個(gè)補(bǔ)充,平時(shí)所謂的雙聲道灰蛙、單聲道其實(shí)可以理解為需要記錄幾個(gè)信號(hào)祟剔,比如磁帶,雙聲道就是同一時(shí)刻記錄兩個(gè)軌道的信息摩梧,一個(gè)負(fù)責(zé)記錄左耳機(jī)振膜位置物延,一個(gè)負(fù)責(zé)記錄右耳機(jī)振膜位置,以此類(lèi)推仅父,多個(gè)聲道也是類(lèi)似
上述信息就描述了CD的音質(zhì)叛薯,對(duì)于聲音格式來(lái)說(shuō),還有另一個(gè)概念用來(lái)描述它的大小笙纤,稱(chēng)為數(shù)據(jù)比特率(bitRate)耗溜,即 1s 內(nèi)的比特?cái)?shù)目,用于衡量音頻數(shù)據(jù)單位時(shí)間內(nèi)的容量大小省容,那么比特率如何計(jì)算抖拴?
單位為千比特每秒kbps(kb per second)。
比如對(duì)于CD音質(zhì)腥椒,
那么阿宅,一分鐘里,CD音質(zhì)數(shù)據(jù)需要占多大存儲(chǔ)空間呢笼蛛?
所以一段1分鐘的音頻經(jīng)過(guò)采樣洒放、量化、編碼后可以得到一個(gè)大約10MB裸數(shù)據(jù)滨砍,成功地將音頻的模擬信號(hào)轉(zhuǎn)為數(shù)字信號(hào)往湿,并存儲(chǔ)下來(lái)妖异。
音頻壓縮編碼
上面說(shuō)到1分鐘的CD音質(zhì)數(shù)據(jù)的存儲(chǔ)空間大于為 10MB,這對(duì)于光盤(pán)磁盤(pán)存儲(chǔ)來(lái)說(shuō)可接受领追,但對(duì)于網(wǎng)絡(luò)傳輸肯定是無(wú)法接受的他膳。所以就需要「壓縮編碼」出面解決問(wèn)題
所謂音頻編碼主要指音頻壓縮技術(shù),壓縮通常又被分為有損和無(wú)損兩種蔓腐,但事實(shí)上矩乐,任何音頻編碼方式相對(duì)于最真實(shí)的自然聲音信號(hào),都是有損的壓縮回论。從前面說(shuō)到的采樣散罕、量化、編碼中不難理解傀蓉,我們把一條光滑的音頻信號(hào)曲線(xiàn)分割成了許多數(shù)據(jù)塊欧漱,然后對(duì)數(shù)據(jù)進(jìn)行二進(jìn)制編碼,過(guò)程中其實(shí)就已經(jīng)損失了一部分?jǐn)?shù)據(jù)了葬燎,所以再次進(jìn)行壓縮也只能是盡可能的接近經(jīng)過(guò)PCM編碼后的音頻裸數(shù)據(jù)误甚。
圖4-PCM編碼 原圖鏈接
既然壓縮是為了減小編碼后的數(shù)據(jù)存儲(chǔ)空間,那么就應(yīng)該去掉音頻的“冗余信息”谱净,從以下兩個(gè)方面去衡量哪些數(shù)據(jù)是冗余的
- 之前提到過(guò)窑邦,人耳所能察覺(jué)的聲音信號(hào)的頻率范圍為20Hz-20KHz,除此之外的其它頻率人耳無(wú)法察覺(jué)壕探,都可視為冗余信號(hào)
- 當(dāng)一個(gè)強(qiáng)音頻信號(hào)和一個(gè)弱音頻信號(hào)同時(shí)存在時(shí)冈钦,弱信號(hào)會(huì)被強(qiáng)信號(hào)掩蔽,可視為冗余
其中第二點(diǎn)涉及另兩個(gè)概念「頻譜掩蔽效應(yīng)」和「時(shí)域掩蔽效應(yīng)」李请,名字看起來(lái)高深莫測(cè)瞧筛,其實(shí)不難理解。
圖5-頻譜掩蔽效應(yīng) 原圖鏈接
「頻譜掩蔽效應(yīng)」一個(gè)音頻信號(hào)被人耳聽(tīng)到是有一個(gè)閾值导盅,閾值越小越容易被人聽(tīng)到较幌,如圖所示,虛線(xiàn)是隨聲音頻率增大反應(yīng)的閾值曲線(xiàn)白翻,在 2-5kHz范圍內(nèi)乍炉,閾值很低,是人耳對(duì)聲音最敏感的頻率÷蒜桑現(xiàn)在假設(shè)有一個(gè) 60dB-0.2kHz 的強(qiáng)音信號(hào)出現(xiàn)時(shí)恩急,閾值曲線(xiàn)會(huì)有所改變(圖中實(shí)線(xiàn)部分),0.1-0.5kHz 頻率的閾值被明顯抬高纪蜒,圖中大概40dB-0.17kHz 左右的信號(hào)和 30dB-0.48kHz左右的信號(hào)都會(huì)被掩蔽。所以在0.1kHz-0.5kHz范圍內(nèi)此叠,只能聽(tīng)到 65dp-0.2kHz 的聲音纯续,其余信號(hào)可視為冗余随珠。
圖6-時(shí)域掩蔽效應(yīng) 原圖鏈接
「時(shí)域掩蔽效應(yīng)」是強(qiáng)信號(hào)和弱信號(hào)在時(shí)間維度發(fā)生的掩蔽,分為
- 前掩蔽猬错,人在聽(tīng)到強(qiáng)信號(hào)之前窗看,一些弱信號(hào)會(huì)被掩蔽
- 同時(shí)掩蔽,強(qiáng)信號(hào)會(huì)掩蔽同時(shí)發(fā)生的弱信號(hào)
- 后掩蔽倦炒,強(qiáng)信號(hào)消失后显沈,需要經(jīng)過(guò)一段時(shí)間后,才能重新聽(tīng)到弱信號(hào)
在這過(guò)程中被掩蔽的信號(hào)被視為冗余
幾種音頻壓縮編碼簡(jiǎn)介
編碼 | 實(shí)現(xiàn)簡(jiǎn)介 | 特點(diǎn) | 適用場(chǎng)景 |
---|---|---|---|
WAV | 無(wú)損壓縮逢唤,其中一種實(shí)現(xiàn)方式是在 PCM 數(shù)據(jù)格式前加上 44 字節(jié)拉讯,分別描述采樣率、聲道數(shù)鳖藕、數(shù)據(jù)格式等信息魔慷。 | 音質(zhì)非常好,大量軟件都支持 | 多媒體開(kāi)發(fā)的中間文件著恩、保存音樂(lè)和音效 |
MP3 | 具有不錯(cuò)的壓縮比院尔,使用 LAME 編碼(MP3 編碼格式的一種實(shí)現(xiàn))的中高碼率的 MP3 文件 | 音質(zhì)在 128Kbit/s 以上表現(xiàn)還不錯(cuò),壓縮比比較高喉誊,大量軟硬件都支持 | 高比特率下對(duì)兼容性有要求的音樂(lè)鑒賞 |
AAC | 新一代有損壓縮技術(shù)邀摆,通過(guò)一些附加的編碼技術(shù)(PS、SBR 等)伍茄,衍生出了 LC-AAC栋盹、HE-AAC、HE-AAC v2三種主要編碼格式 | 小于 128Kbit/s 表現(xiàn)優(yōu)異幻林,多用于視頻中的音頻編碼 | 128Kbit/s 一下的音頻編碼贞盯,多用于視頻中的音頻編碼 |
Ogg | 一種非常有潛力的編碼,各種碼率下都有比較優(yōu)秀的表現(xiàn)沪饺,尤其是低碼率場(chǎng)景下躏敢。可以在低碼率的場(chǎng)景下仍然保持不錯(cuò)的音質(zhì)整葡,但目前軟件硬件支持情況較差 | 可用比 MP3 更小的碼率實(shí)現(xiàn)比 MP3 更好的音質(zhì)件余,但兼容性不好 | 語(yǔ)音聊天的音頻消息場(chǎng)景 |
1.壓縮比,壓縮后大小/原大小遭居,通常小于 1啼器,越小表示壓縮的越狠
2.“碼率”是比特率是俗稱(chēng)
3.表格總結(jié)于《音視頻開(kāi)發(fā)指南》,其中一些細(xì)節(jié)有興趣的同學(xué)可以再深入查閱俱萍,本文不再深入研究
思考
- 為什么磁帶端壳、唱片逐漸消失在人們的視野里,音頻播放器可以取而代之枪蘑?
- 聲音是經(jīng)過(guò)怎樣的處理過(guò)程后保存成數(shù)字信息的损谦?
- 為什么要對(duì)音頻數(shù)據(jù)進(jìn)行壓縮編碼岖免?
參考鏈接
《音視頻開(kāi)發(fā)進(jìn)階指南-基于 Android 和 iOS 平臺(tái)的實(shí)踐》 - 第1章 音視頻基礎(chǔ)概念
轉(zhuǎn)文聲明
如有文章轉(zhuǎn)載需求照捡,請(qǐng)注明本文作者以及鏈接颅湘,感謝各位理解支持