CN105263037A - 一种基于客户端缓存的自适应流化方法 - Google Patents

一种基于客户端缓存的自适应流化方法 Download PDF

Info

Publication number
CN105263037A
CN105263037A CN201410342636.4A CN201410342636A CN105263037A CN 105263037 A CN105263037 A CN 105263037A CN 201410342636 A CN201410342636 A CN 201410342636A CN 105263037 A CN105263037 A CN 105263037A
Authority
CN
China
Prior art keywords
code check
client
buffering area
playing duration
state
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.)
Granted
Application number
CN201410342636.4A
Other languages
English (en)
Other versions
CN105263037B (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.)
Institute of Acoustics CAS
Shanghai 3Ntv Network Technology Co Ltd
Original Assignee
Institute of Acoustics CAS
Shanghai 3Ntv Network Technology Co Ltd
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 Institute of Acoustics CAS, Shanghai 3Ntv Network Technology Co Ltd filed Critical Institute of Acoustics CAS
Priority to CN201410342636.4A priority Critical patent/CN105263037B/zh
Publication of CN105263037A publication Critical patent/CN105263037A/zh
Application granted granted Critical
Publication of CN105263037B publication Critical patent/CN105263037B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明涉及一种基于客户端缓存的自适应流化方法,包括:为客户端的缓冲区定义两种状态:缓冲区快速填充状态、自适应码率调整状态;客户端周期性地请求媒体分片文件并播放;其中,为当前请求的媒体分片文件根据缓冲区的当前状态设定码率并以所设定的码率播放,包括:当缓冲区处于缓冲区快速填充状态时,当前请求的媒体分片文件的码率为所能提供的最低码率,当缓冲区处于自适应码率调整状态时,当前请求的媒体分片文件的码率根据包括缓冲区当前的可播放时长、当前可用带宽、媒体分片文件的固定播放时长在内的信息计算得到。

Description

