沈中元
(青海省廣播電視信息網(wǎng)絡(luò)股份有限公司,青海 西寧 810000)
隨著移動網(wǎng)路的快速發(fā)展,全球IP流量達到4.8ZB,而移動數(shù)據(jù)的流量占比超過20%,其中流媒體直播更是現(xiàn)代移動數(shù)據(jù)使用的主導(dǎo)[1]。流媒體技術(shù)從最早的RTSP(Real time Streaming Protocol)協(xié)議到現(xiàn)階段的超文本傳輸,使得視頻質(zhì)量得到了快速的提高和發(fā)展[2-3]。相對于傳統(tǒng)的點播視頻時代,現(xiàn)代的流媒體直播等業(yè)務(wù)對于視頻的延時和卡頓有著非常嚴格的要求。點播時代的視頻內(nèi)容是可以在播放之前短時間的存儲于服務(wù)器上,在播放的過程中可以有選擇的指定播放內(nèi)容[4]。而現(xiàn)階段的流媒體直播是實時的在線觀看,不能任意地選擇直播的內(nèi)容也不能對直播的內(nèi)容進行快進和后退等操作[5-6]。
國內(nèi)外學者針對廣播流媒體直播的算法仿真有過很多研究[7-9]。陳曉兵[10]分析了現(xiàn)代數(shù)字廣播的特點,提出了可視化的流媒體直播平臺設(shè)計方案。魏雪飛等[11]結(jié)合現(xiàn)在的一些主流網(wǎng)絡(luò)直播技術(shù)分析了HLS流媒體直播技術(shù)在現(xiàn)代廣播電視網(wǎng)絡(luò)直播中的應(yīng)用和發(fā)展。本文主要結(jié)合多區(qū)域多目標優(yōu)化算法對廣播流媒體直播進行仿真,分析其算法的實際應(yīng)用價值。
在實際生活中往往會碰到各種需要優(yōu)化的問題,而多目標的優(yōu)化占了很大的比例[12]。多區(qū)域多目標優(yōu)化算法屬于搜索算法的一種,其主要的優(yōu)點是能夠通過不同的選擇將不同的個體進行同時優(yōu)化,最終產(chǎn)生一組相似解。
針對一個最小化的多區(qū)域多目標優(yōu)化問題可以定義為式(1)。
miny=F(x)=(f1(x),f2(x),…,fm(x))T
s.t.gi(x)≤0,i=1,2,…,q
hj(x)=0,j=1,2,…,p
(1)
式中,x=(x1,x2,…xn)T∈X∈Rn、x和X分別為決策的變量、決策變量的取值范圍;y=(y1,y2,…ym)T∈Y∈Rm、y和Y分別為m維的目標變量、目標變量的域;gi(x)≤0,i=1,2,…,q、hj(x)=0,j=1,2,…,p分別為不等式的范圍、等式的決策變量。
為了能夠更好地了解多區(qū)域多目標優(yōu)化算法的求解模式,本文從可行性解、解集、支配關(guān)系等多個定義方面進行分析。
可行性解的定義:當上式中的決策變量滿足式1的條件時,則可以確定x即為一個可行解。
可行解集的定義:可行解組成的合集為可行解集,即Xf,且Xf?X。
支配關(guān)系的定義:當兩個向量(u=(u1,u2,…,un)T、v=(v1,v2,…,vn)T)之間的關(guān)系是uv,則兩者之間為支配關(guān)系,滿足式(2)。
?i∈(1,2,…,m),μi≤vi且?j∈(1,2,…,m),μj≤vj
(2)
廣播流媒體直播的框架結(jié)構(gòu)包含:主播端、轉(zhuǎn)碼器、設(shè)備端和顯示器等。完整的媒體直播過程為:終端設(shè)備通過視頻流的方式將錄制好的視頻轉(zhuǎn)碼到相應(yīng)的服務(wù)器,轉(zhuǎn)碼器針對視頻制作不同的碼率然后分發(fā)到各個CDN模塊,智能顯示設(shè)備會像CDN模塊發(fā)送拉流的請求,CDN模塊決定視頻的選擇和去向,由觀看端的網(wǎng)速來決定視頻的實時質(zhì)量。具體的廣播流媒體直播流程圖如圖1所示。
圖1 直播流程圖
多區(qū)域多目標優(yōu)化算法布置在廣播流媒體人直播的客戶端,通過此算法能夠為客戶選擇最合適的碼率??蛻舳苏埱笠曨l傳輸?shù)倪^程如圖2所示。
圖2 客戶端請求下載塊的過程
在流媒體直播的過程中,多區(qū)域多目標優(yōu)化算法能夠根據(jù)當前的客戶端網(wǎng)絡(luò)狀況對碼率進行篩選,之后系統(tǒng)的終端會向視頻服務(wù)器發(fā)送拉流的請求,最終視頻內(nèi)容會以塊的形式去下載對應(yīng)的碼率。
與傳統(tǒng)的點播相比較,直播對于時間的延續(xù)有著很嚴格的要求。如果流媒體直播過程中緩沖的時間過長,用戶的觀看體驗會存在很大的差距。如果流媒體直播過程中緩沖時間過短,視頻內(nèi)容在短時間內(nèi)又會發(fā)生卡頓現(xiàn)象。于是,廣播流媒體直播出現(xiàn)了快慢播和跳幀兩種時延機制。其中快慢播是指視頻直播過程中為了避免卡頓,在緩沖的視頻即將耗盡時,此時系統(tǒng)自動觸發(fā)慢播模式;而當緩沖區(qū)的時間很充足時,觸發(fā)系統(tǒng)的快播模式。跳幀是指系統(tǒng)默認按一定的順序下載幀,當發(fā)生卡頓現(xiàn)象時直播視頻會出現(xiàn)時延。
本文選擇仿真環(huán)境對直播系統(tǒng)進行實驗研究。仿真環(huán)境能夠在十分鐘內(nèi)完成實際幾小時的直播視頻播放,提高實驗的效率。本文選擇的直播視頻仿真環(huán)境來源于智能網(wǎng)絡(luò)競賽Altrans,其主要是由視頻源數(shù)據(jù)集合、網(wǎng)絡(luò)(network)數(shù)據(jù)集合和SIM組成。本系統(tǒng)的運行環(huán)境為python 3。該系統(tǒng)的仿真器結(jié)構(gòu)如圖3所示。
圖3 仿真器SIM結(jié)構(gòu)圖
仿真器SIM結(jié)構(gòu)中的視頻源(video trace)主要作用記錄不同場景下視頻的幀的信息。然后針對不同的碼率進行對應(yīng)的編碼。本文選擇的仿真器是幀級別的,可以將不同的視頻文件分割為不同的幀。具體的視頻源的存儲格式如表1所示。
表1 視頻源的存儲格式
仿真器SIM結(jié)構(gòu)中的network trace是指手機在不同網(wǎng)絡(luò)環(huán)境下收集的網(wǎng)絡(luò)信息數(shù)據(jù)集,格式如表2所示。
表2 網(wǎng)絡(luò)信息數(shù)據(jù)集
本文的仿真器主要是模擬強、中、弱的網(wǎng)絡(luò)環(huán)境。
本文分析的基于多區(qū)域多目標優(yōu)化算法的廣播流媒體直播仿真主要包含:多區(qū)域直播算法、多目標流媒體直播測試。
通過模擬不同區(qū)域管理員在同一時間段對同一終端的應(yīng)急直播反應(yīng)可以很好地反映本文中提到的多區(qū)域多目標優(yōu)化算法的優(yōu)勢。同時,通過比較順序分發(fā)算法和多目標優(yōu)化算法在應(yīng)急流媒體直播中的等待時間來判斷優(yōu)劣。本文引進加權(quán)截止期保證率(WGR)來反應(yīng)不同算法的優(yōu)化情況。其計算式如式(3)。
(3)
圖4 不同算法在不同任務(wù)個數(shù)的WGR
不同算法在不同緊急任務(wù)個數(shù)的平均等待時間如圖5所示。
圖5 不同算法在不同緊急任務(wù)個數(shù)的平均等待時間
從圖4中可以看出:兩種不同的算法在同一時間段內(nèi)隨著直播任務(wù)的個數(shù)增加,基于多區(qū)域多目標優(yōu)化算法的下降幅度較小。從圖5中可以看出:在同一時間段內(nèi),隨著直播任務(wù)的增加,兩種不同算法的等待時間都有所增加?;诙鄥^(qū)域多目標優(yōu)化算法的增長幅度較小,則表明其能夠針對緊急任務(wù)進行優(yōu)先處理,在性能上能夠保持一定的優(yōu)勢。
本文采用云服務(wù)器構(gòu)建仿真環(huán)境,主要包含廣播流媒體直播系統(tǒng)、流媒體直播服務(wù)器和廣播終端。實際的多端直播和多終端直播仿真測試結(jié)果如圖6所示。
圖6 多端直播和多終端直播仿真測試
從圖6中可以看出:當向服務(wù)器發(fā)送的直播客戶端小于30個時,服務(wù)器基本穩(wěn)定;當接收的直播客戶端超過30個時,此時的服務(wù)器平均帶寬明顯下降,并出現(xiàn)不穩(wěn)定性能;當直播客戶端超過60個時,此時的不穩(wěn)定連接的比率大于30%。
廣播流媒體直播已經(jīng)慢慢成為現(xiàn)代視頻直播的首選,本文針對廣播流媒體的直播進行了仿真,基于多區(qū)域多目標優(yōu)化算法分析了不同算法對于廣播流媒體直播的效果對比。仿真及分析結(jié)果表明:本文分析的多區(qū)域多目標優(yōu)化算法能夠在解決多用戶對同一終端直播的實時性問題,實現(xiàn)快速的多區(qū)域多目標的視頻直播。