音/视频直播方法、装置及控制方法、装置的制造方法_4

文档序号:9420718阅读:来源:国知局
,将所述预设的最大时延抖动值作为所述第二大时延抖动值。
[0101]优选的,本实施例的控制装置还包括:入栈保存模块(图未示),用于将连续接收到的两个数据包的时间差入栈保存。
[0102]本实施例的基于TCP直播系统消除时延抖动的控制装置的工作过程可参考上述实施例,在此不再赘述。
[0103]参考图7,是本发明实施例中一种基于TCP的音/视频播放方法的流程示意图。该音/视频播放方法包括步骤:
[0104]S301、接收数据包并将所述数据包缓存到缓冲区中;
[0105]S302、利用图1所示的基于TCP直播系统消除时延抖动的控制方法调整所述缓冲区的缓冲区数据时长;
[0106]S303、基于缓冲区数据时长调整后的缓冲区中获取数据包并解码播放。
[0107]其中,步骤S301和步骤S303的具体实现方式可采用现有的音/视频播放方法中的对应方式实现,而步骤302的具体实现方式可参考图1对应的实施例,在此不再赘述。
[0108]参考图8,是本发明实施例中一种基于TCP的音/视频直播装置的结构示意图。该音/视频直播装置包括:
[0109]数据接收模块41,用于接收数据包并将所述数据包缓存到缓冲区中;
[0110]控制装置42,用于对调整所述缓冲区的缓冲区数据时长;以及
[0111]解码播放模块43,基于缓冲区数据时长调整后的缓冲区中获取数据包并解码播放。
[0112]其中,数据接收模块41和解码播放模块43的具体实现方式可采用现有的视频播放装置中的对应方式实现,而控制装置42的具体实现方式可采用图5所示的基于TCP直播系统消除时延抖动的控制装置来实现,在此不再赘述。
[0113]综上所述,本发明公开的基于TCP直播系统消除时延抖动的视频播放方法、装置及控制方法、装置,能有效解决视频直播系统中时延和抖动的问题,在自适应抖动缓冲控制方法上,通过判断当前缓冲区是否为空,并在缓冲区不为空/为空的情况下,分别对缓冲区数据时长进行缩短/增大调整,且调整的值为根据网络状态而变化的值。因此,能根据网络状态动态的调整缓冲区大小,而且在保证平滑、确保播放流畅的前提下使时延尽量小。
[0114]以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
【主权项】
1.一种基于TCP直播系统消除时延抖动的控制方法,其特征在于,包括: 判断当前的缓冲区是否为空; 当缓冲区不为空,待当前调整周期到达时,若当前调整周期内的最大缓冲区数据时长与最小缓冲区数据时长的差值小于预设的缓冲区时长抖动阈值,且所述最小缓冲区数据时长大于预设的最小缓冲区时长阈值,则将当前缓冲区数据时长缩短,且缩短的值小于或等于所述最小缓冲区数据时长和所述预设的最小缓冲区时长阈值之间的差值; 当缓冲区为空,待缓冲区为空到接收到第一个数据包时,则将初始缓冲区数据时长增大,且增大后的初始缓冲区数据时长是第二大时延抖动值的增函数;其中,所述初始缓冲区数据时长是缓冲区为空到恢复播放所需要的缓冲数据时长;所述第二大时延抖动值是缓冲区为空前一段时间到接收到所述第一个数据包的时间内所接收到的连续的两个数据包的时间差中的第二大值。2.如权利要求1所述的基于TCP直播系统消除时延抖动的控制方法,其特征在于,当所述增大后的初始缓冲区数据时长大于预设的最大缓冲区时长阈值时,将所述预设的最大缓冲区时长阈值作为所述增大后的初始缓冲区数据时长;当所述增大后的初始缓冲区数据时长小于预设的最小缓冲区时长阈值时,将所述预设的最小缓冲区时长阈值作为所述增大后的初始缓冲区数据时长。3.如权利要求1所述的基于TCP直播系统消除时延抖动的控制方法,其特征在于,当所述第二大时延抖动值小于预设的最小时延抖动值时,将所述预设的最小时延抖动值作为所述第二大时延抖动值;当所述第二大时延抖动值大于预设的最大时延抖动值时,将所述预设的最大时延抖动值作为所述第二大时延抖动值。4.如权利要求1所述的基于TCP直播系统消除时延抖动的控制方法,其特征在于,还包括: 将连续接收到的两个数据包的时间差入栈保存。5.如权利要求1所述的基于TCP直播系统消除时延抖动的控制方法,其特征在于,所述增大后的初始缓冲区数据时长是第二大时延抖动值的线性增函数。6.如权利要求1所述的基于TCP直播系统消除时延抖动的控制方法,其特征在于,所述增大后的初始缓冲区数据时长是第二大时延抖动值的分段线性增函数。7.如权利要求1所述的基于TCP直播系统消除时延抖动的控制方法,其特征在于,所述一段时间为一个完整调整周期的1/3?1/2。8.—种基于TCP直播系统消除时延抖动的控制装置,其特征在于,包括: 判断模块,用于判断当前缓冲区是否为空; 第一调整模块,用于当缓冲区不为空,待当前调整周期到达时,若当前调整周期内的最大缓冲区数据时长与最小缓冲区数据时长的差值小于预设的缓冲区时长抖动阈值,且所述最小缓冲区数据时长大于预设的最小缓冲区时长阈值,则将当前缓冲区数据时长缩短,且缩短的值小于或等于所述最小缓冲区数据时长和所述预设的最小缓冲区时长阈值之间的差值; 第二调整模块,用于当缓冲区为空,待缓冲区为空到接收到第一个数据包时,则将初始缓冲区数据时长增大,且增大后的初始缓冲区数据时长是第二大时延抖动值的增函数;其中,所述初始缓冲区数据时长是缓冲区为空到恢复播放所需要的缓冲数据时长;所述第二大时延抖动值是缓冲区为空前一段时间到接收到所述第一个数据包的时间内所接收到的连续的两个数据包的时间差中的第二大值。9.如权利要求8所述的基于TCP直播系统消除时延抖动的控制装置,其特征在于,所述第二调整模块还用于:当所述增大后的初始缓冲区数据时长大于预设的最大缓冲区时长阈值时,将所述预设的最大缓冲区时长阈值作为所述增大后的初始缓冲区数据时长;当所述增大后的初始缓冲区数据时长小于预设的最小缓冲区时长阈值时,将所述预设的最小缓冲区时长阈值作为所述增大后的初始缓冲区数据时长。10.如权利要求8所述的基于TCP直播系统消除时延抖动的控制装置,其特征在于,所述第二调整模块还用于:当所述第二大时延抖动值小于预设的最小时延抖动值时,将所述预设的最小时延抖动值作为所述第二大时延抖动值;当所述第二大时延抖动值大于预设的最大时延抖动值时,将所述预设的最大时延抖动值作为所述第二大时延抖动值。11.如权利要求8所述的基于TCP直播系统消除时延抖动的控制装置,其特征在于,还包括: 入栈保存模块,用于将连续接收到的两个数据包的时间差入栈保存。12.如权利要求8所述的基于TCP直播系统消除时延抖动的控制装置,其特征在于,所述增大后的初始缓冲区数据时长是第二大时延抖动值的线性增函数。13.如权利要求8所述的基于TCP直播系统消除时延抖动的控制装置,其特征在于,所述增大后的初始缓冲区数据时长是第二大时延抖动值的分段线性增函数。14.如权利要求8所述的基于TCP直播系统消除时延抖动的控制装置,其特征在于,所述一段时间为一个完整调整周期的1/3?1/2。15.—种基于TCP的音/视频直播方法,其特征在于,包括: 接收数据包并将所述数据包缓存到缓冲区中; 根据权利要求1?7任一项所述的控制方法调整所述缓冲区的缓冲区数据时长; 基于缓冲区数据时长调整后的缓冲区中获取数据包并解码播放。16.一种基于TCP的音/视频直播装置,其特征在于,包括: 数据接收模块,用于接收数据包并将所述数据包缓存到缓冲区中; 如权利要求8?14任一项所述的控制装置,用于对调整所述缓冲区的缓冲区数据时长;以及 解码播放模块,基于缓冲区数据时长调整后的缓冲区中获取数据包并解码播放。
【专利摘要】本发明公开了一种基于TCP直播系统消除时延抖动的控制方法,包括:判断当前缓冲区是否为空;当不为空,待当前调整周期到达时,若当前调整周期内的最大缓冲区数据时长与最小缓冲区数据时长的差值小于预设的缓冲区时长抖动阈值,且最小缓冲区数据时长大于预设的最小缓冲区时长阈值,将当前缓冲区数据时长缩短;当为空,待缓冲区为空到接收到第一个数据包时,将初始缓冲区数据时长增大,且增大后的初始缓冲区数据时长是第二大时延抖动值的增函数;初始缓冲区数据时长是缓冲区为空到恢复播放所需要的缓冲数据时长;第二大时延抖动值是缓冲区为空前一段时间到接收到所述第一个数据包的时间内所接收到连续的两个数据包的时间差中的第二大值。
【IPC分类】H04N21/4335, H04N21/434, H04N21/439, H04N21/433, H04N21/44
【公开号】CN105142002
【申请号】CN201510483445
【发明人】陈健生, 邹向群
【申请人】广州博冠信息科技有限公司
【公开日】2015年12月9日
【申请日】2015年8月7日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1