一种基于客户端缓存的自适应流化方法
技术领域
本发明涉及网络传输领域,特别涉及一种基于客户端缓存的自适应流化方法。
背景技术
随着互联网的快速发展,以及人们对于视频需求量的增长,基于视频应用产生的网络流量已经占到互联网总流量的60%以上。传统的视频流化技术已经不能满足人们的需求。自2009年3GP首次提出了其自适应流化标准DASH以来,自适应流化技术一直在飞速的发展。自适应流化技术的最终目的是给用户带来更好的视频观看体验(QoE),提高用户QoE,可以从以下几点出发:1)尽可能的避免播放停滞,即客户端缓存下溢;2)启动时间尽可能小;3)视频的平均质量尽可能高,尽可能最大化的利用有效带宽;4)出现网络拥塞的情况下,不要频繁的进行码率切换,一段质量较差但稳定的视频比一段码率频繁切换的视频带来更好的用户体验。其中,第一点优先级最高,第二点其次,第三和第四点可根据具体要求进行考虑。
传统方法一般根据带宽预测来进行自适应码率的调整,如专利申请号为201110288958.1,名称为“基于超文本阐述协议流化的多码率媒体流自适应控制方法”的参考文献1中,主要提出了一种基于带宽预测的自适应流化方法,该方法通过统计每个分片文件的接收时间预测当前的可用带宽,比较预测带宽与上一分片文件码率的大小关系,决定下一分片文件的码率。但随着互联网应用的日益丰富,多个应用共享带宽的情况越来越多,这就导致了网络的波动也随之增大。网络波动较大时,带宽的变化是随机且不可预测的,基于带宽预测的自适应流化方法的准确性也有待商榷。
对观看视频的用户而言,在观看视频过程中,用户关心的是缓冲区内是否有足够视频分片文件,而不是缓冲区内的视频分片文件的码率与当前带宽是否匹配,所以以缓冲区为研究模型更加直接有效。目前国外也有以缓冲区为参考模型的学术论文,如名称为:“Anadaptivevideostreamingcontrolsystem:Modeling,validation,andperformanceevaluation”的参考文献2。在该论文中,通过设置缓冲区可播放时长的参考值,在每次请求分片文件之前估计当前带宽,计算下一分片文件码率,使得缓冲区可播放时长逼近于上述参考值。但以上算法对网络带宽过于敏感,在网络带宽波动较大的情况下,视频的码率抖动也很大。
发明内容
本发明的目的在于克服现有技术中的自适应流化方法实用性不强、准确性不高的缺陷,从而提出一种从用户的QoE出发,以客户端缓冲区为研究对象,即使在带宽预测不准确时也能给用户带来相对较好的体验的自适应流化方法。
为了实现上述目的,本发明提供了一种基于客户端缓存的自适应流化方法,包括:
为客户端的缓冲区定义两种状态:缓冲区快速填充状态、自适应码率调整状态;
客户端周期性地请求媒体分片文件并播放;其中,为当前请求的媒体分片文件根据缓冲区的当前状态设定码率并以所设定的码率播放,包括:当缓冲区处于缓冲区快速填充状态时,当前请求的媒体分片文件的码率为所能提供的最低码率,当缓冲区处于自适应码率调整状态时,当前请求的媒体分片文件的码率根据包括缓冲区当前的可播放时长、当前可用带宽、媒体分片文件的固定播放时长在内的信息计算得到。
上述技术方案中,该方法进一步包括以下步骤:
步骤S1、客户端启动;
步骤S2、客户端初始化;所述初始化包括:确定所请求的第一个媒体分片文件的序列号,确认所请求媒体分片文件的播放时长M,媒体分片文件的可选码率,客户端将缓冲区状态设置为缓冲区快速填充状态,客户端设置缓冲区的第一阈值Qmax和第二阈值Qmin
步骤S3、判断播放过程是否结束,如果结束,转步骤S13,否则,转步骤S4;
步骤S4、统计当前缓冲区内可播放时长的大小Qi
步骤S5、根据Qi的值,更新缓冲区状态;
步骤S6、判断当前缓冲区状态,若为缓冲区快速填充状态,则转步骤S7,若为自适应码率调整状态,则转步骤S8;
步骤S7、将所请求的媒体分片文件的码率设为媒体分片文件可选码率中的最低码率,然后转步骤S9;
步骤S8、以自适应的方式计算所请求的媒体分片文件的码率;
步骤S9、客户端根据步骤S8所获取的媒体分片文件的码率获取具有相应码率的下一个媒体分片文件的路径信息,根据这一路径信息生成点播请求并向服务端发送;
步骤S10、客户端开始接收服务端所发送的媒体分片文件;
步骤S11、客户端接收完媒体分片文件后,统计媒体分片文件的大小Si和接收时间Ti
步骤S12、客户端根据Ti计算下一请求开始的时间ΔTi,等待ΔTi时间后转步骤S3;其中,ΔTi计算方法包括:
若缓冲区可播放时长小于Qmax,则ΔTi设为0;
若缓冲区可播放时长大于Qmax,且Ti>M,则ΔTi为0;
若缓冲区可播放时长大于Qmax,且Ti≤M,则ΔTi为M-Ti-1
步骤S13、播放结束。
上述技术方案中,在步骤S2中,客户端向服务端请求播放列表,所述播放列表分为两级,第一级播放列表中描述了媒体文件、媒体文件的N种可选码率、媒体文件在一种可选码率下所对应的第二级播放列表的路径;第二级播放列表中描述了对应于一种码率的媒体文件所包含的多个媒体分片文件的序列号、播放时长、路径。
上述技术方案中,在步骤S4中,统计当前缓冲区内可播放时长的大小Qi包括:当客户端正在播放时,缓冲区可播放时长每秒减少一秒;当客户端收到一个完整的媒体分片文件时,缓冲区可播放时长增加M。
上述技术方案中,所述步骤S5进一步包括:
步骤S501、开始更新缓冲区状态;
步骤S502、判断当前缓冲区状态,若为缓冲区快速填充状态,则转步骤S503,若为自适应码率调整状态,则转步骤S504;
步骤S503、判断当前缓冲区可播放时长Qi是否大于Qmin,若是,转步骤S506,否则转步骤S505;
步骤S504,判断当前缓冲区可播放时长Qi是否小于媒体分片文件的固定播放时长M,若是,转步骤S507,否则转步骤S505;
步骤S505、保持当前缓冲区状态不变,然后转步骤S508;
步骤S506、将当前缓冲区状态切换为自适应码率调整状态,然后转步骤S508;
步骤S507、将当前缓冲区状态切换为缓冲区快速填充状态,然后转步骤S508;
步骤S508,缓冲区状态更新结束。
上述技术方案中,所述步骤S8进一步包括:
步骤S801、开始计算下一分片码率;
步骤S802、统计当前缓冲区的可播放时长Qi,估计当前可用带宽Ri
步骤S803、判断当前缓冲区可播放时长Qi与第一阈值Qmax、第二阈值Qmin的关系,若大于第一阈值Qmax,转步骤S804,若小于第二阈值Qmin,转步骤S805,若在第一阈值Qmax和第二阈值Qmin之间,转步骤S806;
步骤S804、根据公式Bi=Ri*(M+Qi-Qmax)/M计算码率,从媒体分片文件的可选码率中选择与Bi最接近的码率进行请求,然后转步骤S810;
步骤S805、根据公式Bi=Ri*(M+Qi-Qmin)/M计算码率,从媒体分片文件的可选码率中选择与Bi最接近的码率进行请求,然后转步骤S810;
步骤S806,判断缓冲区当前可播放时长与上次统计的可播放时长的关系,若大于,转步骤S807,若小于,转步骤S809,若等于,转步骤S808;
步骤S807、码率增加一级,然后转步骤S810;
步骤S808、码率维持不变,然后转步骤S810;
步骤S809、码率降低一级,然后转步骤S810;
步骤S810、码率计算结束。
本发明的优点在于:
1、本发明的方法在启动播放时,通过降低Qmin时间段内的视频码率,将客户端视频播放的启动时间从Qmin减少至M秒,减少了等待时间;
2、本发明的方法通过设置可播放时长的窗口[Qmin,Qmax]消除了对带宽预测准确性的依赖,降低了码率切换的频率,同时有效的利用了带宽,缓和了较大带宽波动给用户体验带来的影响。
3、本发明的方法可以通过改变窗口[Qmin,Qmax]的大小ΔQ=Qmax-Qmin来调整算法对网络波动的敏感度,ΔQ越小,算法对网络波动越敏感。对于不同的网络状况,可以自由的选择ΔQ的大小。相比于传统方法,本发明具有更高的灵活性。
附图说明
图1是本发明的基于客户端缓存的自适应流化方法的流程图;
图2是本发明的基于客户端缓存的自适应流化方法中关于如何更新缓冲区状态的流程图;
图3是本发明的基于客户端缓存的自适应流化方法中关于如何计算媒体分片文件码率的流程图。
具体实施方式
现结合附图对本发明作进一步的描述。
本发明的方法在做自适应流化时需要基于客户端缓存的状态。在整个播放过程中,客户端会周期性地请求固定播放时长为M的媒体分片文件,客户端每次收到一个完整的媒体分片文件后将这一视频分片文件保存到缓存区内,然后统计缓冲区可播放时长Qi,并于ΔTi(表示下一请求开始的时间)时间后,请求下一个媒体分片文件。客户端会设置两个关于缓冲区可播放时长的阈值,分别标记为第一阈值Qmax和第二阈值Qmin,根据缓冲区可播放时长Qi与第一阈值Qmax、第二阈值Qmin的关系,可为缓冲区定义以下两种状态:a)缓冲区快速填充状态,简称为buffer-filling状态;b)自适应码率调整状态,简称为adaptation-control状态。在整个播放流程中,缓冲区的状态在buffer-filling和adaptation-control两种状态之间不断切换。当缓冲区处于buffer-filling状态时,所请求的媒体分片文件码率为所提供的最低码率;当缓冲区处于adaptation-control状态时,对码率进行调整。
下面对本发明的具体实现步骤进行说明。
参考图1,本发明的方法包括如下步骤:
步骤S1、客户端启动;
步骤S2、客户端初始化;
客户端初始化包括如下操作:客户端向服务端请求播放列表,成功解析该播放列表之后,确定所请求的第一个媒体分片文件的序列号,确认所请求媒体分片文件的播放时长M,媒体分片文件的可选码率,客户端将缓冲区状态设置为buffer-filling状态,客户端设置缓冲区的第一阈值Qmax和第二阈值Qmin。其中,第一阈值Qmax和第二阈值Qmin的大小可以调整,通过改变窗口[Qmin,Qmax]的大小ΔQ=Qmax-Qmin可调整本发明方法对网络波动的敏感度,ΔQ越小对网络波动越敏感。因此在实际使用时可根据不同的网络状况自由选择ΔQ的大小
步骤S3、判断播放过程是否结束,如果结束,转步骤S13,否则,转步骤S4;
步骤S4、统计当前缓冲区内可播放时长的大小Qi
步骤S5、根据Qi的值,更新缓冲区状态;
步骤S6、判断当前缓冲区状态,若为buffer-filling状态,则转步骤S7,若为adaptation-control状态,则转步骤S8;
步骤S7、将所请求的媒体分片文件的码率设为媒体分片文件可选码率中的最低码率,然后转步骤S9;
步骤S8、以自适应的方式计算所请求的媒体分片文件的码率;
步骤S9、客户端根据步骤S8所获取的媒体分片文件的码率从对应码率的媒体播放列表中获取下一个媒体分片文件的路径,根据这一路径信息生成点播请求并向服务端发送;
步骤S10、客户端开始接收服务端所发送的媒体分片文件;
步骤S11、客户端接收完媒体分片文件后,统计媒体分片文件的大小Si和接收时间Ti
步骤S12、客户端根据Ti计算下一请求开始的时间ΔTi,等待ΔTi时间后转步骤S3;其中,ΔTi计算方法包括:
若缓冲区可播放时长小于Qmax,则ΔTi设为0;
若缓冲区可播放时长大于Qmax,且Ti>M,则ΔTi为0;
若缓冲区可播放时长大于Qmax,且Ti≤M,则ΔTi为M-Ti-1
步骤S13、播放结束。
在步骤S2中,客户端向服务端所请求的播放列表分为两级,第一级播放列表也被称为主播放列表,在主播放列表中描述了媒体文件、媒体文件的N种可选码率、媒体文件在一种可选码率下所对应的第二级播放列表的路径;第二级播放列表也被称为媒体分片文件播放列表,在媒体分片文件播放列表中描述了对应于一种码率的媒体文件所包含的多个媒体分片文件的序列号、播放时长、路径。
以下是第一级播放列表的示例:
#EXTM3U
#EXT-X-STREAM-INF:PROGRAM-ID=video,BANDWIDTH=21766
/playlist/video_0_playlist.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=video,BANDWIDTH=16374
/playlist/video_1_playlist.m3u8
#EXT-X-STREAM-INF:PROGRAM-ID=video,BANDWIDTH=9888
/playlist/video_2_playlist.m3u8
在上述第一级播放列表的示例中,描述了三种不同码率的视频文件的信息,以其中的一种为例:
#EXT-X-STREAM-INF:PROGRAM-ID=video,BANDWIDTH=21766
/playlist/video_0_playlist.m3u8
该示例表示节目名为video,码率为21766kbps,/playlist/video_0_playlist.m3u8是节目video在码率21766kbps下所对应的第二级播放列表的路径。
以下是第二级播放列表文件,即/playlist/video_0_playlist.m3u8文件的示例:
#EXTM3U
#EXT-X-VERSION:1
#EXT-X-TARGETDURATION:2
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2,
/video/video_0_0.ts
#EXTINF:2,
/video/video_0_1.ts
#EXTINF:2,
/video/video_0_2.ts
#EXTINF:2,
/video/video_0_3.ts
#EXT-X-ENDLIST
该文件中描述了码率为21766kbps的4个媒体分片文件(video_0_0.ts,video_0_1.ts,video_0_2.ts,video_0_3.ts)所在路径及其播放时长,其中:
#EXTINF:2,
/video/video_0_0.ts
表示该文件时长为2秒,所在目录为/video/video_0_0.ts。
在步骤S4中,统计当前缓冲区内可播放时长的大小Qi包括:当客户端正在播放时,缓冲区可播放时长每秒减少一秒;当客户端收到一个完整的媒体分片文件时,缓冲区可播放时长增加M。
参考图2,在步骤S5中,更新缓冲区状态具体包括下列操作:
步骤S501、开始更新缓冲区状态;
步骤S502、判断当前缓冲区状态,若为buffer-filling状态,则转步骤S503,若为adaptation-control状态,则转步骤S504;
步骤S503、判断当前缓冲区可播放时长Qi是否大于Qmin,若是,转步骤S506,否则转步骤S505;
步骤S504,判断当前缓冲区可播放时长Qi是否小于媒体分片文件的固定播放时长M,若是,转步骤S507,否则转步骤S505;
步骤S505、保持当前缓冲区状态不变,然后转步骤S508;
步骤S506、将当前缓冲区状态切换为adaptation-control状态,然后转步骤S508;
步骤S507、将当前缓冲区状态切换为buffer-filling状态,然后转步骤S508;
步骤S508,缓冲区状态更新结束。
参考图3,在步骤S8中,以自适应的方式计算所请求的媒体分片文件的码率包括:
步骤S801、开始计算下一分片码率;
步骤S802、统计当前缓冲区的可播放时长Qi,估计当前可用带宽Ri;其中,在估计当前可用带宽Ri时,需要利用上一媒体分片文件接受的时间Ti-1和上一媒体分片文件大小Si-1,采用下列公式估计当前带宽:Ri=Si-1/Ti-1
步骤S803、判断当前缓冲区可播放时长Qi与第一阈值Qmax、第二阈值Qmin的关系,若大于第一阈值Qmax,转步骤S804,若小于第二阈值Qmin,转步骤S805,若在第一阈值Qmax和第二阈值Qmin之间,转步骤S806;
步骤S804、根据公式Bi=Ri*(M+Qi-Qmax)/M计算码率,从媒体分片文件的可选码率中选择与Bi最接近的码率进行请求,然后转步骤S810;
步骤S805、根据公式Bi=Ri*(M+Qi-Qmin)/M计算码率,从媒体分片文件的可选码率中选择与Bi最接近的码率进行请求,然后转步骤S810;
步骤S806,判断缓冲区当前可播放时长与上次统计的可播放时长的关系,若大于,转步骤S807,若小于,转步骤S809,若等于,转步骤S808;
步骤S807、码率增加一级,然后转步骤S810;
步骤S808、码率维持不变,然后转步骤S810;
步骤S809、码率降低一级,然后转步骤S810;
步骤S810、码率计算结束。
之前已经提到,媒体分片文件有多个可选码率,这些可选码率间有不同的分级,级别越高,码率的数值越大,反之,码率的数值越小。因此,在步骤S807中,码率增加一级也就意味着码率的数值会变大,在步骤S809中,码率降低一级也就意味着码率的数值会变小。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (6)

