流媒体播放器缓冲的方法及装置制造方法及图纸

技术编号:12284802 阅读:83 留言:0更新日期:2015-11-06 01:45
本发明专利技术公开了一种流媒体播放器缓冲的方法,该方法包括步骤:获取网络的当前下载速度,根据预存码率与下载速度的映射关系,确定所述当前下载速度对应的码率;从流媒体服务器下载与确定的码率对应的流媒体数据片段;按照流媒体数据片段的下载顺序,依次将已下载的流媒体数据片段解码并显示。本发明专利技术还公开了一种流媒体播放器缓冲的装置,实现自动选择与当前网络状况对应码率的流媒体数据片段进行下载并缓冲播放,在当前网络状况不佳时,保证流媒体缓冲播放的流畅性。

【技术实现步骤摘要】

本专利技术涉及多媒体播放
,尤其涉及流媒体播放器缓冲的方法及装置
技术介绍
随着多媒体技术的不断发展,人们使用电子设备观看流媒体变得越来越普遍。流媒体的播放过程为:流媒体服务器将编码过后的流媒体封装成符合流媒体协议(例如,RTPReal-Time Transport Protocol协议)规范的数据包,并通过网络发送到流媒体播放器,流媒体播放器按照一定的速度从流媒体服务器下载流媒体数据包,并将流媒体数据包解码且按一定的速度显示,以实现用户在流媒体播放器端观看流媒体。在现实生活中,由于网络状况不稳定,会引起流媒体服务器向流媒体播放器发送的流媒体数据包存在时延抖动,进而造成流媒体播放器的数据不同步。因此为了实现流媒体同步连续播放,开发了缓存技术,即在流媒体播放器中增加缓冲区用于存储流媒体服务器发送的流媒体数据包。另外针对上述问题业界另外一个解决方向是网络自适应技术,其核心思想是对于同一个流媒体数据包提供多个不同码率的版本,不同的网络环境下载播放不同版本内容而且支持不同码率之间可以实时动态的切换。为了支持网络自适应技术,流媒体数据包往往被人为切割成多个数据片段,该技术一般都要求提供一个描述文件,用来描述不同码率以及各个码率的流媒体数据片段,播放器首先下载该描述文件然后再下载流媒体数据片段。而这种方式下,用户只能根据当前网络状况手动选择不同码率的数据片段进行缓冲播放。因此,在上述流媒体数据缓存播放的技术下,流媒体播放器端的用户只能根据当前网络状况手动选择不同码率(码率越大,视频清晰度越高、音频音质更佳)的流媒体数据片段的缓冲播放,无法自动选择与当前网络状况对应码率的流媒体数据片段进行下载缓冲播放,在当前网络状况不佳时,会导致流媒体缓冲不及时,而无法连续播放流媒体。上述内容仅用于辅助理解本专利技术的技术方案,并不代表承认上述内容是现有技术。
技术实现思路
本专利技术的主要目的为提供流媒体播放器缓冲的方法及装置,旨在实现保证流媒体缓冲播放的流畅性。为实现上述目的,本专利技术提供流媒体播放器缓冲的方法,该方法包括步骤:获取网络的当前下载速度,根据预存码率与下载速度的映射关系,确定所述当前下载速度对应的码率;从流媒体服务器下载与确定的码率对应的流媒体数据片段;按照流媒体数据片段的下载顺序,依次将已下载的流媒体数据片段解码并显示。优选地,所述从流媒体服务器下载与确定的码率对应的流媒体数据片段的步骤包括:获取已下载流媒体数据片段的缓冲时长,分析所述缓冲时长是否大于预设缓冲时长;在所述缓冲时长小于或等于预设缓冲时长时,从流媒体服务器下载与确定的码率对应的流媒体数据片段。优选地,所述获取网络的当前下载速度,根据码率与下载速度的映射关系,确定所述当前下载速度对应的码率的步骤包括:根据所述缓冲时长、所述预设缓冲时长、第一预设时间内已下载流媒体数据片段的大小及下载时间,计算出网络的当前下载速度;获取当前下载流媒体数据片段的码率,并分析当前下载速度值是否大于获取的码率值;在所述当前下载速度值小于或者等于获取的码率值时,根据码率与下载速度的映射关系,确定所述当前下载速度对应的码率;在所述当前下载速度值大于获取的码率值时,根据预设的码率等级,将获取的码率上一级码率作为确定的码率;计算出网络的当前下载速度所采用的公式为:Bff= (S/D)*(T1/T2),其中,BW为下载速度,S为已下载流媒体数据片段的大小,D为已下载流媒体数据片段的下载时间,Tl为已下载流媒体数据片段的缓冲时长,T2为预设缓冲时长。优选地,所述获取网络的当前下载速度,根据码率与下载速度的映射关系,确定获取的下载速度对应的码率的步骤包括:根据第一预设时间内已下载流媒体数据片段的大小及下载时间,计算出网络的当前下载速度;获取当前下载流媒体数据片段的码率,并分析当前下载速度值是否大于获取的码率值;在所述当前下载速度值小于或者等于获取的码率值时,根据码率与下载速度的映射关系,确定所述当前下载速度对应的码率;在所述当前下载速度值大于获取的码率值时,根据预设的码率等级,将获取的码率上一级码率作为确定的码率。优选地,所述已下载的流媒体数据片段存储在异步队列中,所述按照流媒体数据片段的下载顺序,依次将已下载的流媒体数据片段解码并显示的步骤包括:按照流媒体数据片段的下载顺序,以同步的方式访问所述异步队列;匀速的分发已下载的流媒体数据片段,并依次将分发的流媒体数据片段解码并显/Jn ο本专利技术还提出一种流媒体播放器缓冲的装置,该装置包括:处理模块,用于获取网络的当前下载速度,根据预存码率与下载速度的映射关系,确定所述当前下载速度对应的码率;下载模块,用于从流媒体服务器下载与确定的码率对应的流媒体数据片段;播放模块,用于按照流媒体数据片段的下载顺序,依次将已下载的流媒体数据片段解码并显示。优选地,该装置还包括分析模块,所述分析模块,用于获取已下载流媒体数据片段的缓冲时长,分析所述缓冲时长是否大于预设缓冲时长;下载模块,还用于在所述缓冲时长小于或等于预设缓冲时长时,从流媒体服务器下载与确定的码率对应的流媒体数据片段。优选地,所述处理模块,还用于根据所述缓冲时长、所述预设缓冲时长、第一预设时间内已下载流媒体数据片段的大小及下载时间,计算出网络的当前下载速度;所述分析模块,还用于获取当前下载流媒体数据片段的码率,并分析当前下载速度值是否大于获取的码率值;所述处理模块,还用于在所述当前下载速度值小于或者等于获取的码率值时,根据码率与下载速度的映射关系,确定所述当前下载速度对应的码率;在所述当前下载速度值大于获取的码率值时,根据预设的码率等级,将获取的码率上一级码率作为确定的码率;计算出网络的当前下载速度所采用的公式为:Bff= (S/D)*(T1/T2),其中,BW为下载速度,S为已下载流媒体数据片段的大小,D为已下载流媒体数据包的下载时间,Tl为已下载流媒体数据片段的缓冲时长,T2为预设缓冲时长。优选地,所述处理模块,还用于根据第一预设时间内已下载流媒体数据片段的大小及下载时间,计算出网络的当前下载速度;所述分析模块,还用于获取当前下载流媒体数据片段的码率,并分析当前下载速度值是否大于获取的码率值;所述处理模块,还用于在所述当前下载速度值小于或者等于获取的码率值时,根据码率与下载速度的映射关系,确定所述当前下载速度对应的码率;在所述当前下载速度值大于获取的码率值时,根据预设的码率等级,将获取的码率上一级码率作为确定的码率。优选地,所述已下载的流媒体数据片段存储在异步队列中,该装置还包括分发模块,所述分发模块,用于按照流媒体数据片段的下载顺序,以同步的方式访问所述异步队列;匀速的分发已下载的流媒体数据片段;所述播放模块,还用于依次将分发的流媒体数据片段解码并显示。相对现有技术,本专利技术通过获取网络的当前下载速度,根据预存码率与下载速度的映射关系,确定所述当前下载速度对应的码率;从流媒体服务器下载与确定的码率对应的流媒体数据片段;按照流媒体数据片段的下载顺序,依次将已下载的流媒体数据包解码并显示。自动选择与当前网络状况对应码率的流媒体数据片段进行下载并缓冲播放,在当前网络状况不佳时,保证流媒体缓冲播放的流畅性。【附图说明】图1为本专利技术流媒体播放器缓冲的方法第一实施例的流程示意图;图2为图本文档来自技高网
...
流媒体播放器缓冲的方法及装置

【技术保护点】
一种流媒体播放器缓冲的方法,其特征在于,该方法包括步骤:获取网络的当前下载速度,根据预存码率与下载速度的映射关系,确定所述当前下载速度对应的码率;从流媒体服务器下载与确定的码率对应的流媒体数据片段;按照流媒体数据片段的下载顺序,依次将已下载的流媒体数据片段解码并显示。

【技术特征摘要】

【专利技术属性】
技术研发人员:陈伟江中央
申请(专利权)人:深圳TCL新技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1