SoundStream VS Lyra: 谷歌今年新推出的兩款AI音頻編解碼器有何不同?

點擊上方“LiveVideoStack”關注我們


作者  | Teresa、王晶
技術審校 | 王晶、王立衆


SoundStream

 影音探索

#001#



近日,谷歌又推出了一款基於人工智能的音頻編解碼器—— SoundStream ,它是一款端到端的神經音頻編解碼器,可以提供更高質量的音頻,同時編碼不同的聲音類型,包括乾淨的語音、嘈雜和混響的語音、音樂和環境聲音。並且,谷歌宣佈這是第一個支持語音和音樂的AI編解碼器,同時能夠在智能手機CPU上實時運行。

 

早在今年2月份的時候谷歌就已推出了 Lyra ,一種用於低比特率語音的編解碼器,也是基於人工智能對音頻進行壓縮的(我們在《在3kbps的帶寬下還能清晰地語音聊天?》這篇文章中介紹過,大家可以回顧一下)。並在4月份,谷歌宣佈對Lyra Android版進行開源,我們正好通過郵件採訪到了負責這個項目的產品經理Jamieson Brettle以及主管工程師Jan Skoglund(採訪內容大家可以查看《Google Lyra Android版開源 支持3kbps語音聊天》)。


SoundStream V.S. Lyra


現在時隔4個月,谷歌新推出的SoundStream與其之前發佈的Lyra又有什麼不同呢?


1.網絡條件


首先,Lyra強調的是即使在惡劣的網絡條件下,也能進行清晰的實時語音通信。所以它更關注在窄帶通信情況下的語音傳輸。(Lyra在3kbps帶寬下對比Opus@6kbps,語音輸出的質量效果明顯優於後者)

 

而SoundStream不僅關注低比特率傳輸帶寬,並且能在廣泛的比特率範圍內提供高質量的音頻輸出。(這裏列出了Lyra與SoundStream同樣在3kbps帶寬下,對語音和音樂的處理對比示例)


語音:




 

音樂:





這裏可以明顯感受到在比特率(3kbps)相同的網絡條件下,無論是語音還是音樂,SoundStream的輸出效果都更優於Lyra。另外,谷歌還表示比特率爲3kbps的SoundStream的語音質量要優於12kbps的Opus,並且接近9.6kbps的EVS,而與此同時它的壓縮效率還提升了3.2-4倍,這意味着在使用SoundStream進行音頻編碼時可以輸出與Opus和EVS同樣的音頻質量,而所使用的傳輸帶寬量卻比這二者要低得多。

 

2.編解碼器架構


在聽完SoundStream和Lyra在相同網絡條件下音頻效果的對比後,我們來聊一聊二者的架構有何不同。儘管谷歌將SoundStream作爲Lyra的一個擴展版本,但它們在壓縮音頻的過程中卻有很大的區別。

 

  • SoundStream


SoundStream 模型架構圖

 

簡單來說,SoundStream由包含編碼器、解碼器和矢量量化器的神經網絡組成,都是以端到端的模式去訓練。神經編碼器將輸入的音頻流轉換爲編碼信號,再使用特定的矢量量化器進行流數據壓縮,最後使用解碼器將其轉換回音頻。SoundStream主要創新點在於使用了殘差矢量量化器(Residual Vector Quantizers, RVQ)進行數據壓縮,全卷積編碼器所生成的向量會帶有無限的數量值,爲了使得其能夠以有限數量的比特流傳輸到解碼器進行解碼,必須進行矢量量化,而簡單的矢量量化解決不了3 kbps的情景下的超量的碼本存儲問題,所以SoundStream團隊提出的RVQ從第二層開始,每一層都處理前一層的殘差,實現層級遞進的量化過程,不同數量層的RVQ可以在不同程度上大幅度減少碼本的大小,由於量化層可擴展,研究者也可以分別通過添加或刪除量化層來輕鬆增加或減少比特率。在模型訓練過程中,SoundStream採用重構損失和對抗損失的組合損失函數對模型參數進行優化,計算損失函數組合的鑑別器使恢復的聲音儘可能接近原始未壓縮音頻。一旦訓練完成,編碼器和解碼器都能夠在單獨的客戶端上運行,並通過網絡去高效地傳輸高質量音頻。所以在模型推理部署上,編碼器和矢量量化器在發送端,發送壓縮後的比特流到接收端,然後接收端的解碼器再對音頻信號進行解碼形成高質量音頻。

  

  • Lyra

Lyra 模型架構圖

 