1.一种基于客户端缓存的自适应流化方法,包括:
为客户端的缓冲区定义两种状态:缓冲区快速填充状态、自适应码率调整状态;
客户端周期性地请求媒体分片文件并播放;其中,为当前请求的媒体分片文件根据缓冲区的当前状态设定码率并以所设定的码率播放,包括:当缓冲区处于缓冲区快速填充状态时,当前请求的媒体分片文件的码率为所能提供的最低码率,当缓冲区处于自适应码率调整状态时,当前请求的媒体分片文件的码率根据包括缓冲区当前的可播放时长、当前可用带宽、媒体分片文件的固定播放时长在内的信息计算得到。
2.根据权利要求1所述的基于客户端缓存的自适应流化方法,其特征在于,该方法进一步包括以下步骤:
步骤S1、客户端启动;
步骤S2、客户端初始化;所述初始化包括:确定所请求的第一个媒体分片文件的序列号,确认所请求媒体分片文件的播放时长M,媒体分片文件的可选码率,客户端将缓冲区状态设置为缓冲区快速填充状态,客户端设置缓冲区的第一阈值Qmax和第二阈值Qmin
步骤S3、判断播放过程是否结束,如果结束,转步骤S13,否则,转步骤S4;
步骤S4、统计当前缓冲区内可播放时长的大小Qi
步骤S5、根据Qi的值,更新缓冲区状态;
步骤S6、判断当前缓冲区状态,若为缓冲区快速填充状态,则转步骤S7,若为自适应码率调整状态,则转步骤S8;
步骤S7、将所请求的媒体分片文件的码率设为媒体分片文件可选码率中的最低码率,然后转步骤S9;
步骤S8、以自适应的方式计算所请求的媒体分片文件的码率;
步骤S9、客户端根据步骤S8所获取的媒体分片文件的码率获取具有相应码率的下一个媒体分片文件的路径信息,根据这一路径信息生成点播请求并向服务端发送;
步骤S10、客户端开始接收服务端所发送的媒体分片文件;
步骤S11、客户端接收完媒体分片文件后,统计媒体分片文件的大小Si和接收时间Ti
步骤S12、客户端根据Ti计算下一请求开始的时间ΔTi,等待ΔTi时间后转步骤S3;其中,ΔTi计算方法包括:
若缓冲区可播放时长小于Qmax,则ΔTi设为0;
若缓冲区可播放时长大于Qmax,且Ti>M,则ΔTi为0;
若缓冲区可播放时长大于Qmax,且Ti≤M,则ΔTi为M-Ti-1
步骤S13、播放结束。
3.根据权利要求2所述的基于客户端缓存的自适应流化方法,其特征在于,在步骤S2中,客户端向服务端请求播放列表,所述播放列表分为两级,第一级播放列表中描述了媒体文件、媒体文件的N种可选码率、媒体文件在一种可选码率下所对应的第二级播放列表的路径;第二级播放列表中描述了对应于一种码率的媒体文件所包含的多个媒体分片文件的序列号、播放时长、路径。
4.根据权利要求2所述的基于客户端缓存的自适应流化方法,其特征在于,在步骤S4中,统计当前缓冲区内可播放时长的大小Qi包括:当客户端正在播放时,缓冲区可播放时长每秒减少一秒;当客户端收到一个完整的媒体分片文件时,缓冲区可播放时长增加M。
5.根据权利要求2所述的基于客户端缓存的自适应流化方法,其特征在于,所述步骤S5进一步包括:
步骤S501、开始更新缓冲区状态;
步骤S502、判断当前缓冲区状态,若为缓冲区快速填充状态,则转步骤S503,若为自适应码率调整状态,则转步骤S504;
步骤S503、判断当前缓冲区可播放时长Qi是否大于Qmin,若是,转步骤S506,否则转步骤S505;
步骤S504,判断当前缓冲区可播放时长Qi是否小于媒体分片文件的固定播放时长M,若是,转步骤S507,否则转步骤S505;
步骤S505、保持当前缓冲区状态不变,然后转步骤S508;
步骤S506、将当前缓冲区状态切换为自适应码率调整状态,然后转步骤S508;
步骤S507、将当前缓冲区状态切换为缓冲区快速填充状态,然后转步骤S508;
步骤S508,缓冲区状态更新结束。
6.根据权利要求2所述的基于客户端缓存的自适应流化方法,其特征在于,所述步骤S8进一步包括:
步骤S801、开始计算下一分片码率;
步骤S802、统计当前缓冲区的可播放时长Qi,估计当前可用带宽Ri
步骤S803、判断当前缓冲区可播放时长Qi与第一阈值Qmax、第二阈值Qmin的关系,若大于第一阈值Qmax,转步骤S804,若小于第二阈值Qmin,转步骤S805,若在第一阈值Qmax和第二阈值Qmin之间,转步骤S806;
步骤S804、根据公式Bi=Ri*(M+Qi-Qmax)/M计算码率,从媒体分片文件的可选码率中选择与Bi最接近的码率进行请求,然后转步骤S810;
步骤S805、根据公式Bi=Ri*(M+Qi-Qmin)/M计算码率,从媒体分片文件的可选码率中选择与Bi最接近的码率进行请求,然后转步骤S810;
步骤S806,判断缓冲区当前可播放时长与上次统计的可播放时长的关系,若大于,转步骤S807,若小于,转步骤S809,若等于,转步骤S808;
步骤S807、码率增加一级,然后转步骤S810;
步骤S808、码率维持不变,然后转步骤S810;
步骤S809、码率降低一级,然后转步骤S810;
步骤S810、码率计算结束。
CN201410342636.4A 2014-07-18 2014-07-18 一种基于客户端缓存的自适应流化方法 Expired - Fee Related CN105263037B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410342636.4A CN105263037B (zh) 2014-07-18 2014-07-18 一种基于客户端缓存的自适应流化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410342636.4A CN105263037B (zh) 2014-07-18 2014-07-18 一种基于客户端缓存的自适应流化方法

