一种面向基于HTTP的动态自适应流媒体多假设码率自适应系统及方法与流程

文档序号:17009378发布日期:2019-03-02 02:10阅读:213来源:国知局
一种面向基于HTTP的动态自适应流媒体多假设码率自适应系统及方法与流程

本发明涉及一种面向基于http的动态自适应流媒体多假设码率自适应系统及方法,属于多媒体通信技术领域。



背景技术:

在过去几年,视频流媒体已经成为互联网流量的主要来源。面对流媒体流量日益增长的需求,人们开发了新的高效视频流媒体技术,例如mpeg制定的基于http的动态自适应流媒体(dash)技术。dash标准是新一代流媒体标准中的佼佼者,它融合了面向连接的流媒体技术以及渐进式下载技术的优点,具有高效、可扩展以及兼容性强的特点。dash标准实现了混合的媒体分发方式,给用户提供不间断的流媒体服务,采用http协议完成了视频内容的下载分发,视频具有特定的格式并且依据dash制定的规则进行传输。dash是在http/tcp协议之上进行视频传输的,相比于过去的rtp/udp标准,dash更易于配置,特别是可以极大地简化防火墙和网络地址转换器的遍历。此外,dash采用的是标准http服务器,部署成本相对较低,可以很容易部署到内容传输网络。因此,这些年来dash广泛用于动态网络环境下为用户提供连续的视频流服务,并且针对dash系统提出了一系列速率适配机制,以便提供与动态网络条件下的吞吐量相匹配的视频质量,从而丰富用户的体验。

dash的关键概念是,将每个视频以不同的比特率,编码成多个表示(representation),然后将这些表示再分成视频块(segment)(通常时间间隔为1-10s)。在dash传输连接开始时,首先由客户端从服务器下载媒体呈现描述文件(multimediapresentationdescription,mpd),该mpd文件中记录了视频的所有可用块的描述信息(例如,url地址,块长度,质量水平,分辨率等)。然后,客户端动态地根据mpd文件及其速率自适应逻辑,请求和切换到特定比特率的块,基本传输过程如图1。简单概括来说,就是在服务器端提前存好同一内容的不同码率、不同分辨率的多个视频块以及相应的mpd,客户端在播放时即可以根据自身性能以及网络环境选择最适宜的码率版本。

流媒体服务的关键在于提高用户的体验质量(qualityofexperience,qoe)。值得注意的是,在dash协议中并未规定客户端的速率自适应逻辑。在下载视频时,通常会遭受大量的质量波动或者播放缓冲区下溢(即,出现播放中断),这极大地降低了用户的qoe。由于网络带宽的高动态性,使得为用户提供稳定的、高质量的视频服务成了一项挑战。因此,如何在客户端设计一种高效的速率自适应策略,实现dash系统中的自适应码率切换以提高用户的qoe,成为dash最重要的研究课题之一。



技术实现要素:

在基于dash的自适应流媒体传输过程中,由于网络带宽动态多变,任何一种单一的码率自适应方法都无法长时期有效地适配网络的变化。因此,为了提高用户的qoe,本发明提供了一种面向基于http的动态自适应流媒体多假设码率自适应系统,本发明还提供了一种面向基于http的动态自适应流媒体多假设码率自适应方法

与现有的基于单一模型的码率自适应方法不同,本发明将多种码率自适应方法结合在一起,充分发挥不同方法在不同网络环境下的优势。然后采用决策控制器,选择最合适的码率自适应方法,以适应不同的网络条件。

术语解释:

1、连续信道,是指当输入集和输出集都是连续集时,称信道为连续信道。

2、短波动信道,是指信道容量在短期内有波动,即信道容量发生变化后,短暂时间内又恢复到原来的信道容量。

3、长波动信道,是指信道容量在长期内有波动,即信道容量变动后维持在恒定值,一段时间后又恢复到原来的信道容量。

4、长期qoe,是指一段时间内评估的用户体验质量。

5、瞬时qoe,是指某一时刻的用户体验质量。

本发明的技术方案为:

一种面向基于http的动态自适应流媒体多假设码率自适应系统,包括依次连接的服务器端、信道端和客户端;

所述服务器端包括mpd文件和视频块segment;mpd文件用于描述服务器端可用的内容、不同码流的选择和媒体文件的url地址;视频块segment包括视频块形式的现有多媒体比特流,存储在一个或多个媒体文件中;

所述信道端为所述服务器端与所述客户端之间通信的媒介;

所述客户端包括mpd文件获取解析模块、自适应方法集合、控制器、码率集合模块、缓存区;所述mpd文件获取解析模块连接所述自适应方法集合,所述自适应方法集合连接所述控制器,所述控制器、所述码率集合模块、所述缓存区依次连接;

