[BWi=P?BRi-1+1-P?BWi-1] (4) 式中:[BRi-1]为上一时刻带宽的实测值,该值可以在客户端下载数据时计算得到;[BWi-1]为上一时刻带宽的预测值,[BWi]为当前时刻带宽的预测值;P为模型因子,本文称作“罚因子”。式(4)所表示的预测模型可以理解为:当前预测值是对上一时刻预测值和实测值的折中[9?11]。如果“罚因子”较大,说明预测模型存在较大的误差,那么当前的预测值更多的相信上一时刻的实测值;如果“罚因子”较小,说明模型比较可靠,应该更多的相信模型的预测值。考虑到视频流的码率也存在一定的波动,在实际应用里,采用缓存深度波动代替预测误差,即实际带宽与选择的视频流码率不匹配时,缓存深度变化较大,“罚因子”应取较大值,反之取较小值。本文构造的“罚因子”如下的一个连续函数: [P=α, δ≤δ01-2α1-2δ0δ-δ0+α, δ0<δ≤1-δ01-α, else] (5) 式中:α为一较小的正数,如0.1,用于增加模型的扰动;[δ]为缓存深度的变化率,定义为: [δ=tn-1-tntn]。[δ0]为模型的临界值,也为一较小的正数,如0.05。当[δ≤δ0]时,认为带宽预测模型比较可靠,当[δ≥δ0]时认为带宽的预测模型较粗糙,需要增加“罚因子”。 上述基于“罚因子”的带宽预测模型可以用于预测带宽的预测值,实际带宽往往在其预测值左右摆动,这就存在一个带宽预测值的置信度概率密度分布,将该概率密度函数记为,其中BW为带宽。一般的,应为一条连续的曲线,为了简化模型的复杂度,可以用折线法近似地替代该曲线,如图2所示。
图2 带宽预测模型置信度概率分布 图2中,BWmax为网络的最大接入带宽值,BWi为根据“罚因子”带宽预测模型得到的带宽预测值;P0~P2为各自带宽值所对应的概率密度,可以将其看作概率分布函数的参数,可用于评价带宽预测模型的可靠性,如果预测模型可靠,则P0较大,P1与P2较小,实际带宽在BWi附近的可能性较大;反之亦然。根据概率密度的性质为: [0+∞PBWdBW=1] (6) 式(6)表明,图2中折线和BW轴所围的面积恒等于1,说明已知P0~P2和BWi就可以获得带宽预测模型可靠性的概率模型,其中BWi可由带宽预测模型得到,而P0~P2可以根据下述方法得到:在下载分片数据的过程中,客户端一定可以测得当前网络的实际带宽。借此,可以对上述带宽预测模型的可靠性进行检验。如果预测值与实际值相差不大,那么就可以认为预测模型是准确的,可以将图2中的P0加大,反之减小P0。在实际操作中可以结合P0~P2同时调整,即当实际带宽大于预测带宽时等比例的加大P0与P1,同时减小P2,反之加大P0和P2,同时减小P1。在这种方法中,注意保证满足式(6)所规定的条件。只要预测值与实际值相差不大,该方法会加大P0,对预测模型的可靠性做出评价。 通过式(1)可以计算出发生QoE停滞损耗的临界带宽BWc式所述的,其QoE下降的风险概率为: [DQoE=0BWcPBWdBW] (7) 当式(7)中的[DQoE]较大时,说明发生式(1)所描述的QoE下降概率较大,而应该出于谨慎的态度选择码率较低的视频流分片,直至式(7)中的[DQoE]能够被接受。当式(7)中的[DQoE]较小时,说明式(4)所预测的[BWi]具有较高的置信度,DASH的调度应该按照式所述的方式进行。 3 实验及结果 本文所述的DASH调度算法以VLC为实验平台,视频分片流采用12个不同码率(200 Kb/s,300 Kb/s,400 Kb/s,500 Kb/s,600 Kb/s,700 Kb/s,800 Kb/s,1 000 Kb/s,1 200 Kb/s,1 400 Kb/s,1 600 Kb/s,1 800 Kb/s)编码压缩的Big Buck Bunny[12],编码器为X264。其实验结构如图3所示。 图3 DASH实验设备拓扑结构示意图 其中Bandwidth Shaping可以模拟网络带宽的变化,本文实验首先采用随机带宽模型和文献[6]所描述的算法进行对比,网络带宽设置为0~100 s为600 Kb/s,100~200 s网络带宽上升为1 600 Kb/s,200~300 s网络带宽又下降为600 Kb/s。文献[6]算法的实验结果如图4所示,从中可以发现该算法在响应网络带宽的变化有一定的滞后,并且缓冲区深度在200 s处有明显的下降,该下降存在QoE的停滞下降可能。
图4 基于缓冲区深度的DASH调度算法结果 图5是采用本文算法的实验结果,从该实验结果可以看到本算法对网络带宽的适应性较强,并在网络带宽发生突变时缓冲区深度变化不大,造成QoE停滞下降的风险比文献[6]的小。在随机变化的信道中也有相似之处。 4 结 论 本文采用一种基于“罚因子”的带宽预测模型对网络带宽进行预测,同时利用实际带宽值对该模型的置信度进行评价,在QoE下降风险可接受的前提下对DASH进行调度决策。实验结果表明,该方法能够及时响应带宽的变化,另一方面,式(5)中“罚因子”的计算是采用缓存中剩余时间得到的,这能抵消部分由于视频码率的波动所造成的影响,从图5中缓存剩余时间也可以得到相应结果。综上所述,本文所述的算法是一种较好的DASH调度算法。
图5 本文算法结果 参考文献 [1] BEGEN A, AKGUL T, BAUGHER M. Watching video over the web: Part 1:Streaming protocols [J]. IEEE Internet Computing, 2011, 15(2): 54?63. [2] SODAGAR I. The mpeg?dash standard for multimedia streaming over the internet [J]. IEEE Multi Media, 2011, 18(4): 62?67. [3] EVENSEN K, KASPAR D, GRIWODZ C, et al. Using bandwidth aggregation to improve the performance of quality?adaptive streaming [J]. Signal Process?Image, 2012, 27(4): 312?328. [4] LIU C, BOUAZIZI I, GABBOUJ M. Rate adaptation for adaptive HTTP streaming [C]// Proceedings of the second annual ACM conference on Multimedia systems. USA: ACM, 2011: 169?174. [5] MULLER C, LEDERER S, TIMMERER C. An evaluation of dynamic adaptive streaming over http in vehicular environments [C]// Proceedings of the 4th Workshop on Mobile Video. USA: ACM, 2012: 37?42. [6] ZHOU C, ZHANG X, HUO L. A control?theoretic approach to rate adaptation for dynamic HTTP streaming [C]// 2012 IEEE Visual Communications and Image Processing (VCIP). [S.l.]: IEEE, 2012: 1?6. [7] MULLER C, TIMMERER C. A test?bed for the dynamic adaptive streaming over HTTP featuring session mobility [C]// Proceedings of the second annual ACM conference on Multimedia systems. USA: ACM, 2011: 271?276. [8] TIMMERER C. Special issue on modern media transport?dynamic adaptive streaming over HTTP (DASH) [J]. Image Signal Processing, 2012, 27(4): 269?70. [9] 尤小泉,彭映杰.结合分块Hough变换与Kalman预测的车道线检测方法[J].科学技术与工程,2013(24):7087?7092. [10] 尤小泉,彭映杰.结合Hough变换与运动估计的车道线提取方法[J].电视技术,2013(11):191?193. [11] 尤小泉,彭映杰.一种基于指令预测的目标跟踪方法[J].电视技术,2010(2):81?84. |