Publications (2)

Publication Number Publication Date
CN105263037A true CN105263037A (zh) 2016-01-20
CN105263037B CN105263037B (zh) 2018-07-03

Family

ID=55102516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410342636.4A Expired - Fee Related CN105263037B (zh) 2014-07-18 2014-07-18 一种基于客户端缓存的自适应流化方法

Country Status (1)

Country Link
CN (1) CN105263037B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106101766A (zh) * 2016-07-11 2016-11-09 乐视控股(北京)有限公司 一种视频广告的播放控制方法、装置及电子设备
CN106791860A (zh) * 2016-12-28 2017-05-31 重庆邮电大学 一种自适应视频编码控制系统及方法
CN107135411A (zh) * 2016-02-26 2017-09-05 掌赢信息科技(上海)有限公司 一种调整视频码率的方法及电子设备
CN107295395A (zh) * 2017-06-27 2017-10-24 武汉斗鱼网络科技有限公司 码率自适应调节方法、装置及电子设备
CN108063955A (zh) * 2017-12-15 2018-05-22 重庆邮电大学 基于状态机的动态自适应视频传输的码率切换方法
CN108184152A (zh) * 2018-01-03 2018-06-19 湖北大学 一种dash传输系统两阶段客户端码率选择方法
CN108833995A (zh) * 2018-06-08 2018-11-16 西安交通大学 一种无线网络环境中自适应流媒体的传输方法
CN110022498A (zh) * 2018-01-08 2019-07-16 深圳市中兴微电子技术有限公司 一种实现码率切换的方法及装置
CN110049359A (zh) * 2019-05-21 2019-07-23 腾讯科技(深圳)有限公司 一种码率的控制方法和装置
CN111083094A (zh) * 2018-10-22 2020-04-28 中国移动通信有限公司研究院 一种流媒体的码流切换方法及装置、计算机存储介质
CN111225243A (zh) * 2020-01-20 2020-06-02 中南大学 一种视频块调度方法及系统
CN111314772A (zh) * 2019-11-29 2020-06-19 广州市百果园信息技术有限公司 一种视频下载码率的确定方法、装置、终端和存储介质
WO2023051350A1 (zh) * 2021-09-29 2023-04-06 百果园技术(新加坡)有限公司 视频播放档位确定方法、视频播放方法及相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101562737A (zh) * 2009-05-19 2009-10-21 华中科技大学 一种对等直播系统中多码率调度方法
CN102204272A (zh) * 2010-12-31 2011-09-28 华为技术有限公司 流媒体中播放时间点跳转后的处理方法及装置
CN103747283A (zh) * 2013-12-24 2014-04-23 中国科学院声学研究所 视频分片的下载方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101562737A (zh) * 2009-05-19 2009-10-21 华中科技大学 一种对等直播系统中多码率调度方法
CN102204272A (zh) * 2010-12-31 2011-09-28 华为技术有限公司 流媒体中播放时间点跳转后的处理方法及装置
CN103747283A (zh) * 2013-12-24 2014-04-23 中国科学院声学研究所 视频分片的下载方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KONSTANTIN MILLER等: "Adaptation Algorithm for Adaptive Streaming over HTTP", 《PROCEEDINGS OF 2012 IEEE 19TH ITERNATIONAL PACKET VIDEO WORKSHOP》 *

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107135411A (zh) * 2016-02-26 2017-09-05 掌赢信息科技(上海)有限公司 一种调整视频码率的方法及电子设备
CN106101766A (zh) * 2016-07-11 2016-11-09 乐视控股(北京)有限公司 一种视频广告的播放控制方法、装置及电子设备
CN106791860A (zh) * 2016-12-28 2017-05-31 重庆邮电大学 一种自适应视频编码控制系统及方法
CN106791860B (zh) * 2016-12-28 2019-07-30 重庆邮电大学 一种自适应视频编码控制系统及方法
CN107295395A (zh) * 2017-06-27 2017-10-24 武汉斗鱼网络科技有限公司 码率自适应调节方法、装置及电子设备
CN108063955A (zh) * 2017-12-15 2018-05-22 重庆邮电大学 基于状态机的动态自适应视频传输的码率切换方法
CN108063955B (zh) * 2017-12-15 2020-02-11 重庆邮电大学 基于状态机的动态自适应视频传输的码率切换方法
CN108184152A (zh) * 2018-01-03 2018-06-19 湖北大学 一种dash传输系统两阶段客户端码率选择方法
CN108184152B (zh) * 2018-01-03 2020-01-24 湖北大学 一种dash传输系统两阶段客户端码率选择方法
CN110022498A (zh) * 2018-01-08 2019-07-16 深圳市中兴微电子技术有限公司 一种实现码率切换的方法及装置
CN110022498B (zh) * 2018-01-08 2021-04-27 深圳市中兴微电子技术有限公司 一种实现码率切换的方法及装置
CN108833995A (zh) * 2018-06-08 2018-11-16 西安交通大学 一种无线网络环境中自适应流媒体的传输方法
CN111083094A (zh) * 2018-10-22 2020-04-28 中国移动通信有限公司研究院 一种流媒体的码流切换方法及装置、计算机存储介质
CN110049359B (zh) * 2019-05-21 2020-11-17 腾讯科技(深圳)有限公司 一种码率的控制方法和装置
CN110049359A (zh) * 2019-05-21 2019-07-23 腾讯科技(深圳)有限公司 一种码率的控制方法和装置
CN111314772A (zh) * 2019-11-29 2020-06-19 广州市百果园信息技术有限公司 一种视频下载码率的确定方法、装置、终端和存储介质
CN111225243A (zh) * 2020-01-20 2020-06-02 中南大学 一种视频块调度方法及系统
WO2023051350A1 (zh) * 2021-09-29 2023-04-06 百果园技术(新加坡)有限公司 视频播放档位确定方法、视频播放方法及相关装置

