楊振輝
摘要:在流媒體技術(shù)快速發(fā)展的背景下,用戶對網(wǎng)絡(luò)內(nèi)容的需求不斷提升,視頻傳輸迎來了全新的挑戰(zhàn)。針對傳統(tǒng)流媒體技術(shù)視頻直播過程中忽略網(wǎng)絡(luò)環(huán)境變化且不能根據(jù)網(wǎng)絡(luò)變化適時調(diào)整視頻傳輸?shù)膯栴},文章設(shè)計了一種基于人工智能的碼率自適應(yīng)軟件,通過連續(xù)時延和碼率控制算法實現(xiàn)視頻直播傳輸?shù)膭討B(tài)調(diào)整。仿真結(jié)果表明,基于人工智能的碼率自適應(yīng)軟件可根據(jù)直播過程中的網(wǎng)絡(luò)變化情況實時調(diào)整視頻直播效果,有效提升用戶的觀看體驗感。
關(guān)鍵詞:人工智能;自適應(yīng);碼率算法;直播平臺
中圖分類號:F062.9? 文獻標志碼:A
0 引言
當(dāng)下,自適應(yīng)視頻傳輸技術(shù)在視頻點播場景中已得到廣泛應(yīng)用,大部分直播平臺開始通過此技術(shù)傳輸相應(yīng)的音頻數(shù)據(jù)與圖像數(shù)據(jù)[1]。相比較之下,直播平臺播放視頻過程中需根據(jù)彈幕內(nèi)容與用戶進行實時互動,對直播視頻流對碼率控制和低時延要求相對較高。
基于此,本文設(shè)計了一種碼率自適應(yīng)軟件,通過連續(xù)時延和碼率控制算法,有效提升用戶的觀看體驗質(zhì)量。
1 基于播放速率和跳幀控制的連續(xù)時延和碼率控制算法
當(dāng)下,大部分直播平臺側(cè)重于靜態(tài)碼率的使用,并未考慮直播過程中的網(wǎng)絡(luò)與傳輸條件。在視頻直播傳輸條件發(fā)生變化的情況下,需通過手動的方式調(diào)整視頻碼率,以滿足用戶觀看需求。雖然此種方式可解決部分問題,但會降低用戶的體驗質(zhì)量(Quality of Experience,QoE)。因此,為有效提升用戶QoE,需根據(jù)網(wǎng)絡(luò)條件的變化情況以及用戶設(shè)備信息,對視頻直播傳輸進行自適應(yīng)管理,為用戶提供一種高質(zhì)量的實時視頻直播流?;诖?,本文設(shè)計了一種碼率自適應(yīng)決策軟件。該軟件基于播放速率和跳幀控制的連續(xù)時延和碼率控制算法PRFDCLRC,實現(xiàn)視頻碼率的自動調(diào)整[2]。
1.1 QoE度量問題
在視頻點播場景中,QoE分為3個部分,即視頻質(zhì)量、卡頓時間、視頻碼率切換等。而在視頻直播場景中,綜合考慮了時延控制與碼率控制,QoE分為視頻質(zhì)量、卡頓時間、直播時延、跳幀時長、視頻質(zhì)量切換等,分別將這些因素對QoE的影響定義為:QoEquality、QoErebuffer、QoElatencv、QoEskip、QoEchange。碼率切換只能發(fā)生在I幀中,但選取的碼率將會影響2個連續(xù)I幀之間的幀并將其視為相應(yīng)的塊。在本次研究中,要對一組中所有幀的質(zhì)量進行計算,并將其作為相應(yīng)的獎勵。此時,整體的QoE可表示為:
QoE=QoEquality+QoErebuffer+QoElatency+QoEskip+QoEchange=∑kk=1(q(rkbit)-λrTrk-λlTlk-λsTsk-λc|rbitk-rbitk+1|)(1)
式(1)中,rbitk為第k個視頻塊的碼率級別;q(·)為非減損函數(shù);Trk、Tlk、Tsk分別為卡頓時間、延遲時間、跳幀時間;λr、λl、λs、λc分別為Trk、Tlk、Tsk的權(quán)重。其中,q(·)為非減損函數(shù),可表示為:
q(rbitk)=vmaf(rbitk)(2)
1.2 播放速率與跳幀控制
1.2.1 播放速率控制
對于直播流媒體系統(tǒng)而言,若在客戶端播放器緩沖區(qū)存儲的視頻數(shù)據(jù)時間較長,說明時延相對較大,此時加快播放器的播放速度,可減少緩沖區(qū)視頻數(shù)據(jù)的存儲,使用戶觀看的視頻畫面與服務(wù)器中更新的畫面相同,進而降低直播過程中的時延。在緩沖區(qū)中視頻數(shù)量相對較少時,通過減緩播放器播放速度的方式,可避免視頻播放過程中出現(xiàn)卡頓的情況??炻C制如圖1所示。
從圖1中可看出,在客戶端播放器緩沖區(qū)大小低于慢播放的閾值的情況下,客戶端會以0.95倍的播放速度播放相應(yīng)的視頻;在大于快播放的閾值時,客戶端會以1.05倍的速度播放視頻;在緩沖區(qū)大小處于兩者之間時,通過正常的播放速度播放[3]。
1.2.2 跳幀控制
假設(shè)視頻的選幀問題為基于VMAF分數(shù)的優(yōu)化問題,則有:
max∑Ii=1vmaf(i)
s.t.∑Ii=1s(i)f(i)≤Sizemax
iffi=0, then fj=0, j∈Pi(2)
式(2)中,s(i)為第i幀的大??;fi為跳幀的變量,若fi=0,說明第i幀被消除,反之,存在;P(i)為相應(yīng)的幀集且其中包含幀來源于第i幀,當(dāng)?shù)趇幀被消除后,便不會對其中存在的幀進行編碼;vmaf(i)為第i幀的VMAF分數(shù);Sizemax為預(yù)定義視頻塊大小的上界。在前幀被消除的情況下,可對前幀進行相應(yīng)的復(fù)制。其中,vmaf(i)可表示為:
vmaf(i)=∑i=1D(vmafD(i)f(i)-D∏Dd=1(1-fi-D+d))(3)
式(3)中,D為最近一次跳幀開始的時間間隔;vmafD(i)為第i幀被取代時的VMAF分數(shù)。
在本次研究中,主要通過IBM CPLEX優(yōu)化技術(shù)求解上述跳幀問題。在求解過程中發(fā)現(xiàn),在D≥2的情況下,vmafD(i)≈0。因此,可通過此種條件將跳幀優(yōu)化問題的復(fù)雜程度降低,獲取最優(yōu)的跳幀優(yōu)化解[4]。
1.2.3 PRFDCLRC算法設(shè)計
在本次研究中,結(jié)合深度強化學(xué)習(xí)中的DDPG算法,設(shè)計一種基于播放速率和跳幀控制的連續(xù)時延和碼率決策算法。
(1)特征狀態(tài)。
將直播系統(tǒng)收集的狀態(tài)信息(如網(wǎng)絡(luò)吞吐量、緩沖區(qū)大小、時延等)輸入網(wǎng)絡(luò)模型,將輸出動作定為目標緩沖區(qū)大小以及碼率級別,此時網(wǎng)絡(luò)狀態(tài)信息sk可表示為:
sk=(P→k,Bk,rek,lk,rbitk-1,Cstallk,Sk,Cskipk,Nk)(4)
式(4)中,Pk→為以往的歷史特征狀態(tài),包含客戶端緩沖區(qū)大小、端到端延時、視頻大小等信息?;谏鲜鲂畔⒖捎嬎愠鼍W(wǎng)絡(luò)吞吐量的大小。此外,通過分析這些狀態(tài)信息,可使神經(jīng)網(wǎng)絡(luò)感知直播過程中的網(wǎng)絡(luò)吞吐量以及客戶端緩沖區(qū)存儲情況;Bk為直播過程中緩沖區(qū)的大??;rek為上個視頻至現(xiàn)在累積的卡頓時間;lk為直播過程中的延時;rbitk-1為上個視頻選擇的碼率級別;Cstallk為客戶端是否出現(xiàn)卡頓情況;Sk為服務(wù)器端是否存在未下載視頻;Cstallk為客戶端是否存在跳幀下載的情況;Nk為CDN上的幀數(shù)量。
(2)網(wǎng)絡(luò)模型。
對于PRFDCLRC算法而言,其主要是在DDPG算法的基礎(chǔ)上實現(xiàn),而DDPG算法的基礎(chǔ)為Actor、Critic 2種網(wǎng)絡(luò)。在Actor中,主要是通過3層神經(jīng)網(wǎng)絡(luò)提取相應(yīng)狀態(tài)信息并輸出相應(yīng)的動作。由于sk中存在歷史狀態(tài)序列以及相應(yīng)的單值數(shù)據(jù),因此需通過一維卷積神經(jīng)網(wǎng)絡(luò)從第一個隱藏層中提取相應(yīng)的歷史狀態(tài)特征,通過全連接神經(jīng)網(wǎng)絡(luò)提取單值狀態(tài);第二層主要是通過全連接的方式實現(xiàn)多維特征向量的融合;第三層同樣通過全連接的方式輸出相應(yīng)的動作決策。
此外,在Critic接收到sk后,便會引入Actor中的輸出動作,進而有效提升Actor網(wǎng)絡(luò)訓(xùn)練的穩(wěn)定性[5]。
(3)動作映射。
對于DDPG算法而言,其輸出結(jié)果為連續(xù)的動作值。為準確獲取緩沖區(qū)的大小以及相應(yīng)的碼率級別,需將其工作動作映射。對Actor中輸出的動作值進行映射,使其成為真實的時延與碼率控制決策。具體映射公式可表示為:
rbitk=bit0,rbitk∈-1,-1+2n
bit1,rbitk∈-1+2n,-1+4n
bitn-1,rbitk∈1-2n,1(5)
式(5)中,rbitk為碼率決策。
2 仿真實驗
2.1 數(shù)據(jù)收集
仿真數(shù)據(jù)集主要為網(wǎng)絡(luò)數(shù)據(jù)集、視頻數(shù)據(jù)集。其中,視頻數(shù)據(jù)集為京東直播場景,如熱點直播、明星直播、KOL直播等。視頻數(shù)據(jù)的碼率級別分為 {500 kbps、850 kbps、1 200 kbps}。網(wǎng)絡(luò)數(shù)據(jù)集主要為 Live Video Streaming Challen 提供的網(wǎng)絡(luò)數(shù)據(jù),其中的部分數(shù)據(jù)來源于Wi-Fi以及LTE中采集的網(wǎng)絡(luò)吞吐量,平均為1.58 Mbps,偏差為1.22,范圍為0.2~11.68 Mbps。
2.2 參數(shù)設(shè)置
QoE評估指標的參數(shù)設(shè)置如表1所示。此外,Actor、Critic 2種網(wǎng)絡(luò)中的卷積核數(shù)與全連接的神經(jīng)單元數(shù)均設(shè)置為128,神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)率分別設(shè)為10-3、10-4。
2.3 仿真結(jié)果分析
為驗證本文算法可行性,將其與DQN算法進行對比。由于DQN算法的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)與網(wǎng)絡(luò)參數(shù)大致與本文提出算法相同,考慮時延間隔與不同的離散程度,需將時延控制離散為{0.3、1.03、1.77、2.5}和{0.3、0.61、0.93、1.24、1.56、1.87、2.19、2.5}2種,且DQN的動作空間分別設(shè)置為32、64。
2.3.1 QoE度量指標
2種算法的QoE指標性能比較結(jié)果,如圖2所示。
從圖2中得知,本文算法除時延之外,其他指標均優(yōu)于DQN算法。雖然時延大于DQN算法,但從整體情況來看,時延處于正常。
2.3.2 平均QoE
在本地訓(xùn)練集中經(jīng)過107的訓(xùn)練后,通過平均QoE對比2種算法的性能,結(jié)果如表2所示。
通過分析表2得知,本文算法在熱點直播、明星直播、KOL直播等場景中的平均QoE相對較高。由此得知,本文設(shè)計自適應(yīng)軟件可有效提升用戶直播觀看體驗感,對于京東直播平臺的構(gòu)建有著十分重要的作用。
3 結(jié)語
針對傳統(tǒng)流媒體視頻直播過程中忽略網(wǎng)絡(luò)環(huán)境變化,不能根據(jù)網(wǎng)絡(luò)變化適時調(diào)整視頻傳輸?shù)膯栴},本文設(shè)計一種基于人工智能的碼率自適應(yīng)軟件。該軟件主要是通過連續(xù)時延和碼率控制算法,提升用戶的直播觀看體驗感。仿真結(jié)果表明,該軟件可有效提升用戶直播觀看體驗感,對于京東直播平臺的構(gòu)建有著十分重要的作用。
參考文獻
[1]詹亙,肖晶,陳宇靜,等.面向自適應(yīng)碼率視頻直播的碼率控制算法[J].計算機工程,2019(3):268-272.
[2]洪偉聰.基于無線網(wǎng)絡(luò)的智能視頻編碼軟件設(shè)計[D].杭州:浙江工業(yè)大學(xué),2019.
[3]金肱羽,武霄泳,張志龍,等.面向視頻流媒體直播的碼率自適應(yīng)算法研究[J].中國傳媒大學(xué)學(xué)報(自然科學(xué)版),2022(1):8-14.
[4]宋靳錁,張遠,王博.HTTP自適應(yīng)流媒體直播系統(tǒng)中的用戶體驗質(zhì)量優(yōu)化[J].中興通訊技術(shù),2021(1):48-53.
[5]王平凡,劉淑芬.基于HMM的自適應(yīng)軟件決策模型[J].吉林大學(xué)學(xué)報(理學(xué)版),2018(3):645-649.
(編輯 姚 鑫編輯)
Research on the construction of JD Live streaming application platform model of
adaptive software based on artificial intelligence
Yang Zhenhui
(Qingdao Technical College, Qingdao 266555, China)
Abstract:? Against the backdrop of the rapid development of streaming media technology, users demand for online content is constantly increasing, and video transmission is facing new challenges. To address the issue of neglecting network environment changes in traditional streaming media technology during video live streaming, which prevents timely adjustment of video transmission based on network changes, a rate adaptive software based on artificial intelligence is designed, which dynamically adjusts video direct transmission through continuous delay and rate control algorithms. The simulation results show that the artificial intelligence based rate adaptive software designed in this article can adjust the video live streaming effect in real-time based on network changes during the live streaming process, effectively improving the users viewing experience.
Key words: artificial intelligence; adaptive; code rate algorithm; live broadcast platform