aac和mp3在碼率壓縮的一些事

最近公司App用戶反饋,我們使用的mp3文件太耗流量。顯然是我們mp3的體積太大。 怎麼處理?

  • 我們準備了一個20分鐘的音頻原文件
  • 準備一個音頻處理軟件(Mac版) Adobe Audition CC 2017 密碼:2uqj

下面我們看一個表格,這個表示對比,這是我對統一音頻,進行壓縮對比後的結果。


文件類型 格式 碼率 大小 音質變化程度
原文件 mp3 52.9M 不明顯
第三方 mp3 192kbps 31.7M 不明顯
測試1 mp3 192kbps 31.8M 不明顯
測試2 acc 192kbps 32.1M 不明顯
測試3 mp3 128kbps 21.2M 不明顯
測試4 acc 128kbps 21.5M 不明顯
測試5 mp3 96kbps 15.9M 不明顯
測試6 acc 96kbps 16.3M 不明顯
測試7 mp3 64kbps 10.7M 高音消失,高音稍微變化
測試8 acc 64kbps 11.0M 稍微有變化,可以忽略
測試9 mp3 32kbps 5.4M 音調色音調變化明顯
測試10 acc 32kbps 5.50M 音質變化可聽出
測試11 mp3 20kbps 3.4M 聲音變化明顯,聲音變低沉
測試12 acc 20kbps 3.50M 音質相對變差,稍有影響

  1. 現在我們講解下表格,有表格可以看出,我們現場錄製的22分鐘原文件的mp3大小是52.9M,這個體積已經很大了。

  2. 第三方壓縮提供個我們線上的mp3大小是31.7M。(ps:其實也不小)

  3. 那我自己用軟件壓縮,不同的碼率,壓縮後,體積依次減小。
  4. 現在可以看出,我們52.9M的文件可以被壓縮到3.4M

那麼問題來了,我們爲什麼不直接壓縮到3.4M呢,這樣體積小,加載快,省流量,省時間。其實問題很簡單,小體積,音質差啊,不能讓用戶聽硬質太差的音頻啊。那什麼是合理區間呢?

下面我們看看mp3壓縮後,圖譜變化:

  • MP3:192kbps:如圖發生範圍超過10KHz,高音區保存完整。
    192kbps的mp3圖譜

  • MP3:128kbps:如圖發生範圍超過10KHz,高音區保存完整,看不錯區別。
    128kbps的mp3圖譜

  • MP3:64kbps:我們跳過96kbps,直接看64kbps,如圖發生範圍超過10KHz,高音區部分丟失,10KHz的地方有一條齊齊的線,有點像小草苗被割草機去掉了頭,長的高的,腦袋沒有了,如果看不清,請看下面20kbps的。
    這裏寫圖片描述

  • MP3:20kbps:如圖發生範圍超過10KHz,高音區失去了,在4kHz的以上的頻率全部被捨棄,保留了4KHz以下的音頻信息,這個更像被割過的小草吧,腦袋一個不剩,齊刷刷的。被割去的就是高音部分,所以聽着聲音是低沉的,高音不存在了。
    這裏寫圖片描述

看完了mp3的,我們來看看aac的把,

  • AAC:192kbps:如圖10KHz左右都保存完好,音質無變化。
    這裏寫圖片描述

  • AAC:64kbps:如圖我們跳過128kbps,96kbps,直接到64kbps,還記得我們MP3的64kbps嗎?MP3在10KHz以上的部分有失去信息,而AAC保存了下來。
    這裏寫圖片描述

  • AAC:20kbps:如圖我們跳到了20kbps,高音區忍讓有所保留,所以音質變化不太明顯,相比MP3的變化就很明顯,因爲失去了大量的高音區。
    這裏寫圖片描述

那麼爲什麼回事這樣的,這個與MP3和AAC的壓縮算法有關,壓縮,一定是要失去一部分信息的,也就是我們把192kbps的信息在單位時間內壓縮到20kbps,也就是我們所說的碼率懂192降到了20,所以我們文件的體積從30M減少到了3M多,碼率降低10倍,體積也降低10倍。碼率降低一定是會失去音頻寫的的信息的,但是因爲壓縮算法不同,拋棄的信息就不同。那aac在壓縮10倍後,音質是不是沒有變差,不是的,音質也差了,但是相比MP3不是那麼明顯。如果用耳朵去聽,64kbps的AAC和92kbps的音質區別,很難分辨出來,或者說分辨不出。

那麼如果你是聽音樂,爲了更好的聽覺體驗,建議192kbps-128kbps的文件,當然再大點也沒問題。這樣可以儘量保存完整的低音和高音信息,可以帶來更好的聽覺體驗。不建議使用128kbps以下的MP3或者AAC,或丟失音樂信息。

那麼演講或者課程類的語言文件呢?這個要看人所能聽到的頻率範圍。那一個人能聽到的頻率範圍是多少呢?

28歲時,22——17000Hz
40歲時,25——14000Hz
60歲時,35——11000Hz

可以看出一個人能聽到的頻率是在:20 —20KHZ,所以我們10kHz左右的信息是不可以失去的,如果大量失去,我們就能感知到。

結論

我們說了這麼多,總要有個結論吧,對於我們APP而言,是在線語音課程,所以我們兩者都要兼顧,要文件儘可能小,並且要保真音質不會發生明顯變化,我們確定選擇64kbps的AAC文件作爲我們播放的格式。這個參數下,我們的音頻課程音質變化不明顯,音質可以兼顧到,提交從50M的原文件被壓縮到了10M,相當於2分鐘的音樂用1M的大小,這樣大大節省了用戶的流量。並最大可能保證音質。(ps:如果你們覺得只要音質不保險,那96kbps,最夠保險了;如果是MP3,那就用96kbps吧,如果質量優先,體積第二,那就128kbps吧)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章