基于DASH的多客户端码率自适应及震荡补偿方法技术

技术编号:13834733 阅读:74 留言:0更新日期:2016-10-15 13:41
本发明专利技术提供一种基于DASH的多客户端码率自适应及震荡补偿方法,基于缓存的码率自适应算法,利用对数模型估算码率,加入动态变化的平滑函数调整码率估算稳定性。同时,针对多客户端竞争带宽问题加入震荡补偿机制,通过检测客户端码率震荡情况,做出补偿策略以进一步稳定多客户竞争带宽引起的码率波动。本技术方案共分三个步骤:第一步,基于缓存的码率估算,即利用对数模型根据缓存区内容量估算码率;第二步,基于逻辑斯谛方程模型的平滑因子模型,即根据缓存区状态动态的调整平滑因子使平滑函数的作用更加准确稳定;第三步,实时检测码率震荡情况,采取补偿机制抚平震荡,针对多种不同的缓存状态将补偿方式分高、中、低三种,使补偿时期的码率更加合理。

【技术实现步骤摘要】

本专利技术属于移动多媒体视频流码率自适应领域,尤其涉及一种多客户端码率自适应及震荡补偿方法。现有技术随着Internet和多媒体技术的不断发展,视频信息更多地转向了网络传输,网络流媒体技术应运而生,并且取得了长足的发展。视频访问具有数据量大、实时、稳定的要求,网络带宽的波动会直接影响播放效果。因此,码率自适应算法仍然是DASH研究的热点和难点。传统的基于吞吐量的算法采用视频片段下载时间来估算网络实时吞吐量,以此来切换合适的码率。视频片段下载时间是根据HTTP请求的发送间隔来计算得到。在多客户端场景下,每个段的下载不一定是连续不断的形式,中间由于每个客户端的下载状态不同可能存在下载空缺时间。这会导致客户端吞吐量估算不准确,引起多客户端带宽竞争现象,从而引发码率切换不稳定的问题。针对上述问题,出现了一些基于代理服务器和基于服务器的方法,这些方法为每个客户端塑造合理的数据交付,以此来解决带宽分配不公平。但是这些方法需要添加代理服务器等中间设备或者在服务器端修改网络底层基础设置,操作过于繁琐。因此出现一些基于客户端的解决方案:(1)利用客户端的缓存结合段下载时间增加吞吐量估算的准确性,码率选择上提出了逐步切换策略,根据当前的码率等级决定切换的幅度,减缓了码率的震荡。(2)通过估算带宽、平滑处理、量化处理、估算下一段下载间隔时间,以此准确估算每个客户端的吞吐量,实现带宽的公平分配,以此减少客户端的视频码率震荡。但是将基于吞吐量的自适应算法应用在多客户端场景上,由于带宽竞争导致网络不稳仍然会使码率切换相当不稳定。
技术实现思路
本专利技术要克服现有技术上的上述缺点,提供一种基于DASH的多客户端码率自适应及震荡补偿方法,基于缓存的码率自适应算法,利用对数模型估算码率,加入动态变化的平滑函数调整码率估算稳定性。同时,针对多客户端竞争带宽问题加入震荡补偿机制,通过检测客户端码率震荡情况,做出补偿策略以进一步稳定多客户竞争带宽引起的码率波动。本专利技术的技术方案共分三个步骤:第一步,基于缓存的码率估算,即利用对数模型根据缓存区内容量估算码率;第二步,基于逻辑斯谛方程模型的平滑因子模型,即根据缓存区状态动态的调整平滑因子使平滑函数的作用更加准确稳定;第三步,实时检测码率震荡情况,采取补偿机制抚平震荡,针对多种不同的缓存状态将补偿方式分高、中、低三种,使补偿时期的码率更加合理。基于DASH的多客户端码率自适应及震荡补偿方法,具体步骤如下:1.基于缓存的码率估算;基于缓存模型的自适应算法使用缓存区内的数据量百分比来估算视频码率,从而避开了网络带宽的直接影响,有利于提高视频码率的稳定性。考虑到对数函数模型变化趋势相对比较平缓,能够实现码率估算的平稳增长和减少。因此本专利技术采用基于缓存的对数模型自适应算法,将缓存分区和对数模型结合,根据缓存区容量的百分比计算所要切换的视频码率。同时将缓存分为三个区间,分别为缓存上溢区间、缓存均衡区间、缓存下溢区间。该对数模型为:ξk=a×logb(δk×c) (1)式(1)ξk中为第k段所要切换的码率,δk为第k段时刻缓存区内数据量填充的百分比,a为该MPD文件中最大码率的值,c为缓存下溢阀值,b为缓存上溢阀值。设定为c=5,b=4则缓存下溢区间为0-20%、缓存均衡区间为20%-80%、缓存上溢区间为80%-100%;2.基于逻辑斯谛方程模型的平滑处理;网络的不稳定性,会导致缓存区内的数据量出现一定程度的波动,从而使式(1)计算出来的码率可能出现震荡现象。针对该问题,本专利技术在平滑处理基础上,设计基于逻辑斯谛(Logistic)方程的平滑因子模型,随缓存状态变化动态调整平滑因子。该公式为:BRk=(1-P)×ξk+P×ξk-1 (2)式(2)中,BRk为平滑后的第k段码率,P为平滑因子。平滑因子计算公式为: P = 1 1 + e - m ( δ k - β 0 ) ( 1 - β 0 · δ k ) - - - ( 3 ) ]]>式(3)中:m为逻辑斯谛方程的陡峭参数(设定m=12),β0为逻辑斯谛方程的中心值(设定β0=0.3)。附图2显示了平滑因子P与缓存百分比δk的关系。平滑因子P曲线分三个阶段:(1)当缓存区内数据量低的时候,P的权重低,更加依赖于实际估算的码率,有利于缓存的上升,脱离视频播放停顿问题。(2)当缓存区开始逐步上升之后,P的权重迅速增长。因为有了一定量的缓存储备,平滑函数可以更好地处理码率估算波动问题,实现码率切换的稳定。(3)我们对逻辑斯谛方程后面添加一个限制参数的优化,主要体现在第三阶段。基于下面两个方面考虑:当网络带宽突变上升时,会导致缓存区内的数据量加速上升,此时δk变大,如果仅仅依靠逻辑斯谛方程来估算P,则P会大幅度增大,平滑步骤中对历史片段的权重增大。这就会导致平滑过度,使缓存区内的容量急剧上升;另一方面当网络带宽突变下降,情况就会以上面提到的相反,平滑过渡使缓存区内容量急剧下降。而缓存区内数据量的波动会直接影响我们算法第一步的码率估算,这是我们不希望看到的。因此,在逻辑斯谛方程后面加入了一个限制参数,可以根据δk的变化而动态的改变限制程度,从而避免了上述平滑过渡的情形。3.震荡检测及补偿;本专利技术针对多客户端竞争带宽问题,采用震荡因子,实时检测视频播放过程中出现的震荡情况。在监测到码率剧烈震荡后,码率决策进入补偿状态以避免码率震荡的持续。在补偿机制上,本文提出根据不同的缓存区状态采用高、中、低三种码率去平滑该时刻码率的震荡问题。同时优化了进入补偿的条件,针对不同的缓存状态下的震荡情况直接选择相应的补偿策略。3.1震荡检测相关参数及震荡因子计算;在实施震荡补偿之前,需要对视频播放的过程进行震荡检测。设定了一个滑动窗口机制(窗口大小设定为10s),在视频片段的切换过程中滑动窗口随之一起移动;当码率发生切换则计一次数,再对码率上切计正数下切计负数,然后在滑动窗口中统计这两种计数;通过这两个不同的计数方式结合平均码率计算方差。当码率稳定正常切换时两个方差的值是相同的,如果出现码率震荡,则这两个值就会出现差异,由此就可以计算出震荡因子。码率切换次数Γk,码率上下切次数φk,质量转换方差σi,j,震荡本文档来自技高网...

