杜宸罡,李 博,畫芊昊
(中北大學 儀器科學與動態測試教育部重點實驗室,太原 030051)
隨著互聯網技術的發展,高性能的嵌入式流媒體技術應用更加廣泛,具體包括視頻直播、遠程會議、遠程教育和視頻監控領域等多媒體應用,教育是一個國家根本的事業,重要程度不言而喻。
隨著我國高速推進“互聯網+”在高校領域的推進,全國應用范圍巨大,改善流媒體的用戶體驗質量顯得愈發關鍵。碼率自適應算法可以根據動態選擇進一步改善流媒體的用戶體驗,文獻[1]提出了一種DASH標準的基于緩存補償的碼率自適應切換(BASBC)算法,通過提高帶寬利用率,從而提高用戶的體驗質量(QoE);文獻[2]提出一種基于深度強化學習的碼率自適應(DRLA,deep reinforcement learning based ABR)算法,用實際網絡帶寬數據訓練神經網絡,通過收集客戶端緩沖區占用率和網絡吞吐量向視頻服務器請求最佳碼率的視頻,從而提高了用戶的體驗質量(QoE);文獻[3]提出了一種名為NIA(Data-free Network-environmental Imitation-based Rate Adaptation Framework)的新型無數據蒸餾框架,生成了具有更好泛化性能的決策樹ABR算法,NIA通過網絡環境生成模塊構建多個人工網絡環境,并在每次迭代訓練前使用環境選擇模塊來選擇適合的網絡場景,然后與該場景進行交互,利用基于學生驅動的模仿學習算法完成決策樹的蒸餾過程,從而提高用戶的體驗質量(QoE)[4]。然而本實驗在音視頻流媒體直播的應用場景下,MPC(Model Predictive Control)[5]結合音視頻同步算法來提高用戶體驗質量。通過實驗仿真對比分析,不同網絡環境下,本實驗所得的平均QoE數據更加良好,從而使得本實驗更有意義。
由于本實驗涉及音視頻同步技術嵌入式流媒體系統平臺開發,因此,依托B/S架構[6]搭建流媒體服務器,優點便是無需構建大的網絡服務器便可形成流媒體應用平臺,通過編制相應的軟件確保系統功能的實現并同時保證系統的正常運行。流媒體服務器采用HTTP/TCP[7]來傳輸控制信息,用實時傳輸協議/用戶數據報協議(RTP/UDP)傳輸實時數據。
嵌入式流媒體系統主要是構建小型的流媒體服務器在保證流媒體通信質量的前提下,針對流媒體音視頻在互聯網上質量較低具體包括視頻不清晰、卡頓、音視頻不同步等問題,采用最新標準的H.265[8]視頻編碼標準進行算法優化、實時網絡傳輸技術確保流媒體通信的實時性,在音視頻同步技術提高流媒體音視頻通信質量,采用嵌入式平臺開發針對不同的應用要求進行模塊化設計,通過模型預測控制,實現更多的應用場景需求。
本文算法分為兩部分,第一部分分為MPC、音視頻同步技術、碼率自適應技術以及QoE指標模型4個板塊,第二部分為算法仿真分析。本文算法具體流程如圖1所示。

圖1 算法流程
MPC是一種多變量控制策略,可以通過控制系統中被控平臺所得到的當前系統狀態信息,再加上之后的控制輸入變量,預測到之后的被控平臺的狀態。預測模型的形式沒有固定的標準形式,狀態空間方程、傳遞函數、階躍響應模型、脈沖響應模型、模糊模型等都可以作為預測模型的形式。
2.2.1 MPC對AAC的優化測試
為了得到更加良好的數據指標,將MPC應用到AAC編碼[9]策略中去,建立了相對應的目標函數與約束,具體優化流程如圖2所示。

圖2 MPC對AAC的優化流程圖
具體優化流程為:AAC編碼的狀態量和控制量通過被控平臺進行狀態估計,利用MPC的目標函數與約束以及預測模型得到AAC編碼的最佳解并傳輸數據給被控平臺,被控平臺再進行音頻信號的加窗處理、信號分塊[10]、FFT變換[11]、當前頻譜線形預測[12],分別計算文獻[1-3]與本文的最大噪聲掩蔽功率[13]、高頻部分能量比值[14]、譜線掩蔽能力[15]以及感知熵PE[16],如表1所示。

