前言本節(jié)對音頻相關(guān)知識進(jìn)行了詳細(xì)的介紹及講解。 一、音頻基本概念1、音頻的基本概念①、聲音的三要素聲音的三要素:頻率、振幅、波形
②、音量與音調(diào)
③、幾個基本概念
④、奈奎斯特采樣定律Nyquist 采樣率大于或等于連續(xù)信號最高頻率分量的 2 倍時,采樣信號可以用來完美重構(gòu)原始連續(xù)信號。 2、數(shù)字音頻①、采樣所謂的采樣就是只在時間軸上對信號進(jìn)行數(shù)字化。根據(jù)奈奎斯特定律(也稱作采樣定律) ,按照比聲音最高頻率的 2 倍以上進(jìn)行采樣。 人類聽覺的頻率(音調(diào)) 范圍為 20Hz–20KHz。所以至少要大于 40KHz。 采樣頻率一般為 44.1kHz,這樣可保證聲音達(dá)到 20kHz 也能被數(shù)字化。 44.1kHz 就是代表 1 秒會采樣 44100 次。 ②、量化具體每個采樣又該如何表示呢?這就涉及到量化。量化是指在幅度軸上對信號進(jìn)行數(shù)字化。如果用 16 比特位的二進(jìn)制信號來表示一個采樣,那么一個采樣所表示的范圍即為 [-32768, 32767] 。 下圖為音頻量化過程: ③、編碼每一個量化都是一個采樣,將這么多采樣進(jìn)行存儲就叫做編碼。 所謂編碼,就是按照一定的格式記錄采樣和量化后的數(shù)字?jǐn)?shù)據(jù),比如順序存儲或者壓縮存儲,等等。 通常所說的音頻裸數(shù)據(jù)格式就是脈沖編碼調(diào)制(PCM)數(shù)據(jù)。 描述一段 PCM 數(shù)據(jù)通常需要以下幾個概念:量化格式(位深, 通常 16bit) 、采樣率、聲道數(shù) 對于聲音格式,還有一個概念用來描述它的大小,即比特率,即 1 秒內(nèi)的比特數(shù)目,用來衡量音頻數(shù)據(jù)單位時間內(nèi)的容量大小。 ④、其他相關(guān)概念<1>、采樣位數(shù)采樣位數(shù)也叫采樣大小或者量化位數(shù)。量化深度表示每個采樣點(diǎn)用多少比特表示,音頻的量化深度一般為 8、16、32 位等。 例如:量化深度為 8bit 時,每個采樣點(diǎn)可以表示 256 個不同的量化值,而量化深度為 16bit 時,每個采樣點(diǎn)可以表示 65536 個不同的量化值。 量化深度的大小影響到聲音的質(zhì)量,顯然,位數(shù)越多,量化后的波形越接近原始波形,聲音的質(zhì)量越高,而需要的存儲空間也越多;位數(shù)越少,聲音的質(zhì)量越低,需要的存儲空間越少。 CD 音質(zhì)采用的是 16 bits。 <2>、通道數(shù)即聲音的通道數(shù)目, 常見的有單聲道和雙聲道或者立體聲道。
記錄聲音時,如果每次生成一個聲波數(shù)據(jù),稱為單聲道;每次生成兩個聲波數(shù)據(jù),稱為雙聲道(立體聲)。立體聲(雙聲道)存儲大小是單聲道文件的兩倍。 <3>、音頻幀音頻跟視頻不太一樣,視頻的每一幀就是一副圖像,但是因為音頻是流式的,本身是沒有一幀的概念的。 比如對于 PCM 流來說,采樣率為 44100Hz,采樣位數(shù)為 16,通道數(shù)為 2,那么一秒的音頻固定大小的:44100162 / 8 字節(jié)。 但是人們可以規(guī)定一幀的概念,比如 amr 幀比較簡單,它規(guī)定每 20ms 的音頻是一幀。 <4>、比特率(碼率)指音頻每秒鐘播放的數(shù)據(jù)量,單位為 bit,例如對于 PCM 流,采樣率為 44100Hz,采樣大小為 16,聲道數(shù)為 2,那么碼率為:44100* 16 * 2 = 1411200 bps。 <5>、音頻文件大小的計算:文件大小 = 采樣率 * 錄音時間 * 采樣位數(shù) / 8 * 通道數(shù)。 <6>、PCM 流PCM 流就是原始收錄聲音時,數(shù)據(jù)會保存到一串 buffer 中,這串 buffer,就采用了 PCM 格式存儲的。 通常把音頻采樣過程也叫做脈沖編碼調(diào)制編碼,即 PCM(Pulse Code Modulation) 編碼,采樣值也叫 PCM 值 編碼過程:模擬信號 -> 抽樣 -> 量化 -> 編碼 -> 數(shù)字信號 3、音頻處理基礎(chǔ)①、噪聲抑制(Noise Suppression)手機(jī)等設(shè)備采集的原始聲音往往包含了背景噪聲,影響聽眾的主觀體驗,降低音頻壓縮效率。以 Google 著名的開源框架 Webrtc 為例,我們對其中的噪聲抑制算法進(jìn)行嚴(yán)謹(jǐn)?shù)臏y試,發(fā)現(xiàn)該算法可以對白噪聲和有色噪聲進(jìn)行良好的抑制。滿足視頻或者語音通話的要求。其他常見的噪聲抑制算法如開源項目 Speex 包含的噪聲抑制算法,也有較好的效果,該算法適用范圍較 Webrtc 的噪聲抑制算法更加廣泛,可以在任意采樣率下使用。 ②、回聲消除(Acoustic Echo Canceller)在視頻或者音頻通話過程中,本地的聲音傳輸?shù)綄Χ瞬シ胖?,聲音會被對端的麥克風(fēng)采集,混合著對端人聲一起傳輸?shù)奖镜夭シ?,這樣本地播放的聲音包含了本地原來采集的聲音,造成主觀感覺聽到了自己的回聲。 ③、自動增益控制(Auto Gain Control)手機(jī)等設(shè)備采集的音頻數(shù)據(jù)往往有時候響度偏高,有時候響度偏低,造成聲音忽大忽小,影響聽眾的主觀感受。 ④、靜音檢測(Voice Activity Detection)靜音檢測的基本原理:計算音頻的功率譜密度,如果功率譜密度小于閾值則認(rèn)為是靜音,否則認(rèn)為是聲音。靜音檢測廣泛應(yīng)用于音頻編碼、AGC、AECM 等。 ⑤、舒適噪聲產(chǎn)生(Comfortable Noise Generation)舒適噪聲產(chǎn)生的基本原理:根據(jù)噪聲的功率譜密度,人為構(gòu)造噪聲。 廣泛適用于音頻編解碼器。 它的應(yīng)用場景:完全靜音時,為了創(chuàng)造舒適的通話體驗,在音頻后處理階段添加隨機(jī)白噪聲。 4、音頻使用場景在現(xiàn)實生活中,音頻(audio)主要用在兩大場景中:語音(voice)和音樂(music)。 音頻開發(fā)的主要應(yīng)用:
音頻開發(fā)的具體內(nèi)容:
5、常見音頻格式
6、混音技術(shù)混音, 顧名思義,就是把兩路或者多路音頻流混合在一起,形成一路音頻流。 ①、混音條件兩路音視頻流,必須符合以下條件才能混合:
②、回聲消除、噪音抑制和靜音檢測等處理在混音之前,還需要做回聲消除、噪音抑制和靜音檢測等處理。在編碼之前,采集、語音前處理、混音之前的處理、混音和混音之后的處理應(yīng)該按順序進(jìn)行。 ③、音頻重采樣重采樣即是將音頻進(jìn)行重新采樣得到新的采樣率的音頻。
④、回聲消除回聲消除就是在 Mic 采集到聲音之后,將本地音箱播放出來的聲音從 Mic 采集的聲音數(shù)據(jù)中消除掉,使得 Mic 錄制的聲音只有本地用戶說話的聲音。 傳統(tǒng)的回聲消除都是采用硬件方式,在硬件電路上集成 DSP 處理芯片,如我們常用的固定電話、手機(jī)等都有專門的回音消除處理電路,而采用軟件方式實現(xiàn)回聲消除一直存在技術(shù)難點(diǎn),包括國內(nèi)應(yīng)用最廣泛的 QQ 超級語音,便是采用國外的 GIPS 技術(shù),由此可見一般。 回聲消除已經(jīng)成為即時通訊中提供全雙工語音的標(biāo)準(zhǔn)方法 回聲消除的基本原理是以揚(yáng)聲器信號與由它產(chǎn)生的多路徑回聲的相關(guān)性為基礎(chǔ),建立遠(yuǎn)端信號的語音模型,利用它對回聲進(jìn)行估計,并不斷修改濾波器的系數(shù),使得估計值更加逼近真實的回聲。然后,將回聲估計值從話筒的輸入信號中減去,從而達(dá)到消除回聲的目的。 二、音頻編碼原理1、音頻編碼①、壓縮編碼即壓縮編碼,其原理是壓縮掉冗余的信號,冗余信號是指不能被人耳感知到的信號,包括人耳聽覺范圍之外的音頻信號以及被掩蔽掉的音頻信號。 模擬音頻信號轉(zhuǎn)換為數(shù)字信號需要經(jīng)過采樣和量化,量化的過程被稱之為編碼,根據(jù)不同的量化策略,產(chǎn)生了許多不同的編碼方式,常見的編碼方式有:PCM 和 ADPCM,這些數(shù)據(jù)代表著無損的原始數(shù)字音頻信號,添加一些文件頭信息,就可以存儲為 WAV 文件了,它是一種由微軟和 IBM 聯(lián)合開發(fā)的用于音頻數(shù)字存儲的標(biāo)準(zhǔn), 可以很容易地被解析和播放。 ②、音頻編解碼常用的三種實現(xiàn)方案
③、音頻信號壓縮編碼標(biāo)準(zhǔn)
④、音頻編碼過程<1>、音頻信號數(shù)字化將連續(xù)的模擬信號轉(zhuǎn)換成離散的數(shù)字信號,完成采樣、量化和編碼三個步驟。又稱為脈沖編碼調(diào)制(Pulse Code Modulation) ,通常由 A/D 轉(zhuǎn)換器來實現(xiàn)。 <2>、音頻編碼三類方法
⑤、音頻壓縮<1>、音頻信號能壓縮的基本依據(jù)
<2>、音頻信號壓縮編碼的分類
2、音頻編碼的基本原理講解①、概述語音編碼致力于:降低傳輸所需要的信道帶寬, 同時保持輸入語音的高質(zhì)量。 ②、靜音閾值曲線指在安靜環(huán)境下,人耳在各個頻率能聽到聲音的閾值。 ③、臨界頻帶由于人耳對不同頻率的解析度不同,MPEG1/Audio 將 22khz 內(nèi)可感知的頻率范圍,依不同編碼層,不同取樣頻率,劃分成 23~26 個臨界頻帶。 下圖列出理想臨界頻帶的中心頻率與頻寬。圖中可看到,人耳對低頻的解析度較好。 ④、頻域上的掩蔽效應(yīng)幅值較大的信號會掩蔽頻率相近的幅值較小的信號,如下圖: ⑤、時域上的遮蔽效應(yīng)在一個很短的時間內(nèi),若出現(xiàn)了 2 個聲音,SPL(sound pressure level) 較大的聲音會掩蔽 SPL 較小的聲音。 時域掩蔽效應(yīng)分前向掩蔽(pre-masking)和后向掩蔽(post-masking),其中 post-masking的時間會比較長,約是 pre-masking 的 10 倍。 時域遮蔽效應(yīng)有助于消除前回音。 3、音頻編碼基本手段①、編碼基本手段之一 —— 量化和量化器<1>、基本概念
<2>、常見的量化器的優(yōu)缺點(diǎn)
②、編碼基本手段之二 —— 語音編碼器<1>、基本概念語音編碼器分為三種類形:(a)波形編碼器 、(b)聲碼器 、(c)混合編碼器 。
<2>、波形編碼器波形編碼器的設(shè)計常獨(dú)立于信號,所以適應(yīng)于各種信號的編碼而不限于語音。 1)、時域編碼
2)、頻域編碼頻域編碼是把信號分解成一系列不同頻率的元素,并進(jìn)行獨(dú)立編碼。
3)、聲碼器
4)、混合編碼器波形編碼器試圖保留被編碼信號的波形,能以中等比特率(32kbps) 提供高品質(zhì)語音,但無法應(yīng)用在低比特率場合。聲碼器試圖產(chǎn)生在聽覺上與被編碼信號相似的信號,能以低比特率提供可以理解的語音,但是所形成的語音聽起來不自然。 混合編碼器結(jié)合了 2 者的優(yōu)點(diǎn):
4、音頻壓縮格式①、WAV 編碼WAV 編碼是在 PCM 數(shù)據(jù)格式的前面加上 44 字節(jié),分別用來描述 PCM 的采樣率、聲道數(shù)、數(shù)據(jù)格式等信息。 特點(diǎn):音質(zhì)非常好、大量軟件都支持。 使用場景:多媒體開發(fā)的中間文件、保存音樂和音效素材等。 ②、mp3 編碼MP3 具有不錯的壓縮比,使用 LAME 編碼的中高碼率的 MP3 文件,聽感上非常接近源 WAV 文件。 特點(diǎn):音質(zhì)在 128Kbps 以上表現(xiàn)還不錯,壓縮比比較高,兼容性好。 使用場景:高比特率下對兼容性有要求的音樂欣賞 ③、AAC 編碼AAC 是新一代的音頻有損壓縮技術(shù),它通過一些附加編碼技術(shù)( 如 PS、 SBR 等),衍生出 LC-AAC、HE-AAC、HE-AAC V2 三中主要編碼格式。 特點(diǎn):在小于 128kbps 碼率下表現(xiàn)優(yōu)異,且多用于視頻中的音頻編碼。 適用場景:128Kbps 碼率下的音頻編碼, 多用于視頻中的音頻軌的編碼。 ④、Ogg 編碼Ogg 編碼音質(zhì)好、完全免費(fèi)??梢杂酶〉拇a率達(dá)到更好的音質(zhì),128Kbps 的 Ogg 比 192Kbps 甚至更高的 MP3 還要出色。 但是目前媒體軟件支持上還是不夠友好。 特點(diǎn):高中低碼率下都有良好的表現(xiàn),兼容性不夠好,流媒體特性不支持。 使用場景:語音聊天的音頻消息場景。 ⑤、FLAC 編碼FLAC 中文可解釋為無損音頻壓縮編碼。 FLAC 是一套著名的自由音頻壓縮編碼,其特點(diǎn)是無損壓縮。不同于其他有損壓縮編碼如 MP3 及 AAC,它不會破壞任何原有的音頻信息,所以可以還原音樂光盤音質(zhì)。 2012 年以來它已被很多軟件及硬件音頻產(chǎn)品( 如 CD 等) 所支持。 特點(diǎn): 無損壓縮、壓縮率高于普通文件夾壓縮格式( ZIP、 rar 等)。使用場景:高品質(zhì)音樂等。 三、音頻深度學(xué)習(xí)1、深度學(xué)習(xí)在音頻信號處理中的進(jìn)展主要從語音(Speech) 、音樂(Music) 和環(huán)境聲(Environmental Sounds) 三個領(lǐng)域出發(fā),分析它們之間的相似點(diǎn)和不同點(diǎn),以及一些跨領(lǐng)域的通用方法描述。 2、應(yīng)用①、語音識別語音識別指的是將語音信號轉(zhuǎn)化為文字序列,它是所有基于語音交互的基礎(chǔ)。對于語音識別而言,高斯混合模型(GMM)和馬爾科夫模型(HMM)曾占據(jù)了幾十年的發(fā)展歷史。 ②、音樂信息檢索和語音不同, 音樂通常包含很廣泛的聲源信息, 并且在不同音樂源之間存在這復(fù)雜的依賴關(guān)系。 ③、環(huán)境聲識別有關(guān)環(huán)境聲的任務(wù)主要有三類:聲音場景識別、聲音事件檢測和標(biāo)注。 ④、定位和跟蹤利用多通道信號可以對聲源位置進(jìn)行跟蹤和定位。跟蹤和定位的主要設(shè)備條件是麥克風(fēng)陣列,通常包含線性陣列、環(huán)形陣列和球形陣列等。 ⑤、聲源分離指的是在多聲源混合的信號中提取單一的目標(biāo)聲源。主要應(yīng)用在一些魯棒聲音識別的預(yù)處理以及音樂編輯和重譜。 ⑥、聲音增強(qiáng)通常為語音增強(qiáng), 指的是通過減小噪聲來提高語音質(zhì)量。 主要技術(shù)是去噪自編碼器、CNN、RNN、GAN(SEGAN) 等。 ⑦、生成模型根據(jù)數(shù)據(jù)集中的聲音屬性特征來生成新的數(shù)據(jù),要求這些數(shù)據(jù)不能和原始數(shù)據(jù)集一樣、要具有多樣性并且訓(xùn)練和生成時間要很小,理想情況下是實時的。 3、十大音頻處理任務(wù)①、音頻分類音頻分類是語音處理領(lǐng)域的一個基本問題,從本質(zhì)上說,它就是從音頻中提取特征,然后判斷具體屬于哪一類。 ②、音頻指紋識別音頻指紋識別的目的是從音頻中提取一段特定的數(shù)字摘要,用于快速識別該段音頻是否來自音頻樣本,或從音頻庫中搜索出帶有相同數(shù)字摘要的音頻。 ③、自動音樂標(biāo)注音樂標(biāo)注是音頻分類的升級版。它包含多個類別,一個音頻可以同時屬于不同類,也就是有多個標(biāo)簽。自動音樂標(biāo)注的潛在應(yīng)用是為音頻創(chuàng)建元數(shù)據(jù),以便日后的搜索,在這上面,深度學(xué)習(xí)在一定程度上有用武之地。 ④、音頻分割根據(jù)定義的一組特征將音頻樣本分割成段。 ⑤、音源分離音源分離就是從一堆混合的音頻信號中分離出來自不同音源的信號,它最常見的應(yīng)用之一就是識別同時翻譯音頻中的歌詞(如卡拉 OK) 。 ⑥、節(jié)拍跟蹤節(jié)拍跟蹤的目標(biāo)就是跟蹤音頻文件中每個節(jié)拍的位置。 ⑦、音樂推薦⑧、音樂信息檢索這是音頻處理中最困難的任務(wù)之一, 它實質(zhì)上是要建立一個基于音頻數(shù)據(jù)的搜索引擎。 ⑨、音樂轉(zhuǎn)錄(Music Transcription)音樂轉(zhuǎn)錄是另一個非常有挑戰(zhàn)性的音頻處理任務(wù)。 它包括注釋音頻和創(chuàng)建一個“表”, 以便于之后用它生成音樂 ⑩、音符起始點(diǎn)檢測音符起始點(diǎn)檢測是分析音頻/建立音樂序列的第一步,對于以上提到的大多數(shù)任務(wù)而言,執(zhí)行音符起始點(diǎn)檢測是必要的(簡單任務(wù)不需要) 我的qq:2442391036,歡迎交流! |
|