Also Published As

Publication number Publication date
CN105263037B (zh) 2018-07-03

Similar Documents

Publication Publication Date Title
CN105263037A (zh) 一种基于客户端缓存的自适应流化方法
KR102048898B1 (ko) 다중 경로 환경에서의 적응적 스트리밍 시스템 및 방법
US10271112B2 (en) System and method for dynamic adaptive video streaming using model predictive control
US9860294B2 (en) Media content streaming
KR102472155B1 (ko) 피어 투 피어(Peer to peer, P2P) 네트워크에서 스트리밍 콘텐츠를 방송하는 방법
KR102086873B1 (ko) 복수의 트랜스코딩된 컨텐츠 스트림들을 제공하기 위한 방법 및 장치
CN108184152B (zh) 一种dash传输系统两阶段客户端码率选择方法
EP2383999A1 (en) Controlling an adaptive streaming of digital content
KR101982290B1 (ko) 적응적 스트리밍 서비스의 체감 품질 향상을 위한 콘텐츠 특성 기반 스트리밍 시스템 및 방법
CN107135411B (zh) 一种调整视频码率的方法及电子设备
EP3022884A1 (en) Quality optimization with buffer and horizon constraints in adaptive streaming
KR20150042191A (ko) 적응적 비트레이트 스트리밍에서 대역폭 할당을 위한 방법들 및 디바이스들
JP2015133701A (ja) クライアント端末においてマルチメディアコンテンツのセグメントの来るシーケンスをダウンロードする方法、及び対応する端末
JP2024056880A (ja) ライブブロードキャスティングに対する適応ビットレート方法
US10362080B2 (en) Methods, systems, and devices for video streaming adaptation using control theoretic approach
Zhou et al. Buffer-based smooth rate adaptation for dynamic HTTP streaming
CN103548318A (zh) 用于动态地适配接收比特率的方法和相关的接收器
EP2993911A1 (en) Method and client terminal for receiving a multimedia content split into at least two successive segments, and corresponding computer program product and computer-readable medium
Xie et al. Dynamic threshold based rate adaptation for HTTP live streaming
CN104022845A (zh) 调整数据块比特率的方法、装置和系统
KR102304476B1 (ko) 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법
CN103546824A (zh) 流媒体发送速率的控制方法和装置
Younus et al. A model for a practical evaluation of a DASH-based rate adaptive algorithm over HTTP
JP6501691B2 (ja) コンテンツ配信システムのクライアント装置、コンテンツの再生開始タイミングを判定する方法及びプログラム
CN111083094B (zh) 一种流媒体的码流切换方法及装置、计算机存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180703