CN117014619A - 一种可扩展视频编码的直播视频流码率自适应方法 - Google Patents
一种可扩展视频编码的直播视频流码率自适应方法 Download PDFInfo
- Publication number
- CN117014619A CN117014619A CN202310429675.7A CN202310429675A CN117014619A CN 117014619 A CN117014619 A CN 117014619A CN 202310429675 A CN202310429675 A CN 202310429675A CN 117014619 A CN117014619 A CN 117014619A
- Authority
- CN
- China
- Prior art keywords
- video
- quality
- code rate
- downloading
- qoe
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000002787 reinforcement Effects 0.000 claims abstract description 13
- 238000012549 training Methods 0.000 claims abstract description 11
- 230000006870 function Effects 0.000 claims description 15
- 230000008901 benefit Effects 0.000 claims description 14
- 238000013528 artificial neural network Methods 0.000 claims description 5
- 230000003014 reinforcing effect Effects 0.000 claims description 5
- 239000012634 fragment Substances 0.000 claims description 4
- 238000013507 mapping Methods 0.000 claims description 4
- 238000005259 measurement Methods 0.000 claims description 4
- 238000011156 evaluation Methods 0.000 claims description 3
- 230000035945 sensitivity Effects 0.000 claims description 3
- 238000004364 calculation method Methods 0.000 claims description 2
- 230000006978 adaptation Effects 0.000 claims 7
- 230000005540 biological transmission Effects 0.000 abstract description 10
- 238000005457 optimization Methods 0.000 abstract description 3
- 239000003795 chemical substances by application Substances 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种可扩展视频编码的直播视频流码率自适应方法,属于视频传输技术领域。该方法对DASH流媒体网络传输协议下使用H.264SVC格式编码的视频,根据当前缓冲区状态和网络状态使用强化学习A3C算法自适应选择码率。本发明所述方法对视频在客户端下载时的码率选择进行了优化,包括先完成视频分层编码的各层设置,再分析针对观众体验的码率决策的优化目标,最后建立基于强化学习的码率决策模型并训练模型。
Description
技术领域
本发明属于视频传输技术,具体涉及一种可扩展视频编码的直播视频流码率自适应方法。
背景技术
直播视频传输技术是对实时生成的视频流进行实时传输的技术。流式传输方式是将视频和音频等多媒体文件经过特殊的压缩方式分成一个个压缩包,由服务器向客户端连续、实时传送。客户端通过解压软件对这些数据进行解压后,多媒体就会像发送前那样显示出来。直播端使用视频、音频采集软件,从直播设备中采集音频、视频等数据,然后对这些数据进行编码并推送到服务器。流媒体服务器使用CDN网络分发数据,客户端使用各种设备里的播放器拉流、解码、播放。
基于HTTP的动态自适应流传输协议(DASH协议)是当今主要的视频传输形式。通过使用HTTP传输视频,内容提供商能够利用现有的CDN基础设施,并维护简化的(后端。此外,HTTP还兼容许多客户端应用程序,如web浏览器和移动应用程序。
在DASH中,视频被分成小段,每个片段都以几个不同的质量级别编码。然后,使用码率自适应(后称为ABR)算法根据播放缓冲区状态和估计网络带宽等信息动态确定每个视频片段的质量级别。ABR算法旨在通过在多个相互冲突的目标(如高质量、最少的重新缓冲和更少的切换质量)之间取得平衡,最大限度地提高整体QoE。互联网视频流的大量工作已经投入到更好的ABR算法的设计上,并且仍然需要进一步的改进。
大多数ABR算法旨在与称为高级视频编码(AVC)的视频编码方案配合使用。不同质量级别的同一视频片段的版本相互独立编码,并按其播放顺序下载片段。通常,所有关于视频片段码率质量只做一次决策,即ARB算法只对每个视频片段执行一次下载。因此,ABR算法取得更高QoE的能力在很大程度上取决于其对网络状态的预测,由于预测的不确定性,ABR算法可能无法在不同的QoE目标之间取得适当的平衡。
与AVC相反,可扩展视频编码(ScalableVideoCoding,SVC)。SVC将视频片段编码为数个子码流,包括基本层和加强层。通过下载加强层,可以从较低质量的版本中获得高质量的版本。当网络带宽较低时,可以下载低质量的视频片段,保证播放的流畅性。如果带宽很高,则可以将视频片段升级到更高的质量。SVC的升级能力使得做出下载决策时的灵活性更高,有利于缓解带宽波动带来的影响并提高QoE。
然而,在DASH中使用SVC面临两个挑战。一是质量升级机制带来的决策空间扩大。ABR算法不仅需要为新段选择质量级别,还必须决定是否升级缓冲段以及升级到哪些质量级别。这增加了设计ABR算法的复杂性。第二个挑战是编码开销。SVC通常需要比AVC更多的比特数才能实现相同的视觉质量。此编码开销会消耗额外的带宽,并可能降低QoE。
发明内容
发明目的:本发明提供一种可扩展视频编码的直播视频流码率自适应方法,该方法在有限的开销下最大化利用SVC的质量升级机制,实现对以视频质量、视频播放卡顿、以及视频质量切换平滑度这三个方面为主的客户下载端观看体验的综合提升。
为实现上述发明目的,本发明提供的技术方案如下。
一种可扩展视频编码的直播视频流码率自适应方法,包括以下步骤:
(1)完成支持跳转的可扩展视频编码的各层设置,包括设置视频流的编码层数,确定基本层码率大小以及各个增强层的码率大小,确定下载视频片段到缓冲区时选择加强层的方案,确定直播视频下载端针对支持跳转的可扩展视频编码的约束条件;
(2)构建直播视频下载端端对直播视频片段的码率做出决策所获得的收益函数,该收益通过用户体验质量QoE来衡量,从视频质量、视频播放卡顿、视频切换平滑度、直播播放时延四个方面对观众的观看体验进行量化;
(3)建立基于强化学习的码率决策模型,使用A3C算法,确定状态空间、决策空间和actor网络和critic网络的输入、输出,将步骤(2)的优化目标作为衡量决策合理性的标准;最后训练模型,直到得到较好的性能。
进一步的,步骤(1)对使用可扩展视频编码的跳转混合编码的视频片段的分层进行如下设置:视频片段可编码为一个基础层和若干加强层,基础层可以选取较低码率的片段版本,然后叠加加强层来进行质量升级。该方法对视频段的质量进行分级,-共分Q个质量等级,每个视频段都有一个基本层和l个加强层;Base(x)表示基本层的质量等级为x;Enhancei(x,m,n)表示第i个加强层能够实现将基本层质量等级为x的的视频片段从当前的m质量升级到n质量;
最终视频片段的码率质量为q,具体公式如下所示:
q=Base(x)+∑Enhancei(x,m,n)
下载端下载采用支持跳转的可扩展视频编码的直播视频片段时,满足以下约束条件:
条件一:只有完全上传后才能对下载进行决策。
条件二:下载的视频片段的最终码率q不能大于上传端所限制的码率qu。
因此,上式的约束条件为:
1≤x≤Q-1
x≤m<n≤q≤Q
q≤qu
0≤i≤l
在使用SVC编码时,接受端首先将直播视频片段下载到缓冲区中,视频片段由不同码率质量的基本层和加强层组成,再从缓冲区中播放给客户。
进一步的,步骤(2)所述视频下载端用于表达传输视频片段所选择的码率能够获得的视频质量收益通过用户体验质量QoE来衡量。
QoE的基本评估方案表示为:
其中qn为第n个视频片段最终的码率质量等级;f(qn)将码率映射到一个用户感知的质量;μ为单位时间重新缓冲的惩罚系数;Tr(qn)为第n个视频片段以码率质量qn进行下载时可能发生的重新缓冲的时间;|f(qn-1)-f(qn)|用来衡量视频质量切换的流畅(平滑)度;Tw(qn)表示第n个视频片段以码率质量qn下载完毕后直到即将播放要经历的播放时延;η为单位时间延时的惩罚。
对于QoE和对应的f(qn),考虑三种选择:
(a)对于常规的线性指标的QoEbase(n),计算时采用f(qn)=qn;
(b)对于考虑到敏感度变化的QoElog(n),计算时采用f(qn)=log(qn/qmin);
(c)对于优先高清视频的QoEHD(n),计算时为非高清码率等级指定低质量的f(qn),为高清码率指定高质量f(qn)。用于体验质量QoE可根据码率等级来确定,将不同的码率等级划分为高清和非高清,非高清码率等级指定低质量的f(qn)是相对高清码率等级指定的f(qn)而言。
其中,QoEbase(n)、QoElog(n)、QoEHD(n)表示根据不同方案下载第n个视频片段获得的量化的整体用户体验质量QoE的大小,f(qn)为码率等级qn对应的量化的用户感知到的质量,qn表示第n个视频块的码率,qmin表示最低码率等级。
对于重新缓冲时间Tr(qn),可表示为:
Tr(qn)=max{Td(qn)-Tb,0}
其中Td(qn)表示下载码率质量为Rn的第n个视频片段所需要的时间,Tb表示缓冲区中之前已下载的视频的长度。
Td(qn)满足以下条件:
其中B(k)表示k时刻的网络带宽,t(k)表示k-1时刻与k时刻之间实际的时间间隔,V(qn)为第n块视频片段采用码率质量qn下载时的数据量。
Tw(qn)可表示为:
其中Tb表示缓冲区中之前已下载的视频的长度,Td(qn)表示下载码率质量为qn的第n个视频片段所需要的时间。
进一步的,步骤(3)中构建的基于强化学习的码率决策模型的网络结构为两个神经网络:Actor网络和Critic网络,使用A3C算法训练模型。
其中,输入Actor网络和Critic网络的下载第t个视频片段后的网络状态st为:
st=(bt,vt,pt,dt,qt,wt)
其中,bt为已下载段占用的缓冲区的部分,vt表示第t个视频片段已确定的加强层的大小,pt是过去k个视频片段的网络吞吐量度量,即已下载的过去k个视频片段的总体的数据量;dt是过去k个视频块的下载时间,表示pt吞吐量测量的时间间隔;qt表示缓冲区中每个视频片段的质量;wt表示缓冲区中每个视频片段播放给用户之前的时间。
Actor网络和Critic网络使用的决策空间A为:
A={at},1≤t≤N
其中,N表示可选择的决策总数,at表示下载第t个视频片段时对基本曾和加强层做出的决策,可表示如下:
at∈{Base(x)}∪
{(Base(x),Enhance1(x,m,n))}∪
{(Base(x),Enhance1(x,x,n),Enhance2(x,m,n))}
其中,Base(x)表示基本层的质量等级为x;Enhance1(x,m,n)表示第1个加强层能够实现将基本层质量等级为x的的视频片段从x质量升级到m质量,Enhance2(x,m,n))表示第2个加强层能够实现将基本层质量等级为x的的视频片段从m质量升级到n质量。
Actor网络和Critic网络对第t个视频片段的下载决策所获得的奖励rt根据步骤(2)中的用户体验质量QoE来衡量,即:
rt=QoE(t)
进一步的,Actor网络的输入为下载第t个视频片段后的网络状态st,Critic网络的输入为st和at。Actor网络的输出为决策空间A上的概率分布,可表示为:
π:πθ(st,at)→[0,1]
其中,π(st,at)表示神经网络使用参数θ时,在状态st时采取策略at的概率。
Critic网络的输出为决策获得的奖励的值函数表示从状态st开始并遵循概率分布πθ做出决策可获得的总奖励的期望。
有益效果:与现有技术相比,本发明所述方法实质性的特点和显著效果包括如下三个方面:
(1)本发明所述方法不同于一般混合编码的SVC,而是使用了支持跳转的可扩展视频编码的SVC方案。每一个加强层能够使视频片段的质量跳跃式升级,而非一级一级升级,这也适量地减少了一定地编码开销,也带来了更大的编码决策空间。相比于高级视频编码,SVC编码的视频片段往往更大。这种大小差异被称为编码开销,它们通常与所需的质量级别的增强层数成正比。
(2)本发明使用的基于强化学习的决策模型提高了码率自适应的灵活性,能够为用户提供更好的视频观看体验。
(3)本发明可以和现有的直播视频流传输框架相结合,具有很高的实用性,且应用范围广泛。
附图说明
图1为本发明所述方法的流程图;
图2为本发明对于可扩展视频编码的各层设置示意图;
图3为本发明使用的基于强化学习的决策模型的示意图。
具体实施方式
为详细的说明本发明所公开的技术方案,下面结合附图及具体实施例对本发明做进一步的表述。
本发明所提供的是一种可扩展视频编码的直播视频流码率自适应方法,该方法对DASH流媒体网络传输协议下使用H.264SVC格式编码的视频,根据当前缓冲区状态和网络状态使用强化学习A3C算法自适应选择码率。本发明所述方法对视频在客户端下载时的码率选择进行了优化,主要包括以下步骤:先完成视频分层编码的各层设置,再分析针对观众体验的码率决策的优化目标,最后建立基于强化学习的码率决策模型并训练模型。
结合图1-图3,本发明所述方法具体实施步骤及过程如下:
S1、完成支持跳转的可扩展视频编码的各层设置,包括设置视频流的编码层数,确定基本层码率大小以及各个增强层的码率大小,确定下载视频片段到缓冲区时选择加强层的方案,确定直播视频下载端针对可扩展视频编码的约束条件。
具体的,步骤(S1)包括以下过程:
步骤S101,完成支持跳转的可扩展视频编码的各层设置:
本发明将视频段的质量分成Q个质量等级,令Q=6,每个视频段都有一个基本层和l个加强层,令l=2。Base(x)表示基本层的质量等级为x,满足1≤x≤Q-1,基本层的等级不能太高也不能太低。Enhancei(x,m,n))表示第i个加强层能够实现将基本层质量等级为x的的视频片段从当前的m质量升级到n质量,其中x≤m<n≤q≤Q,0≤i≤l。最后视频片段的质量为q,具体公式如下所示:
q=Base(x)+∑Enhancei(x,m,n)
步骤S102,确定下载视频片段到缓冲区时选择加强层的方案:
在将使用跳转混合编码的视频片段下载到缓冲区时,本发明采取以下三个步骤,实现升级视频质量的方案。
(1)为下一个视频片段下载一个基本层:为了使视频片段达到一定质量级别,可以通过选择更高质量的基础层而非选择最低质量的基础层,从而也能够来减少所需的增强层的数量。
(2)添加一个加强层来给视频段的质量上升一个等级:当缓冲区中所有视频片段的质量都一样时,本发明所述方法为缓冲区中一个视频段添加一个加强层Enhancei(x,m,n)。该加强层的作用是选中的该视频段上升一个质量等级,以防在步骤(3)中缓冲区里所有视频段质量都一样,从而找不到一个可以参照的视频段来执行质量升级方案。
(3)为缓冲区里的视频段进行适量升级:对于缓冲区里的一个视频片段,先观察其相邻两个视频片段的指令等级。当该视频段只有一个质量更高的相邻片段,那就给该视频片段叠加一个加强层,使其质量升级到和相邻片段一样的质量等级;当该视频段的相邻片段质量都比它更高,那就以它右边的相邻片段为参照,使其质量升级到和右相邻片段一样的质量等级。
步骤S103,确定直播视频下载端针对可扩展视频编码的约束条件:
条件一:只有完全上传后才能对下载进行决策。下载端对一个视频片段码率的决策,必须是在上传端完全上传完该视频片段的基础上完成的。上传端以一个码率质量上传一个视频片段后,经过网络传送到下载端,然后下载端才能够决定以什么码率质量下载这个视频片段。
条件二:下载的视频片段的最终码率q不能大于上传限制的码率qu。上传端遵循DASH协议,将以SVC编码的视频片段传送到下载端,下载端对该视频片段码率质量的决策必须以视频片段的最高码率质量为限制。上传端上传时,已经决定了该视频片段SVC编码,也就决定了该视频片段的基础层的码率质量和加强层的层数l及每层的码率质量Enhancei(x,m,n)(0≤i≤l),也进一步确定了其最高码率质量q。在下载时,该视频片段的视频码率质量不能超过上传时决定的最高码率质量。也就是说,下载端在上传端的加强层中选择合适的的加强层,和基础层一起构成该视频片段的下载码率质量。例如在上传端一个视频片段的SVC编码由基础层Base(x)和两个加强层Enhance1(x,x,y)、Enhance2(x,y,z)构成,下载端下载该视频片段时就可以根据当前的网络状态和缓冲区状态只下载一个基础层Base(x),此时q=x;或下载一个基础层Base(x)和一个加强层Enhance1(x,x,y),此时q=y;或者下载一个基础层Base(x)和和两个加强层Enhance1(x,x,y)、Enhance2(x,y,z),此时q=z。
S2、构建下载端对视频片段的码率做出决策所获得的收益函数,用QoE表示。
QoE是指用户体验质量,即用户在使用某种产品、服务或应用程序时所感受到的满意度和质量。在直播视频流传输领域,QoE是一个非常重要的指标,可以用来评估视频流传输的质量和用户的观看体验。直播视频流传输的质量对用户的观看体验有着至关重要的影响。用户会根据视频的清晰度、流畅度、启动时间、卡顿率等指标来评估视频流传输的质量。如果视频质量不佳,用户的观看体验就会受到影响,甚至可能会放弃观看。根据步骤(S1),所作决策最终表现为使用了加强层的视频片段的码率等级,因此在步骤(S2)中QoE通过码率等级来衡量。
步骤(S2)首先分析下载端用户的观看体验,在直播视频流传输中,常用的QoE评估指标包括:
(1)视频的清晰度:视频的清晰度越高,用户的观看体验就越好。清晰度在本发明中体现为视频片段的质量,即最终呈现的码率。
(2)视频的流畅度:视频的流畅度越高,用户的观看体验就越好。流畅度在本发明中表现为视频质量切换的平滑度,当前一个视频片段和后一个视频片段呈现不同的码率时,就会发生切换不流畅的观感,降低用户体验。
(3)视频的启动时间:视频的启动时间越短,用户的观看体验就越好。
(4)视频的卡顿:视频的卡顿越少,用户的观看体验就越好。卡顿在本发明中体现为缓冲区的重新缓冲事件,即缓冲区中所有视频片段都播放完毕,而下一块视频片段并没有下载好,在用户看来就是视频卡顿,经过一段时间缓冲后才能继续播放,降低用户体验。
因此,常规的QoE指标由视频片段最终呈现的码率大小带来的正收益、视频片段可能造成的视频质量切换带来的负收益,以及视频片段带来的重新缓冲的负收益构成,可表示为:
在此基础上,考虑直播产生的播放时延,即下载完时刻与播放时刻之间的差值也称为播放延迟,它是指视频流媒体的数据在传输和播放过程中所经历的时间延迟。播放延迟越大,表示用户在观看视频时需要等待更长的时间,这会降低用户的观看体验。因此,从QoE的角度来看,播放延迟越小越好,越大越不好。增加播放时延的收益函数可表示为:
其中qn为第n个视频片段最终的码率质量等级;f(qn)将码率映射到一个用户感知的质量;μ为单位时间重新缓冲的惩罚系数;Tr(qn)为第n个视频片段以码率质量qn进行下载时可能发生的重新缓冲的时间;|f(qn-1)-f(qn)|用来衡量视频质量切换的流畅(平滑)度;Tw(qn)表示第n个视频片段以码率质量qn下载完毕后直到即将播放要经历的播放时延;η为单位时间延时的惩罚。
由于用户对视频流媒体QoE的偏好存在很大差异,有些用户倾向于更清晰的视频,有些用户倾向于更流畅的播放,因此,考虑了多种QoE评价指标,用三种f(qn)的选择来表示,其对应的f(qn)和μ如下表所示:
其中:
(a)常规的线性指标的QoEbase(n):f(qn)=qn。常规的线性指标。
(b)考虑到敏感度变化的QoElog(n):f(qn)=log(qn/qmin)。对于一些用户来说,如果已经在使用较高的码率,提高码率质量并不会显著提高用户体验,此时用户体验对码率质量的提高不敏感。
(c)优先高清视频的QoEHD(n):该指标有利于高清(HD)视频。它为非高清比特率分配一个低质量分数,为高清比特率分配一个高质量分数。对于偏好更高质量视频的用户,采用这种指标有更好的效果。例如如果有六种码率,将前三种视为非高清,后三种视为高清,为前三种指定比线性更低的f(qn),后三种指定比线性更高的f(qn)。
式中,QoEbase(n)、QoElog(n)、QoEHD(n)表示根据不同方案下载第n个视频片段获得的量化的整体用户体验质量QoE的大小,f(qn)为码率等级qn对应的量化的用户感知到的质量,qn表示第n个视频块的码率,qmin表示最低码率等级。
对于重新缓冲时间Tr(qn),可表示为:
Tr(qn)=max{Td(qn)-Tb,0}
其中Td(qn)表示下载码率质量为Rn的第n个视频片段所需要的时间,Tb表示缓冲区中之前已下载的视频的长度。若第n个视频片段的下载时间超出缓冲区已有的视频时间总长度,当缓冲区中所有已下载的视频都播放完毕时,第n个视频片段尚未下载完,需要等待第n个视频片段下载完毕,导致重新缓冲事件,出现卡顿。
Td(qn)满足以下条件:
其中B(k)表示k时刻的网络带宽,t(k)表示k-1时刻与k时刻之间实际的时间间隔,V(qn)为第n块视频片段采用码率质量qn下载时的数据量。即经过Td(Rn)时刻后,总是以当前网络带宽为下载速率,下载质量为qn的第n块视频片段所需要的时间。
对于播放时延Tw(qn),可表示为:
其中Tb表示缓冲区中之前已下载的视频的长度,Td(qn)表示下载码率质量为qn的第n个视频片段所需要的时间。
当Tw(qn)很大时,意味着视频的数据下载速度较慢或者网络带宽较小,导致视频数据无法及时地传输到用户设备,从而产生了较长的播放延迟。这会使用户等待时间变长,容易导致用户流失和不满意度的增加,降低用户对直播服务的信任度和忠诚度,影响直播服务的商业价值和用户满意度。
当Tw(qn)很小时,表示视频数据传输和处理速度较快,用户能够较快地看到最新的直播内容,这会提高用户的观看体验和满意度,从而增强用户对直播服务的信任度和忠诚度,提高直播服务的商业价值和用户满意度。
S3、建立基于强化学习的码率决策模型并训练模型。
本发明使用A3C算法,即具有优势函数、使用异步训练框架的Actor-Critic算法。A3C算法使用Actor和Critic两个神经网络进行学习,并使用多个agent异步训练网络。在本发明中使用了16个子agent和一个中心agent,每个agent都可以异步地训练Actor-Critic网络。
具体的,步骤(S3)包括如下过程:
步骤S301,确定状态空间、决策空间、奖励函数和actor网络和critic网络的输入、输出,将步骤(2)的收益函数为衡量决策合理性的标准。
不同于AVC,SVC需要同时考虑加强层和基本层的码率,因此需要在状态空间中纳入加强层的码率。同时,本发明将过去的吞吐量历史也纳入状态空间,以优化实际的网络特征。只考虑1个过去下载的视频片段并不能提供足够的信息来推断未来的网络特征,而考虑到过去的k个视频片段,模型就可以提取更多的信息并改进其决策。
因此,最终Actor网络和Critic网络使用的网络状态st为:
st=(bt,vt,pt,dt,qt,wt)
其中,bt为已下载段占用的缓冲区的部分,vt表示第t个视频片段已确定的加强层的大小,pt是过去k个视频片段的网络吞吐量度量,即已下载的过去k个视频片段的总体的数据量;dt是过去k个视频块的下载时间,表示pt吞吐量测量的时间间隔;qt表示缓冲区中每个视频片段的质量;wt表示缓冲区中每个视频片段播放给用户之前的时间。
对于决策而言,由于支持跳转的可扩展视频编码需要同时考虑基本层码率的选择和加强层码率的选择,因此增大了决策空间。Actor网络和Critic网络使用的决策空间A表示为:
A={at},1≤t≤N
其中,N表示可选择的决策总数,at表示下载第t个视频片段时对基本曾和加强层做出的决策,可表示如下:
at∈{Base(x)}∪
{(Base(x),Enhance1(x,m,n))}∪
{(Base(x),Enhance1(x,x,n),Enhance2(x,m,n))}
其中,Base(x)表示基本层的质量等级为x;Enhance1(x,m,n)表示第1个加强层能够实现将基本层质量等级为x的的视频片段从x质量升级到m质量,Enhance2(x,m,n))表示第2个加强层能够实现将基本层质量等级为x的的视频片段从m质量升级到n质量。
Actor网络和Critic网络对第t个视频片段的下载决策所获得的奖励rt根据步骤(2)中的用户体验质量QoE来衡量,可表示为:
rt=QoE(t)
Actor网络的输入为下载第t个视频片段后的网络状态st,Critic网络的输入为st和at。Actor网络的输出为决策空间A上的概率分布,可表示为:
π:πθ(st,at)→[0,1]
其中,π(st,at)表示神经网络使用参数θ时,在状态st时采取策略at的概率。
Critic网络的输出为决策获得的奖励的值函数表示从状态st开始并遵循概率分布πθ做出决策可获得的总奖励的期望。
使用的A3C算法对Actor网络的参数θ的更新公式为:
使用的A3C算法对Critic网络的参数θv的更新公式为:
其中α表示学习率,H是Actor网络输出的策略(表现为概率分布)在每个决策时间步长上的熵,这个项通过推动向更高熵的方向来鼓励探索。参数β在训练开始时被设置为一个很大的值以鼓励探索,并随着时间的推移而减少,以把重点放在提高奖励。A(st,at)表示在状态st下选择决策at时所获得的总奖励的期望与根据当前Actor输出的策略做出决策得出的总奖励的期望之差,优势函数说明了一个特定的决策at比根据当前Actor输出的策略采取的好或差多少。
步骤302,根据以上策略训练模型。当模型达到较好的性能后,可认为完成训练。该模型每下载一个视频片段,就根据下载端当前的状态,在决策空间中选择具有最高奖励值的决策并执行,直到播放完视频。
Claims (10)
1.一种可扩展视频编码的直播视频流码率自适应方法,其特征在于,所述方法包括以下步骤:
(1)完成支持跳转的可扩展视频编码的各层设置,包括设置视频流的编码层数,确定基本层码率大小以及各个增强层的码率大小,确定下载视频片段到缓冲区时选择加强层的方案,确定直播视频下载端针对可扩展视频编码的约束条件;
(2)构建直播视频下载端端对直播视频片段的码率做出决策所获得的收益函数,该收益是通过用户体验质量QoE来衡量,从视频质量、视频播放卡顿、视频切换平滑度、直播播放时延四个方面对观众的观看体验进行量化;
(3)建立基于强化学习的码率决策模型,使用A3C算法,确定状态空间、决策空间和Actor和Critic的输入、输出,将步骤(2)的收益函数作为衡量决策合理性的标准,最后训练模型以输出。
2.根据权利要求1所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于,步骤(1)包括对于基于可扩展视频编码实现的跳转混合编码的视频片段进行分层设置,视频片段编码为一个基础层和若干加强层,还包括对视频段的质量进行分级,一共分Q个质量等级,每个视频段都有一个基本层和l个加强层;
所述的可扩展视频编码的呈现的码率q由基本层的码率和加强层的码率决定,表示为:
q=Base(x)+∑Enhance1(x,m,n)
满足约束条件:
1≤x≤Q-1
x≤m<n≤q≤Q
q≤qu
0≤i≤l
其中Q表示可选的码率等级的个数;l表示加强层个数;q表示最终视频片段的码率质量;qu表示上传端所限制的码率;Base(x)表示基本层的质量等级为x;Enhancei(x,m,n)表示第i个加强层能够实现将基本层质量等级为x的的视频片段从m质量升级到n质量。
3.根据权利要求1所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于,步骤(2)所述的下载端对视频片段的码率做出决策所获得的收益函数通过用户体验质量QoE来衡量;
下载第n个视频片段获得的QoE的基本评估方案表示为:
其中qn为第n个视频片段最终的码率质量等级;f(qn)是将码率映射到一个用户感知的质量;μ为单位时间重新缓冲的惩罚系数;Tr(qn)为第n个视频片段以码率质量qn进行下载时可能发生的重新缓冲的时间;|f(qn-1)-f(qn)|用来衡量视频质量切换的平滑度;Tw(qn)表示第n个视频片段以码率质量qn下载完毕后直到即将播放要经历的播放时延;η为单位时间延时的惩罚。
4.根据权利要求1或3所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于:考虑到下载端当前网络带宽、缓冲区已有的视频大小、和第n个视频片段的数据量,对于第n个视频片段在下载时可能会发生重新缓冲,发生重新缓冲的时间Tr(qn)和播放时延Tw(qn),Tr(qn)表示为:
Tr(qn)=max{Td(qn)-Tb,0}
其中Td(qn)表示下载码率质量为Rn的第n个视频片段所需要的时间,Tb表示缓冲区中之前已下载的视频的长度;
Td(qn)满足以下条件:
其中B(k)表示k时刻的网络带宽,t(k)表示k-1时刻与k时刻之间实际的时间间隔,V(qn)为第n块视频片段采用码率质量qn下载时的数据量;
Tw(qn)可表示为:
其中Tb表示缓冲区中之前已下载的视频的长度,Td(qn)表示下载码率质量为qn的第n个视频片段所需要的时间。
5.根据权利要求3所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于,根据不同的用户体验质量QoE要求,第n个视频块的码率qn映射到一个用户感知的质量f(qn),存在以下三种方案:
(a)对于常规的线性指标的QoEbase(n),计算时采用f(qn)=qn;
(b)对于考虑到敏感度变化的QoElog(n),计算时采用f(qn)=log(qn/qmin);
(c)对于优先高清视频的QoEHD(n),计算时为非高清码率等级指定低质量的f(qn),为高清码率指定高质量f(qn);
式中,QoEbase(n)、QoElog(n)、QoEHD(n)表示根据不同方案下载第n个视频片段获得的量化的整体用户体验质量QoE的大小,f(qn)为码率等级qn对应的量化的用户感知到的质量,qn表示第n个视频块的码率,qmin表示最低码率等级。
6.根据权利要求1所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于,步骤(3)所述的基于强化学习的码率决策模型使用A3C算法训练中,每下载一个视频片段,码率决策模型会根据下载端当前的状态,在决策空间中选择具有最高奖励值的决策并执行,直到播放完视频。
7.根据权利要求6所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于,码率决策模型下载第t个视频片段后的网络状态st为:
st=(bt,vt,pt,dt,qt,wt)
其中,bt为已下载段占用的缓冲区的部分,vt表示第t个视频片段已确定的加强层的大小,pt是过去k个视频片段的网络吞吐量度量,即已下载的过去k个视频片段的总体的数据量,k满足2≤k≤128;dt是过去k个视频块的下载时间,表示pt吞吐量测量的时间间隔;qt表示缓冲区中每个视频片段的质量;wt表示缓冲区中每个视频片段播放给用户之前的时间。
8.根据权利要求1或6所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于:码率决策模型使用的决策空间A为:
A={at},1≤t≤N
其中,N表示可选择的决策总数,at表示下载第t个视频片段时对基本曾和加强层做出的决策,表示如下:
at∈{Base(x)}∪
{(Base(x),Enhance1(x,m,n))}∪
{(Base(x),Enhance1(x,x,n),Enhance2(x,m,n))}
其中,Base(x)表示基本层的质量等级为x;Enhance1(x,m,n)表示第1个加强层能够实现将基本层质量等级为x的的视频片段从x质量升级到m质量,Enhance2(x,m,n))表示第2个加强层能够实现将基本层质量等级为x的的视频片段从m质量升级到n质量。
9.根据权利要求1或6所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于:Actor网络和Critic网络对第t个视频片段的下载决策所获得的奖励rt根据用户体验质量QoE来衡量,即码率决策模型的奖励函数rt为:
rt=QoE(t)
QoE(t)表示第t个视频片段的下载时的用户体验质量。
10.根据权利要求1或6所述的可扩展视频编码的直播视频流码率自适应方法,其特征在于:Actor网络的输入为下载第t个视频片段后的网络状态st,Critic网络的输入为st和at;Actor网络的输出为决策空间A上的概率分布,表示为:
π:πθ(st,at)→[0,1]
其中,π(st,at)表示神经网络使用参数θ时,在状态st时采取策略at的概率;
Critic网络的输出为决策获得的奖励的值函数表示从状态st开始并遵循概率分布πθ做出决策可获得的总奖励的期望。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310429675.7A CN117014619A (zh) | 2023-04-21 | 2023-04-21 | 一种可扩展视频编码的直播视频流码率自适应方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310429675.7A CN117014619A (zh) | 2023-04-21 | 2023-04-21 | 一种可扩展视频编码的直播视频流码率自适应方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117014619A true CN117014619A (zh) | 2023-11-07 |
Family
ID=88560765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310429675.7A Pending CN117014619A (zh) | 2023-04-21 | 2023-04-21 | 一种可扩展视频编码的直播视频流码率自适应方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117014619A (zh) |
-
2023
- 2023-04-21 CN CN202310429675.7A patent/CN117014619A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3022884B1 (en) | Quality optimization with buffer and horizon constraints in adaptive streaming | |
CN108271048B (zh) | 一种兼顾吞吐量和视频缓冲的码率自适应调整装置和方法 | |
CN108833996B (zh) | 分布式dash系统中服务节点选择、更新和码率自适应方法 | |
KR102472155B1 (ko) | 피어 투 피어(Peer to peer, P2P) 네트워크에서 스트리밍 콘텐츠를 방송하는 방법 | |
EP2612495B1 (en) | Adaptive streaming of video at different quality levels | |
CN108924667B (zh) | 一种支持QoE最大化的可用带宽自适应视频分片请求方法 | |
CN112953922B (zh) | 一种自适应流媒体控制方法、系统、计算机设备及应用 | |
US20130304934A1 (en) | Methods and systems for controlling quality of a media session | |
US8832709B2 (en) | Network optimization | |
CN108063955A (zh) | 基于状态机的动态自适应视频传输的码率切换方法 | |
EP3563540B1 (en) | Method and system for providing variable quality streaming video services in mobile communication networks | |
CN111669617B (zh) | 一种基于智能边缘的直播视频流的传输方法 | |
Liu et al. | Grad: Learning for overhead-aware adaptive video streaming with scalable video coding | |
CN108833995B (zh) | 一种无线网络环境中自适应流媒体的传输方法 | |
CN111447511B (zh) | 一种带有用户感知体验质量的带宽分配方法 | |
KR101966588B1 (ko) | 모바일 단말의 비디오 콘텐츠 수신 방법 및 장치 | |
Xiang et al. | Dynamic rate adaptation for adaptive video streaming in wireless networks | |
KR20210042051A (ko) | 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법 | |
CN111225243B (zh) | 一种视频块调度方法及系统 | |
He et al. | Content and buffer status aware packet scheduling and resource management framework for video streaming over LTE system | |
CN108989838B (zh) | 一种基于视频内容复杂度感知的dash码率自适应方法 | |
CN117014619A (zh) | 一种可扩展视频编码的直播视频流码率自适应方法 | |
CN113207015B (zh) | 任务调度策略生成方法、装置、存储介质和计算机设备 | |
Rodrigues et al. | QoE‐Aware Scheduling Algorithm for Adaptive HTTP Video Delivery in Wireless Networks | |
CN114900706B (zh) | 基于扩展视频编码的直播视频流传输自适应调度方法 |
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 |