所述自适应方法集合包括若干个自适应方法,每个自适应方法对应一种码率请求算法,每种码率请求算法均不相同,每种码率请求算法之间是并行关系且相互独立;

所述控制器用于选择自适应方法;

所述码率集合模块用于存储下一时刻需要下载的码率等级;

所述缓存区用于表示已下载的视频时长,即客户端观看的视频时长。

根据本发明优选的,若干种码率请求算法包括码率优先的方法、基于比例微分控制器的方法、基于增强学习的方法。

根据本发明优选的,所述信道端为连续信道、短波动信道、长波动信道或更为动态的markov信道。

一种面向基于http的动态自适应流媒体多假设码率自适应方法,运行于所述面向基于http的动态自适应流媒体多假设码率自适应系统,包括步骤如下:

(1)在流媒体播放过程中,所述客户端通过所述信道端下载所述服务器端上的mpd文件;

(2)通过mpd文件获取解析模块解析mpd文件;由于mpd文件是以xml的格式进行内容表述的,mpd文件获取解析模块相当于具有特定用途的xml解析器。在点播系统中需要从mpd文件中解析出来的信息包括视频下载信息(视频可用码率,url地址)和视频解码播放信息(视频的分辨率、编码格式和帧率)。该模块将视频下载信息发送给视频段下载模块供视频段下载模块做自适应决策使用,将视频解码播放信息发送给视频段播放模块做视频播放之用。

(3)所述控制器从自适应方法集合中选择滑动窗口n中具有最大的平均瞬时回报值对应的自适应方法,或者,所述控制器从自适应方法集合中选择前一集视频段中具有最大的平均瞬时回报值对应的自适应方法;瞬时回报函数值rwd是指瞬时的用户体验指标,用数值的形式进行反馈;平均瞬时回报值是指一集范围内瞬时回报值的统计平均;

(4)通过步骤(3)选择的自适应方法向服务器端发送视频下载请求;进行第一次视频段下载时一般选择低码率的初始段以减少初始播放延迟,之后每次请求的视频段的码率由步骤(3)选择的自适应方法决定。通过自适应码率切换算法,利用之前视频段的下载状态(如前几段视频的下载时间或播放器缓存区建立情况)决定下一视频段的码率。

(5)服务器端响应,将相应码率的视频段传送到客户端供用户观看。

根据本发明优选的,所述步骤(3),所述控制器从自适应方法集合中选择滑动窗口n中具有最大的平均瞬时回报值对应的自适应方法,包括:

a、从自适应方法集合中任选一个自适应方法向所述服务器端真实的发送http请求,获得系统信息,包括带宽估计值、视频复杂度和缓存区状态;

b、根据步骤a获取的系统信息,其它自适应方法发送虚拟请求;虚拟请求是指客户端并未向服务器端发出实际的请求,服务器端自然也没有响应,而是在每个自适应算法机制内的虚拟模式,目的是为了完善自身的经验,更快达到收敛。

c、通过式(ⅰ)计算每个自适应方法对应的瞬时回报函数值:

式(ⅰ)中,rwd表示任一自适应方法对应的瞬时回报函数值,是对某一时刻用户体验质量的反馈;qt表示t时刻的视频质量;|qt-qt-1|表示t时刻的视频质量波动;表示t时刻的下载时间,bt表示t时刻的缓存长度,表示t时刻的下载时间与缓存长度的差,当该差值大于零,表示发生视频中断(即重缓存事件);pb是安全缓存长度;ω1表示质量波动部分的权重参数,ω2表示视频中断部分的权重参数,ω3表示安全缓存部分的权重参数,ω1,ω2和ω3值都为正数;

进一步优选的,ω1=2,ω2=50,ω3=0.0001。

通过式(ⅱ)计算瞬时回报函数值的平均值

式(ⅱ)中,在请求第t个视频段时,表示第t段之前的n个已请求段的瞬时回报函数值rwd的平均值。

根据本发明优选的,所述步骤(3),所述控制器从自适应方法集合中选择前一集视频段中具有最大的平均瞬时回报值对应的自适应方法,包括:

a、从自适应方法集合中任选一个自适应方法向所述服务器端真实的发送http请求,获得系统信息,包括带宽估计值、视频复杂度和缓存区状态;

b、根据步骤a获取的系统信息,其它自适应方法发送虚拟请求;虚拟请求是指客户端并未向服务器端发出实际的请求,服务器端自然也没有响应,而是在每个自适应算法机制内的虚拟模式,目的是为了完善自身的经验,更快达到收敛。

c、通过式(ⅰ)计算每个自适应方法对应的瞬时回报函数值:

式(ⅰ)中,rwd是指任一自适应方法对应的瞬时回报函数值,是对某一时刻用户体验质量的反馈;qt表示t时刻的视频质量;|qt-qt-1|表示t时刻的视频质量波动;表示t时刻的下载时间,bt表示t时刻的缓存长度,表示t时刻的下载时间与缓存长度的差,当该差值大于零,表示发生视频中断(即重缓存事件);pb是安全缓存长度;ω1表示质量波动部分的权重参数,ω2表示视频中断部分的权重参数,ω3表示安全缓存部分的权重参数,ω1,ω2和ω3值都为正数;

进一步优选的,ω1=2,ω2=50,ω3=0.0001。

通过式(ⅲ)计算平均瞬时回报值

式(ⅲ)中,以集为单位,1集中包含n个视频段,rwd,t是指第t视频段的瞬时回报函数值;表示每隔一集的时间检查每种自适应方法的平均瞬时回报值,在一段时间内进行实际请求时,只使用一种自适应方法的决策方案,其它自适应方法则进行虚拟请求。

本发明的有益效果为:

1、本发明为dash客户端提供了一种新型的速率自适应决策框架,可以根据当前信道环境,实施高效的挑选出最适合于当前时刻的决策机制,使用户的长期体验质量达到最优。

2、本发明可以集成多种单一的速率自适应方法,各方法之间优势互补,相互独立,具有通用性和易操作性。

3、与现有的码率优先的方法和基于比例微分控制器的方法相比,本发明回报值更高,弥补了基于增强学习的方法在开始阶段回报极其不稳定的缺陷。

附图说明

图1是本发明一种面向基于http的动态自适应流媒体多假设码率自适应系统框架图;

图2是本发明一种面向基于http的动态自适应流媒体多假设码率自适应系统概述图;

图3是马尔科夫信道波形示意图;

图4是用户再下载某个视频段后的瞬时回报值比较图;

具体实施方式

下面结合说明书附图和实施例对本发明作进一步限定,但不限于此。

实施例1

一种面向基于http的动态自适应流媒体多假设码率自适应系统,如图1、图2所示,包括依次连接的服务器端、信道端和客户端;

服务器端包括mpd文件和视频块segment;mpd文件用于描述服务器端可用的内容、不同码流的选择和媒体文件的url地址;视频块segment包括视频块形式的现有多媒体比特流,存储在一个或多个媒体文件中;

信道端为服务器端与客户端之间通信的媒介;

客户端通过httpget命令请求合适的segment,并同时监控网络带宽的变动,必要时还会调整segment的码率,保证视频的流畅播放。

客户端包括mpd文件获取解析模块、自适应方法集合、控制器、码率集合模块、缓存区;mpd文件获取解析模块连接自适应方法集合,自适应方法集合连接控制器,控制器、码率集合模块、缓存区依次连接;

自适应方法集合包括若干个自适应方法,每个自适应方法对应一种码率请求算法,每种码率请求算法均不相同,每种码率请求算法之间是并行关系且相互独立;在某一时刻,有且只有一种自适应方法发送真实请求,其它的自适应方法,则利用该真实请求后获得的带宽估计值、视频复杂度等系统信息,进行虚拟请求,计算每个自适应方法的长期qoe。

控制器用于选择自适应方法;

码率集合模块用于存储下一时刻需要下载的码率等级;

缓存区用于表示已下载的视频时长,即客户端观看的视频时长。

若干种码率请求算法包括码率优先的方法、基于比例微分控制器的方法、基于增强学习的方法。

信道端为连续信道、短波动信道、长波动信道或更为动态的markov信道。马尔科夫信道波形示意图如图3所示。

与现有的单一数学模型设计的速率自适应方法不同,本发明将多种码率自适应方法结合在一起,并加入控制器,在不同的视频块下载时间,选择适合当前时刻的最佳方法,以适应不同的网络条件。基于多假设框架,本发明将能够最大化用户长期qoe的码率定义为最佳请求码率,以限制视频质量的波动和重缓冲事件的发生。

实施例2

一种面向基于http的动态自适应流媒体多假设码率自适应方法,运行于实施例1所述面向基于http的动态自适应流媒体多假设码率自适应系统,包括步骤如下:

(1)在流媒体播放过程中,客户端通过信道端下载服务器端上的mpd文件;

(2)通过mpd文件获取解析模块解析mpd文件;解析后得到多媒体内容的时间长度、媒体类型、分辨率、最小/最大带宽、码率和媒体各编码组件、媒体组件在网络中的位置、访问控制授权和媒体uri等信息。

(3)控制器从自适应方法集合中选择滑动窗口n中具有最大的平均瞬时回报值对应的自适应方法,包括:

a、从自适应方法集合中任选一个自适应方法向服务器端真实的发送http请求,获得系统信息,包括带宽估计值、视频复杂度和缓存区状态;

b、根据步骤a获取的系统信息,其它自适应方法发送虚拟请求;虚拟请求是指客户端并未向服务器端发出实际的请求,服务器端自然也没有响应,而是在每个自适应算法机制内的虚拟模式,目的是为了完善自身的经验,更快达到收敛。