【技术保护点】
基于DASH的多客户端码率自适应及震荡补偿方法,具体步骤如下:步骤1.基于缓存的码率估算;基于缓存模型的自适应算法使用缓存区内的数据量百分比来估算视频码率,从而避开了网络带宽的直接影响,有利于提高视频码率的稳定性。考虑到对数函数模型变化趋势相对比较平缓,能够实现码率估算的平稳增长和减少。因此本专利技术采用基于缓存的对数模型自适应算法,将缓存分区和对数模型结合,根据缓存区容量的百分比计算所要切换的视频码率;同时将缓存分为三个区间,分别为缓存上溢区间、缓存均衡区间、缓存下溢区间。该对数模型为:ξk=a×logb(δk×c)    (1)式(1)ξk中为第k段所要切换的码率,δk为第k段时刻缓存区内数据量填充的百分比,a为该MPD文件中最大码率的值,c为缓存下溢阀值,b为缓存上溢阀值;设定为c=5,b=4则缓存下溢区间为0‑20%、缓存均衡区间为20%‑80%、缓存上溢区间为80%‑100%;步骤2.基于逻辑斯谛方程模型的平滑处理;网络的不稳定性,会导致缓存区内的数据量出现一定程度的波动,从而使式(1)计算出来的码率可能出现震荡现象。针对该问题,在平滑处理基础上,设计基于逻辑斯谛(Logistic)方程的平滑因子模型,随缓存状态变化动态调整平滑因子;该公式为:BRk=(1‑P)×ξk+P×ξk‑1    (2)式(2)中,BRk为平滑后的第k段码率,P为平滑因子;平滑因子计算公式为:P=11+e-m(δk-β0)(1-β0·δk)---(3)]]>式(3)中:m为逻辑斯谛方程的陡峭参数(设定m=12),β0为逻辑斯谛方程的中心值(设定β0=0.3);平滑因子P曲线分三个阶段:(1)当缓存区内数据量低的时候,P的权重低,更加依赖于实际估算的码率,有利于缓存的上升,脱离视频播放停顿问题。(2)当缓存区开始逐步上升之后,P的权重迅速增长;因为有了一定量的缓存储备,平滑函数可以更好地处理码率估算波动问题,实现码率切换的稳定;(3)我们对逻辑斯谛方程后面添加一个限制参数的优化,主要体现在第三阶段。基于下面两个方面考虑:当网络带宽突变上升时,会导致缓存区内的数据量加速上升,此时δk变大,如果仅仅依靠逻辑斯谛方程来估算P,则P会大幅度增大,平滑步骤中对历史片段的权重增大。这就会导致平滑过度,使缓存区内的容量急剧上升;另一方面当网络带宽突变下降,情况就会以上面提到的相反,平滑过渡使缓存区内容量急剧下降;而缓存区内数据量的波动会直接影响步骤1的码率估算;因此,在逻辑斯谛方程后面加入了一个限制参数,可以根据δk的变化而动态的改变限制程度,从而避免了上述平滑过渡的情形;步骤3.震荡检测及补偿;针对多客户端竞争带宽问题,采用震荡因子,实时检测视频播放过程中出现的震荡情况。在监测到码率剧烈震荡后,码率决策进入补偿状态以避免码率震荡的持续;在补偿机制上,提出根据不同的缓存区状态采用高、中、低三种码率去平滑该时刻码率的震荡问题。同时优化了进入补偿的条件,针对不同的缓存状态下的震荡情况直接选择相应的补偿策略;3.1震荡检测相关参数及震荡因子计算;在实施震荡补偿之前,需要对视频播放的过程进行震荡检测。设定了一个滑动窗口机制(窗口大小设定为10s),在视频片段的切换过程中滑动窗口随之一起移动;当码率发生切换则计一次数,再对码率上切计正数下切计负数,然后在滑动窗口中统计这两种计数;通过这两个不同的计数方式结合平均码率计算方差。当码率稳定正常切换时两个方差的值是相同的,如果出现码率震荡,则这两个值就会出现差异,由此就可以计算出震荡因子。码率切换次数Γk,码率上下切次数φk,质量转换方差σi,j,震荡方差ωi,j,震荡因子ρi,j公式如下。Γk=1ifξk≠ξk-10otherwise---(4)]]>φk=1ifξk>ξk-1-1ifξk<ξk-10otherwise---(5)]]>σi,j2=Σk=i+1jΓk×(ξk×tk-μi,j×tk)2Σk=ijtk---(6)]]>ωi,j2=Σk=i+1jφk×(ξk×tk-μi,j×tk)2Σk=ijtk---(7)]]>ρi,j=1-ωi,jσi,jifσi,j>00otherwise---(8)]]>其中ξk表示第k段的码率,tk表示第k段的段持续时间,μi,j表示第i段到第j段的平均码率,Γk表示码率切换次数统计,φk表示上下切次数统计;...

