客户端、流媒体数据接收方法和流媒体数据传输系统技术方案

技术编号:11376300 阅读:82 留言:0更新日期:2015-04-30 16:20
本发明专利技术涉及流媒体技术,尤其涉及一种客户端、流媒体数据接收方法和流媒体数据传输系统,用以解决客户端和服务器之间的网络情况突然恶化时,客户端获取媒体内容的时间过长的问题。在本发明专利技术实施例提供的客户端中,收发模块向服务器请求分片,接收服务器发送的分片;处理模块若判断收发模块在向服务器请求第一分片之后的预设的时间阈值内,未收到服务器发送的第一分片,则控制收发模块向服务器请求与第一分片的媒体内容相同,但码率更低的第二分片,使得客户端能够及时调整码率,尽快获取媒体内容,保证了媒体播放的连续性。

【技术实现步骤摘要】
客户端、流媒体数据接收方法和流媒体数据传输系统
本专利技术涉及流媒体技术,尤其涉及一种客户端、流媒体数据接收方法和流媒体数据传输系统。
技术介绍
采用传统流媒体技术中,传输的流媒体数据需要经过防火墙,且需要专业的媒体服务器支撑,实现复杂。因此出现了通过互联网传输流媒体数据的互联网流媒体技术,其不对现有互联网体系提出额外的要求,可通过对媒体文件的存储、信息描述方式进行修改,使得通过现有的HTTP协议传输流媒体数据。移动图像专家组(MovingPicturesExpertsGroup,MPEG)制定的动态自适应流媒体(DynamicAdaptiveStreaming,DASH)标准,简称MPEGDASH标准,提供了采用互联网流媒体技术传输流媒体数据的标准化方案。MPEGDASH标准定义的媒体展现描述(MediaPresentationDescription,MPD)的层次结构模型如图1所示。该层次结构模型中,时段(Period)用于描述可播放一段时间的媒体内容,次序相邻的时段描述的媒体内容在时间上是连续的。一个时段包含多个适配集合(AdaptationSet),每个适配集合描述适配多个码率的媒体内容,每个码率对应一个呈现(Representation)。呈现描述媒体内容的具体封装格式、码率、编解码参数等信息。一个呈现包含多个分片(Segment)的统一资源定位器(UniformResoureLocator,URL),用于指示对应的分片的存储位置,分片包含具体的媒体内容,即音频、视频、字幕、复用的音频和视频等。在图1所示的MPEGDASH标准定义的MPD层次结构模型下,一种客户端展现媒体内容的工作流程如图2所示,该流程包括如下步骤:S201:客户端向服务器请求MPD;S202:服务器向客户端发送MPD;S203:客户端解析MPD,从中获取相关分片的URL以及展现顺序等信息;S204:客户端向服务器请求分片;S205:服务器向客户端发送分片;S206:客户端展现媒体内容,包括:调用分片解析模块对媒体内容进行解码,然后交由媒体播放器进行展现。在客户端获取媒体的过程中,客户端与服务器之间的网络情况是不断变化的。客户端会收集诸如:内容获取时长、解码时长、缓存媒体可播放时间等信息,根据这些参数确定与服务器之间的网络情况,并结合MPD中的信息,动态确定请求获取码率较高、较低或者不变的分片。若在客户端获取媒体的过程中,网络情况突然恶化,比如:网络可用带宽突然变小,客户端来不及调整码率,这将使得客户端获取媒体内容的时间过长,甚至导致媒体播放中断。目前,还没有一种能解决该问题的方法。
技术实现思路
本专利技术实施例提供一种客户端、流媒体数据接收方法和流媒体数据传输系统,用以解决客户端和服务器之间的网络情况发生突然恶化时,客户端来不及调整码率,获取媒体内容的时间过长,甚至导致媒体播放中断的问题。第一方面,本专利技术实施例提供一种客户端,包括:收发模块和处理模块;所述收发模块,用于向服务器请求分片,以及接收所述服务器发送的分片;所述处理模块,用于判断所述收发模块是否在向服务器请求第一分片之后的预设的时间阈值内,收到所述服务器发送的所述第一分片;若未收到,则控制所述收发模块向所述服务器请求第二分片;其中,所述第一分片与所述第二分片包含的媒体内容相同,所述第一分片的码率大于所述第二分片的码率。第二方面,本专利技术实施例提供一种流媒体数据接收方法,包括:客户端判断是否在向服务器请求第一分片之后的预设的时间阈值内,收到所述服务器发送的所述第一分片;若未收到,则所述客户端向所述服务器请求第二分片;其中,所述第一分片与所述第二分片包含的媒体内容相同,所述第一分片的码率大于所述第二分片的码率。第三方面,本专利技术实施例提供一种流媒体数据传输系统,包括客户端和服务器,所述服务器,用于向所述客户端发送媒体分片;所述客户端,用于判断是否在向所述服务器请求第一分片之后的预设的时间阈值内,收到所述服务器发送的所述第一分片;若未收到,则向所述服务器请求第二分片;其中,所述第一分片与所述第二分片包含的媒体内容相同,所述第一分片的码率大于所述第二分片的码率。综上,本专利技术实施例中,客户端在预设的时间阈值内未收到服务器发送的分片时,向服务器请求媒体内容相同,码率更低的分片。通过设置该预设的时间阈值,超过该时间阈值则获取码率更低的分片,使得客户端能够及时调整码率,尽快获取媒体内容,保证媒体播放的连续性。附图说明图1为MPEGDASH标准定义的MPD层次结构模型图;图2为在图1所示的框架下客户端展现媒体内容的过程的流程图;图3A为本专利技术实施例提供的流媒体数据传输系统的结构示意图;图3B为本专利技术实施例提供的客户端的结构示意图;图4为本专利技术实施例中,客户端进行媒体播放的时间信息图;图5为码率切换方式示意图;图6为本专利技术实施例提供的流媒体数据接收方法的流程图。具体实施方式本专利技术实施例提供一种客户端、流媒体数据接收方法和流媒体数据传输系统,用以解决客户端和服务器之间的网络情况突然恶化时,客户端来不及调整码率,获取媒体内容的时间过长,甚至导致媒体播放中断的问题。本专利技术实施例提供的客户端在预设的时间阈值内未收到服务器发送的分片时,向服务器请求媒体内容相同,码率更低的分片。通过设置该预设的时间阈值,超过该时间阈值则获取码率更低的分片,使得客户端能够及时调整码率,尽快获取媒体内容,保证媒体播放的连续性。下面,结合附图对本专利技术实施例进行详细说明。首先,介绍本专利技术实施例提供的流媒体数据传输系统及客户端;然后介绍本专利技术实施例提供的流媒体数据接收方法。图3A为本专利技术实施例提供的流媒体数据传输系统10的结构示意图。如图3所示,流媒体数据传输系统10包括:客户端30和服务器20,其中,服务器20用于向客户端30发送媒体分片;如图3B所示,客户端30包括:收发模块301和处理模块302;收发模块301,用于向服务器20请求分片,以及接收服务器20发送的分片;处理模块302,用于判断收发模块301是否在向服务器20请求第一分片之后的预设的时间阈值内,收到服务器20发送的第一分片;若未收到,则控制收发模块301向服务器20请求第二分片;其中,第一分片与第二分片包含的媒体内容相同,第一分片的码率大于第二分片的码率。图4示出了客户端30进行媒体播放的时间信息。如图4所示,在T0时刻,客户端30缓存的媒体可播放至T3时刻,即缓存媒体可播放时长为:T3-T0。在T0时刻,客户端30执行步骤S401:向服务器请求第一分片,并启动定时器计时,定时器时长为预设的时间阈值;在T1时刻,定时器超时,客户端30执行步骤S402:请求第二分片;在T2时刻,客户端30执行步骤S403:成功获取第二分片;由于T2在T3之前,因此,客户端30在缓存媒体播放完毕之前,成功获取了第二分片,因此避免了媒体播放中断,保证了播放的连续性。可选地,客户端30在T1时刻之后,放弃接收第一分片。通常在网络拥堵的情况下,才会出现分片接收超时,此时,客户端30放弃接收第一分片,可有效缓解网络拥堵情况,使网络尽快恢复正常。即:若客户端30判断出在向服务器20请求第一分片之后的预设的时间阈值内,未收到服务器20发送的第一分片,则客户端30放弃接收第一分片。可选本文档来自技高网
...
客户端、流媒体数据接收方法和流媒体数据传输系统