表1 MPC對AAC優化后各參數測試結果
由表1可知,經過MPC對AAC編碼優化改進后,最大噪聲掩蔽功率明顯更高,掩蔽效果更好;高頻部分的能量也明顯變高,高頻能量缺失的減少使得音質明顯增強,從而更容易被人耳感知接收,譜線掩蔽能力相比文獻[1-3]來說明顯提高;感知熵PE的值為4.5,介于3~5之間,大大降低了音視頻的失真率,進一步提升了音視頻的質量。因此,MPC預測模型控制對AAC編碼優化后使得各項指標數據均更加優良。
2.2.2 確定預測模型的測試
往往是通過被控制的對象和即將進行預測的狀態來選擇合適的預測模型,對于本文所需的研究而言,模型預測控制選擇狀態空間模型[17]比較合適。狀態空間模型是一種以時間為自變量的動態時域模型,這種狀態模型的優點在于不僅能反映系統內部狀態,而且能揭示系統內部狀態與外部的輸入和輸出變量之間的聯系;狀態空間模型也可以將多個變量時間序列處理為向量時間序列,這種從變量到向量的轉變更適合解決多輸入輸出變量情況下的建模問題;狀態空間模型還無需大量的歷史資料,能夠用現在和過去的最小信息形式描述系統的狀態,因此既省時又省力。
建立狀態空間方程式:
(1)
Y=Cx
(2)
其中:u為輸入變量,x為狀態變量。
假設在t時刻預測t+i時刻的輸入值為u(t+ilt),在預測區間W內。
(3)
在t時刻預測第t+i時刻的系統狀態為x(t+ilt)。
(4)
MPC預測控制的優化采用的是滾動式有限時域,憑借每時每刻的優化性能指標,得到每時每刻的有限時段的最優控制率,優化過程也不是一次離線完成的,而是反復在線完成,優化性能指標每一采樣點只涉及這一時刻到未來有限時間內的下一個采樣時刻點。預測控制求解屬于一種開環優化,在反饋校正環節,不斷根據系統的實際輸出對預測輸出做出校正利用反饋信息,讓滾動優化不僅停留在模型,更構成閉環優化控制。據狀態空間方程式進行進一步滾動優化及反饋矯正,假設預測時域為Nf,控制時域為NV,Nf≥Nv,則:
G(t+1)=αG(t)+βu(t|t)
(5)
G(t+2)=α2G(t+1)+αβG(t|t)+βG(t+1|t)
(6)
G(t+3)=α3G(t)+α2βG(t|t)+αβG(t+1|t)+
βG(t+2|t)|
(7)
?
依次列推:
G(t+Nf)=αNfG(t)+αNf-1βG(t|t)+
αNf-2βG(t+1|t)+…+βG(t+Nf-1)
(8)
G(t+Nv)=αNvG(t)+αNv-1βG(t|t)+
αNf-2βG(t+1|t)+…+βG(t+Nf-1)
(9)
在Simulink和Carsim平臺上搭建仿真,實現預測控制優化,MPC-AAC 在實現仿真測試過程中,通過AAC的預測時域Nf以及控制時域Nv進行迭代從而得到最少迭代次數和個體最優值。迭代曲線如圖3所。

圖3 迭代曲線

圖4 接收端對音頻的處理框圖