【技术特征摘要】
1.基于DASH的多客户端码率自适应及震荡补偿方法,具体步骤如下:步骤1.基于缓存的码率估算;基于缓存模型的自适应算法使用缓存区内的数据量百分比来估算视频码率,从而避开了网络带宽的直接影响,有利于提高视频码率的稳定性。考虑到对数函数模型变化趋势相对比较平缓,能够实现码率估算的平稳增长和减少。因此本发明采用基于缓存的对数模型自适应算法,将缓存分区和对数模型结合,根据缓存区容量的百分比计算所要切换的视频码率;同时将缓存分为三个区间,分别为缓存上溢区间、缓存均衡区间、缓存下溢区间。该对数模型为:ξk=a×logb(δk×c) (1)式(1)ξk中为第k段所要切换的码率,δk为第k段时刻缓存区内数据量填充的百分比,a为该MPD文件中最大码率的值,c为缓存下溢阀值,b为缓存上溢阀值;设定为c=5,b=4则缓存下溢区间为0-20%、缓存均衡区间为20%-80%、缓存上溢区间为80%-100%;步骤2.基于逻辑斯谛方程模型的平滑处理;网络的不稳定性,会导致缓存区内的数据量出现一定程度的波动,从而使式(1)计算出来的码率可能出现震荡现象。针对该问题,在平滑处理基础上,设计基于逻辑斯谛(Logistic)方程的平滑因子模型,随缓存状态变化动态调整平滑因子;该公式为:BRk=(1-P)×ξk+P×ξk-1 (2)式(2)中,BRk为平滑后的第k段码率,P为平滑因子;平滑因子计算公式为: P = 1 1 + e - m ( δ k - β 0 ) ( 1 - β 0 · δ k ) - - - ( 3 ) ]]>式(3)中:m为逻辑斯谛方程的陡峭参数(设定m=12),β0为逻辑斯谛方程的中心值(设定β0=0.3);平滑因子P曲线分三个阶段:(1)当缓存区内数据量低的时候,P的权重低,更加依赖于实际估算的码率,有利于缓存的上升,脱离视频播放停顿问题。(2)当缓存区开始逐步上升之后,P的权重迅速增长;因为有了一定量的缓存储备,平滑函数可以更好地处理码率估算波动问题,实现码率切换的稳定;(3)我们对逻辑斯谛方程后面添加一个限制参数的优化,主要体现在第三阶段。基于下面两个方面考虑:当网络带宽突变上升时,会导致缓存区内的数据量加速上升,此时δk变大,如果仅仅依靠逻辑斯谛方程来估算P,则P会大幅度增大,平滑步骤中对历史片段的权重增大。这就会导致平滑过度,使缓存区内的容量急剧上升;另一方面当网络带宽突变下降,情况就会以上面提到的相反,平滑过渡使缓存区内容量急剧下降;而缓存区内数据量的波动会直接影响步骤1的码率估算;因此,在逻辑斯谛方程后面加入了一个限制参数,可以根据δk的变化而动态的改变限制程度,从而避免了上述平滑过渡的情形;步骤3.震荡检测及补偿;针对多客户端竞争带宽问题,采用震荡因子,实时检测视频播放过程中出现的震荡情况。在监测到码率剧烈震荡后,码率决策进入补偿状态以避免码率震荡的持续;在补偿机制上,提出根据不同的缓存区状态采用高、中、低三种码率去平滑该时刻码率的震荡问题。同时优化了进入补偿的条件,针对不同的缓存状态下的震荡情况直接选择相应的补偿策略;3.1震荡检测相关参数及震荡因子计算;在实施震荡补偿之前,需要对视频播放的过程进行震荡检测。设定了一个滑动窗口机制(窗口大小设定为10s),在视频片段的切换过程中滑动窗口随之一起移动;当码率发生切换则计一次数,再对码率上切计正数下切计负数,然后在滑动窗口中统计这两种计数;通过这两个不同的计数方式结合平均码率计算方差。当码率稳定正常切换时两个方差的值是相同的,如果出现码率震荡,则这两个值就会出现差异,由此就可以计算出震荡因子。码率切换次数Γk,码率上下切次数φk,质量转换方差σi,j,震荡方差ωi,j,震荡因子ρi,j公式如下。 Γ k = 1 ifξ k ≠ ξ k - 1 0 o t h e r w i s e - - - ( 4 ) ]]> φ k = 1 ifξ k > ξ k - 1 - 1 ifξ k < ξ k - 1 0 o t h e r w i s e - - ...

【专利技术属性】
技术研发人员:熊丽荣金鑫
申请(专利权)人:浙江工业大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1