淺談語音質量保障:如何測試 RTC 中的音訊質量?
日常音影片開會中我們或多或少會遭遇這些場景:“喂喂喂,可以聽到我說話嗎?我聽你的聲音斷斷續續的”,“咦,我怎麼可以聽到回聲?”,“太吵啦,我聽不清楚你在說啥” 等等。這些語音質量問題影響音影片開會體驗,如若是重要的會議,那足夠讓人 “惱羞成怒”。那麼如何有效的減少這些問題發生呢?本系列文章就將為大家分享阿里雲影片雲在保障 RTC 語音質量方面的測試經驗。
作者|柯淮
審校|泰一
背景介紹
音訊質量是指正常網路下的聽覺質量和音訊 3A 演算法質量。聽覺質量,是在無損網路情況下人耳對語音優劣的主觀感受。但在實際生活中,不同人對同一聲音可能會有不同的優劣判斷,另外還會受到收聽環境和收聽心理影響。在測試時,我們可以從聲音三要素:響度、音高、音色緯度出發,對一些指標進行量化評估。另外業內標準還會將這些量化指標透過一定的加權處理以期望擬合主觀感受,比如 POLQA、PESQ 等。
音訊 3A 演算法是指:
AGC: Automatic gain control(自動增益控制)
ANS: Adaptive noise suppression(噪聲抑制)
AEC: Acoustic echo cancellation(回聲消除)
這部分內容公眾號中已有較多文章較詳細介紹原理及實現,這裡不再贅述。
往期文章
詳解 WebRTC 高音質低延時的背後 — AGC(自動增益控制)
硬貨專欄 |深入淺出 WebRTC AEC(聲學回聲消除)
本系列文章將從音訊質量、適配測試、Qos 質量、自動化方案四個維度去介紹阿里雲影片雲如何保障 RTC 語音質量,本文先介紹音訊質量部分(正常網路下的聽覺質量和音訊 3A 演算法質量)。
RTC 語音測試鏈路拆解
在正式測試前,我們先了解 RTC 語音傳輸的整個鏈路框架圖,聲音透過麥克風採集,而後上行音訊演算法進行前處理,編解碼傳輸後透過揚聲器播放出來。若想測試上行音訊演算法可在(1)處輸入聲音,而後在(2)處拉取輸出音訊進行分析。系統測試時,我們往往從端到端角度評估,即從(1)處輸入聲音而後在(4)拉取聲音進行分析,本文後續測試方法均基於端到端。
音訊質量測試方案
阿里雲影片雲採用業內常用的客觀指標 + 主觀評價相結合的方法來保障音訊質量,具體指標請參考下圖:
客觀測試方法
有效頻寬
Line in 輸入掃頻檔案 +48K 取樣率的人聲音訊(音訊素材參考如下),Line out 錄製輸出音訊,透過頻率分析讀取有效頻寬;
端到端延遲
方法一:使用 VQT 測試,測試結果中輸出延遲時間。
方法二:自研。Line in 測試素材,Line out 錄製未經過傳輸及輸出音訊,計算音訊延遲時間。
- 測試素材:一段連續的單音。
- 指標計算:錄製檔案中讀取未經過傳輸的音訊起始時間記為 t1,讀取經過會議傳輸的音訊起始時間記為 t2,則 Delay=t2-t1。
ANS
考察 ANS 演算法在純噪聲和語噪混合場景下的表現,分析指標包含:降噪一致性、訊雜比提升、收斂時間、消噪後人聲音質。
測試拓撲
透過音量 Line in 或者外放輸入背景素材及語音素材,在拉流端 Line out 錄製輸出音訊進行指標分析。
測試素材
指標計算
訊雜比提升:求取經過消噪後音訊的訊雜比為 A,則訊雜比提升值 =A- 輸入訊雜比。
降噪一致性:計算各種噪聲輸入後噪聲的殘留值,並統計各種噪聲下噪聲殘留是否一致。
收斂時間:記錄噪聲能量開始下降的時間為 t1,記錄噪聲已收斂至平穩的初始時間 t2,收斂時間 =t2-t1。
音質:改造 VQT POLQA 測試指令碼,計算不同訊雜比輸入下輸出音訊 MOS 分。下表展示輸入訊雜比為 10dB 帶噪人聲,輸出音訊音質 MOS 分:
AGC
考察 AGC 演算法在不同音量下表現,分析指標包括:聲音平穩性、輸出響度。
測試拓撲
參考 ANS 測試拓撲圖,透過音量 Line in 或者外放輸入語音素材,在拉流端 Line out 錄製輸出音訊進行指標分析。
測試素材
指標計算
- 聲音平穩性:計算輸出音訊各音量段的平均 RMS,而後求解這個輸出音訊的平均 RMS 的方差。如下是平均 RMS 的計算公式:
輸出響度:Line out 方式計算輸出音訊的平均 RMS;外放方式使用標準聲壓計,以 A 計權方式記錄響度值。
音質:改造 VQT POLQA 測試指令碼,計算不同音量輸入下輸出音訊 MOS 分。下表展示大中小音量輸入下,輸出音訊音質 MOS 分:
AEC
考察 AEC 演算法單講和雙講場景下是否存在漏回聲、人聲抑制等問題。
測試拓撲
【單講】
推流端播放單講語音素材,拉流端預設配置放在空曠會議室中。Line out 錄製推流端的輸出,判斷拉流端是否存在漏回聲。
【雙講】
同時向推流端和拉流端播放雙講測試素材,Line out 錄製推流端的輸出,判斷拉流端是否存在漏回聲和人聲抑制。
同時向推流端和拉流端播放雙講測試素材,Line out 錄製推流端的輸出,判斷拉流端是否存在漏回聲和人聲抑制。
測試素材
指標計算
漏回聲:讀取錄製音訊檔案的人聲殘留量,理論上該處值為 0- 沒有漏回聲。
人聲抑制:雙講場景下評估此指標。利用 3gpp TS 26.132 標準評價剪下情況,最終評價以 D 類(連續剪下大於 150ms)為標準,值越接近於 0 質量越好。
收斂時間:測試開始時間記為 t1,AEC 收斂完成無漏回聲出現時間記為 t2,收斂時間 =t2-t1。
人聲音質:雙講場景下評估此指標。改造 VQT POLQA 測試指令碼,計算雙講場景下人聲的音質得分。
STOI
短時客觀可懂度,當前學術上比較精確,可靠的客觀評估方法來計算語音可懂度,客觀測試結果可以一定程度上反映語音可懂性和自然性。存在侷限性:需降取樣到 16K 進行計算。
- 測試拓撲:參考 ANS 測試拓撲。
- 測試素材:ITU-P863 提供標準人聲素材。
- 指標計算:如下框架圖展示了 STOI 計算流程,當前業內已有 matlab 和 python 對該演算法的工程實現。
POLQA
ITU-T P.863 提供測試方法,可得到 MOS 分和音訊延遲。支援 8K、16K、48K 測試,侷限性是裝置貴。
- 測試拓撲:參考 ANS 測試拓撲。
- 測試素材:ITU-P863 提供標準人聲素材 &VQT 內建語音測試素材。
- 指標計算:POLQA MOS 分。
PESQ
ITU-T P.862 提供測試方法,可得到 MOS 分,侷限性是僅可支援 8K 和 16K。
- 測試拓撲:參考 ANS 測試拓撲。
- 測試方法:測試素材:ITU-P863 提供標準人聲素材。
- 指標計算:PESQ MOS 分
主觀測試方法
採用 “YD/T 2309 音訊質量主觀測試方法(ITU-R BS.1284)” 中提及的評分規則和維度,在不同場景下為專家和普通使用者進行打分測試。
評分方法
評價維度
測試場景
測試素材採用 “惠威試音碟” 和 “TUT-acoustic-scenes-2017-development”。
本文為 RTC 音訊測試系列的第一篇,後續我們將從適配測試、Qos 質量、自動化方案的維度去介紹阿里雲影片雲如何保障 RTC 語音質量,歡迎關注公眾號「影片雲技術」。
「影片雲技術」你最值得關注的音影片技術公眾號,每週推送來自阿里雲一線的實踐技術文章,在這裡與音影片領域一流工程師交流切磋。公眾號後臺回覆【技術】可加入阿里雲影片雲產品技術交流群,和業內大咖一起探討音影片技術,獲取更多行業最新資訊。
相關文章
- RTC 音訊質量評價和保障音訊
- 小談音視訊質量檢測
- 實時語音如何過質量關?
- 淺談質量屬性
- 【音視訊專題】音訊質量評估方法那些事音訊
- 音訊質量評估及音訊處理常用功能音訊
- 【質量視角】可觀測性背景下的質量保障思路
- 實時音視訊質量評估方案
- 面試題:如何權量測試版本的質量?面試題
- [測試平臺] 全流程客戶端測試質量保障客戶端
- 如何保障數倉資料質量?
- 貨拉拉服務端質量保障之測試策略篇服務端
- 如何保障前端專案的程式碼質量前端
- 訊號質量測試的最佳選擇!眼圖測試!
- 音視訊技術:視訊質量評價方法簡介
- 精準測試:如何判斷兩次測試中哪次的質量更好?
- 今日的質量,明日的市場--談談軟體登記測試
- 漫談專案質量保障——協作流程優化優化
- 淺談資料倉儲質量管理流程
- 談談如何提升應用釋出的質量?
- js抖音電商推行內容質量分級,處理低質短視訊JS
- 談談資料質量管理
- Go工程管理 18 | 質量保證:通過測試保證質量Go
- NQI國家質量基礎設施改善企業質量保障能力
- 測試Gpt的質量外掛,挺好的GPT
- 文章質量檢測工具怎麼提高文章質量?提高質量有什麼方法?
- 寫好測試,提升應用質量
- 依圖在實時音視訊中語音處理的挑戰丨RTC Dev Meetupdev
- Milvus 2.0 質量保障系統詳解
- 有贊資料質量保障體系
- QQ音樂音質加密加密
- 如何做好質量管理、提高研發的程式碼質量?
- 談談資料質量管理中的5個關鍵要素
- JAMA:研究發現音樂可以改善健康和生活質量
- win10語音音質變差如何解決_升級win10後電腦音質變差了的解決方法Win10
- 快代理代理IP測試,最新代理IP質量測試
- 軟體測試學習教程—軟體測試質量
- 淺談H5音訊處理(更多談談錄音方向的內容)H5音訊