對于大部分海量視頻平臺和需要持續(xù)交付視頻服務的平臺而言,采取視頻自動化測試是唯一可行的選擇。在WebRTCon 2018期間,英特爾Intel? Collaboration Suite for WebRTC (面向WebRTC 的英特爾? 協(xié)同通信開發(fā)套件)客戶端測試架構負責人張琰彬接受了LiveVideoStack的采訪,詳細闡述了視頻視頻質量自動化測試的難點及應對方案。
LiveVideoStack:琰彬你好,音視頻服務交付涉及很多環(huán)節(jié),從音視頻采集、處理、傳輸、服務器處理,再通過網(wǎng)絡分發(fā)出去并在客戶端上顯示,這么長的鏈條如何自動化的分析和定位問題呢?難點分別有哪些?
張琰彬:我們要自動化首先要保證的就是測試結果的可重復性,從第一個點音視頻采集來說,我們采取了固定視頻代替隨機視頻的方式來確保視頻的固定,這個中間又出現(xiàn)了第二個問題就是怎么定位視頻幀,我們需要定位發(fā)送和接收視頻幀才能計算出精確的延時。此外,比如說現(xiàn)在通常用到的有參考評估相關視頻質量標準PSNR、SSIM、VMAF都依賴發(fā)送接收視頻序列定位等問題。
問題中說的處理傳輸和服務器處理,分發(fā)到客戶端這個幾個點,這其實是一個完整的音視頻傳輸通道的實現(xiàn),我們做評估系統(tǒng)的話一定是建立在現(xiàn)有的音視頻傳輸通道上的,所以我們?nèi)绾谓F(xiàn)有傳輸通道的兼容模塊,如何兼容現(xiàn)有傳輸通道但是又不能影響現(xiàn)有通道的性能是我們第三個要考慮的問題。
第四個問題是網(wǎng)絡模擬,因為我們通常說的各種視頻問題,可能出現(xiàn)問題的有幾個地方,一是發(fā)送方的處理,視頻采集和有損編碼,二是服務器處理模塊,特別是視頻會議模式,服務器可能會對視頻做編解碼、轉碼、混流等。三是發(fā)送接收方中間的網(wǎng)絡狀態(tài),我們需要建立一個精確的網(wǎng)絡模擬模型,包括各種網(wǎng)絡參數(shù),比如丟包和各種丟包方式,比如說隨機丟包,固定丟包,突發(fā)丟包等等。除此之外還有延時、抖動等都有各種精細分類,再就是如何精確的復現(xiàn)客戶實際網(wǎng)絡,比如不同時段的4G網(wǎng)絡狀態(tài)。
上述這些問題解決之后,我們還需要解決的難點和重點就是視頻自動評估,評估標準和評估方法的選擇,我們需要選擇哪些評估方法,有視頻幀相關的,有參考評估,無參考評估,還有描述當前場景的網(wǎng)絡因子,比如說端對端延時、實際傳輸帶寬、視頻抖動等,以便于提供足夠多的場景復現(xiàn)和結果量化數(shù)據(jù)。
LiveVideoStack:視頻質量評估分主觀測試和客觀測試,實現(xiàn)持續(xù)的自動化測試恐怕只能采用客觀測試的方法吧?
張琰彬:是的,要做全自動化,就意味著任何數(shù)據(jù)必須具備可重復性、量化的特點,這里我們可以先講解一下主觀測試和客觀測試。關于視頻質量評估本身,業(yè)界通常將評估方法分為兩種類別,一個叫做主觀評估,一種叫做客觀評估。
主觀評估,顧名思義就是人參與的人工評估,視頻主觀質量評價就是選擇一批非專家類型的受測者,讓他們參加一些培訓,至少是閱讀一些評估規(guī)范和標準比如說ITU-R BT.500 等,然后在一個特定的受控環(huán)境中,連續(xù)觀看一系列的測試序列大約10至30分鐘,然后采用不同方法讓他們對視頻序列的質量進行評分,最后求得平均意見分(Mean Opinion Score,MOS),并對所得數(shù)據(jù)進行分析。測試環(huán)境中的受控因素包括:觀看距離、觀測環(huán)境、測試序列的選擇、序列的顯示時間間隔等。
客觀評估通過一些評估標準來量化視頻質量,主要也分為兩類,一類是有參考評估,另一類是無參考評估。有參考評估就是依賴原始視頻和待評測視頻進行對比,目前比較熟知的就是PSNR、SSIM、VIF、VMAF、PEVQ 等。無參考評估,在判斷視頻質量時不需要來自原始參考視頻的任何信息,通過對失真視頻空域和頻域的處理分析來提取失真視頻的特征,或者基于視頻像素的質量模型等來得到視頻質量。這種評估標準適合與線上無原始參考視頻序列的無線和IP視頻業(yè)務,或者輸入和輸出差異化的模型,比如說視頻增強,視頻合并等場景。
整體來看 客觀和主觀視頻評估各有優(yōu)缺點。對于主觀評估,雖然可以直觀反應人對視頻的觀感,但是需要專業(yè)培訓的人員進行評估;而且隨機選取人員會導致主觀差異;時間和人力成本高;重復性低;數(shù)據(jù)缺乏參考性,很難做到精確計算延時,幀抖動等。對于客觀評估來說,可以數(shù)據(jù)量化,參考性高,可重復操作,可以精確計算時延,抖動測試,并進行自動化集成和監(jiān)控等。所以說如果要做全自動化測試,必須采取客觀評估。
LiveVideoStack:測試平臺如何獲得客戶端的視頻客觀質量數(shù)據(jù)的?
張琰彬:是這樣的, 如果聽了演講的同學應該就很清楚,我會介紹我們的自動化測試框架架構,這就是我們說的與原有視頻通道兼容模塊的任務,我們單舉一個有參考視頻質量評估信息來說,在發(fā)送的客戶端我們需要保存發(fā)送幀視頻信息,比如說每一幀定位信息,幀本身視頻信息,發(fā)送時間戳信息等。在接收方,我們同樣需要保存接收視頻幀信息,每一幀的定位信息以便于發(fā)送和接收幀定位,幀本身視頻信息,接收時間戳信息等。除此之外,我們要存儲的還有網(wǎng)絡因子,WebRTC 狀態(tài)因子等,配合視頻信息來計算視頻幀抖動、幀率、端對端延時等。這些信息并不是保存在客戶端本身的,而是通過額外的信令通道實時傳輸?shù)轿覀冑|量服務器端進行數(shù)據(jù)存儲,這樣在不影響本身視頻通道性能的同時,也便于分析模塊計算各種對比性能參數(shù)信息。
LiveVideoStack:在保證服務的可用性、用戶觀看體驗的同時,是否能夠通過測試服務來優(yōu)化服務成本?比如在維持可用性和用戶主觀體驗的同時,通過使用P2P CDN,優(yōu)化的編碼策略或新的Codec來降低成本?
張琰彬:測試服務核心的就是為了產(chǎn)品服務,無論你是在做實時視頻通信的這樣一個產(chǎn)品還是SDK 的提供方,我們常常會遇到各種視頻問題,對于測試來說,我們要思考怎么來發(fā)現(xiàn)這些問題,如何重現(xiàn)這些問題,如何自動來復現(xiàn),如何量化這些問題。那么對于整個團隊,包括研發(fā)和設計來說,拿到這些問題就可以思考出現(xiàn)這些問題怎么辦,怎么來優(yōu)化我們的產(chǎn)品,因為在實際產(chǎn)品實際中,在有限的資源比如帶寬條件下,我們是應該現(xiàn)考慮清晰度還是先考慮流暢度,不同的場景,不同的公司產(chǎn)品策略都可能給出不同的解決辦法,但是核心的一點就是我們需要這樣一個自動視頻評估體系,有足夠多的場景復現(xiàn)和結果量化數(shù)據(jù),才能給出合理的設計標準。
比如使用我們的自動化測試框架,我們曾經(jīng)評估過不同的Codec 之間,各種傳輸帶寬帶來的最終視頻質量性能對比,各種編碼在消耗多少帶寬的時候他們的視頻質量是均衡的,產(chǎn)品設計就可以針對不同的Codec 設置不同的標準帶寬。對于產(chǎn)品新增加的Codec, 在最后上線之前,我們也會做對比測試,對比現(xiàn)有的Codec 策略,各種參數(shù)是否有新的性能突破,帶寬優(yōu)化等等。我們還可以幫助產(chǎn)品找到精確的最大或者最小閾值,比如說720p 的視頻在提供最少帶寬的時候就能夠達到足夠好的視頻體驗,那么就可以幫用戶節(jié)省沒有必要的增大帶寬的設置。
-
英特爾
+關注
關注
60文章
9861瀏覽量
171295 -
自動化測試
+關注
關注
0文章
202瀏覽量
26884 -
音視頻技術
+關注
關注
0文章
50瀏覽量
11834
原文標題:張琰彬:聊聊視頻質量自動化測試
文章出處:【微信號:livevideostack,微信公眾號:LiveVideoStack】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論