CN111447448B - 一种基于用户体验与终端能耗的dash视频码率选择方法 - Google Patents

一种基于用户体验与终端能耗的dash视频码率选择方法 Download PDF

Info

Publication number
CN111447448B
CN111447448B CN202010283472.8A CN202010283472A CN111447448B CN 111447448 B CN111447448 B CN 111447448B CN 202010283472 A CN202010283472 A CN 202010283472A CN 111447448 B CN111447448 B CN 111447448B
Authority
CN
China
Prior art keywords
dash video
dash
video segment
downloaded
downloading
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010283472.8A
Other languages
English (en)
Other versions
CN111447448A (zh
Inventor
刘伟
余希晨
杜薇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan University of Technology WUT
Original Assignee
Wuhan University of Technology WUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan University of Technology WUT filed Critical Wuhan University of Technology WUT
Priority to CN202010283472.8A priority Critical patent/CN111447448B/zh
Publication of CN111447448A publication Critical patent/CN111447448A/zh
Application granted granted Critical
Publication of CN111447448B publication Critical patent/CN111447448B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria

Abstract

本发明提出了一种基于用户体验与终端能耗的DASH视频码率选择方法。将DASH客户端部署于移动终端。首先根据移动终端实时位置,选择距离移动终端最近的服务器连接。然后通过下载完成的DASH视频片段的相关信息,预测将要下载的DASH视频片段的下载时间内平均网络带宽。之后根据将要下载的DASH视频片段的下载时间,计算将要下载的DASH视频片段的总能耗。随后构建用户观看DASH视频的QoE模型。接着构建视频缓冲区队列、能耗队列。随后依次构建将要下载DASH视频片段的李雅普诺夫模型、李雅普诺夫漂移模型、李雅普诺夫漂移加惩罚模型。最后通过将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型得出优化目标,并根据优化目标求解出当前时间片应选择的DASH视频码率。

Description

一种基于用户体验与终端能耗的DASH视频码率选择方法
技术领域
本发明属于移动边缘计算领域,尤其涉及一种基于用户体验与终端能耗的DASH视频码率选择方法。
背景技术
DASH(DynamicAdaptive Streaming over HTTP)是一种基于HTTP的自适应比特率流技术,该技术主要应用于流媒体的传输,通过使用该技术,高质量的DASH视频流可以通过HTTP协议在互联网上稳定传输。目前很多DASH视频播放网站都在使用DASH作为其视频流的传输与播放的默认方法,例如YouTube、优酷、腾讯视频等。DASH技术简单来说就是将完整的视频(如电影、足球赛等)制作成多个不同的码率,之后将各个码率的视频分割成一系列较短的视频片段存储在HTTP服务器上,当DASH客户端播放该视频时,可以根据当时的网络状况和客户端的视频缓冲区来选择下一个视频片段播放的码率。因为DASH客户端会根据实际的网络状况来选择可播放(指在在当前网络条件下,可流畅播放的视频码率)的最高的视频码率,所以该技术可以很好地减少播放卡顿(由于视频缓冲区内无下载好的视频而导致视频播放中断)。
今年,我国5G开始走向商用,随着5G网络的逐渐普及,直播行业也将迎来一次新的发展机遇,然而,在HTTP/2版本出现之前,自适应码流技术应用于直播中会有延迟较高等问题,当HTTP/2协议出现之后,由于其多路复用、服务器端推送等新特性可以有效地降低网络传输的延迟,通过设计DASH在HTTP/2下的DASH视频码率选择策略,可将DASH技术更好地应用在直播领域。
同时,移动终端近几年发展迅速,从一开始只是单纯用来打电话,发信息的通信设备,到现在集通信、拍照、上网、娱乐为一体的小型计算机,因此智能手机被人们广泛使用,随着越来越多的移动设备接入互联网,移动数据流量飞速增长,根据思科视觉的统计预测,在2017至2022的五年时间里,全球移动数据流量每年将以46%的年复合年增长率。而在其中,视频流的流量占到66%。现在越来越多的用户更加倾向于在便于携带的移动终端(比如智能手机)上观看直播。然而,智能手机虽然有很多优点,但是,由于其体积较小,不能携带大容量的电池,而且不能实时充电,所以,在用户通过移动终端观看直播时,不仅要考虑网络带宽的情况,还要考虑观看直播的能量消耗。如何保证用户在有限的电量下,观看较高码率的视频,这是是一个需要解决的问题。
移动边缘计算(Mobile Edge Computing,MEC),其基本思想是把云计算平台从移动核心网络内部迁移到移动接入网边缘。移动边缘计算与云计算最大的区别在于它提供了一种新颖的计算环境,在终端设备的边缘为用户提供信息服务。边缘服务器具有对用户的临近性、服务处理的低延迟性、回程链路的低负载性和对用户端的移动感知性等特点,这为提高用户体验提供了新的思路。由于现在交通便利,大部分人在工作、旅游的路上都会使用手机观看DASH视频,然而,在边缘计算的网络环境中,用户在连续移动的过程中会不断切换其所连接的边缘服务器,从而导致用户观看DASH视频质量较差。因此,如何通过对用户的移动性进行预测,在边缘服务器覆盖的重叠区域完成服务器的切换,从而提高用户观看的DASH视频码率、减少观看过程中的卡顿时间,这是一个值得研究的问题。
发明内容
为了解决上述问题,本发明提出了在移动边缘计算中基于用户体验与终端能耗的DASH视频码率选择方法,其有效解决了用户在移动过程中可能产生的视频卡顿和播发DASH视频质量较低的问题,提升了用户的观看体验。
本发明解决其技术问题所采用的技术方案如下:本发明提供一种基于用户体验与终端能耗的DASH视频码率选择方法,包含以下步骤:
步骤1:将DASH客户端部署于移动终端,根据移动终端实时位置判断移动终端所在服务器的覆盖范围,若移动终端在多个服务器的覆盖范围的重合区域,计算移动终端到每个服务器之间的连接距离,选择距离移动终端最近的服务器作为移动终端对应的边缘服务器;
步骤2:分别定义将要下载的DASH视频片段、下载完成的DASH视频片段、参考DASH视频片段,依次计算下载完成的DASH视频片段的下载时间、参考DASH视频片段的下载时间、参考DASH视频片段下载时间内的平均网络带宽、参考DASH视频片段的下载时间内网络带宽平均梯度、下载完成的DASH视频片段下载时间内的带宽变化率、预测将要下载的DASH视频片段的下载时间内平均网络带宽的参考价值,通过下载完成的DASH视频片段的下载时间内平均网络带宽预测将要下载的DASH视频片段的下载时间内平均网络带宽,根据预测的将要下载的DASH视频片段的下载时间内平均网络带宽计算将要下载的DASH视频片段的下载时间;
步骤3:根据将要下载的DASH视频片段的下载时间,依次计算将要下载的DASH视频片段的下载时间内的CPU下载能耗、将要下载的DASH视频片段的CPU在处理DASH视频下载解码工作时的使用率、将要下载的DASH视频片段的CPU在下载DASH视频时处理其他任务的能耗,进一步构建将要下载的DASH视频片段的CPU总能耗,计算将要下载的DASH视频片段的网络接口的能耗,构建将要下载的DASH视频片段的总能耗;
步骤4:依次计算下载DASH视频片段的平均码率、下载DASH视频片段的DASH视频码率平均切换幅度、播放DASH视频片段的卡顿时间,进一步构建用户观看DASH视频的QoE模型;
步骤5:根据移动终端视频缓冲区中下载完成的DASH视频片段的时长构建视频缓冲区队列,并通过下载完成的DASH视频片段的视频缓冲区队列预测将要下载的DASH视频片段下载结束时刻的视频缓冲区队列,根据移动终端下载完成的DASH视频片段的总能耗构建能耗队列,通过将要下载的DASH视频片段的总能耗和下载完成的DASH视频片段的总能耗预测将要下载的DASH视频片段下载结束的时刻的能耗队列;
步骤6:将要下载的DASH视频片段下载开始的时刻,根据预测将要下载的DASH视频片段下载结束的时刻的视频缓冲区队列、将要下载的DASH视频片段下载结束的时刻的能耗队列构建将要下载DASH视频片段的李雅普诺夫模型,根据将要下载的DASH视频片段的李雅普诺夫模型、下载完成的DASH视频片段的李雅普诺夫模型构建将要下载的DASH视频片段的李雅普诺夫漂移模型,根据将要下载的DASH视频片段的李雅普诺夫漂移模型、用户观看DASH视频的QoE模型构建将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型,通过将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型得出优化目标,并根据优化目标求解出当前时间片应选择的DASH视频码率;
作为优选,步骤1所述移动终端上DASH客户端用于下载多个连续DASH视频片段;
步骤1所述根据移动终端实时位置判断移动终端所在服务器的覆盖范围:
移动终端下载DASH视频区域一共有U台服务器,每台服务器的覆盖范围为圆形,其半径为ru,定义第u台服务器的坐标为(xu,yu),u∈[1,U]。
步骤1所述计算移动终端到每个服务器之间的连接距离:
定义移动终端当前位置的坐标为(x,y),定义du为移动终端到第u台服务器的距离,du的具体计算方式如下:
Figure BDA0002447574850000021
步骤1所述选择距离移动终端最近的服务器作为移动终端对应的边缘服务器为:
选择d1,d2,...,dU中最小的值作为作为移动终端对应的边缘服务器;
所述边缘服务器用于连接移动终端,用于下载DASH视频片段;
作为优选,步骤2所述定义将要下载的DASH视频片段为:
第n个DASH视频片段定义为将要下载的DASH视频片段;
步骤2所述定义下载完成的DASH视频片段为:
第1个DASH视频片段至第n-1个DASH视频片段为下载完成的DASH视频片段,且第一个DASH视频片段下载开始的时刻为t0
步骤2所述定义参考DASH视频片段为:
在第1个DASH视频片段至第n-1个DASH视频片段中,选取多个连续的DASH视频片段作为参考DASH视频片段用于预估带宽,数量为m,具体为第n-1-m个DASH视频片段至第n-1个DASH视频片段;
步骤2所述计算下载完成的DASH视频片段的下载时间为:
Tn-1=tn-1-tn-2
n∈{2,3,...,N}
其中,Tn-1为第n-1个DASH视频片段的下载时间,tn-2为第n-1个DASH视频片段下载开始的时刻,tn-2为第n-2个DASH视频片段下载结束的时刻,tn-1为第n-1个DASH视频片段下载结束的时刻,tn-1为第n个DASH视频片段下载开始的时刻,N为DASH视频片段的数量;
通过移动终端上DASH客户端下载多个连续DASH视频片段时不会中断,故tn既为第n个DASH视频片段下载结束的时刻,也为第n+1个DASH视频片段下载开始的时刻;
步骤2所述计算参考DASH视频片段的下载时间为:
Tsample=tn-1-tn-2-m
其中,Tsample表示参考DASH视频片段的下载时间,主要包括第n-1-m个DASH视频片段下载开始的时刻至第n-1个DASH视频片段下载结束的时刻,tn-1为第n个DASH视频片段下载开始的时刻,tn-2-m为第n-1-m个DASH视频片段下载开始的时刻,步骤2所述计算参考DASH视频片段下载时间内的平均网络带宽:
Figure BDA0002447574850000031
其中,
Figure BDA0002447574850000032
表示在下载参考DASH视频片段时间内的平均网络带宽,
Figure BDA0002447574850000033
表示在下载参考DASH视频片段时,在当前边缘服务器之外下载DASH视频片段的平均网络带宽,
Figure BDA0002447574850000034
表示在下载参考DASH视频片段时,在当前边缘服务器里下载DASH视频片段的平均网络带宽,β表示不同边缘服务器之间的差异值;
步骤2所述计算参考DASH视频片段的下载时间内网络带宽平均梯度为:
Figure BDA0002447574850000035
其中,
Figure BDA0002447574850000036
表示在参考DASH视频片段的下载时间内网络带宽随时间变化的平均梯度;
步骤2所述计算下载完成的DASH视频片段下载时间内平均网络带宽为:
Figure BDA0002447574850000037
其中,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带,Sn-1为下载第n-1个DASH视频片段的大小,Tn-1为第n-1个DASH视频片段下载持续的时间;
步骤2所述计算下载完成的DASH视频片段下载时间内的带宽变化率:
Figure BDA0002447574850000041
其中,
Figure BDA0002447574850000042
表示下载第n-1个DASH视频片段与下载第n-2个DASH视频片段持续时间内的带宽变化率,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带,bn-2为下载第n-2个DASH视频片段下载时间内平均网络带,tn-1为第n-1个DASH视频片段下载结束的时刻,tn-2为第n-2个DASH视频片段下载结束的时刻;
步骤2所述计算预测将要下载的DASH视频片段的下载时间内平均网络带宽的参考价值:
Figure BDA0002447574850000043
αn-1∈[0,1]
其中,αn-1表示第n-1个DASH视频片段下载时间内平均网络带宽预测第n个DASH视频片段下载时间内平均网络带宽的参考价值;
当移动终端上DASH客户端处于下载第n个DASH视频片段的开始时刻,预测下载第n个DASH视频片段持续的时间内平均网络带宽;
步骤2所述通过下载完成的DASH视频片段的下载时间内平均网络带宽预测将要下载的DASH视频片段的下载时间内平均网络带宽为:
通过第n-1个DASH视频片段即下载完成的DASH视频片段的下载时间内平均网络带宽,预测第n个DASH视频片段即将要下载的DASH视频片段的下载时间内平均网络带宽的预估值即ωn,具体计算方式如下:
ωn=(1-αn-1n-1n-1·bn-1
其中,αn-1表示第n-1个DASH视频片段下载时间内平均网络带宽预测第n个DASH视频片段下载时间内平均网络带宽的参考价值,ωn-1表示第n-1个DASH视频片段下载时间内平均网络带宽的预估值,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带宽;
步骤2所述根据预测的将要下载的DASH视频片段的下载时间内平均网络带宽计算将要下载的的DASH视频片段的下载时间,具体为:
Figure BDA0002447574850000044
Sn={s1,s2,s3,…,sX}
其中,Tn表示第n个DASH视频片段的下载时间,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X个不同的码率可供选择,分别为s1,s2,s3,…,sX
作为优选,步骤3所述计算将要下载的DASH视频片段的下载时间内的CPU下载能耗为:
计算第n个DASH视频片段的下载时间内的CPU下载能耗,具体公式为:
Figure BDA0002447574850000045
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000046
为第n个DASH视频片段的下载时间内的CPU下载能耗,k1为能耗相关系数,b1为能耗偏移系数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤3所述将要下载的DASH视频片段的CPU在处理DASH视频下载解码工作时的使用率为:
第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,具体公式为:
Figure BDA00024475748500000511
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000051
为第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,k2为使用率相关系数,b2为使用率偏移系数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤3所述将要下载的DASH视频片段的CPU在下载DASH视频时处理其他任务的能耗为:
第n个DASH视频片段的下载时间内的CPU在下载DASH视频时处理其他任务的能耗,具体公式为:
Figure BDA0002447574850000052
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000053
为第n个DASH视频片段的下载时间内的CPU在下载DASH视频时处理其他任务的能耗,k3为其他任务能耗相关系数,b3为其他任务能耗偏移系数,ρcpu为CPU的总利用率,
Figure BDA0002447574850000054
为第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,N为DASH视频片段的数量;
步骤3所述构建将要下载的DASH视频片段的CPU总能耗为:
步骤3所述下载第n个DASH视频片段的下载时间内的CPU的总能耗,具体公式为:
Figure BDA0002447574850000055
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000056
下载第n个DASH视频片段的下载时间内的CPU的总能耗,κ为CPU运行的基本能耗,N为DASH视频片段的数量;
步骤3所述计算将要下载的DASH视频片段的网络接口的能耗为:
第n个DASH视频片段的下载时间内的网络接口的能耗,计算公式如下:
Figure BDA0002447574850000057
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000058
为第n个DASH视频片段的下载时间内的网络接口的能耗,θ为网络接口能耗与时间的相关系数,μ为网络接口能耗与时间的相关指数,且θ和μ为常数,N为DASH视频片段的数量;
步骤3所述构建将要下载DASH视频片段的总能耗为:
第n个DASH视频片段的下载时间内的总能耗,计算方式如下:
Figure BDA00024475748500000512
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000059
表示第n个DASH视频片段的下载时间内的总能耗,
Figure BDA00024475748500000510
下载第n个DASH视频片段的下载时间内的CPU的总能耗,
Figure BDA0002447574850000061
为第n个DASH视频片段的下载时间内的网络接口的能耗,N为DASH视频片段的数量;
作为优选,步骤4所述下载DASH视频的平均码率为:
Figure BDA0002447574850000062
n∈{1,2,...,N}
其中,Rave表示下载DASH视频片段的平均码率,Rk表示下载第k个DASH视频片段的码率,n表示当前下载DASH视频片段的总数,且R1,R2……n-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,N为DASH视频片段的数量;
步骤4所述下载DASH视频片段的DASH视频码率平均切换幅度为:
Figure BDA0002447574850000063
n∈{2,3,...,N}
其中,Aave表示下载DASH视频片段的DASH视频码率平均切换幅度,Rk-1表示下载第k-1个DASH视频片段的码率,N为DASH视频片段的数量;
步骤4所述播放DASH视频片段的卡顿时间为:
Figure BDA0002447574850000064
Figure BDA0002447574850000065
n∈{1,2,...,N}
其中,Trebuffer表示播放DASH视频片段的卡顿时间,
Figure BDA0002447574850000066
表示在下载第k个DASH视频片段下载开始时刻的视频缓冲区内DASH视频的时长,Tk表示第k个DASH视频片段的下载时间,且T1,T2…Tn-1均为下载完成的DASH视频片段的下载时间,Tn为将要下载的下载DASH视频片段的下载时间通过步骤2计算,tk-1表示第k个DASH视频片段下载开始的时刻,N为DASH视频片段的数量;
步骤4所述构建用户观看DASH视频的QoE模型为:
pQoE=Rave-γ·Aave-δ·Trebuffer
其中,pQoE表示用户的观看体验,Rave表示下载DASH视频片段的平均码率,Aave表示下载DASH视频片段的DASH视频码率平均切换幅度,γ表示用户在观看DASH视频时对DASH视频码率切换幅度的敏感程度,Trebuffer表示播放DASH视频片段的卡顿时间,δ表示用户在观看DASH视频时对播放卡顿的敏感程度;
作为优选,步骤5所述根据移动终端视频缓冲区中下载完成的DASH视频片段的时长构建视频缓冲区队列:
移动终端下载完成的DASH视频片段放在视频缓冲区内进行播放,当缓冲区内无DASH视频时就会发生播放卡顿,在第n-1个DASH视频片段的下载结束的时刻,根据视频缓冲区内的DASH视频片段的时长构建视频缓冲队列
Figure BDA0002447574850000067
步骤5所述通过下载完成的DASH视频片段的视频缓冲区队列预测将要下载的DASH视频片段下载结束的时刻的视频缓冲区队列:
第n个DASH视频片段下载完成时视频缓冲区队列的计算方式如下:
Figure BDA0002447574850000071
n∈{1,2,...,N}
其中
Figure BDA0002447574850000072
表示在第n个DASH视频片段下载完成时视频缓冲区队列的值,
Figure BDA0002447574850000073
表示在第n-1个DASH视频片段的下载结束的时刻视频缓冲区队列的值,而且第n个DASH视频片段为将要下载的DASH视频片段,第n-1个DASH视频片段为下载完成的DASH视频片段,ξ表示移动终端请求的往返时间,τ表示单个DASH视频片段的时长,N为DASH视频片段的数量;
步骤5所述根据移动终端下载完成的DASH视频片段的总能耗构建能耗队列:
为更好控制下载DASH视频的能耗,在第n-1个DASH视频片段的下载结束的时刻,下载完成的DASH视频片段的总能耗构建能耗队列
Figure BDA0002447574850000074
步骤5所述通过将要下载的DASH视频片段的总能耗和下载完成的DASH视频片段的总能耗预测将要下载的DASH视频片段下载结束时刻的能耗队列:
第n个DASH视频片段下载结束的时刻的能耗队列的计算方式如下:
Figure BDA0002447574850000075
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000076
为在第n个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure BDA0002447574850000077
为在第n-1个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure BDA0002447574850000078
表示第n个DASH视频片段的下载时间内的总能耗,ζave为单位时间内的能耗限制,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
作为优选,步骤6所述根据预测将要下载的DASH视频片段下载完成的时刻的视频缓冲区队列、将要下载的DASH视频片段下载结束时刻的能耗队列构建将要下载的DASH视频片段的李雅普诺夫模型:
第n个DASH视频片段的下载结束时刻的李雅普诺夫模型的具体公式如下:
Figure BDA0002447574850000079
n∈{1,2,...,N}
其中,Ln表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫模型,
Figure BDA00024475748500000710
表示在第n个DASH视频片段的下载结束时刻的视频缓冲区队列的值,
Figure BDA00024475748500000711
表示在第n个DASH视频片段的下载结束时刻的能耗队列的值,而且第n个DASH视频片段为将要下载的DASH视频片段,N为DASH视频片段的数量;
步骤6所述根据将要下载的DASH视频片段的李雅普诺夫模型、下载完成的DASH视频片段的李雅普诺夫模型构建将要下载的DASH视频片段的李雅普诺夫漂移模型:
在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型的计算方式如下:
Δn=Ln-Ln-1
n∈{1,2,...,N}
其中,Δn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型,Ln为在第n个DASH视频片段的下载结束时刻的李雅普诺夫模型,Ln-1为在第n-1个DASH视频片段的下载结束时刻的李雅普诺夫模型,而且第n-1个DASH视频片段为下载完成的DASH视频片段,N为DASH视频片段的数量;
步骤6所述根据将要下载DASH视频片段的李雅普诺夫漂移模型、用户观看DASH视频的QoE模型构建将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型:
第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的计算方式如下:
Figure BDA0002447574850000089
n∈{1,2,...,N}
其中,DPPn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型,V为惩罚因子,pQoE表示用户的观看体验,Δn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型,Tn表示第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤6所述通过将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型得出优化目标:
在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的值会有一个上限,满足以下约束:
Figure BDA0002447574850000081
n∈{1,2,...,N}
其中,DPPn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型,χ为常数,
Figure BDA0002447574850000082
表示在第n-1个DASH视频片段的下载结束的时刻视频缓冲区队列的值,
Figure BDA0002447574850000083
为在第n-1个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure BDA0002447574850000084
表示第n个DASH视频片段的下载时间内的总能耗,ζave为单位时间内的能耗限制,ξ表示移动终端请求的往返时间,τ表示单个DASH视频片段的时长,Tn为第n个DASH视频片段的下载时间,V为惩罚因子,N为DASH视频片段的数量;
将李雅普诺夫漂移加惩罚模型的上限定义为优化目标,具体公式为:
Figure BDA0002447574850000085
n∈{1,2,...,N}
其中,Gn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的值的最大值,也为优化目标,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
需要给将要下载的DASH视频片段选择合适的码率使得:
Figure BDA0002447574850000086
n∈{1,2,...,N}
其中,min表示最小化,N为DASH视频片段的数量;
步骤6所述根据优化目标求解出当前时间片应选择的DASH视频码率:
优化目标中第n个DASH视频片段的下载时间内的总能耗
Figure BDA0002447574850000087
的表达公式为:
Figure BDA0002447574850000088
n∈{1,2,...,N}
其中,κ为CPU运行的基本能耗,k1为CPU下载能耗的相关系数,b1为第n个DASH视频片段的下载时间内的CPU下载能耗的偏移系数,k2为CPU在处理DASH视频下载解码工作时使用率的相关系数,b2为CPU在处理DASH视频下载解码工作时使用率的偏移系数,k3为其他任务能耗相关系数,b3为其他任务能耗偏移系数,ρcpu为CPU的总利用率,θ为网络接口能耗与时间的相关系数,μ为网络接口能耗与时间的相关指数,且θ和μ为常数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
下载时间满足以下公式:
Figure BDA0002447574850000091
n∈{1,2,...,N}
Sn={s1,s2,s3,…,sX}
其中,Tn为第n个DASH视频片段的下载时间,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X个不同的码率可供选择,分别为s1,s2,s3,…,sX,ωn为第n个DASH视频片段即将要下载的DASH视频片段的下载时间内平均网络带宽的预估值,N为DASH视频片段的数量;
优化目标中用户的观看体验的表达公式为:
Figure BDA0002447574850000092
n∈{1,2,...,N}
其中,pQoE为用户的观看体验,Rk表示下载第k个DASH视频片段的码率,Rk-1表示下载第k-1个DASH视频片段的码率,n表示当前下载DASH视频片段的总数,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,
Figure BDA0002447574850000093
表示在下载第k个DASH视频片段下载开始时刻的视频缓冲区内DASH视频的时长,Tk表示第k个DASH视频片段的下载时间,且T1,T2…Tn-1均为下载完成的DASH视频片段的下载时间,Tn为将要下载的下载DASH视频片段的下载时间,tk-1表示第k个DASH视频片段下载开始的时刻,γ表示用户在观看DASH视频时对DASH视频码率切换幅度的敏感程度,δ表示用户在观看DASH视频时对播放卡顿的敏感程度,N为DASH视频片段的数量,且当k=n时,满足以下公式:
Rk=Rn=Sn
n∈{1,2,...,N}
Sn={s1,s2,s3,…,sX}
其中,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X个不同的码率可供选择,分别为s1,s2,s3,…,sX,Rk表示下载第k个DASH视频片段的码率,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,N为DASH视频片段的数量;
将不同的码率代入优化目标的表达式中,具体如下所示:
{g1,g2,...,gX}
n∈{1,2,...,N}
其中,g1,g2,g3,…,gX为s1,s2,s3,…,sX代入Gn表达式求出的对应的值,N为DASH视频片段的数量,从g1,g2,g3,…,gX中选出最小的值,该值所对应的DASH视频码率为将要下载的DASH视频片段的码率,选择该码率既可以使用户有较好的观看体验,又可以避免移动终端的电量提前耗尽的情况。
本发明提供的一种基于用户体验与终端能耗的DASH视频码率选择方法,其适用的范围是多服务器的移动边缘计算环境。系统在多个边缘服务器的重叠区域,通过信息收集子模块收集终端的移动信息,服务器选择子模块根据收集到的信息以此来选择连接的边缘服务器。在完成边缘服务器的选择后,DASH视频码率选择模块首先通过网络带宽估计子模块和终端能耗计算子模块获取选择DASH视频码率所需要的相关信息,然后DASH视频请求子模块采用基于李雅普诺夫模型优化的多服务器移动边缘计算环境的针对低延时流与终端能耗的DASH视频码率选择算法对相关信息进行处理,并向服务器请求合适的DASH视频码率,以此来提高用户观看DASH视频的体验。
附图说明
图1:是本发明实施例的方法流程图;
图2:是本发明实施例的用户移动场景示意图;
图3:是本发明实施例的系统原理图;
图4:是本发明实施例的视频缓冲区队列模型图;
图5:是本发明实施例的能耗队列模型图。
具体实施方式
为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
请见图1,为本发明方法流程图。
如图2所示,本发明需要在用户下载DASH视频的区域部署多台服务器,本发明具体实施方式中移动终端分别与多个服务器通过无线通信方式连接。如图3所示,为本发明系统结构图。
下面结合图1至图5,介绍本发明的具体实施方式为一种基于用户体验与终端能耗的DASH视频码率选择方法,包含以下步骤:
步骤1:将DASH客户端部署于移动终端,根据移动终端实时位置判断移动终端所在服务器的覆盖范围,若移动终端在多个服务器的覆盖范围的重合区域,计算移动终端到每个服务器之间的连接距离,选择距离移动终端最近的服务器作为移动终端对应的边缘服务器;
步骤1所述移动终端上DASH客户端用于下载多个连续DASH视频片段;
步骤1所述根据移动终端实时位置判断移动终端所在服务器的覆盖范围:
移动终端下载DASH视频区域一共有U台服务器,每台服务器的覆盖范围为圆形,其半径为ru,定义第u台服务器的坐标为(xu,yu),u∈[1,U]
步骤1所述计算移动终端到每个服务器之间的连接距离:
定义移动终端当前位置的坐标为(x,y),定义du为移动终端到第u台服务器的距离,du的具体计算方式如下:
Figure BDA0002447574850000101
步骤1所述选择距离移动终端最近的服务器作为移动终端对应的边缘服务器为:
选择d1,d2,...,dU中最小的值作为作为移动终端对应的边缘服务器;
所述边缘服务器用于连接移动终端,用于下载DASH视频片段;
步骤2:分别定义将要下载的DASH视频片段、下载完成的DASH视频片段、参考DASH视频片段,依次计算下载完成的DASH视频片段的下载时间、参考DASH视频片段的下载时间、参考DASH视频片段下载时间内的平均网络带宽、参考DASH视频片段的下载时间内网络带宽平均梯度、下载完成的DASH视频片段下载时间内的带宽变化率、预测将要下载的DASH视频片段的下载时间内平均网络带宽的参考价值,通过下载完成的DASH视频片段的下载时间内平均网络带宽预测将要下载的DASH视频片段的下载时间内平均网络带宽,根据预测的将要下载的DASH视频片段的下载时间内平均网络带宽计算将要下载的DASH视频片段的下载时间;
步骤2所述定义将要下载的DASH视频片段为:
第n个DASH视频片段定义为将要下载的DASH视频片段;
步骤2所述定义下载完成的DASH视频片段为:
第1个DASH视频片段至第n-1个DASH视频片段为下载完成的DASH视频片段,且第一个DASH视频片段下载开始的时刻为t0
步骤2所述定义参考DASH视频片段为:
在第1个DASH视频片段至第n-1个DASH视频片段中,选取多个连续的DASH视频片段作为参考DASH视频片段用于预估带宽,数量为m,具体为第n-1-m个DASH视频片段至第n-1个DASH视频片段;
步骤2所述计算下载完成的DASH视频片段的下载时间为:
Tn-1=tn-1-tn-2
n∈{2,3,...,N}
其中,Tn-1为第n-1个DASH视频片段的下载时间,tn-2为第n-1个DASH视频片段下载开始的时刻,tn-2为第n-2个DASH视频片段下载结束的时刻,tn-1为第n-1个DASH视频片段下载结束的时刻,tn-1为第n个DASH视频片段下载开始的时刻,N为DASH视频片段的数量;
通过移动终端上DASH客户端下载多个连续DASH视频片段时不会中断,故tn既为第n个DASH视频片段下载结束的时刻,也为第n+1个DASH视频片段下载开始的时刻;
步骤2所述计算参考DASH视频片段的下载时间为:
Tsample=tn-1-tn-2-m
其中,Tsample表示参考DASH视频片段的下载时间,主要包括第n-1-m个DASH视频片段下载开始的时刻至第n-1个DASH视频片段下载结束的时刻,tn-1为第n个DASH视频片段下载开始的时刻,tn-2-m为第n-1-m个DASH视频片段下载开始的时刻,步骤2所述计算参考DASH视频片段下载时间内的平均网络带宽:
Figure BDA0002447574850000111
其中,
Figure BDA0002447574850000112
表示在下载参考DASH视频片段时间内的平均网络带宽,
Figure BDA0002447574850000113
表示在下载参考DASH视频片段时,在当前边缘服务器之外下载DASH视频片段的平均网络带宽,
Figure BDA0002447574850000114
表示在下载参考DASH视频片段时,在当前边缘服务器里下载DASH视频片段的平均网络带宽,β=0.8表示不同边缘服务器之间的差异值;
步骤2所述计算参考DASH视频片段的下载时间内网络带宽平均梯度为:
Figure BDA0002447574850000121
其中,
Figure BDA0002447574850000122
表示在参考DASH视频片段的下载时间内网络带宽随时间变化的平均梯度;
步骤2所述计算下载完成的DASH视频片段下载时间内平均网络带宽为:
Figure BDA0002447574850000123
其中,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带,Sn-1为下载第n-1个DASH视频片段的大小,Tn-1为第n-1个DASH视频片段下载持续的时间;
步骤2所述计算下载完成的DASH视频片段下载时间内的带宽变化率:
Figure BDA0002447574850000124
其中,
Figure BDA0002447574850000125
表示下载第n-1个DASH视频片段与下载第n-2个DASH视频片段持续时间内的带宽变化率,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带,bn-2为下载第n-2个DASH视频片段下载时间内平均网络带,tn-1为第n-1个DASH视频片段下载结束的时刻,tn-2为第n-2个DASH视频片段下载结束的时刻;
步骤2所述计算预测将要下载的DASH视频片段的下载时间内平均网络带宽的参考价值:
Figure BDA0002447574850000126
αn-1∈[0,1]
其中,αn-1表示第n-1个DASH视频片段下载时间内平均网络带宽预测第n个DASH视频片段下载时间内平均网络带宽的参考价值;
当移动终端上DASH客户端处于下载第n个DASH视频片段的开始时刻,预测下载第n个DASH视频片段持续的时间内平均网络带宽;
步骤2所述通过下载完成的DASH视频片段的下载时间内平均网络带宽预测将要下载的DASH视频片段的下载时间内平均网络带宽为:
通过第n-1个DASH视频片段即下载完成的DASH视频片段的下载时间内平均网络带宽,预测第n个DASH视频片段即将要下载的DASH视频片段的下载时间内平均网络带宽的预估值即ωn,具体计算方式如下:
ωn=(1-αn-1n-1n-1·bn-1
其中,αn-1表示第n-1个DASH视频片段下载时间内平均网络带宽预测第n个DASH视频片段下载时间内平均网络带宽的参考价值,ωn-1表示第n-1个DASH视频片段下载时间内平均网络带宽的预估值,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带宽;
步骤2所述根据预测的将要下载的DASH视频片段的下载时间内平均网络带宽计算将要下载的的DASH视频片段的下载时间,具体为:
Figure BDA0002447574850000127
Sn={s1,s2,s3,…,sX}
其中,Tn表示第n个DASH视频片段的下载时间,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X=7个不同的码率可供选择,分别为s1=300kbps,s2=500kbps,s3=700kbps,s4=900kbps,s5=1200kbps,s6=1500kbps,s7=1800kbps。
步骤3:根据将要下载的DASH视频片段的下载时间,依次计算将要下载的DASH视频片段的下载时间内的CPU下载能耗、将要下载的DASH视频片段的CPU在处理DASH视频下载解码工作时的使用率、将要下载的DASH视频片段的CPU在下载DASH视频时处理其他任务的能耗,进一步构建将要下载的DASH视频片段的CPU总能耗,计算将要下载的DASH视频片段的网络接口的能耗,构建将要下载的DASH视频片段的总能耗;
步骤3所述计算将要下载的DASH视频片段的下载时间内的CPU下载能耗为:
计算第n个DASH视频片段的下载时间内的CPU下载能耗,具体公式为:
Figure BDA0002447574850000131
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000132
为第n个DASH视频片段的下载时间内的CPU下载能耗,k1=398.1为能耗相关系数,b1=32.7为能耗偏移系数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤3所述将要下载的DASH视频片段的CPU在处理DASH视频下载解码工作时的使用率为:
第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,具体公式为:
Figure BDA0002447574850000133
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000134
为第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,k2=4.3为使用率相关系数,b216.4为使用率偏移系数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤3所述将要下载的DASH视频片段的CPU在下载DASH视频时处理其他任务的能耗为:
第n个DASH视频片段的下载时间内的CPU在下载DASH视频时处理其他任务的能耗,具体公式为:
Figure BDA0002447574850000135
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000136
为第n个DASH视频片段的下载时间内的CPU在下载DASH视频时处理其他任务的能耗,k3=1.5为其他任务能耗相关系数,b3=106.6为其他任务能耗偏移系数,ρcpu为CPU的总利用率,
Figure BDA0002447574850000137
为第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,N为DASH视频片段的数量;
步骤3所述构建将要下载的DASH视频片段的CPU总能耗为:
步骤3所述下载第n个DASH视频片段的下载时间内的CPU的总能耗,具体公式为:
Figure BDA0002447574850000138
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000139
下载第n个DASH视频片段的下载时间内的CPU的总能耗,κ=105为CPU运行的基本能耗,N为DASH视频片段的数量;
步骤3所述计算将要下载的DASH视频片段的网络接口的能耗为:
第n个DASH视频片段的下载时间内的网络接口的能耗,计算公式如下:
Figure BDA0002447574850000141
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000142
为第n个DASH视频片段的下载时间内的网络接口的能耗,θ=1853.5为网络接口能耗与时间的相关系数,μ=-0.189为网络接口能耗与时间的相关指数,且θ和μ为常数,N为DASH视频片段的数量;
步骤3所述构建将要下载DASH视频片段的总能耗为:
第n个DASH视频片段的下载时间内的总能耗,计算方式如下:
Figure BDA0002447574850000143
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000144
表示第n个DASH视频片段的下载时间内的总能耗,
Figure BDA0002447574850000145
下载第n个DASH视频片段的下载时间内的CPU的总能耗,
Figure BDA0002447574850000146
为第n个DASH视频片段的下载时间内的网络接口的能耗,N为DASH视频片段的数量;
步骤4:依次计算下载DASH视频片段的平均码率、下载DASH视频片段的DASH视频码率平均切换幅度、播放DASH视频片段的卡顿时间,进一步构建用户观看DASH视频的QoE模型;
步骤4所述下载DASH视频的平均码率为:
Figure BDA0002447574850000147
n∈{1,2,...,N}
其中,Rave表示下载DASH视频片段的平均码率,Rk表示下载第k个DASH视频片段的码率,n表示当前下载DASH视频片段的总数,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,N为DASH视频片段的数量;
步骤4所述下载DASH视频片段的DASH视频码率平均切换幅度为:
Figure BDA0002447574850000148
n∈{2,3,...,N}
其中,Aave表示下载DASH视频片段的DASH视频码率平均切换幅度,Rk-1表示下载第k-1个DASH视频片段的码率,N为DASH视频片段的数量;
步骤4所述播放DASH视频片段的卡顿时间为:
Figure BDA0002447574850000149
Figure BDA00024475748500001410
n∈{1,2,...,N}
其中,Trebuffer表示播放DASH视频片段的卡顿时间,
Figure BDA00024475748500001411
表示在下载第k个DASH视频片段下载开始时刻的视频缓冲区内DASH视频的时长,Tk表示第k个DASH视频片段的下载时间,且T1,T2…Tn-1均为下载完成的DASH视频片段的下载时间,Tn为将要下载的下载DASH视频片段的下载时间通过步骤2计算,tk-1表示第k个DASH视频片段下载开始的时刻,N为DASH视频片段的数量;
步骤4所述构建用户观看DASH视频的QoE模型为:
pQoE=Rave-γ·Aave-δ·Trebuffer
其中,pQoE表示用户的观看体验,Rave表示下载DASH视频片段的平均码率,Aave表示下载DASH视频片段的DASH视频码率平均切换幅度,γ=1表示用户在观看DASH视频时对DASH视频码率切换幅度的敏感程度,Trebuffer表示播放DASH视频片段的卡顿时间,δ=10表示用户在观看DASH视频时对播放卡顿的敏感程度;
步骤5:根据移动终端视频缓冲区中下载完成的DASH视频片段的时长构建视频缓冲区队列,并通过下载完成的DASH视频片段的视频缓冲区队列预测将要下载的DASH视频片段下载结束的时刻的视频缓冲区队列,根据移动终端下载完成的DASH视频片段的总能耗构建能耗队列,通过将要下载的DASH视频片段的总能耗和下载完成的DASH视频片段的总能耗预测将要下载的DASH视频片段载结束的时刻的能耗队列;
步骤5所述根据移动终端视频缓冲区中下载完成的DASH视频片段的时长构建视频缓冲区队列:
移动终端下载完成的DASH视频片段放在视频缓冲区内进行播放,当缓冲区内无DASH视频时就会发生播放卡顿,在第n-1个DASH视频片段的下载结束的时刻,根据视频缓冲区内的DASH视频片段的时长构建DASH视频缓冲队列
Figure BDA0002447574850000151
步骤5所述通过下载完成的DASH视频片段的视频缓冲区队列预测将要下载的DASH视频片段下载结束的时刻的视频缓冲区队列:
第n个DASH视频片段下载完成时视频缓冲区队列的计算方式如下:
Figure BDA0002447574850000152
n∈{1,2,...,N}
其中
Figure BDA0002447574850000153
表示在第n个DASH视频片段下载完成时视频缓冲区队列的值,
Figure BDA0002447574850000154
表示在第n-1个DASH视频片段的下载结束的时刻视频缓冲区队列的值,而且第n个DASH视频片段为将要下载的DASH视频片段,第n-1个DASH视频片段为下载完成的DASH视频片段,ξ=300ms表示移动终端请求的往返时间,τ=500ms表示单个DASH视频片段的时长,N为DASH视频片段的数量,如图4所示;
步骤5所述根据移动终端下载完成的DASH视频片段的总能耗构建能耗队列:
为更好控制下载DASH视频的能耗,在第n-1个DASH视频片段的下载结束的时刻,下载完成的DASH视频片段的总能耗构建能耗队列
Figure BDA0002447574850000155
步骤5所述通过将要下载的DASH视频片段的总能耗和下载完成的DASH视频片段的总能耗预测将要下载的DASH视频片段下载结束时刻的能耗队列:
第n个DASH视频片段下载结束的时刻的能耗队列的计算方式如下:
Figure BDA0002447574850000156
n∈{1,2,...,N}
其中,
Figure BDA0002447574850000157
为在第n个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure BDA0002447574850000158
为在第n-1个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure BDA0002447574850000161
表示第n个DASH视频片段的下载时间内的总能耗,ζave=1为单位时间内的能耗限制,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量,如图5所示;
步骤6:将要下载的DASH视频片段下载开始的时刻,根据预测将要下载的DASH视频片段下载结束的时刻的视频缓冲区队列、将要下载的DASH视频片段下载结束的时刻的能耗队列构建将要下载DASH视频片段的李雅普诺夫模型,根据将要下载的DASH视频片段的李雅普诺夫模型、下载完成的DASH视频片段的李雅普诺夫模型构建将要下载的DASH视频片段的李雅普诺夫漂移模型,根据将要下载的DASH视频片段的李雅普诺夫漂移模型、用户观看DASH视频的QoE模型构建将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型,通过将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型得出优化目标,并根据优化目标求解出当前时间片应选择的DASH视频码率;
步骤6所述根据预测将要下载的DASH视频片段下载完成的时刻的视频缓冲区队列、将要下载的DASH视频片段下载结束时刻的能耗队列构建将要下载的DASH视频片段的李雅普诺夫模型:
第n个DASH视频片段的下载结束时刻的李雅普诺夫模型的具体公式如下:
Figure BDA0002447574850000162
n∈{1,2,...,N}
其中,Ln表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫模型,
Figure BDA0002447574850000163
表示在第n个DASH视频片段的下载结束时刻的视频缓冲区队列的值,
Figure BDA0002447574850000164
表示在第n个DASH视频片段的下载结束时刻的能耗队列的值,而且第n个DASH视频片段为将要下载的DASH视频片段,N为DASH视频片段的数量;
步骤6所述根据将要下载的DASH视频片段的李雅普诺夫模型、下载完成的DASH视频片段的李雅普诺夫模型构建将要下载的DASH视频片段的李雅普诺夫漂移模型:
在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型的计算方式如下:
Δn=Ln-Ln-1
n∈{1,2,...,N}
其中,Δn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型,Ln为在第n个DASH视频片段的下载结束时刻的李雅普诺夫模型,Ln-1为在第n-1个DASH视频片段的下载结束时刻的李雅普诺夫模型,而且第n-1个DASH视频片段为下载完成的DASH视频片段,N为DASH视频片段的数量;
步骤6所述根据将要下载DASH视频片段的李雅普诺夫漂移模型、用户观看DASH视频的QoE模型构建将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型:
第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的计算方式如下:
Figure BDA0002447574850000165
n∈{1,2,...,N}
其中,DPPn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型,V=1为惩罚因子,pQoE表示用户的观看体验,Δn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型,Tn表示第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤6所述通过将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型得出优化目标:
在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的值会有一个上限,满足以下约束:
Figure BDA0002447574850000171
n∈{1,2,...,N}
其中,DPPn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型,χ为常数,
Figure BDA0002447574850000172
表示在第n-1个DASH视频片段的下载结束的时刻视频缓冲区队列的值,
Figure BDA0002447574850000173
为在第n-1个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure BDA0002447574850000174
表示第n个DASH视频片段的下载时间内的总能耗,ζave=1为单位时间内的能耗限制,ξ=300ms表示移动终端请求的往返时间,τ=500ms表示单个DASH视频片段的时长,Tn为第n个DASH视频片段的下载时间,V=1为惩罚因子,N为DASH视频片段的数量;
将李雅普诺夫漂移加惩罚模型的上限定义为优化目标,具体公式为:
Figure BDA0002447574850000175
n∈{1,2,...,N}
其中,Gn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的值的最大值,也为优化目标,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
需要给将要下载的DASH视频片段选择合适的码率使得:
Figure BDA0002447574850000176
n∈{1,2,...,N}
其中,min表示最小化,N为DASH视频片段的数量;
步骤6所述根据优化目标求解出当前时间片应选择的DASH视频码率:
优化目标中第n个DASH视频片段的下载时间内的总能耗
Figure BDA0002447574850000177
的表达公式为:
Figure BDA0002447574850000178
n∈{1,2,...,N}
其中,κ=105为CPU运行的基本能耗,k1=398.1为CPU下载能耗的相关系数,b1=32.7为第n个DASH视频片段的下载时间内的CPU下载能耗的偏移系数,k2=4.3为CPU在处理DASH视频下载解码工作时使用率的相关系数,b2=16.4为CPU在处理DASH视频下载解码工作时使用率的偏移系数,k2=1.5为其他任务能耗相关系数,b3=106.6为其他任务能耗偏移系数,ρcpu为CPU的总利用率,θ=1853.5为网络接口能耗与时间的相关系数,μ=-0.189为网络接口能耗与时间的相关指数,且θ和μ为常数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
下载时间满足以下公式:
Figure BDA0002447574850000179
n∈{1,2,...,N}
Sn={s1,s2,s3,…,sX}
其中,Tn为第n个DASH视频片段的下载时间,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X=7个不同的码率可供选择,分别为s1=300kbps,s2=500kbps,s3=700kbps,s4=900kbps,s5=1200kbps,s6=1500kbps,s7=1800kbps,ωn为第n个DASH视频片段即将要下载的DASH视频片段的下载时间内平均网络带宽的预估值,N为DASH视频片段的数量;
优化目标中用户的观看体验的表达公式为:
Figure BDA0002447574850000181
n∈{1,2,...,N}
其中,pQoE为用户的观看体验,Rk表示下载第k个DASH视频片段的码率,Rk-1表示下载第k-1个DASH视频片段的码率,n表示当前下载DASH视频片段的总数,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,
Figure BDA0002447574850000182
表示在下载第k个DASH视频片段下载开始时刻的视频缓冲区内DASH视频的时长,Tk表示第k个DASH视频片段的下载时间,且T1,T2…Tn-1均为下载完成的DASH视频片段的下载时间,Tn为将要下载的下载DASH视频片段的下载时间,tk-1表示第k个DASH视频片段下载开始的时刻,γ=1表示用户在观看DASH视频时对DASH视频码率切换幅度的敏感程度,δ=10表示用户在观看DASH视频时对播放卡顿的敏感程度,N为DASH视频片段的数量,且当k=n时,满足以下公式:
Rk=Rn=Sn
n∈{1,2,...,N}
Sn={s1,s2,s3,…,sX}
其中,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X=7个不同的码率可供选择,分别为s1=300kbps,s2=500kbps,s3=700kbps,s4=900kbps,s5=1200kbps,s6=1500kbps,s7=1800kbps,Rk表示下载第k个DASH视频片段的码率,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,N为DASH视频片段的数量;
将不同的码率代入优化目标的表达式中,具体如下所示:
{g1,g2,...,gX}
n∈{1,2,...,N}
其中,g1,g2,g3,…,gX为s1,s2,s3,…,sX代入Gn表达式求出的对应的值,N为DASH视频片段的数量,从g1,g2,g3,…,gX中选出最小的值,该值所对应的DASH视频码率为将要下载的DASH视频片段的码率,选择该码率既可以使用户有较好的观看体验,又可以避免移动终端的电量提前耗尽的情况。
应当理解的是,本说明书未详细阐述的部分均属于现有技术。
应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

Claims (6)

1.一种基于用户体验与终端能耗的DASH视频码率选择方法,其特征在于,包括以下步骤:
步骤1:将DASH客户端部署于移动终端,根据移动终端实时位置判断移动终端所在服务器的覆盖范围,若移动终端在多个服务器的覆盖范围的重合区域,计算移动终端到每个服务器之间的连接距离,选择距离移动终端最近的服务器作为移动终端对应的边缘服务器;
步骤2:分别定义将要下载的DASH视频片段、下载完成的DASH视频片段、参考DASH视频片段,依次计算下载完成的DASH视频片段的下载时间、参考DASH视频片段的下载时间、参考DASH视频片段下载时间内的平均网络带宽、参考DASH视频片段的下载时间内网络带宽平均梯度、下载完成的DASH视频片段下载时间内的带宽变化率、预测将要下载的DASH视频片段的下载时间内平均网络带宽的参考价值,通过下载完成的DASH视频片段的下载时间内平均网络带宽预测将要下载的DASH视频片段的下载时间内平均网络带宽,根据预测的将要下载的DASH视频片段的下载时间内平均网络带宽计算将要下载的DASH视频片段的下载时间;
步骤3:根据将要下载的DASH视频片段的下载时间,依次计算将要下载的DASH视频片段的下载时间内的CPU下载能耗、将要下载的DASH视频片段的CPU在处理DASH视频下载解码工作时的使用率、将要下载的DASH视频片段的CPU在下载DASH视频时处理其他任务的能耗,进一步构建将要下载的DASH视频片段的CPU总能耗,计算将要下载的DASH视频片段的网络接口的能耗,构建将要下载的DASH视频片段的总能耗;
步骤4:依次计算下载DASH视频片段的平均码率、下载DASH视频片段的DASH视频码率平均切换幅度、播放DASH视频片段的卡顿时间,进一步构建用户观看DASH视频的QoE模型;
步骤5:根据移动终端视频缓冲区中下载完成的DASH视频片段的时长构建视频缓冲区队列,并通过下载完成的DASH视频片段的视频缓冲区队列预测将要下载的DASH视频片段下载结束时刻的视频缓冲区队列,根据移动终端下载完成的DASH视频片段的总能耗构建能耗队列,通过将要下载的DASH视频片段的总能耗和下载完成的DASH视频片段的总能耗预测将要下载的DASH视频片段下载结束的时刻的能耗队列;
步骤6:将要下载的DASH视频片段下载开始的时刻,根据预测将要下载的DASH视频片段下载结束的时刻的视频缓冲区队列、将要下载的DASH视频片段下载结束的时刻的能耗队列构建将要下载DASH视频片段的李雅普诺夫模型,根据将要下载的DASH视频片段的李雅普诺夫模型、下载完成的DASH视频片段的李雅普诺夫模型构建将要下载的DASH视频片段的李雅普诺夫漂移模型,根据将要下载的DASH视频片段的李雅普诺夫漂移模型、用户观看DASH视频的QoE模型构建将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型,通过将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型得出优化目标,并根据优化目标求解出当前时间片应选择的DASH视频码率;
步骤6所述根据预测将要下载的DASH视频片段下载完成的时刻的视频缓冲区队列、将要下载的DASH视频片段下载结束时刻的能耗队列构建将要下载的DASH视频片段的李雅普诺夫模型:
第n个DASH视频片段的下载结束时刻的李雅普诺夫模型的具体公式如下:
Figure FDA0003348398100000011
其中,Ln表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫模型,
Figure FDA0003348398100000012
表示在第n个DASH视频片段的下载结束时刻的视频缓冲区队列的值,
Figure FDA0003348398100000013
表示在第n个DASH视频片段的下载结束时刻的能耗队列的值,而且第n个DASH视频片段为将要下载的DASH视频片段,N为DASH视频片段的数量;
步骤6所述根据将要下载的DASH视频片段的李雅普诺夫模型、下载完成的DASH视频片段的李雅普诺夫模型构建将要下载的DASH视频片段的李雅普诺夫漂移模型:
在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型的计算方式如下:
Δn=Ln-Ln-1
n∈{1,2,...,N}
其中,Δn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型,Ln为在第n个DASH视频片段的下载结束时刻的李雅普诺夫模型,Ln-1为在第n-1个DASH视频片段的下载结束时刻的李雅普诺夫模型,而且第n-1个DASH视频片段为下载完成的DASH视频片段,N为DASH视频片段的数量;
步骤6所述根据将要下载DASH视频片段的李雅普诺夫漂移模型、用户观看DASH视频的QoE模型构建将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型:
第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的计算方式如下:
Figure FDA0003348398100000021
其中,DPPn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型,V为惩罚因子,pQoE表示用户的观看体验,Δn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移模型,Tn表示第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤6所述通过将要下载的DASH视频片段的李雅普诺夫漂移加惩罚模型得出优化目标:
在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的值会有一个上限,满足以下约束:
Figure FDA0003348398100000022
其中,DPPn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型,χ为常数,
Figure FDA0003348398100000023
表示在第n-1个DASH视频片段的下载结束的时刻视频缓冲区队列的值,
Figure FDA0003348398100000024
为在第n-1个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure FDA0003348398100000025
表示第n个DASH视频片段的下载时间内的总能耗,ζave为单位时间内的能耗限制,ξ表示移动终端请求的往返时间,τ表示单个DASH视频片段的时长,Tn为第n个DASH视频片段的下载时间,V为惩罚因子,N为DASH视频片段的数量;
将李雅普诺夫漂移加惩罚模型的上限定义为优化目标,具体公式为:
Figure FDA0003348398100000026
其中,Gn表示在第n个DASH视频片段的下载结束时刻的李雅普诺夫漂移加惩罚模型的值的最大值,也为优化目标,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
需要给将要下载的DASH视频片段选择合适的码率使得:
Figure FDA0003348398100000031
其中,min表示最小化,N为DASH视频片段的数量;
步骤6所述根据优化目标求解出当前时间片应选择的DASH视频码率:
优化目标中第n个DASH视频片段的下载时间内的总能耗
Figure FDA0003348398100000032
的表达公式为:
Figure FDA0003348398100000033
其中,κ为CPU运行的基本能耗,k1为CPU下载能耗的相关系数,b1为第n个DASH视频片段的下载时间内的CPU下载能耗的偏移系数,k2为CPU在处理DASH视频下载解码工作时使用率的相关系数,b2为CPU在处理DASH视频下载解码工作时使用率的偏移系数,k3为其他任务能耗相关系数,b3为其他任务能耗偏移系数,ρcpu为CPU的总利用率,θ为网络接口能耗与时间的相关系数,μ为网络接口能耗与时间的相关指数,且θ和μ为常数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
下载时间满足以下公式:
Figure FDA0003348398100000034
Sn={s1,s2,s3,…,sX}
其中,Tn为第n个DASH视频片段的下载时间,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X个不同的码率可供选择,分别为s1,s2,s3,…,sX,ωn为第n个DASH视频片段即将要下载的DASH视频片段的下载时间内平均网络带宽的预估值,N为DASH视频片段的数量;
优化目标中用户的观看体验的表达公式为:
Figure FDA0003348398100000035
其中,pQoE为用户的观看体验,Rk表示下载第k个DASH视频片段的码率,Rk-1表示下载第k-1个DASH视频片段的码率,n表示当前下载DASH视频片段的总数,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,
Figure FDA0003348398100000036
表示在下载第k个DASH视频片段下载开始时刻的视频缓冲区内DASH视频的时长,Tk表示第k个DASH视频片段的下载时间,且T1,T2…Tn-1均为下载完成的DASH视频片段的下载时间,Tn为将要下载的下载DASH视频片段的下载时间,tk-1表示第k个DASH视频片段下载开始的时刻,γ表示用户在观看DASH视频时对DASH视频码率切换幅度的敏感程度,δ表示用户在观看DASH视频时对播放卡顿的敏感程度,N为DASH视频片段的数量,且当k=n时,满足以下公式:
Rk=Rn=Sn
n∈{1,2,...,N}
Sn={s1,s2,s3,…,sX}
其中,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X个不同的码率可供选择,分别为s1,s2,s3,…,sX,Rk表示下载第k个DASH视频片段的码率,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,N为DASH视频片段的数量;
将不同的码率代入优化目标的表达式中,具体如下所示:
{g1,g2,...,gx}
n∈{1,2,...,N}
其中,g1,g2,g3,…,gX为s1,s2,s3,…,sX代入Gn表达式求出的对应的值,N为DASH视频片段的数量,从g1,g2,g3,…,gx中选出最小的值,该值所对应的DASH视频码率为将要下载的DASH视频片段的码率,选择该码率既可以使用户有较好的观看体验,又可以避免移动终端的电量提前耗尽的情况。
2.根据权利要求1所述的基于用户体验与终端能耗的DASH视频码率选择方法,其特征在于:
步骤1所述移动终端上DASH客户端用于下载多个连续DASH视频片段;
步骤1所述根据移动终端实时位置判断移动终端所在服务器的覆盖范围:
移动终端下载DASH视频区域一共有U台服务器,每台服务器的覆盖范围为圆形,其半径为ru,定义第u台服务器的坐标为(xwyu),u∈[1,U];
步骤1所述计算移动终端到每个服务器之间的连接距离:
定义移动终端当前位置的坐标为(x,y),定义du为移动终端到第u台服务器的距离,du的具体计算方式如下:
Figure FDA0003348398100000041
步骤1所述选择距离移动终端最近的服务器作为移动终端对应的边缘服务器为:
选择d1,d2,...,dU中最小的值作为作为移动终端对应的边缘服务器;
所述边缘服务器用于连接移动终端,用于下载DASH视频片段;
作为优选,步骤2所述定义将要下载的DASH视频片段为:
第n个DASH视频片段定义为将要下载的DASH视频片段;
步骤2所述定义下载完成的DASH视频片段为:
第1个DASH视频片段至第n-1个DASH视频片段为下载完成的DASH视频片段,且第一个DASH视频片段下载开始的时刻为t0
3.根据权利要求1所述的基于用户体验与终端能耗的DASH视频码率选择方法,其特征在于:
步骤2所述定义参考DASH视频片段为:
在第1个DASH视频片段至第n-1个DASH视频片段中,选取多个连续的DASH视频片段作为参考DASH视频片段用于预估带宽,数量为m,具体为第n-1-m个DASH视频片段至第n-1个DASH视频片段;
步骤2所述计算下载完成的DASH视频片段的下载时间为:
Tn-1=tn-1-tn-2
n∈{2,3,...,N}
其中,Tn-1为第n-1个DASH视频片段的下载时间,tn-2为第n-1个DASH视频片段下载开始的时刻,tn-2为第n-2个DASH视频片段下载结束的时刻,tn-1为第n-1个DASH视频片段下载结束的时刻,tn-1为第n个DASH视频片段下载开始的时刻,N为DASH视频片段的数量;
通过移动终端上DASH客户端下载多个连续DASH视频片段时不会中断,故tn既为第n个DASH视频片段下载结束的时刻,也为第n+1个DASH视频片段下载开始的时刻;
步骤2所述计算参考DASH视频片段的下载时间为:
Tsample=tn-1-tn-2-m
其中,Tsample表示参考DASH视频片段的下载时间,主要包括第n-1-m个DASH视频片段下载开始的时刻至第n-1个DASH视频片段下载结束的时刻,tn-1为第n个DASH视频片段下载开始的时刻,tn-2-m为第n-1-m个DASH视频片段下载开始的时刻,
步骤2所述计算参考DASH视频片段下载时间内的平均网络带宽:
Figure FDA0003348398100000051
其中,
Figure FDA0003348398100000052
表示在下载参考DASH视频片段时间内的平均网络带宽,
Figure FDA0003348398100000053
表示在下载参考DASH视频片段时,在当前边缘服务器之外下载DASH视频片段的平均网络带宽,
Figure FDA0003348398100000054
表示在下载参考DASH视频片段时,在当前边缘服务器里下载DASH视频片段的平均网络带宽,β表示不同边缘服务器之间的差异值;
步骤2所述计算参考DASH视频片段的下载时间内网络带宽平均梯度为:
Figure FDA0003348398100000055
其中,
Figure FDA0003348398100000056
表示在参考DASH视频片段的下载时间内网络带宽随时间变化的平均梯度;
步骤2所述计算下载完成的DASH视频片段下载时间内平均网络带宽为:
Figure FDA0003348398100000057
其中,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带,Sn-1为下载第n-1个DASH视频片段的大小,Tn-1为第n-1个DASH视频片段下载持续的时间;
步骤2所述计算下载完成的DASH视频片段下载时间内的带宽变化率:
Figure FDA0003348398100000058
其中,
Figure FDA0003348398100000059
表示下载第n-1个DASH视频片段与下载第n-2个DASH视频片段持续时间内的带宽变化率,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带,bn-2为下载第n-2个DASH视频片段下载时间内平均网络带,tn-1为第n-1个DASH视频片段下载结束的时刻,tn-2为第n-2个DASH视频片段下载结束的时刻;
步骤2所述计算预测将要下载的DASH视频片段的下载时间内平均网络带宽的参考价值:
Figure FDA00033483981000000510
αn-1∈[0,1]
其中,αn-1表示第n-1个DASH视频片段下载时间内平均网络带宽预测第n个DASH视频片段下载时间内平均网络带宽的参考价值;
当移动终端上DASH客户端处于下载第n个DASH视频片段的开始时刻,预测下载第n个DASH视频片段持续的时间内平均网络带宽;
步骤2所述通过下载完成的DASH视频片段的下载时间内平均网络带宽预测将要下载的DASH视频片段的下载时间内平均网络带宽为:
通过第n-1个DASH视频片段即下载完成的DASH视频片段的下载时间内平均网络带宽,预测第n个DASH视频片段即将要下载的DASH视频片段的下载时间内平均网络带宽的预估值即ωn,具体计算方式如下:
ωn=(1-αn-1n-1n-1·bn-1
其中,αn-1表示第n-1个DASH视频片段下载时间内平均网络带宽预测第n个DASH视频片段下载时间内平均网络带宽的参考价值,ωn-1表示第n-1个DASH视频片段下载时间内平均网络带宽的预估值,bn-1为下载第n-1个DASH视频片段下载时间内平均网络带宽;
步骤2所述根据预测的将要下载的DASH视频片段的下载时间内平均网络带宽计算将要下载的的DASH视频片段的下载时间,具体为:
Figure FDA0003348398100000061
Sn={s1,s2,s3,…,sX}
其中,Tn表示第n个DASH视频片段的下载时间,Sn为第n个DASH视频片段的所选择的DASH视频码率,为待优化求解量,而且第n个DASH视频片段为即将下载的DASH视频片段,将要下载的DASH视频片段有X个不同的码率可供选择,分别为s1,s2,s3,…,sX
4.根据权利要求1所述的基于用户体验与终端能耗的DASH视频码率选择方法,其特征在于:
步骤3所述计算将要下载的DASH视频片段的下载时间内的CPU下载能耗为:
计算第n个DASH视频片段的下载时间内的CPU下载能耗,具体公式为:
Figure FDA0003348398100000062
其中,
Figure FDA0003348398100000063
为第n个DASH视频片段的下载时间内的CPU下载能耗,k1为能耗相关系数,b1为能耗偏移系数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤3所述将要下载的DASH视频片段的CPU在处理DASH视频下载解码工作时的使用率为:
第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,具体公式为:
Figure FDA0003348398100000064
其中,
Figure FDA0003348398100000065
为第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,k2为使用率相关系数,b2为使用率偏移系数,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量;
步骤3所述将要下载的DASH视频片段的CPU在下载DASH视频时处理其他任务的能耗为:
第n个DASH视频片段的下载时间内的CPU在下载DASH视频时处理其他任务的能耗,具体公式为:
Figure FDA0003348398100000071
其中,
Figure FDA0003348398100000072
为第n个DASH视频片段的下载时间内的CPU在下载DASH视频时处理其他任务的能耗,k3为其他任务能耗相关系数,b3为其他任务能耗偏移系数,ρcpu为CPU的总利用率,
Figure FDA0003348398100000073
为第n个DASH视频片段的下载时间内的CPU在处理DASH视频下载解码工作时的使用率,N为DASH视频片段的数量;
步骤3所述构建将要下载的DASH视频片段的CPU总能耗为:
步骤3所述下载第n个DASH视频片段的下载时间内的CPU的总能耗,具体公式为:
Figure FDA0003348398100000074
其中,
Figure FDA0003348398100000075
下载第n个DASH视频片段的下载时间内的CPU的总能耗,κ为CPU运行的基本能耗,N为DASH视频片段的数量;
步骤3所述计算将要下载的DASH视频片段的网络接口的能耗为:
第n个DASH视频片段的下载时间内的网络接口的能耗,计算公式如下:
Figure FDA0003348398100000076
其中,
Figure FDA0003348398100000077
为第n个DASH视频片段的下载时间内的网络接口的能耗,θ为网络接口能耗与时间的相关系数,μ为网络接口能耗与时间的相关指数,且θ和μ为常数,N为DASH视频片段的数量;
步骤3所述构建将要下载DASH视频片段的总能耗为:
第n个DASH视频片段的下载时间内的总能耗,计算方式如下:
Figure FDA0003348398100000078
其中,
Figure FDA0003348398100000079
表示第n个DASH视频片段的下载时间内的总能耗,
Figure FDA00033483981000000710
下载第n个DASH视频片段的下载时间内的CPU的总能耗,
Figure FDA00033483981000000711
为第n个DASH视频片段的下载时间内的网络接口的能耗,N为DASH视频片段的数量。
5.根据权利要求1所述的基于用户体验与终端能耗的DASH视频码率选择方法,其特征在于:
步骤4所述下载DASH视频的平均码率为:
Figure FDA00033483981000000712
其中,Rave表示下载DASH视频片段的平均码率,Rk表示下载第k个DASH视频片段的码率,n表示当前下载DASH视频片段的总数,且R1,R2…Rn-1均为下载完成的DASH视频片段的码率,Rn为建将要下载的DASH视频片段的码率,N为DASH视频片段的数量;
步骤4所述下载DASH视频片段的DASH视频码率平均切换幅度为:
Figure FDA0003348398100000081
其中,Aave表示下载DASH视频片段的DASH视频码率平均切换幅度,Rk-1表示下载第k-1个DASH视频片段的码率,N为DASH视频片段的数量;
步骤4所述播放DASH视频片段的卡顿时间为:
Figure FDA0003348398100000082
Figure FDA0003348398100000083
其中,Trebuffer表示播放DASH视频片段的卡顿时间,
Figure FDA0003348398100000084
表示在下载第k个DASH视频片段下载开始时刻的视频缓冲区内DASH视频的时长,Tk表示第k个DASH视频片段的下载时间,且T1,T2…Tn-1均为下载完成的DASH视频片段的下载时间,Tn为将要下载的下载DASH视频片段的下载时间通过步骤2计算,tk-1表示第k个DASH视频片段下载开始的时刻,N为DASH视频片段的数量;
步骤4所述构建用户观看DASH视频的QoE模型为:
pQoE=Rave-γ·Aave-δ·Trebuffer
其中,pQoE表示用户的观看体验,Rave表示下载DASH视频片段的平均码率,Aave表示下载DASH视频片段的DASH视频码率平均切换幅度,γ表示用户在观看DASH视频时对DASH视频码率切换幅度的敏感程度,Trebuffer表示播放DASH视频片段的卡顿时间,δ表示用户在观看DASH视频时对播放卡顿的敏感程度。
6.根据权利要求1所述的基于用户体验与终端能耗的DASH视频码率选择方法,其特征在于:
步骤5所述根据移动终端视频缓冲区中下载完成的DASH视频片段的时长构建视频缓冲区队列:
移动终端下载完成的DASH视频片段放在视频缓冲区内进行播放,当缓冲区内无DASH视频时就会发生播放卡顿,在第n-1个DASH视频片段的下载结束的时刻,根据视频缓冲区内的DASH视频片段的时长构建视频缓冲队列
Figure FDA0003348398100000088
步骤5所述通过下载完成的DASH视频片段的视频缓冲区队列预测将要下载的DASH视频片段下载结束的时刻的视频缓冲区队列:
第n个DASH视频片段下载完成时视频缓冲区队列的计算方式如下:
Figure FDA0003348398100000085
其中
Figure FDA0003348398100000086
表示在第n个DASH视频片段下载完成时视频缓冲区队列的值,
Figure FDA0003348398100000087
表示在第n-1个DASH视频片段的下载结束的时刻视频缓冲区队列的值,而且第n个DASH视频片段为将要下载的DASH视频片段,第n-1个DASH视频片段为下载完成的DASH视频片段,ξ表示移动终端请求的往返时间,τ表示单个DASH视频片段的时长,N为DASH视频片段的数量;
步骤5所述根据移动终端下载完成的DASH视频片段的总能耗构建能耗队列:
为更好控制下载DASH视频的能耗,在第n-1个DASH视频片段的下载结束的时刻,下载完成的DASH视频片段的总能耗构建能耗队列
Figure FDA0003348398100000091
步骤5所述通过将要下载的DASH视频片段的总能耗和下载完成的DASH视频片段的总能耗预测将要下载的DASH视频片段下载结束时刻的能耗队列:
第n个DASH视频片段下载结束的时刻的能耗队列的计算方式如下:
Figure FDA0003348398100000092
其中,
Figure FDA0003348398100000093
为在第n个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure FDA0003348398100000094
为在第n-1个DASH视频片段的下载结束的时刻的能耗队列的值,
Figure FDA0003348398100000095
表示第n个DASH视频片段的下载时间内的总能耗,ζave为单位时间内的能耗限制,Tn为第n个DASH视频片段的下载时间,N为DASH视频片段的数量。
CN202010283472.8A 2020-04-13 2020-04-13 一种基于用户体验与终端能耗的dash视频码率选择方法 Active CN111447448B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010283472.8A CN111447448B (zh) 2020-04-13 2020-04-13 一种基于用户体验与终端能耗的dash视频码率选择方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010283472.8A CN111447448B (zh) 2020-04-13 2020-04-13 一种基于用户体验与终端能耗的dash视频码率选择方法

Publications (2)

Publication Number Publication Date
CN111447448A CN111447448A (zh) 2020-07-24
CN111447448B true CN111447448B (zh) 2022-02-01

Family

ID=71656000

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010283472.8A Active CN111447448B (zh) 2020-04-13 2020-04-13 一种基于用户体验与终端能耗的dash视频码率选择方法

Country Status (1)

Country Link
CN (1) CN111447448B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112887795B (zh) * 2021-01-26 2023-04-21 脸萌有限公司 视频播放方法、装置、设备和介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103974147A (zh) * 2014-03-07 2014-08-06 北京邮电大学 一种基于mpeg-dash协议的带有码率切换控制和静态摘要技术的在线视频播控系统
CN106993237A (zh) * 2017-04-13 2017-07-28 中北大学 基于mpeg‑dash协议的动态自适应码率选择方法
CN110300315A (zh) * 2019-07-24 2019-10-01 北京达佳互联信息技术有限公司 一种视频码率确定方法、装置、电子设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ITBA20130077A1 (it) * 2013-11-25 2015-05-26 Cicco Luca De Meccanismo per il controllo del bitrate di codifica in un sistema di video streaming adattivo basato su buffer di playout e sulla stima di banda.

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103974147A (zh) * 2014-03-07 2014-08-06 北京邮电大学 一种基于mpeg-dash协议的带有码率切换控制和静态摘要技术的在线视频播控系统
CN106993237A (zh) * 2017-04-13 2017-07-28 中北大学 基于mpeg‑dash协议的动态自适应码率选择方法
CN110300315A (zh) * 2019-07-24 2019-10-01 北京达佳互联信息技术有限公司 一种视频码率确定方法、装置、电子设备及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Dynamic Computation Offloading for Mobile-Edge Computing With Energy Harvesting Devices;Yuyi Mao等;《 IEEE Journal on Selected Areas in Communications》;20160920;全文 *
基于能耗优化的协作式动态自适应流媒体系统;曲凯明等;《软件》;20151231;第36卷(第9期);全文 *

Also Published As

Publication number Publication date
CN111447448A (zh) 2020-07-24

Similar Documents

Publication Publication Date Title
US10271112B2 (en) System and method for dynamic adaptive video streaming using model predictive control
RU2658642C1 (ru) Улучшение качества видео
EP2805471B1 (en) Method and apparatus for enabling pre-fetching of media
EP2612495B1 (en) Adaptive streaming of video at different quality levels
Hooft et al. Tile-based adaptive streaming for virtual reality video
US20090300688A1 (en) Map indicating quality of service for delivery of video data to wireless device
US20120266198A1 (en) Fast Binding of a Cloud Based Streaming Server Structure
CN106375783A (zh) 用于在超文本传输协议上的质量知晓自适应流传输的方法
WO2013184374A1 (en) Techniques for adaptive video streaming
CN106688239A (zh) 视频下载方法、装置及系统
CN111490983B (zh) 一种基于视频感知质量的自适应流媒体码率选择系统
KR102652518B1 (ko) 비디오 스트리밍을 위한 세션 기반 적응적 재생 프로파일 판정
Nguyen et al. A client-based adaptation framework for 360-degree video streaming
CN111447448B (zh) 一种基于用户体验与终端能耗的dash视频码率选择方法
Nguyen et al. Scalable 360 video streaming using HTTP/2
KR102304476B1 (ko) 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법
Zhang et al. Green and cooperative dash in wireless d2d networks
Nguyen et al. An adaptive streaming method of 360 videos over HTTP/2 protocol
US11082741B2 (en) Dynamic multi-content delivery network selection during video playback
EP3354033B1 (en) Dynamic seeking in video delivery systems
WO2014066975A1 (en) Methods and systems for controlling quality of a media session
CN112672227B (zh) 基于边缘节点的业务处理方法、装置、节点以及存储介质
KR102647461B1 (ko) 비디오 스트리밍에서의 다중 프로토콜 예측 및 세션내 적응
KR101548501B1 (ko) 청크 기반의 끊김 없는 스트림 송수신 장치 및 그 방법
Thang et al. Video streaming over HTTP with dynamic resource prediction

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant