Android 音視頻之音頻編碼

前言

????上一篇的時(shí)候,已經(jīng)簡(jiǎn)單介紹過一些音頻的基礎(chǔ)知識(shí)。我們說到,通常采用脈沖代碼調(diào)制編碼,即PCM(Pulse Code Modulation)編碼,通過抽樣、量化、編碼三個(gè)步驟將連續(xù)變化的模擬信號(hào)轉(zhuǎn)換為數(shù)字編碼。但是這和市場(chǎng)上常見的編解碼有什么區(qū)別呢?
????市場(chǎng)上存在多種類型的編碼,我們?cè)撊绾芜x擇呢?

編碼分類

????根據(jù)編碼方式的不同,音頻編碼技術(shù)分為三種:波形編碼、參數(shù)編碼和混合編碼。一般來說,波形編碼的話音質(zhì)量高,但編碼速率也很高;參數(shù)編碼的編碼速率很低,產(chǎn)生的合成語音的音質(zhì)不高;混合編碼使用參數(shù)編碼技術(shù)和波形編碼技術(shù),編碼速率和音質(zhì)介于它們之間。

波形編碼
????波形編碼是指不利用生成音頻信號(hào)的任何參數(shù),直接將時(shí)間域信號(hào)變換為數(shù)字代碼,使重構(gòu)的語音波形盡可能地與原始語音信號(hào)的波形形狀保持一致。波形編碼的基本原理是在時(shí)間軸上對(duì)模擬語音信號(hào)按一定的速率抽樣,然后將幅度樣本分層量化,并用代碼表示。
????波形編碼方法簡(jiǎn)單、易于實(shí)現(xiàn)、適應(yīng)能力強(qiáng)并且語音質(zhì)量好。不過因?yàn)閴嚎s方法簡(jiǎn)單也帶來了一些問題:壓縮比相對(duì)較低,需要較高的編碼速率。一般來說,波形編碼的復(fù)雜程度比較低,編碼速率較高、通常在16 kbit/s以上,質(zhì)量相當(dāng)高。但編碼速率低于16 kbit/s時(shí),音質(zhì)會(huì)急劇下降。
????最簡(jiǎn)單的波形編碼方法是PCM(Pulse Code Modulation,脈沖編碼調(diào)制),它只對(duì)語音信號(hào)進(jìn)行采樣和量化處理。優(yōu)點(diǎn)是編碼方法簡(jiǎn)單,延遲時(shí)間短,音質(zhì)高,重構(gòu)的語音信號(hào)與原始語音信號(hào)幾乎沒有差別。不足之處是編碼速率比較高(64 kbit/s),對(duì)傳輸通道的錯(cuò)誤比較敏感。

參數(shù)編碼
????參數(shù)編碼是從語音波形信號(hào)中提取生成語音的參數(shù),使用這些參數(shù)通過語音生成模型重構(gòu)出語音,使重構(gòu)的語音信號(hào)盡可能地保持原始語音信號(hào)的語意。也就是說,參數(shù)編碼是把語音信號(hào)產(chǎn)生的數(shù)字模型作為基礎(chǔ),然后求出數(shù)字模型的模型參數(shù),再按照這些參數(shù)還原數(shù)字模型,進(jìn)而合成語音。
????參數(shù)編碼的編碼速率較低,可以達(dá)到2.4 kbit/s,產(chǎn)生的語音信號(hào)是通過建立的數(shù)字模型還原出來的,因此重構(gòu)的語音信號(hào)波形與原始語音信號(hào)的波形可能會(huì)存在較大的區(qū)別、失真會(huì)比較大。而且因?yàn)槭艿秸Z音生成模型的限制,增加數(shù)據(jù)速率也無法提高合成語音的質(zhì)量。不過,雖然參數(shù)編碼的音質(zhì)比較低,但是保密性很好,一直被應(yīng)用在軍事上。典型的參數(shù)編碼方法為L(zhǎng)PC(Linear Predictive Coding,線性預(yù)測(cè)編碼)。

混合編碼
????混合編碼是指同時(shí)使用兩種或兩種以上的編碼方法進(jìn)行編碼。這種編碼方法克服了波形編碼和參數(shù)編碼的弱點(diǎn),并結(jié)合了波形編碼高質(zhì)量和參數(shù)編碼的低編碼速率,能夠取得比較好的效果。

編碼格式

PCM編碼

????PCM是Pulse Code Modulation的縮寫。上一篇我們提到了PCM大致的工作流程,我們現(xiàn)在不需要關(guān)心PCM最終編碼采用的是什么計(jì)算方式,我們只需要知道PCM編碼的音頻流的優(yōu)點(diǎn)和缺點(diǎn)就可以了。PCM編碼的最大的優(yōu)點(diǎn)就是音質(zhì)好,最大的缺點(diǎn)就是體積大。
????PCM被約定俗成為無損編碼,是相對(duì)于mp3,aac編碼的。相對(duì)自然界的信號(hào),音頻編碼最多只能做到無限接近(至少目前的技術(shù)只能這樣),任何數(shù)字音頻編碼方案都是有損的,因?yàn)闊o法完全還原。在計(jì)算機(jī)應(yīng)用中,能夠達(dá)到最高保真水平的就是PCM編碼,被廣泛用于素材保存及音樂欣賞,CD、DVD以及我們常見的WAV文件中均有應(yīng)用。PCM代表了數(shù)字音頻中最佳的保真水準(zhǔn),但是并不意味著PCM就能夠確保信號(hào)絕對(duì)保真,PCM也只能做到最大程度的無限接近。