【技术保护点】
一种客户端,其特征在于,包括:收发模块和处理模块;所述收发模块,用于向服务器请求分片,以及接收所述服务器发送的分片;所述处理模块,用于判断所述收发模块是否在向服务器请求第一分片之后的预设的时间阈值内,收到所述服务器发送的所述第一分片;若未收到,则控制所述收发模块向所述服务器请求第二分片;其中,所述第一分片与所述第二分片包含的媒体内容相同,所述第一分片的码率大于所述第二分片的码率。

【技术特征摘要】
1.一种客户端,其特征在于,包括:收发模块和处理模块;所述收发模块,用于向服务器请求分片,以及接收所述服务器发送的分片;所述处理模块,用于判断所述收发模块是否在向服务器请求第一分片之后的预设的时间阈值内,收到所述服务器发送的所述第一分片;若未收到,则控制所述收发模块向所述服务器请求第二分片;其中,所述第一分片与所述第二分片包含的媒体内容相同,所述第一分片的码率大于所述第二分片的码率;所述处理模块还用于:在判断是否在向服务器请求第一分片之后的预设的时间阈值内,收到所述服务器发送的所述第一分片之前,根据所述收发模块获取的所述第一分片之前的N个分片中每一个分片的码率、获取该N个分片中每一个分片的时长、所述第一分片的码率,以及所述客户端缓存媒体的可播放时长,选择最短的时长作为所述预设的时间阈值;其中,N为正整数。2.如权利要求1所述的客户端,其特征在于,所述处理模块具体用于根据如下公式之一确定所述预设的时间阈值:或或其中,Tx为所述预设的时间阈值,BWi为所述第一分片之前的第i个分片的码率,BWx为所述第一分片的码率,Ti为所述收发模块获取所述第一分片之前的第i个分片时所用的时长,i、N为正整数,1≤i≤N;Ts为所述收发模块获取所述第一分片的前一个分片时所用的时长,BWs为所述收发模块获取的所述第一分片的前一个分片的码率,T0为所述收发模块向所述服务器请求所述第一分片的时刻,T3为在T0时刻,所述客户端缓存的媒体可播放到的时刻,min(.)为取最小值。3.如权利要求1所述的客户端,其特征在于,所述处理模块还用于:判断出在向服务器请求第一分片之后的预设的时间阈值内,未收到所述服务器发送的所述第一分片之后,向所述服务器请求第二分片之前,根据所述客户端与所述服务器之间的网络拥塞情况,从一个或多个特定分片中,选择所述第二分片;其中,所述一个或多个特定分片包含的媒体内容与所述第一分片包含的媒体内容相同,且码率低于所述第一分片的码率。4.如权利要求1~3任一项所述的客户端,其特征在于,所述处理模块还用于:若判断出在向服务器请求第一分片之后的预设的时间阈值内,未收到所述服务器发送的所述第一分片,则控制所述收发模块放弃接收所述第一分片。5.一种流媒体数据接收方法,其特征在于,包括:客户端判断是否在向服务器请求第一分片之后的预设的时间阈值内,收到所述服务器发送的所述第一分片;若未收到,则所述客户端向所述服务器请求第二分片;其中,所述第一分片与所述第二分片包含的媒体内容相同,所述第一分片的码率大于所述第二分片的码率;在...

【专利技术属性】
技术研发人员:张楚雄
申请(专利权)人:京东方科技集团股份有限公司
类型:发明
国别省市:北京;11

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

1