圖5 接收端對視頻的處理框圖
通過圖3可知,AAC的預測時域Nf和控制時域Nv在MPC迭代過程中,預測時域Nf和控制時域Nv均取26時有最優解,最佳解為19。
流媒體通信質量好壞的一個重要標準之一就是音視頻是否同步。音視頻同步[18]是多媒體系統服務質量(QoS Qualityof Service)研究中的一項重要內容。音視頻同步可以保證音視頻文件的時間連續性,在視頻會議、可視電話、視頻點播等多媒體應用中,由于網絡傳輸中的延遲、抖動、時間偏差、網絡傳輸條件的變化以及發送端的發送速度與接收端的接收速度的不匹配等問題,使得接收端的媒體存在異步現象。通過媒體同步技術可以解決這些問題,其中音視頻的同步是一個關鍵性技術。
由于處理器對音視頻編碼的差異,對視頻處理的時間相比音頻較長,針對音視頻分開采集之間沒有關聯性,直接傳輸會造成視頻滯后于音頻的問題,對此本文進行了優化,采取動態緩存技術在服務器端分別設置音視頻動態緩存區,傳輸時進行同步控制保證音視頻交替傳輸,再從服務器輸出時打上時間戳建立關聯性,在接收端設置動態緩存區,同時解析音視頻碼流,通過對比時間戳實現音視頻同步。為了能夠更好地應對復雜網絡環境下確保音視頻同步效果,另外建立通信反饋機制,實現服務器端自動通過降低視頻碼率、視頻分辨率、調整動態緩沖區等措施確保音視頻同步效果。
2.3.1 檢測影響因素
時延抖動[19]和時延偏移[20]是影響音視頻是否同步的重要因素,表2通過與文獻[1-3]對比測試分析了音視頻文件、壓縮視頻文件、數據文本的時延抖動情況;表3通過與文獻[1-3]對比測試分析了視頻文件、圖像文件、緊密型音頻文件、寬松型音頻文件、文本文件的時延偏移情況。

表2 時延抖動測試數據結果 ms

表3 時延偏移測試數據結果 ms
由表2和表3測試結果可知,經過音視頻同步方案的優化,相比文獻[1-3]的方案,在時延抖動和時延偏移兩方面均在數值上得到了大幅度的降低,從而使得音視頻同步效果得到了質的飛躍。
2.3.2 音視頻同步壓縮的測試
音視頻同步壓縮[21]是基于H.264或者AVC壓縮算法利用Zig-zag掃描[22]方法實現的,系統采集到音視頻數據后經過壓縮處理傳輸到服務器,由于這種技術本身具有先低頻系數后跟隨高頻系數的特點且人們對聽覺比視覺相對更加敏感,因此在原有的音視頻同步技術基礎上,可以用DCT變化系數[23]與音頻相匹配。
設碼率流為W,拖尾系數為H,解碼時最后一位拖尾系數為Y,解析音頻流為Z。在嵌入編碼時,當W=1時,H=Y=1;當W=0時,H=Y=-1;在解碼時,當H≠0時,H=Y=1時,Z=1;當H=Y=-1時,Z=0;當H=0時,當H=Y>0時,Z=1;當H=Y<0時,Z=0。
由于在圖像壓縮過程中有亮度塊需要嵌入,需要引入音視頻圖像峰值信噪比PSNR[26]。
(10)
其中:MSE為壓縮圖像和之前圖像的誤差,圖6為峰值信噪比PSNR的Y分量測量對比分析圖,縱坐標單位為dB,橫坐標單位為個數。

圖6 PSNR-Y測試結果圖
根據圖6原視頻、文獻[1-3]、本文嵌入后音頻的20幀對比測試結果可知,文獻[1-3]的20幀PSNR-Y分量數據均介于原視頻和本文嵌入后音頻的數據。因此,本文嵌入后視頻圖像PSNR-Y分量影響最小,即本文算法嵌入后視頻的同步壓縮過程最為良好。
碼率自適應測試[24](ABR,adaptive bitrate streaming)可以分為3種類型。Rate-based類型是通過歷史分片下載時的網絡情況來預測之后的網絡帶寬,從而驅動視頻碼率決策,這種類型相對簡單,但一般單個噪音的干擾信號非常強波動也非常明顯,探測數據既會浪費帶寬,歷史數據預判性也非常低;Buffer-based類型是根據客戶端的播放緩沖區的buffer情況決定下一片段的碼率檔位,這種類型的缺點是一般在低延遲環境下不適合更多數據量的緩存,buffer量的大小也非常難控制,而且不適合UDP環境;Hybrid類型屬于一種混合模式,既考慮buffer的信息決策下一片段的碼率檔位,也考慮預測吞吐量情況,本文的算法即是這種混合模式類型,在原本HTTP的動態自適應流標準的視頻流媒體架構下引入了MPC控制算法。
2.4.1 切片約束條件的對比測試
設x為第x個視頻切片編碼和處理,St(xt)為第x個視頻切片所對應xt碼率的視頻大小,tx為視頻編碼和切片處理前所下載信息的吞吐量,Tx為第x個視頻被下載所用的時間,服務器所需等待時間為Wt,視頻切片時長為l。當x為0時數據開始采集、編碼和切片處理,切片約束條件如下:
(11)
當第x+1個視頻切片開始下載時,
(12)
Wt=0
(13)
當第x+1個視頻切片還沒開始下載時,
(14)
對于直播場景而言,視頻切片所需時長l越短,視頻更穩定更流暢,表4對比了文獻[1-3]以及本文文獻視頻切片l所需時長。