Opus編碼

????Opus是一個(gè)有損聲音編碼的格式,Opus的前身是celt編碼器。是由IETF開發(fā),適用于網(wǎng)絡(luò)上的實(shí)時(shí)聲音傳輸,標(biāo)準(zhǔn)格式為RFC6716。使用上沒有任何專利或限制。
????在當(dāng)今的有損音頻格式爭(zhēng)奪上,擁有眾多不同編碼器的AAC格式打敗了同樣頗有潛力的Musepack、Vorbis等格式,而在Opus格式誕生后,情況似乎不同了。通過諸多的對(duì)比測(cè)試,低碼率下Opus完勝曾經(jīng)優(yōu)勢(shì)明顯的HE AAC,中碼率就已經(jīng)可以媲敵碼率高出30%左右的AAC格式,而高碼率下更接近原始音頻。
????簡(jiǎn)單來說,opus是一個(gè)高保真的適合在網(wǎng)絡(luò)中傳輸?shù)拈_源的語音編碼格式,相對(duì)于其他編碼格式來講,保真性更好,但體積會(huì)稍微大一些。
Opus官網(wǎng)地址:http://www.opus-codec.org/

OGG編碼

????OGG全稱是OGG Vorbis,是一種新的音頻壓縮格式。OGG是一個(gè)龐大的多媒體開發(fā)計(jì)劃的項(xiàng)目名稱,將涉及視頻音頻等方面的編碼開發(fā)。整個(gè)OGG項(xiàng)目計(jì)劃的目的就是向任何人提供完全免費(fèi)多媒體編碼方案!OGG的信念就是:OPEN!FREE!Vorbis這個(gè)詞匯是特里·普拉特柴特的幻想小說《Small Gods》中的一個(gè)"花花公子"人物名。這個(gè)詞匯成為了OGG項(xiàng)目中音頻編碼的正式命名。目前Vorbis已經(jīng)開發(fā)成功,并且開發(fā)出了編碼器。
????和MP3一樣,Ogg Vorbis是一種靈活開放的音頻編碼,能夠在編碼方案已經(jīng)固定下來后還能對(duì)音質(zhì)進(jìn)行明顯的調(diào)節(jié)和新算法的改良。因此,它的聲音質(zhì)量將會(huì)越來越好,和MP3相似,Ogg Vorbis更像一個(gè)音頻編碼框架,可以不斷導(dǎo)入新技術(shù)逐步完善。和MP3一樣,OGG也支持VBR。

AAC編碼

????AAC,全稱Advanced Audio Coding,是一種專為聲音數(shù)據(jù)設(shè)計(jì)的文件壓縮格式。與MP3不同,它采用了全新的算法進(jìn)行編碼,更加高效,具有更高的“性價(jià)比”。利用AAC格式,可使人感覺聲音質(zhì)量沒有明顯降低的前提下,更加小巧。
????AAC本身編解碼器質(zhì)量非常高。作為一種高壓縮比的音頻壓縮算法,AAC通常壓縮比為18:1??(也有資料說為20:1),但是還能保存較好的音質(zhì)。在后面的文章《Android 音視頻之音頻錄制》中,我用demo驗(yàn)證過,1分鐘錄制的音頻文件只有101KB的大小,想比較pcm數(shù)據(jù),的確被壓縮很多。

編碼比較

????之前文章中介紹過。目前市場(chǎng)編解碼器性能比較Opus > Vorbis > AAC 。我們先來看一張音頻編碼器的性能對(duì)比圖:


????注意,圖中綠色線條是免費(fèi)的,開源的;藍(lán)色線條是免費(fèi)的,但是不開源的;紅色線條是收費(fèi)的,不開源的
????圖中我們可以很直觀的看到,Opus編碼從低碼率到高碼率上都是支持的,并且在高碼率上也是略強(qiáng)于AAC和Vorbis編碼的。而且相比較在64kb/s上的G.711編碼,Opus的質(zhì)量是遠(yuǎn)遠(yuǎn)高于他的。
????AAC編碼在2000年之后也新添加了一些技術(shù)算法,使他在低碼率上也能較好的支持。之后我會(huì)在《Android 音視頻之AAC編碼》中著重介紹AAC,有興趣的伙伴可以關(guān)注一下。

上一篇:Android 音視頻之音頻入門講解

有問題的地方請(qǐng)大家?guī)兔χ赋觯x謝。
持續(xù)更新中...

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,936評(píng)論 6 535
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,744評(píng)論 3 421
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,879評(píng)論 0 381
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,181評(píng)論 1 315
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,935評(píng)論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,325評(píng)論 1 324
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,384評(píng)論 3 443
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,534評(píng)論 0 289
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,084評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,892評(píng)論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,067評(píng)論 1 371
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,623評(píng)論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,322評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,735評(píng)論 0 27
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,990評(píng)論 1 289
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,800評(píng)論 3 395
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,084評(píng)論 2 375

推薦閱讀更多精彩內(nèi)容