Lyra的架構相對來說比較簡單。它主要是由編碼器和解碼器組成,與傳統的參數音頻編解碼器非常相似。不同的是它會每40ms從輸入的語音中提取一次特徵或獨特的語音屬性,然後對其進行量化,最後通過生成模型對這些量化後的語音特徵來重新創建語音信號,輸出音頻。Lyra旨在提取少量的語音數據來重建語音,並在保證低比特率的同時實現高質量的語音傳輸。另外,谷歌推出的新生成模型也是Lyra中的一大亮點。這裏用到的新生成模型是一種低成本的遞歸生成模型,是一種WaveRNN的變體,它以較低的速率工作,但在不同的頻率範圍內能夠並行生成多個信號,然後在特定的採樣率下將這些信號合併成單個輸出信號。此生成模型在數千小時的語音數據中進行訓練,並像WaveNet一樣進行優化,以準確地再現輸入音頻。

 

通過對SoundStream和Lyra在模型架構中的分析可以看出,SoundStream更注重在編碼端對編碼信號使用殘差矢量量化壓縮;Lyra則是既關注編碼端對語音特徵的提取,又關注解碼端使用生成模型重建語音。

 

從AI建模角度來看,Lyra主要通過生成模型重建高質量語音信號,而SoundStream借鑑了自編碼網絡,構建一種端到端的模型,兩者都是從數據驅動角度出發,不依賴於傳統的信號處理。Lyra目前看只是針對語音信號進行設計,而在SoundStream的框架下可以同時進行語音和音頻信號的壓縮和增強。

 

3.支持類型&目前情況


SoundStream相比Lyra有一些新的特點,例如壓縮效率更高,支持語音和音樂等多種類型信號,可同時兼顧壓縮和增強,尤其在低比特率下性能表現更好。Lyra則僅針對語音信號的處理。

 

目前,Lyra已對Android進行開源,而SoundStream仍處於試驗階段。谷歌計劃將SoundStream整合到下一個版本的Lyra 中,並認爲這種集成將利用現有的 API 和工具讓開發人員在他們的項目中獲得更好的音質和靈活性。

 

傳統 V.S. 人工智能音頻編解碼器


關於傳統音頻編解碼器與AI音頻編解碼器的最大區別在於前者依賴於傳統的數字信號處理技術和語音生成模型;後者是從數據驅動角度、從大批量聲音數據中學習和預測,因此AI音頻編解碼器很大程度上依賴於模型訓練與測試的完備性。

 

    小結


自從谷歌推出Lyra就引起業界的關注,尤其引起了AI語音編碼的研究熱點。其在3kbps的低比特率下表現出比傳統編碼器更優的性能,可以將音頻壓縮到3kbps左右而保持與其他音頻編解碼器類似的質量,屬於一種低比特率的神經網絡語音編碼器。

 

這次谷歌又推出的SoundStream仍然是基於神經網絡編碼方式,在低比特率下有優勢,是首個可以處理語音和音樂的AI編碼器。據谷歌的發佈情況看,它的複雜度應該有較大降低,可以運行在智能手機,推動了AI編碼器的實際應用。

 

SoundStream集成了Lyra在低比特率“語音”方面的能力,還具有對更多聲音類型的編碼支持,包括清晰的語音、嘈雜的語音、帶有回聲的語音、音樂和環境聲音等。在相同的比特率下,從谷歌目前的測試結果來看SoundStream的性能比當前版本的Lyra效果更好,並且優於同等比特率下的其它多種編解碼方式如Opus、EVS等,甚至超過傳統編碼器在更高速率下的效果。從文獻上來看,目前對SoundStream編碼器的性能測試使用最多的還是合成語音的數據庫,比較期待其對於手機語音通信等場景下的廣泛測試和對比結果。

 

未來是單純的數據驅動AI建模效果好,還是傳統信號處理與AI建模相結合的方式好,還有待於深入研究和廣泛測試。另外很期待看到SoundStream的實際應用表現。



參考文章:

 

https://ai.googleblog.com/2021/08/soundstream-end-to-end-neural-audio.html

 

https://ai.googleblog.com/2021/02/lyra-new-very-low-bitrate-codec-for.html

 

https://venturebeat.com/2021/08/12/googles-soundstream-codec-simultaneously-suppresses-noise-and-compresses-audio/

 

https://fossbytes.com/google-soundstream-neural-audio-codec/


特別說明:本文部分內容來自北京理工大學信息與電子學院 副教授,博士 王晶,併爲此文進行技術審校,特此感謝。此外,還要感謝業內人士 王立衆老師對本文進行技術審校。




掃描圖中 二維碼 或點擊 閱讀原文
瞭解大會更多信息


喜歡我們的內容就點個“在看”吧!

本文分享自微信公衆號 - LiveVideoStack(livevideostack)。
如有侵權,請聯繫 [email protected] 刪除。
本文參與“OSC源創計劃”,歡迎正在閱讀的你也加入,一起分享。

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