CN109819312B - 基于动态缓冲区的播放器系统及其控制方法 - Google Patents
基于动态缓冲区的播放器系统及其控制方法 Download PDFInfo
- Publication number
- CN109819312B CN109819312B CN201910208273.8A CN201910208273A CN109819312B CN 109819312 B CN109819312 B CN 109819312B CN 201910208273 A CN201910208273 A CN 201910208273A CN 109819312 B CN109819312 B CN 109819312B
- Authority
- CN
- China
- Prior art keywords
- buffer
- module
- water level
- rate
- code stream
- 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
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明公开了一种基于动态缓冲区的播放器系统,包括用于下载原始码流数据的下载模块、用于缓冲数据的缓冲模块和位于所述下载模块下游用于编解码的解复用模块,还包括缓存预设模块,用于分起播阶段和播放阶段动态更新高低水位阈值,实现分段式水位逻辑;缓存更新模块,用于实时更新动态缓冲区的缓冲水位值;缓冲控制模块,用于缓冲控制,选择缓存更新模块中计算的结果,根据缓冲水位的百分比,决定播放器系统何时进入缓冲,何时结束缓冲。本发明还公开了一种如上述的基于动态缓冲区的播放器系统的控制方法;本发明起播阶段最大限度的减少起播延迟,减少用户等待时间,播放中尽可能减少缓冲次数,提供更流畅的播放体验。
Description
技术领域
本发明涉及音视频播放软件技术领域,特别是一种基于动态缓冲区的播放器系统及其控制方法。
背景技术
缓冲策略设计,是每个播放器架构中非常重要的一个环节,对于播控体验,起着至关重要的作用。目前市面上大部分流媒体播放系统,体验或多或少都不甚理想,要么起播时等待时间太长,要么播放中频繁的缓冲,不能有效的结合文件码率以及实时网络吞吐率,做到智能数据缓冲,主要还存在以下缺陷:
(1)流媒体播放业务中涉及各种各样的播放协议,每种协议对起播需求数据量不同,不能简单的统一固定一个缓冲数据量阈值;目前绝大部分解决方案,缓冲数据量多少仅仅是下载模块,简单地根据已下载原始网络数据流bytes数作为衡量依据,不能很好的结合实际码率的编解码信息以及实际使用的传输协议相结合;
(2)流媒体播放器业务对网络波动敏感,不能预估用户使用环境的网络条件;
(3)流媒体播放系统的下载模块,通常情况下从下载的原始数据流中获取不到数据所带的时间戳信息,缓冲模块不能准确估计已缓存数据以时间为单位的数据量,因此难以准确估算数据量。
目前大部分解决方案,都仅仅是粗略统计原始码流下载的字节数单一维度概要统计缓冲数据量,既不精准,又不能很好的结合文件实际码率大小做不同的控制,往往出现的情况是在某个码率条件下,播放表现比较好,网络稍微一波动,或者服务端文件码率大小稍微一变动,就必现得比较差。
发明内容
为解决现有技术中存在的问题,本发明的目的是提供一种基于动态缓冲区的播放器系统及其控制方法,本发明在实现各种文件码率及不同网络实时下载速度情况下,也能够快速起播,并且最大限度保证媒体文件播放的流畅性,最大限度减小网络波动以及不同协议码流差异性对播控体验带来的影响。
为实现上述目的,本发明采用的技术方案是:一种基于动态缓冲区的播放器系统,包括用于下载原始码流数据的下载模块、用于缓冲数据的缓冲模块和位于所述下载模块下游用于编解码的解复用模块,其特征在于,还包括缓存预设模块、缓存更新模块和缓冲控制模块,其中:
缓存预设模块,用于分起播阶段和播放阶段动态更新高低水位阈值,实现分段式水位逻辑;
缓存更新模块,用于实时更新动态缓冲区的缓冲水位值;
缓冲控制模块,用于缓冲控制,选择缓存更新模块中计算的结果,根据缓冲水位的百分比,决定播放器系统何时进入缓冲,何时结束缓冲。
本发明还提供一种如上所述的基于动态缓冲区的播放器系统的控制方法,包括以下步骤:
步骤S10、初始阶段开辟动态缓冲区,动态缓冲区中的高水位阈值记为MAX_SIZEX;
步骤S20、下载模块从网络下载原始码流数据到动态缓冲区中,并通过下载模块的输入端以及输出端之间的差值,计算原始码流的实时下载速率download_rate;
步骤S30、解复用模块从动态缓冲区中获取原始码流,从原始码流中提取音视频以及字幕的编解码数据ES码流并对原始码流的码率mux_rate、平均码率estimate_rate进行分析;
步骤S40、根据获得的原始码流的实时下载速率download_rate、原始码流码率mux_rate以及平均码率estimate_rate,分起播阶段和播放阶段实时更新MAX_SIZEX,缓存预设模块分起播阶段和播放阶段动态更新高低水位阈值,从而控制原始码流在动态缓冲区的缓冲大小;
步骤S50、同时通过缓存更新模块实时更新当前已下载数据量的水位值,记为buffering_levelX,并计算当前已下载数据量的水位值相对于高水位阈值的百分比percentX:percentX=buffering_levelX*100%/MAX_SIZEX,确定播放系统中当前缓冲数据量的大小,缓存控制模块决定暂停继续缓冲或者是从缓冲状态中恢复播放,从而根据计算的缓冲水位百分比结果控制播放器系统的播放状态;
步骤S60、重复步骤S10到S50,直到播放完成。
作为一种优选的实施方式,所述步骤S20中,还包括设置定时周期回调函数,用于每隔固定的时间重新计算计算原始码流实时下载速率download_rate,并去除最大以及最小的异常值,取多次计算的平均值以消除瞬时波动带来的误差。
作为另一种优选的实施方式,所述步骤S30中,对原始码流进行的数据分析还包括文件的播放总时长以及文件的大小size,若解复用模块无法从容器或者ES码流中获取到码率mux_rate,即码流编码时没有插入mux_rate的tag信息,则通过文件的播放总时长/文件的大小size,来估算码流的平均码率estimate_rate,且步骤S30中,同步进行对ES码流的提取以及对原始码流的数据分析。
作为另一种优选的实施方式,若解复用模块没有获取到文件的播放总时长时,则文件的播放总时长通过最后一个TS数据包所带时间戳PTS减去第一个TS数据包所带时间戳PTS的差值进行计算。
作为另一种优选的实施方式,所述步骤S10中,开辟的动态缓冲区包括以bytes、time、buffers三个维度作为度量单位的动态缓冲区,代表缓冲的字节数、时间以及buffer个数,高水位阈值MAX_SIZEX中,X分别表示bytes、time、buffers,用于根据不同网络协议,选择三个度量单位中其中一个最精准的具体维度值作为衡量标准。
作为另一种优选的实施方式,还包括以bytes、time、buffers三个维度作为度量单位中最先到达高水位阈值的度量单位作为衡量标准。
作为另一种优选的实施方式,所述步骤S50具体为:缓存更新模块实时更新三个维度的当前已下载数据量的水位值,记为buffering_levelX,其中,X分别表示bytes、time、buffers,分别计算三个维度的当前已下载数据量的水位值相对于高水位阈值的百分比percentX:
percentbytes=buffering_levelbytes*100%/MAX_SIZEbytes;
percenttime=buffering_leveltime*100%/MAX_SIZEtime;
percentbuffers=buffering_levelbuffers*100%/MAX_SIZEbuffers。
本发明的有益效果是:本发明采用了独有的分段式设置缓冲水位阈值,在起播阶段和播放中分别使用不同的缓冲高低水位阈值,而且会根据当前码流的文件码率和网络的实时网速,动态调节,达到智能实时增减高低水位阈值,从技术上保证起播时缓冲更少数据量让用户快速起播,而播放中则减少缓冲次数,让用户有更流畅的播控体验;另外,本发明特有的三维精准统计模式,能够更准确的计算实时缓冲百分比,从而有更强的鲁棒性,减少了瞬时文件码率波动以及网络波动对实时统计带来的影响。
附图说明
图1为本发明实施例中播放器系统的结构框图;
图2为本发明实施例中控制方法的流程框图。
具体实施方式
下面结合附图对本发明的实施例进行详细说明。
实施例:
如图1所示,一种基于动态缓冲区的播放器系统,包括用于下载原始码流数据的下载模块、用于缓冲数据的缓冲模块和位于所述下载模块下游用于编解码的解复用模块,还包括缓存预设模块、缓存更新模块和缓冲控制模块,其中:
缓存预设模块,用于分起播阶段和播放阶段动态更新高低水位阈值,实现分段式水位逻辑;
缓存更新模块,用于实时更新动态缓冲区的缓冲水位值;
缓冲控制模块,用于缓冲控制,选择缓存更新模块中计算的结果,根据缓冲水位的百分比,决定播放器系统何时进入缓冲,何时结束缓冲。
如图2所示,本实施例还提供一种如上所述的基于动态缓冲区的播放器系统的控制方法,包括以下步骤:
步骤1、初始阶段开辟一个以bytes、time、buffers三个维度作为度量单位的动态缓冲区,分别代表缓冲的字节数、时间、buffer个数,比如在配置文件中初始指定10MB、8秒、200个buffer数。分别代表缓存区最大能够缓存10MB大小的原始码流,或者最大只能够缓存8秒的数据量,或者只能缓存200个数据包;初始预设值是可配置的,可以通过配置文件进行预设;动态缓冲区中的高水位阈值记为MAX_SIZEX。
步骤2、下载模块从网络下载原始码流数据到动态缓冲区中,通过下载模块的输入端以及输出端之间的差值,统计原始码流的实时下载速率download_rate;
在本实施例中,具体的可以设置一个定时周期回调函数,例如每隔100毫秒(即0.1秒)测定下载模块输出端已下载数据量为200KB,同时测得下载模块输入端实时数据量统计结果为150KB,测得本次100毫秒的定时器周期内测得的download_rate=(200KB-150KB)/0.1=500KB/S。因此,实时下载速率download_rate每隔100毫秒固定周期重新计算一次,去除最大的或者最小的异常值,取多次计算的平均值以消除瞬时波动带来的误差。
步骤3、同时解复用模块(以下简称demuxer模块)从动态缓冲区中获取原始码流,从原始码流中提取音视频以及字幕的基本编解码数据(简称ES码流)并分析码流的码率mux_rate,以及文件的播放总时长和文件的大小size;
在本实施例中,缓存模块下载的数据会实时的传递给解复用模块,提取ES码流和从容器中提取码流码率,文件的播放总时长,文件的大小size,且是同步进行。不同的容器会传递到不同的解复用子模块去分析,比如mpegts传输流,会有一个对应的ts解复用模块专门处理,获取到的码率,播放总时长,文件大小size等有用信息,以消息形式实时的通知缓存控制模块;解复用模块提取ES码流以及分析码率同步进行,提升数据处理的吞吐率,避免因为实时统计重复计算而带来性能损失。
步骤4、上述步骤三中demuxer模块如果无法从容器或者ES码流中获取到mux_rate信息,也就是码流编码时没有插入mux_rate的tag信息时,则以文件播放总时长/文件大小size,来估算码流的平均码率estimate_rate;
在本实施例中,具体的以mpegts传输流为例,如果步骤3中缓存控制模块没有获取到码率信息,但是获取到了文件的播放总时长为10秒和文件大小size为10MB,则可以计算estimate_rate=10MB/10s=1MB/s。在一个实施方式中,如果解复用模块没有获取到文件播放总时长信息,则可以分析最后一个TS数据包所带时间戳PTS减去第一个TS数据包所带时间戳PTS的差值计算取得。由于每个传输流格式和编解码容器提供的信息和方式不同,缓存模块不负责分析数据,而是实时同步的把数据分析和处理路由到解复用模块,而各种格式又由对应的解复用子模块负责具体处理,可以很好的结合具体传输协议获取到有用信息,比如本实施例中提到的mpegts传输流可以分析PTS差值获取播放总时长,HLS协议码流可以从M3U8文件中提取每一个#EXTINFtag信息累加获取播放总时长。
由上可见,本实施例提供的技术方案非常灵活,普适性非常强,可以适应市面上常见的协议及编解码格式。
步骤5、根据上述步骤2,步骤3,步骤4中分别获取到的原始码流的实时下载速率download_rate、原始码流码率mux_rate以及平均码率estimate_rate,缓存预设模块分起播阶段和播放阶段实时更新MAX_SIZEx(x指代bytes,time,buffers),并通过缓存更新模块实时更新当前已下载数据量水位值(以下简称buffering_levelx,x指代bytes,time,buffers);
在本实施例方式中,从解复用模块获取到有用的码率mux_rate或者通过文件的播放总时长和文件大小size估算所得的平均码率estimate_rate,缓存控制模块就可以计算起播阶段和播放阶段字节数、时间、buffer个数三个维度高低水位阈值准确的对应关系。比如预设起播阶段低水位值阈值为200毫秒,高水位阈值为1秒,而播放阶段低水位阈值为500毫秒,高水位阈值为4秒,缓存控制模块获取到的码率mux_rate为500KB/S,那么计算所得此特定流下,以字节为单位的起播阶段低水位值为500KB/S*0.2S=100KB,高水位阈值为500KB/S*1S=512KB,播放阶段低水位值为500KB/S*0.5S=250KB,高水位值为500KB/S*4S=1.95MB,buffer个数则更新为从缓存开始的低水位开始到高水位达到时下载的实际buffer个数。因此,在当前播放例中,可以精准的控制缓存内存大小。从实际实际播放体验来看,起播时最多下载512KB就可以快速开始播放,在一般网络条件下,基本可以做到秒播,而播放中会尝试缓存更多数据,让播放更流畅。
步骤6、同时根据以下计算式,分别计算当前缓冲数据量水位相对于高水位的百分比(以下简称percentx,其中x分别指代bytes,time,buffers):
percentbytes=buffering_levelbytes*100%/MAX_SIZEbytes;
percenttime=buffering_leveltime*100%/MAX_SIZEtime;
percentbuffers=buffering_levelbuffers*100%/MAX_SIZEbuffers。
在本实施例中,更新三个度量维度的当前缓冲的百分比值。以缓存控制模块更新后字节数、时间、buffer个数高水位阈值分别为:100KB/200毫秒/100个buffer为例,假如当前缓冲控制模块中计算所得的实际值为:50KB/80毫秒/10个buffer,那么算得:字节数为单位的百分比为50%,时间为单位的百分比为40%,buffer个数为单位的百分比为10%。本实施例中,当前字节数可以统计进入缓存模块的bytes数累加值,而时间信息可以从当前处理的原始码流buffer所带时间戳pts/dts和初始buffers所带时间戳pts/dts差值计算获得,当前buffer个数可以从缓存控制模块的计算器中获得。
步骤7、分三个维度精准统计当前缓冲模块中已缓冲数据量的大小,缓冲控制模块根据不同网络协议,选择其中percentbytes、percenttime、percentbuffers最精准的一个值抛送给播放器系统,以确定流媒体播放系统中当前缓冲数据量的大小,让控制模块决定暂停继续缓冲或者是从缓冲状态中恢复播放;该步骤中,也可以以bytes、time、buffers三个维度作为度量单位中最先到达高水位阈值的度量单位作为衡量标准;
在本实施例中,仍然以步骤6实施例说明中获取到的三个维度度量单位(bytes,time,buffers)=(50%,40%,10%)为例说明,假如以HLS协议传输流为例,HLS协议带m3u8描述文件,每个ts分片的时间信息比较准确,那么缓存控制模块会智能的根据码流协议类型,自动选择三个维度中最准确的时间信息作为度量标准。缓存控制模块会通知播放器系统,当前缓冲数据量为40%,而忽略50%和10%两个不精准的值;又比如局域网中UDP传输mpegts流的场景,每个UDP包大小比较固定,缓存控制模块自动选择buffer个数作为度量标准。
由上可见,分bytes,time,buffers三个维度,分别计算缓冲数据量相对高低水位的百分比,大大的增加了缓冲模块的鲁棒性。
步骤8、循环上述几个步骤,直到播放完成。
以上所述实施例仅表达了本发明的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
Claims (6)
1.一种基于动态缓冲区的播放器系统的控制方法,其特征在于,包括用于下载原始码流数据的下载模块、用于缓冲数据的缓冲模块和位于所述下载模块下游用于编解码的解复用模块,还包括缓存预设模块、缓存更新模块和缓冲控制模块,其中:
缓存预设模块,用于分起播阶段和播放阶段动态更新高低水位阈值,实现分段式水位逻辑;
缓存更新模块,用于实时更新动态缓冲区的缓冲水位值;
缓冲控制模块,用于缓冲控制,选择缓存更新模块中计算的结果,根据缓冲水位的百分比,决定播放器系统何时进入缓冲,何时结束缓冲;
所述的控制方法包括以下步骤:
步骤S10、初始阶段开辟动态缓冲区,动态缓冲区中的高水位阈值记为MAX_SIZEX;开辟的动态缓冲区包括以bytes、time、buffers三个维度作为度量单位的动态缓冲区,代表缓冲的字节数、时间以及buffer个数,高水位阈值MAX_SIZEX中,X分别表示bytes、time、buffers,用于根据不同网络协议,选择三个度量单位中其中一个最精准的具体维度值作为衡量标准;
步骤S20、下载模块从网络下载原始码流数据到动态缓冲区中,并通过下载模块的输入端以及输出端之间的差值,计算原始码流的实时下载速率download_rate;
步骤S30、解复用模块从动态缓冲区中获取原始码流,从原始码流中提取音视频以及字幕的编解码数据ES码流并对原始码流的码率mux_rate、平均码率estimate_rate进行分析;
步骤S40、根据获得的原始码流的实时下载速率download_rate、原始码流码率mux_rate以及平均码率estimate_rate,分起播阶段和播放阶段实时更新MAX_SIZEX,缓存预设模块分起播阶段和播放阶段动态更新高低水位阈值,从而控制原始码流在动态缓冲区的缓冲大小;
步骤S50、同时通过缓存更新模块实时更新当前已下载数据量的水位值,记为buffering_levelX,并计算当前已下载数据量的水位值相对于高水位阈值的百分比percentX:percentX=buffering_levelX*100%/MAX_SIZEX,确定播放系统中当前缓冲数据量的大小,缓存控制模块决定暂停继续缓冲或者是从缓冲状态中恢复播放,从而根据计算的缓冲水位百分比结果控制播放器系统的播放状态;
步骤S60、重复步骤S10到S50,直到播放完成。
2.根据权利要求1所述的基于动态缓冲区的播放器系统的控制方法,其特征在于,所述步骤S20中,还包括设置定时周期回调函数,用于每隔固定的时间重新计算计算原始码流实时下载速率download_rate,并去除最大以及最小的异常值,取多次计算的平均值以消除瞬时波动带来的误差。
3.根据权利要求1所述的基于动态缓冲区的播放器系统的控制方法,其特征在于,所述步骤S30中,对原始码流进行的数据分析还包括文件的播放总时长以及文件的大小size,若解复用模块无法从容器或者ES码流中获取到码率mux_rate,即码流编码时没有插入mux_rate的tag信息,则通过文件的播放总时长/文件的大小size,来估算码流的平均码率estimate_rate,且步骤S30中,同步进行对ES码流的提取以及对原始码流的数据分析。
4.根据权利要求3所述的基于动态缓冲区的播放器系统的控制方法,其特征在于,若解复用模块没有获取到文件的播放总时长时,则文件的播放总时长通过最后一个TS数据包所带时间戳PTS减去第一个TS数据包所带时间戳PTS的差值进行计算。
5.根据权利要求1所述的基于动态缓冲区的播放器系统的控制方法,其特征在于,还包括以bytes、time、buffers三个维度作为度量单位中最先到达高水位阈值的度量单位作为衡量标准。
6.根据权利要求1所述的基于动态缓冲区的播放器系统的控制方法,其特征在于,所述步骤S50具体为:缓存更新模块实时更新三个维度的当前已下载数据量的水位值,记为buffering_levelX,其中,X分别表示bytes、time、buffers,分别计算三个维度的当前已下载数据量的水位值相对于高水位阈值的百分比percentX:
percentbytes=buffering_levelbytes*100%/MAX_SIZEbytes;
percenttime=buffering_leveltime*100%/MAX_SIZEtime;
percentbuffers=buffering_levelbuffers*100%/MAX_SIZEbuffers。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910208273.8A CN109819312B (zh) | 2019-03-19 | 2019-03-19 | 基于动态缓冲区的播放器系统及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910208273.8A CN109819312B (zh) | 2019-03-19 | 2019-03-19 | 基于动态缓冲区的播放器系统及其控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109819312A CN109819312A (zh) | 2019-05-28 |
CN109819312B true CN109819312B (zh) | 2020-06-30 |
Family
ID=66609530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910208273.8A Active CN109819312B (zh) | 2019-03-19 | 2019-03-19 | 基于动态缓冲区的播放器系统及其控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109819312B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113038238B (zh) * | 2021-03-22 | 2023-07-07 | 格兰菲智能科技有限公司 | 传输流数据码录制系统及传输流数据码录制方法 |
CN113380220B (zh) * | 2021-06-10 | 2024-05-14 | 深圳市同行者科技有限公司 | 语音合成编码方法及装置 |
CN118414836A (zh) * | 2021-12-22 | 2024-07-30 | 深圳Tcl新技术有限公司 | 数据处理方法、视频播放系统及终端设备和存储介质 |
CN114727128B (zh) * | 2022-03-30 | 2024-04-12 | 恒玄科技(上海)股份有限公司 | 播放终端的数据传输方法、装置、播放终端及存储介质 |
CN114979771A (zh) * | 2022-07-26 | 2022-08-30 | 北京智象信息技术有限公司 | 一种多媒体播放器视频预滚水位控制的方法、装置及介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101001362A (zh) * | 2006-01-11 | 2007-07-18 | 腾讯科技(深圳)有限公司 | 在线播放流媒体的方法及终端 |
CN103152651A (zh) * | 2013-01-31 | 2013-06-12 | 广东欧珀移动通信有限公司 | 一种自动调节流媒体缓冲区播放门限的方法和系统 |
CN104244033A (zh) * | 2014-09-03 | 2014-12-24 | 乐视致新电子科技(天津)有限公司 | 视频播放方法和装置、智能终端 |
CN105979346A (zh) * | 2015-12-03 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种播放流媒体的方法和装置 |
CN106488325A (zh) * | 2016-11-08 | 2017-03-08 | 青岛海信电器股份有限公司 | 网络媒体文件播放方法、装置及设备 |
CN108184152A (zh) * | 2018-01-03 | 2018-06-19 | 湖北大学 | 一种dash传输系统两阶段客户端码率选择方法 |
CN108833996A (zh) * | 2018-07-03 | 2018-11-16 | 湖北大学 | 分布式dash系统中服务节点选择、更新和码率自适应方法 |
CN109327716A (zh) * | 2018-10-31 | 2019-02-12 | 北京达佳互联信息技术有限公司 | 延迟控制方法、延迟控制装置和计算机可读存储介质 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10063606B2 (en) * | 2012-06-12 | 2018-08-28 | Taiwan Semiconductor Manufacturing Co., Ltd. | Systems and methods for using client-side video buffer occupancy for enhanced quality of experience in a communication network |
US9674100B2 (en) * | 2013-11-11 | 2017-06-06 | Hulu, LLC | Dynamic adjustment to multiple bitrate algorithm based on buffer length |
US9686332B1 (en) * | 2014-12-19 | 2017-06-20 | Amazon Technologies, Inc. | Live stream manifests for on demand content |
CN108271048B (zh) * | 2018-02-09 | 2020-08-07 | 北京邮电大学 | 一种兼顾吞吐量和视频缓冲的码率自适应调整装置和方法 |
CN108989838B (zh) * | 2018-08-07 | 2021-07-30 | 刘子和 | 一种基于视频内容复杂度感知的dash码率自适应方法 |
CN109413456B (zh) * | 2018-10-08 | 2021-05-18 | 山东大学 | 一种面向基于http的动态自适应流媒体多假设码率自适应系统及方法 |
CN109379632B (zh) * | 2018-10-25 | 2020-02-14 | 中国地质大学(武汉) | 一种动态自适应http流的码率渐进切换方法及系统 |
-
2019
- 2019-03-19 CN CN201910208273.8A patent/CN109819312B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101001362A (zh) * | 2006-01-11 | 2007-07-18 | 腾讯科技(深圳)有限公司 | 在线播放流媒体的方法及终端 |
CN103152651A (zh) * | 2013-01-31 | 2013-06-12 | 广东欧珀移动通信有限公司 | 一种自动调节流媒体缓冲区播放门限的方法和系统 |
CN104244033A (zh) * | 2014-09-03 | 2014-12-24 | 乐视致新电子科技(天津)有限公司 | 视频播放方法和装置、智能终端 |
CN105979346A (zh) * | 2015-12-03 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种播放流媒体的方法和装置 |
CN106488325A (zh) * | 2016-11-08 | 2017-03-08 | 青岛海信电器股份有限公司 | 网络媒体文件播放方法、装置及设备 |
CN108184152A (zh) * | 2018-01-03 | 2018-06-19 | 湖北大学 | 一种dash传输系统两阶段客户端码率选择方法 |
CN108833996A (zh) * | 2018-07-03 | 2018-11-16 | 湖北大学 | 分布式dash系统中服务节点选择、更新和码率自适应方法 |
CN109327716A (zh) * | 2018-10-31 | 2019-02-12 | 北京达佳互联信息技术有限公司 | 延迟控制方法、延迟控制装置和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109819312A (zh) | 2019-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109819312B (zh) | 基于动态缓冲区的播放器系统及其控制方法 | |
US10499071B2 (en) | Dynamic bit rate adaptation over bandwidth varying connection | |
KR101464456B1 (ko) | 비디오 데이터 품질 평가 방법 및 장치 | |
CN104618786B (zh) | 音视频同步方法和装置 | |
CN103916716B (zh) | 一种无线网络下视频实时传输的码率平滑方法 | |
CN113225598B (zh) | 移动端音视频同步的方法、装置、设备及存储介质 | |
CN103152651B (zh) | 一种自动调节流媒体缓冲区播放门限的方法和系统 | |
CN107147919B (zh) | 直播快速启播方法及系统 | |
JP5214659B2 (ja) | プログラムストリーム変換のためのトランスポートストリーム | |
CN111107382B (zh) | 数据流的控制方法、装置和系统 | |
CN106612452B (zh) | 机顶盒音视频同步的方法及装置 | |
CN108259964B (zh) | 一种视频播放速率调整方法及系统 | |
CN107566889B (zh) | 音频流流速误差处理方法、装置、计算机装置及计算机可读存储介质 | |
WO2000067414A2 (en) | A method and apparatus for providing continuous playback of audio and audio-visual streamed multimedia having non-deterministic delays | |
US20150271242A1 (en) | Method and Apparatus for Acquiring Streaming Media Buffer Parameter | |
CN107529097A (zh) | 一种自适应调整视频缓冲大小的方法及装置 | |
CN103795755B (zh) | 流媒体发送速率控制方法、系统和流媒体服务器 | |
CN106411565B (zh) | 估计处理器负荷的方法、发送媒体流的设备、系统和介质 | |
WO2014134932A1 (zh) | 缓存状态估计方法及设备 | |
CN113179441A (zh) | 一种同步播放方法、装置、系统及计算机设备 | |
WO2022052566A1 (zh) | 视频码率调整方法、装置、电子设备和机器可读存储介质 | |
CN111886875B (zh) | 一种通过网络传送媒体内容的方法及服务器 | |
WO2020001315A1 (zh) | 一种视频播放质量检测方法和装置 | |
CN110225385B (zh) | 一种音视频同步调整方法和装置 | |
EP3247124B1 (en) | Client, streaming media data receiving method and streaming media data transmission system |
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 |