評估與測試體系是音視頻通話技術(shù)的質(zhì)量關(guān)鍵
騰訊音視頻實驗室于2016年成立,它專注于音視頻的前瞻性研究,依托于QQ的海量平臺,在音視頻實時通訊和直播領(lǐng)域有著十多年的研究和豐富的經(jīng)驗。音視頻實時通信、音視頻直播、圖像處理、視頻處理和語音處理等技術(shù)水平在業(yè)內(nèi)已屬于領(lǐng)先水平,并正式開放自研的SPEAR音視頻引擎,將更多特性帶給開發(fā)者。目前QQ用戶每天的音視頻通話時長達12億分鐘,基于騰訊云平臺下,服務(wù)130+家客戶。
100個人心中有100個哈姆雷特,音視頻質(zhì)量協(xié)調(diào)是如此,有的人喜歡重低音帶來的震撼,有的人喜歡高還原帶來的真實。這就引入了另外一個問題,就是在可用資源有限的情況下,音視頻的維度是相互矛盾的,這種矛盾性使得我們做音視頻質(zhì)量評估時,標準變得非常模糊。最后是不確定性,影響音視頻質(zhì)量的因素有很多,燈光,網(wǎng)絡(luò)損傷,設(shè)備狀態(tài)等等,這些環(huán)境的隨機性引入了不確定性,給音視頻測試帶來了巨大的困難。
清晰度是衡量視頻通話質(zhì)量的重要因素,主觀測試方法會通過人眼的觀察,對畫面的清晰度進行對比打分,更進一步會觀察細節(jié),進行加權(quán)打分。對測試人員的辨識能力有一定的要求,如果測試量大的話,還需要考慮人員疲憊度對測試結(jié)果影響。如果清晰度差別并沒有達到一眼就能看出來的情況,那么主觀測試的結(jié)果參考性就會大大減弱,因此需要客觀測試進行輔助。
剛剛說了客觀測試可以作為主觀測試的一種輔助手段,讓數(shù)據(jù)更具說服力。然而,有些測試,主觀難以完成,必須借助客觀測試的手段。例如我們要講的音頻端到端延時測試,音視頻通話是一種溝通行為,對實時性有較高的要求。設(shè)備的采集和渲染,引擎中各種信號處理,還有ARQ重傳、FEC、Jitter Buffer等等網(wǎng)絡(luò)抗性算法,都會引入延時,我們需要關(guān)注用戶真正體驗到的延時。
測試模型中,把音頻信號輸入給終端A,終端B收到對應(yīng)的信號,再進行采集,最后計算時間差。為了避免受到其他信號的干擾,我們采用的是計算互相關(guān)函數(shù)的方法來得到這個延時,通過查找互相關(guān)函數(shù)的最大值,可以得到兩個信號的偏移,再通過采樣率的關(guān)系最后得到時間差。
在一次測試的數(shù)據(jù)中看到,用延時來換取抖動抗性,對用戶體驗來說并不是非常友好。通過合理的安排主觀測試和客觀測試,去解決一部分主觀測試的問題,我們需要關(guān)注不同產(chǎn)品和環(huán)境下音視頻的情況,就要盡量消除環(huán)境的不確定性給音視頻測試帶來的困難。
在實際應(yīng)用中,發(fā)現(xiàn)操作起來會遇到非常多的問題,音視頻質(zhì)量存在著太多的不確定性。因為環(huán)境的多樣性和動態(tài)性,我們需要對環(huán)境變量進行精確的控制,需要有一個相對專業(yè)的實驗室環(huán)境來進行音視頻相關(guān)的技術(shù)測試。
一個基本的音視頻測試實驗室應(yīng)該具備哪些條件呢?我們需要精確控制燈光,通過燈光設(shè)備來精確控制照度和色溫。需要精確控制聲音的輸入,因此,我們需要一個隔音室,用來隔絕外部的聲音以及內(nèi)部產(chǎn)生的回聲,并且模擬不同的聲音場景。我們還需要精確控制網(wǎng)絡(luò)損傷,在測試網(wǎng)絡(luò)抗性的時候,通過高精度的網(wǎng)絡(luò)損傷設(shè)備模擬不同的場景。
互聯(lián)網(wǎng)音視頻通話離不開網(wǎng)絡(luò)傳輸,網(wǎng)絡(luò)非常復(fù)雜,包括了網(wǎng)絡(luò)損傷的時變性,音視頻通話中不能像其他業(yè)務(wù)那樣靜態(tài)地看待網(wǎng)絡(luò)損傷,如何實時探測網(wǎng)絡(luò)損傷的變化,以及如何應(yīng)對,這是非常重要的問題。
常見的網(wǎng)絡(luò)損傷包括丟包,延時,抖動,帶寬受限。其中丟包又分為固有丟包、擁塞丟包、隨機丟包、連續(xù)丟包、持續(xù)丟包、突發(fā)丟包,這些應(yīng)對方法都不一樣,作為測試,需要收集不同的模型。抖動就是網(wǎng)絡(luò)延時的變化,由于音視頻通話的實時性和時續(xù)性,抖動對通話質(zhì)量影響非常大,處理抖動的方法就是引入Jitter Buffer。帶寬的適應(yīng)性是網(wǎng)絡(luò)流通一大難點,需要不影響通話質(zhì)量的前提下實時探測帶寬。傳統(tǒng)的帶寬探測方法很明顯不適用了,測試的時候需要關(guān)注帶寬探測的準確度,適應(yīng)速度,以及帶寬的利用率,還有碼率平穩(wěn)度等等。另外還需要關(guān)注復(fù)合場景,我們需要不斷在現(xiàn)網(wǎng)的技術(shù)運營中豐富復(fù)合場景模式。
實驗室測試的結(jié)果可以明確的指出缺陷的存在,并且指導(dǎo)優(yōu)化的方向。因此,我們在真實環(huán)境中驗證最終結(jié)果,但是在研發(fā)過程中,更加推薦實驗室測試。在現(xiàn)網(wǎng)真實環(huán)境中,我們應(yīng)該如何對音視頻質(zhì)量進行監(jiān)控呢?下面介紹矛盾與平衡,騰訊音視頻實驗室正在使用的綜合性指標,并結(jié)合EVA分享一下線上質(zhì)量控制和數(shù)據(jù)分析的方案。
為了真正做到線上衡量音視頻通話質(zhì)量,我們需要一個綜合各維度的結(jié)果型的數(shù)據(jù),因此提出了無參考評估模型,EVA。首先解釋一下什么叫無參考評估模型,與之對應(yīng)的是全參考評估,就是可以拿原信號做參考,常見的算法有PSNR,SSIM,PESQ,POLQA等等,通常來講,全參考評估的準確性比較高,實驗室測試中也經(jīng)常使用。然而在很多情況下,實驗人員并沒有辦法拿到原信號進行參考,需要在只有被測信號前提下對質(zhì)量進行評估,EVA就是這樣一套無參考評估。
僅通過QP無法完全表征視頻質(zhì)量對于人眼的感受,因此需要引入內(nèi)容特征的空域復(fù)雜度和時域復(fù)雜度作為輸入。考慮到計算的復(fù)雜度,需要使用1幀大小以及運動向量mv,結(jié)合編碼分辨率和QP來擬合空域復(fù)雜度和時域復(fù)雜度。作為視頻,單幀質(zhì)量是遠遠不夠的,因此騰訊音視頻實驗室引入了幀渲染間隔作為輸入,用來表征幀率,幀率抖動,以及卡頓,對視頻通話質(zhì)量的影響。
最后一個參數(shù)是延時,這是溝通質(zhì)量的特征,延時對通話質(zhì)量的影響要視具體的應(yīng)用場景而定,例如音視頻實時通話和直播,明顯是不一樣的。是否有音視頻層面的互動,決定了單向延時還是雙向延時。
騰訊音視頻實驗室通過EVA的數(shù)據(jù)上報,來監(jiān)測質(zhì)量進行分時分區(qū)域的變化情況。還有一個最重要的應(yīng)用,就是可以做A/B Test,在后臺發(fā)布兩種不同的流控策略,通過EVA數(shù)據(jù)來判斷兩種策略的效果。如圖所示,藍色曲線和紅色曲線分別代表兩種策略,通過EVA數(shù)據(jù)可以看到藍色的效果遠遠優(yōu)于紅色,最后藍色策略。
線上質(zhì)量評估僅僅從全局維度是不夠的,全網(wǎng)質(zhì)量分析可以幫助了解大盤,宏觀評估音視頻質(zhì)量優(yōu)化的效果,但是回到具體問題的解決,還是需要個例進行分析,為此騰訊音視頻實驗室開發(fā)了一套線上實時單例的監(jiān)控系統(tǒng),以及線下分析系統(tǒng),以秒為單位去分析音視頻質(zhì)量。
最后對這次分享做一下總結(jié),這次分享圍繞騰訊音視頻實驗室在音視頻質(zhì)量評估的三大痛點的思考和實踐,來側(cè)面介紹了騰訊音視頻質(zhì)量評估的整個體系。對于主觀性,首先要肯定主觀測試的重要性,當主觀測試無法滿足需求的時候,配合客觀測試的方法進行評估。對于不確定性,需要對測試環(huán)境進行精確的把控,減少不確定性因素,最后在真實環(huán)境中驗證最終結(jié)果。對于矛盾與平衡,需要一套綜合評價的數(shù)據(jù),結(jié)合其他維度的數(shù)據(jù)來建立全局和單例的數(shù)據(jù)分析和線上監(jiān)控。