表4 切片時長測試結果 s
通過表4可知,與文獻[1-3]相比,本文在原本架構下引入MPC后使得切片時長明顯變短,進一步提升了視頻流暢度、清晰度和穩定度。
2.4.2 跳幀時延的對比測試
為了進一步降低時延執行跳幀操作,設定了兩個兩組緩沖區閾值,一組為(T最小1,T目標1、T最大1)和(T最小2,T目標2,T最大2),一組為(T最小3,T目標3,T最大3)和(T最小4,T目標4,T最大4),其中滿足T最小1 表5為分別測試對比了第一組和第二組緩沖區閾值的幀率以及碼率情況。 表5 緩沖區閾值幀率及碼率測試結果 由表5可知,當緩沖區閾值為1時,幀率和碼率均最低,即播放速度相對最慢,視頻會產生嚴重卡頓情況;當緩沖區閾值為4時,播放速度相對較快,視頻最為清晰流暢。 2.4.3 視頻跳幀的對比測試 視頻跳幀[25]又叫視頻丟幀,當顯示器顯示的次數和刷新的次數不一致時,顯示器刷新率達不到視頻FPS的要求,往往會自動舍棄一部分畫質,這種現象被稱為視頻跳幀。為了進一步優化流媒體視頻的畫質,解決跳幀現象,假定顯示器刷新率均為90 Hz且CPU內存相同情況下,對比原始視頻和降低視頻分辨率后經過選取更為合適的跳幀閾值后視頻的情況,進一步測試十組播放器緩存時間,測試結果如圖7所示。 圖7 視頻跳幀測試結果圖 由圖7可知,本文算法通過降低視頻分辨率選取合適的跳幀閾值后視頻的緩存時間曲線明顯更趨近于穩定,既不會出現跳幀情況,也不會影響視頻的實時性,視頻效果最好。 2.4.4 QoE指標模型的測試 QoE指標可以很好地反映該種碼率自適應算法的優劣性,影響QoE指標的因素有很多,比如端與端之間的時延、卡頓以及跳幀時長、碼率切換頻次、視頻質量等等。 QoE目標函數為: (15) 其中:QoE目標為全部X個視頻切片的QoE之和,Ax為第x個視頻切片的碼率,Bx為x個視頻切片跳幀時間總長,Cx為視頻切片端與端之間的時延,Dx為卡頓時間總長,f(Ax)為判斷視頻好壞的函數,|Ax+1-Ax|為視頻切片碼率[26-27]的幅度值,σa,σb,σc,σd,σe分別為各參數指標權重。 QoE指標的好壞可以充分反應出用戶對服務質量的評價,盡可能地解決跳幀、時延、卡頓等情況。 本實驗在音視頻流媒體直播競賽的ACM Multimedia的仿真開發環境下完成,利用公式(15)可以計算出QoE指標的大小,再求出其平均值。為了很好地驗證本文算法的性能,與文獻[1-3]進行各性能上的仿真測試與比較。 本文在原有的碼率自適應算法基礎上引入了MPC與音視頻同步算法,通過前文的測試發現,本文算法各項相關數據均得到了大幅度的提升,文獻[1-3]與本文算法的平均QoE的CDF曲線如圖8所示。 圖8 平均QoE的CDF曲線 通過本文算法與文獻[1-3]的平均QoE的CDF曲線的測試對比分析可知,本文算法的QoE指標明顯更高,即本文算法的綜合性能更好。 網紅帶貨、才藝表演、體育比賽、風景打卡是當今互聯網直播環境中最受歡迎的其中幾個板塊,因此分別用文獻[1-3]以及本文算法對這幾個板塊分別進行QoE指標仿真測試,測試結果如圖9所示。 圖9 不同直播場下的幾種算法的平均QoE 圖9中,曲線從上到下依次為本文算法、文獻[1-3],由圖中測試結果可知,網絡直播環境下在網絡帶貨、才藝表演、體育比賽、風景打卡等方面,本文所采用的算法的平均QoE指標最大,即用戶評價指標最高,因此本文算法相對更加優良。 直播環境中是否卡頓是影響直播感受非常重要的因素之一,因此對視頻卡頓、微卡頓、適中、流暢4種情況分別對比文獻[1-3]以及本文算法進行仿真測試分析,測試結果如圖10所示。 圖10 不同網絡環境下幾種算法的平均QoE 圖10中,曲線從上到下依次為本文算法、文獻[1-3],根據圖中測試結果可知,對于卡頓、微卡頓、適中、流暢情況下,本文算法的QoE指標明顯比文獻[1-3]的QoE指標高很多,意味著本文算法使得不同網絡環境下的QoE指標都得到了很大的提高。 視頻質量、卡頓時長、平均時延均嚴重影響著直播環境中QoE指標的大小,分別用文獻[1-3]、本文算法對這幾個方面進行測試對比分析,數據結果如表6所示。 表6 平均QoE指標測試結果 由表6可知,本文算法很好地降低了時延與卡頓時長,大幅度優化了視頻質量,極大地提升了平均QoE用戶評價指標值的大小。 本文在原本碼率自適應算法基礎上引入了MPC與音視頻同步技術并與之相結合。在HTTP的動態自適應流標準的視頻流媒體架構下,首先通過對AAC編碼的優化,將MPC應用到AAC編碼中,從而得到AAC編碼的最佳解。 經過被控平臺后續實驗與前人的測試對比分析,掩蔽能力得到了大幅度提升,可接收到更多的高頻能量被人耳感知,感知熵PE也得到了大幅提升,大大降低了失真率;隨后進行了預測模型的確定,并通過預測時域與控制時域進行迭代從而得到最少的迭代次數和個體最優值;再隨后對音視頻同步的影響因素進行了探索與仿真測試對比分析,時延抖動和時延偏移是最大的兩個影響因素,時延抖動分別從音視頻文件、壓縮視頻文件、數據文本3個方面與前人的算法進行仿真對比測試,時延偏移分別從視頻文件、圖像文件、緊密型音頻文件、寬松型音頻文件、文本文件這幾個方面與前人的算法進行仿真對比測試,經對比分析,本文算法在數據上均有了大幅度的優化體現;再隨后利用zig-zag掃描方法進行了音視頻同步壓縮,將前人的算法與本實驗算法分別對20幀PSNR-Y分量進行對比測試,由仿真測試圖可知本文算法在嵌入后視頻壓縮效果最佳;再隨后測試切片時長與跳幀時延,與前人的算法進行測試對比分析,本文算法具有更低的切片時長、相對較快的播放速度、更為穩定的視頻緩存時間;最后獲取最終的QoE用戶評價指標來進一步檢測音視頻流媒體技術的優劣,并在音視頻流媒體直播競賽的ACM Multimedia的仿真開發環境下分別從QoE的CDF曲線、不同直播場下平均QoE指標、不同網絡環境下的平均QoE指標、各指標對比的平均QoE四個方面與前人算法進行仿真測試對比分析,測試結果表明本文算法相較而言具有最高的平均QoE指標,即本文算法各項性能最好。 在當今互聯網高速發展的時代,音視頻流媒體技術具有無限的發展潛力,特別是本實驗著重側重于音視頻流媒體直播的應用場景,網紅帶貨、才藝表演、體育比賽、風景打卡等等應用場景,均與我們的工作和生活息息相關,非常需要我們深入研究與探索,除此之外,騰訊會議網絡授課、專家作報告等方面即教育行業、事業單位開會也是音視頻流媒體直播非常廣泛的應用場景,因此,視頻加密技術顯得極其重要,下一步將本文中的算法嘗試應用到更多領域進行仿真測試分析進一步驗證該算法的優越性以及進一步試圖探索更加優良的音視頻流媒體算法來獲取更高的QoE用戶評價值,從而得到更大的社會價值。

3 QoE指標仿真結果
3.1 幾種算法的平均QoE的CDF曲線

3.2 不同直播場下的幾種算法的平均QoE指標的測試

3.3 不同網絡環境下幾種算法的平均QoE指標的測試

3.4 多種算法每種指標的比較測試

4 結束語