一种视频传输的长期码率规划方法

文档序号:35622493发布日期:2023-10-05 18:42阅读:32来源:国知局
本发明涉及流媒体传输领域,特别涉及一种视频传输的长期码率规划方法。
背景技术
::1、随着视频流的快速发展,为了满足用户对视频质量的需求,同时适应多变的网络环境,视频提供商多采用码率选择算法(bitrate selection algorithm)来优化用户的视频体验质量(qoe,quality of experience),客户端根据当前网络条件从具有不同质量级别的视频块中选择适当的码率。目前普遍使用的码率选择算法通常根据缓冲区占用和预测的带宽等感知的系统状态来确定视频码率。它们对瞬时带宽变化作出即时响应,并提供局部最优的比特率选择算法。然而,它们却忽略了选择码率的过程中时间尺度不一致和评估度量不一致的问题。2、在一些经典的码率选择算法中,一方面,基于高级视频编码(avc,advanced videocoding)的算法如基于缓存区的优化线性算法(bola:buffer-based optimized linearalgorithm)或基于可伸缩视频编码(svc,scalable video coding)的基于块的反向自适应码率调整算法(backfilling:backward adaptive chunk-based rate adaptation andplayout buffer filling)仅根据下一个视频块或视频层的下载时间确定下一个要请求的视频数据。另一方面,一种基于http的动态自适应视频流控制理论算法(mpc:multi-playercompatibility)和面向dash的前瞻性在线比特率自适应算法(mspc:multi-stream playercompatibility)是前瞻性算法,它们考虑下一个n个块的比特率,以获得下一个请求块的最优比特率。因此,mpc和mspc的时间尺度是下一个n个块的下载时间。如上所述的这些算法忽略了视频数据大小的差异,导致了不一致的时间尺度。这导致比特率选择的评价规模或所匹配的带宽容量不一致。3、此外,大多数现有的码率选择算法在评估所请求的视频数据时,都使用该方法所追求的优化目标作为评价度量。例如,bola和回填根据缓冲区状态选择视频数据,而bola-fast和光标通过切换视频比特率来评估视频。mpc选择比特率来最大限度地提高接下来5个块的体验质量(qoe),而mspc结合了平均比特率切换变化和缓冲区占用率作为比特率选择的评估函数。然而,这些码率选择算法缺乏一个统一的视频评估度量。技术实现思路1、为了解决现有码率选择算法存在的因码率选择性能评估的时间尺度不同导致的决策局部最优问题,本发明提供了一种能够实现长期码率规划的方法。2、为了实现上述技术目的,本发明的技术方案是:3、一种视频传输的全局最优码率规划方法,包括以下步骤:4、步骤一:客户端首先确定一个时间尺度,并预测该时间尺度内的平均带宽,根据时间尺度和预测的平均带宽计算带宽容量;5、步骤二:然后根据当前缓冲区得到可选的视频块集合;6、步骤三:通过搜索算法从可选的视频块集合中找到所有可在时间尺度内下载的视频块组合;7、步骤四:计算每一个视频块组合的效用函数值并选择效用函数值最大的视频块组合的第一个视频块以及其码率作为最优决策,根据该最优决策构建向服务器发送下载视频块的请求。8、所述的方法,所述的步骤一中,客户端通过如下公式确定时间尺度ts:9、10、其中,k表示当前客户端已下载视频块的块数,d(i)表示第i次下载的视频块的大小,c(i)表示在第i次下载视频块时所使用的网络带宽,表示第i次下载视频块的时间,表示过去n个视频块的下载时间之和。11、所述的方法,所述的步骤一中,通过如下公式来表示在时间尺度ts内的平均带宽cts预测值:12、13、其中,d(i)表示客户端第i次下载的视频块的大小,表示过去下载的n个视频块的大小之和。14、所述的方法,所述的步骤一中,通过下式来估算未来ts时间内的带宽容量bc:15、bc=ts*cts16、所述的方法,所述的步骤二中,客户端根据当前缓冲区得到可选的视频块集合的过程如下:17、步骤a1、假设视频分成n个视频块,每个视频块具有m个码率等级,则通过下公表示当前客户端播放视频的所有视频块vset:18、vset={v1,1,v1,2,...v1,m,v2,1,...vn,m}19、其中,vi,j表示具有j等级码率的第i号视频块;20、步骤a2、假设当前客户端缓冲区中已有的视频块为vbuffer:21、22、步骤a3、vbuffer中可提高视频块码率等级的视频块集合vupdate由以下公式表示:23、vupdate={vi,k|q≤i≤q+j,li-q<k≤m}24、步骤a4、客户端未下载任何码率等级的视频块集合vnew可由以下公式表示:25、vnew={vi,k|q+j<i≤n,1≤k≤m}26、步骤a5、所有可选择下载的视频块集合vselectable=vupdate∪vnew,记为其中,s为vupdate∪vnew集合的元素总数,表示具有mi码率等级的第ai号视频块,i的取值为1到s的整数。27、所述的方法,所述的步骤三中,通过搜索算法从可选的视频块集合中找到所有可在时间尺度内下载的视频块组合的过程如下:28、设xi∈{0,1},i∈{1,2,...s},由于xi的取值不同,总共有2s个不同的视频块组合v,即从这2s个不同的视频块组合中找出满足以下条件的所有组合:29、30、其中,表示视频块的数据大小,表示请求下载视频块的时间紧迫度;将满足条件的视频块组合记为对这些视频块组合中的每一种视频块组合中的ci个元素进行全排列,得到不同顺序的视频块组合其中ci!表示ci的阶乘,由此可以得到所有可在时间尺度内下载的视频块组合31、所述的方法,请求下载视频块的时间紧迫度计算如下:32、33、34、其中,h表示客户端已下载视频块中的最大块号,b(h)表示客户端下载完第h号视频块时缓冲区的大小,l表示一个视频块的播放时长,b(h)/l表示缓冲区已有的视频块数,h-b(h)/l表示客户端已播放的视频块数,(ai-(h-b(h)/l))*l表示当前客户端播放到第ai号视频块的时长,表示视频块的下载时间,d(h)表示第h号视频块的数据大小。35、所述的方法,所述的步骤四中,计算每一个视频块组合的效用函数值并选择效用函数值最大的视频块组合的过程为:36、步骤a1、通过如下公式计算中每个视频块组合的效用函数值37、38、39、其中,在ts时间段内客户端将会下载视频块组合并播放缓冲区中第q号到q+p-1号视频块,r(i)表示客户端播放的第i号视频块的码率等级,表示时间尺度ts内客户端播放p个视频块的码率之和,表示时间尺度ts内客户端播放p个视频块之间的码率切换值,ti表示客户端在下载第i号视频块时的卡顿时长,表示在ts时间尺度内播放视频块的qoe,rmax为视频码率集中的最大码率等级,ad表示要播放的整个视频的所有数据块的平均数据大小,xreq为在ts内下载且播放的视频块数据大小,表示当前决策对未来决策的影响评估值,α,β,γ分别为相应影响因素权重的参数;40、步骤a2、视频块组合对应的效用函数值为选取效用函数值最大的对应的视频块组合并将该视频块组合的第一个视频块的块号和码率作为最优决策向服务器发送请求。41、所述的方法,在下载第i号视频块时造成的播放卡顿时间ti可以表示为:42、43、其中,b(i-1)表示下载完第i-1号视频块时的缓冲区大小,d(i)表示第i号视频块的数据大小,表示第i号视频块的下载时间。44、本发明的技术效果在于,根据缓冲区占用率和预测的未来时间尺度上的带宽容量,找到最佳效用值规划视频组合,从而实现长期最优的码率规划。45、下面结合附图对本发明作进一步说明。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1