c、通过式(ⅰ)计算每个自适应方法对应的瞬时回报函数值:

式(ⅰ)中,rwd表示任一自适应方法对应的瞬时回报函数值,是对某一时刻用户体验质量的反馈;qt表示t时刻的视频质量;|qt-qt-1|表示t时刻的视频质量波动;表示t时刻的下载时间,bt表示t时刻的缓存长度,表示t时刻的下载时间与缓存长度的差,当该差值大于零,表示发生视频中断(即重缓存事件);pb是安全缓存长度;ω1表示质量波动部分的权重参数,ω2表示视频中断部分的权重参数,ω3表示安全缓存部分的权重参数,ω1,ω2和ω3值都为正数;ω1=2,ω2=50,ω3=0.0001。

通过式(ⅱ)计算瞬时回报函数值的平均值

式(ⅱ)中,在请求第t个视频段时,表示第t段之前的n个已请求段的瞬时回报函数值rwd的平均值。

(4)通过步骤(3)选择的自适应方法向服务器端发送视频下载请求;进行第一次视频段下载时一般选择低码率的初始段以减少初始播放延迟,之后每次请求的视频段的码率由步骤(3)选择的自适应方法决定。通过自适应码率切换算法,利用之前视频段的下载状态(如前几段视频的下载时间或播放器缓存区建立情况)决定下一视频段的码率。

(5)服务器端响应,将相应码率的视频段传送到客户端供用户观看。

实施例3

一种面向基于http的动态自适应流媒体多假设码率自适应方法,运行于实施例1所述面向基于http的动态自适应流媒体多假设码率自适应系统,包括步骤如下:

(1)在流媒体播放过程中,客户端通过信道端下载服务器端上的mpd文件;

(2)通过mpd文件获取解析模块解析mpd文件;由于mpd文件是以xml的格式进行内容表述的,mpd文件获取解析模块相当于具有特定用途的xml解析器。在点播系统中需要从mpd文件中解析出来的信息包括视频下载信息(视频可用码率,url地址)和视频解码播放信息(视频的分辨率、编码格式和帧率)。该模块将视频下载信息发送给视频段下载模块供视频段下载模块做自适应决策使用,将视频解码播放信息发送给视频段播放模块做视频播放之用。

(3)控制器从自适应方法集合中选择前一集视频段中具有最大的平均瞬时回报值对应的自适应方法,包括:

a、从自适应方法集合中任选一个自适应方法向所述服务器端真实的发送http请求,获得系统信息,包括带宽估计值、视频复杂度和缓存区状态;

b、根据步骤a获取的系统信息,其它自适应方法发送虚拟请求;虚拟请求是指客户端并未向服务器端发出实际的请求,服务器端自然也没有响应,而是在每个自适应算法机制内的虚拟模式,目的是为了完善自身的经验,更快达到收敛。

c、通过式(ⅰ)计算每个自适应方法对应的瞬时回报函数值:

式(ⅰ)中,rwd是指任一自适应方法对应的瞬时回报函数值,是对某一时刻用户体验质量的反馈;qt表示t时刻的视频质量;|qt-qt-1|表示t时刻的视频质量波动;表示t时刻的下载时间,bt表示t时刻的缓存长度,表示t时刻的下载时间与缓存长度的差,当该差值大于零,表示发生视频中断(即重缓存事件);pb是安全缓存长度;ω1表示质量波动部分的权重参数,ω2表示视频中断部分的权重参数,ω3表示安全缓存部分的权重参数,ω1,ω2和ω3值都为正数;ω1=2,ω2=50,ω3=0.0001。

通过式(ⅲ)计算平均瞬时回报值

式(ⅲ)中,以集为单位,1集中包含0个视频段,rwd,t是指第t视频段的瞬时回报函数值;表示每隔一集的时间检查每种自适应方法的平均瞬时回报值,在一段时间内进行实际请求时,只使用一种自适应方法的决策方案,其它自适应方法则进行虚拟请求。

(4)通过步骤(3)选择的自适应方法向服务器端发送视频下载请求;进行第一次视频段下载时一般选择低码率的初始段以减少初始播放延迟,之后每次请求的视频段的码率由步骤(3)选择的自适应方法决定。通过自适应码率切换算法,利用之前视频段的下载状态(如前几段视频的下载时间或播放器缓存区建立情况)决定下一视频段的码率。

(5)服务器端响应,将相应码率的视频段传送到客户端供用户观看。

用户再下载某个视频段后的瞬时回报值比较图如图4所示,有图4可知,与现有的码率优先的方法、基于比例微分控制器的方法相比,本发明回报值更高,弥补了基于增强学习的方法在开始阶段回报极其不稳定的缺陷。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1