流媒体的处理方法、分发服务器、客户端及系统的制作方法

文档序号:7676883阅读:458来源:国知局
专利名称:流媒体的处理方法、分发服务器、客户端及系统的制作方法
技术领域
本发明涉及通信领域,特别涉及一种流媒体的处理方法、分发服务器、客户端及系统。
背景技术
流媒体技术是指在互联网上以数据流的方式实时发布音频、视频等多媒体内容的技术。它是由服务器将整个多媒体文件压缩编码成多个压缩包,向客户端实时地顺序传送,客户端可以一边解压播放已经传送过来的压缩包,一边下载后续的压缩包,从而节省了时间。目前服务器端可以把一个多媒体文件制作成不同版本的、具有 不同码率的内容分片供客户端根据实际情况进行选择。例如,当网络环境是低带宽时,可以选择低码率的视频流;当网络环境为高带宽时,可以选择高码率的视频流;而当网络环境是可变带宽时,可以选择可变码率的视频流。由于在无线网络中,空口资源不断变化,为了达到更合理的空口资源利用率以及更好的用户体验,流媒体的码率要随着空口资源的变化进行码率适配。针对无线网络码率适配的问题,在3GPP(The 3rd Generation PartnershipPro ject,第三代合作伙伴计划)的自适应HTTP (Hyper Text Transfer Protocol,超文本传输协议)流媒体协议Adaptive HTTP Streaming中,HTTP流媒体的处理方法为,客户端每请求一个内容分片之前,客户端需要进行带宽检测,比如根据自己buffer (缓存)的占用情况进行带宽检测,buffer占用的越多,说明带宽状况越好,可用带宽越多,再根据可用带宽选择合适的码率并向服务器发送请求。同时,HTTP流媒体采用的是HTTP request/response (请求/应答)模式,即需要针对每个请求回复一个内容分片。然而,客户端单凭自己buffer的状况判断网络带宽非常片面,而且不实时,例如在小区网络已经拥塞而客户端自己的buffer满时,客户端会认为此时网络带宽充足从而申请更高码率文件,这样会加剧拥塞。

发明内容
为了快速、准确的进行无线网络的码率适配,解决拥塞的问题,本发明实施例提供了一种流媒体的处理方法、分发服务器、客户端及系统。一方面,提供了一种流媒体的处理方法,所述方法包括接收客户端发送的内容分片请求信息;获取所述客户端所在无线网络的资源信息;根据所述资源信息预测所述无线网络的数据传输速率;选择与所述数据传输速率相适配的内容分片;向所述客户端发送所述内容分片。另一方面,提供了一种流媒体的分发服务器,所述分发服务器包括接收模块,用于接收客户端发送的内容分片请求信息;第一获取模块,用于在所述接收模块接收客户端发送的内容分片请求信息后,获取所述客户端所在无线网络的资源信息;预测模块,用于根据所述第一获取模块获取的资源信息预测所述无线网络的数据传输速率;选择模块,用于选择与所述预测模块预测的数据传输速率相适配的内容分片;发送模块,用于向所述客户端发送所述选择模块选择的内容分片。另一方面,还提供了一种流媒体的处理方法,所述方法包括向分发服务器发送内容分片请求信息;接收所述分发服务器发送的内容分片,其中,所述内容分片为所述分发服务器接收到客户端发送的所述内容分片请求信息后,通过获取所述客户端所在无线网络的资源信 息,并根据所述资源信息预测所述无线网络的数据传输速率,而选择的与所述数据传输速率相适配的内容分片。再一方面,提供了一种客户端,所述客户端包括第一发送模块,用于向分发服务器发送内容分片请求信息;接收模块,用于在所述第一发送模块向分发服务器发送内容分片请求信息之后,接收所述分发服务器发送的内容分片,其中,所述内容分片为所述分发服务器接收到所述客户端发送的所述内容分片请求信息后,通过获取所述客户端所在无线网络的资源信息,并根据所述资源信息预测所述无线网络的数据传输速率,而选择的与所述数据传输速率相适配的内容分片。再一方面,提供了一种流媒体的系统,所述系统包括分发服务器和客户端;所述分发服务器如上所述的分发服务器;所述客户端如上所述的客户端。本发明各方案,通过由分发服务器获取客户端所在无线网络的资源信息,根据该资源信息预测该无线网络的数据传输速率,进而为客户端选择与该数据传输速率相适配的内容分片,使发送给客户端的内容分片的码率更加合适,实现从总体上对小区无线网络的带宽状况进行调节,能稳定的减缓网络拥塞,解决网络拥塞的问题。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I是本发明实施例一提供的流媒体的处理方法流程图;图2是本发明实施例二至实施例十提供的系统架构示意图;图3是本发明实施例二提供的流媒体的处理方法流程图;图4是本发明实施例三提供的流媒体的处理方法流程图;图5是本发明实施例四提供的流媒体的处理方法流程图;图6是本发明实施例五提供的流媒体的处理方法流程图;图7是本发明实施例六提供的流媒体的处理方法流程图;图8是本发明实施例七提供的第一种分发服务器结构示意图9是本发明实施例七提供的第二种分发服务器结构示意图;图10是本发明实施例七提供的第三种分发服务器结构示意图;图11是本发明实施例七提供的第四种分发服务器结构示意图;图12是本发明实施例七提供的第五种分发服务器结构示意图;图13是本发明实施例八提供的流媒体的处理方法流程图;图14是本发明实施例九提供的第一种客户端结构示意图;图15是本发明实施例九提供的第二种客户端结构示意图;图16是本发明实施例九提供的第三种客户端结构示意图;
图17是本发明实施例九提供的第四种客户端结构示意图;图18是本发明实施例十提供的流媒体的系统结构示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。本发明实施例提供的流媒体的处理方法可适用于基于HTTP的流媒体传输,如3GPP 的自适应 HTTP 流媒体传输(Adaptive HTTP Streaming)、微软公司 HS (InternetInformation Services,互联网信息服务)的平滑流媒体传输(Smooth Streaming)、苹果公司的实时HTTP流媒体传输(HTTP Live Streaming)、奥多比(Adobe)公司的HTTP动态流媒体传输(HTTP Dynamic Streaming)以及 RTMP (Real-Time Messaging Protocol,实时消息协议)等流媒体传输技术。该方法还可适用于类似于HTTP的流媒体传输技术。本发明实施例仅以在3GPP的Adaptive HTTP Streaming系统架构下应用该方法为例进行说明,但不限定于此。实施例一本发明实施例提供了一种流媒体的处理方法,该方法可以在流媒体的分发服务器上执行,该流媒体的分发服务器可以位于在无线网络的RNC(Radio Network Controller,无线网络控制器)或eNB(eV0lVed Node B,演进型基站)中,参见图1,该方法包括101 :接收客户端发送的内容分片请求信息(Segment Request);102 :获取该客户端所在无线网络的资源信息;其中,该资源信息可以为信号质量参数信息或历数传输速率。具体地,信号质量参数信息可以为该无线网络的带宽、功率、增益、信噪比等信息,历史传输速率指当前时刻之前时间该无线网络的数据传输速率。103 :根据该资源信息预测该无线网络的数据传输速率;其中,预测到的该无线网络的数据传输速率具体可以为客户端下一时刻在该无线网络中的数据传输速率。可选地,当该资源信息为信号质量参数信息时,预测的方法可以包括根据该信号质量参数信息判断该无线网络是否拥塞,如果拥塞,则判断该无线网络中流媒体业务的流量与全部业务的流量的比例是否大于第一预设门限,如果是,则预测该无线网络在下一时刻的数据传输速率降低;如果不拥塞,则判断分发服务器发送队列中的数据占缓存区大小的比例是否小于第二预设门限,如果是,则预测该无线网络在下一时刻的数据传输速率升闻。或,当该资源信息为历史传输速率时,预测的方法可以包括根据该历史传输速率,采用线性最小方差的预测方法预测该无线网络在下一时刻的数据传输速率。本发明实施例还可以采用其他方法来预测该无线网络的数据传输速率,并不限于上述实现方法。104 :选择与该数据传输速率相适配的内容分片;具体地,可以根据上一步预测出来的数据传输速率,在发送下一个内容分片时,选择一个码率与该数据传输速率相适配的内容分片。例如,采用上述第一种预测方法预测出该无线网络在下一时刻的数据传输速率降低时,可以选择比发送的前一个内容分片的码率低一个级别的内容分片;预测出该无线网络在下一时刻的数据传输速率升高时,可以选择比发送的前一个内容分片的码率高一个级 别的内容分片。又例如,采用上述第二种预测方法预测出该无线网络在下一时刻的数据传输速率后,可以选择码率小于或等于该数据传输速率的内容分片。105 :向该客户端发送该内容分片。其中,在向客户端发送内容分片时,可以采用HTTP流(HTTP Streaming)的传输方式,即HTTP request/response模式。当然,为了提高多媒体文件的传输效率,还可以采用HTTP块(HTTP Chunk)的传输方式向客户端发送内容分片。本发明实施例提供的方法,通过由分发服务器获取客户端所在无线网络的资源信息,根据该资源信息预测该无线网络的数据传输速率,进而为客户端选择与该数据传输速率相适配的内容分片,使发送给客户端的内容分片的码率更加合适,实现从总体上对小区无线网络的带宽状况进行调节,能稳定的减缓网络拥塞,解决网络拥塞的问题。参见图2,为3GPP的Adaptive HTTP Streaming系统架构,是一种基于分发服务器(HTTP Cache)的HTTP流媒体架构。首先,内容准备模块(Content Preparation)将多媒体文件内容进行切片并将切片内容封装成符合要求的格式(如3GP格式),形成内容分片,然后生成内容分片的MPD (Media PresentationDescription,媒体呈现描述),并将内容分片和MPD推送给HTTP流媒体服务器(HTTP Streaming Server),其中,MPD是对内容分片的描述信息,主要包括对各内容分片、请求构造、多码率等信息的描述;其次,HTTP流媒体服务器存储接收到的内容分片和MPD,并响应分发服务器的请求,将内容分片和MPD注入分发服务器,同时,HTTP流媒体服务器还接收来自内容准备模块的内容更新;分发服务器接收来自HTTP流媒体客户端(HTTP Streaming Client)的MTO请求,当分发服务器的缓存中存在请求的MPD时,向该客户端发送该MPD ;最后,该客户端根据自己检测到的带宽资源从收到的MPD中选择合适的码率,生成内容分片请求信息URL (Uniform Resource Locator,统一资源定位符),并向分发服务器请求内容分片。这里的流媒体服务包括点播和直播等。实施例二为了降低客户端复杂度,可以不使客户端检测带宽资源和选择码率,本发明实施例提供了一种流媒体的处理方法,该方法可以在流媒体的分发服务器上执行,该流媒体的分发服务器可以位于在无线网络的RNC或eNB中。参见图3,方法流程包括301 :分发服务器根据缓存中原有的MPD构造客户端MPD (Client MPD);
具体地,构造客户端Mro可以包括去掉分发服务器缓存中原有的MPD中的R印resentation (呈现)元素,另存为客户端MPD。由于在客户端MPD中只保留了用于生成内容分片请求URL的信息,其他R印resentation元素中的内容分片的多码率相关信息都不携带,因此,该客户端MPD的大小要比原始MPD小。也就是说不再使客户端根据MPD中的多个码率进行选择,客户端也就不再需要自己进行带宽检测。302 :接收客户端发送的MPD请求;具体地,客户端可以通过带外方式获得MPD的URL,通过该URL向分发服务器发送MPD请求。303 :判断是否存在请求的MPD,如果是,则向该客户端发送相应的客户端MPD ;具体地,如果分发服务器的缓存中存在客户端请求的MPD,则向该客户端发送步骤301中构造的与客户端请求的MPD相对应的客户端MPD,而不是发送原始的MPD。由于该客户端MPD的大小要比原始MPD小,因此发送的速度相对要快一些。 304 :接收客户端发送的内容分片请求信息,该内容分片请求信息中不包括要求的码率;具体地,由于客户端MPD中不携带Representation元素中的相关信息,客户端根据该客户端MPD生成的内容分片请求信息中也就不携带要求的码率信息,因此,客户端也就不需要再进行自己buffer占用情况的检测。305 :获取该客户端所在无线网络的资源信息;其中,该资源信息可以为历数传输速率,具体是指当前时刻之前时间该无线网络的数据传输速率。306 :根据该资源信息预测该无线网络的数据传输速率;其中,预测到的该无线网络的数据传输速率具体可以为客户端下一时刻在该无线网络中的数据传输速率。具体地,根据该历史传输速率,采用线性最小方差的预测方法预测该无线网络在下一时刻的数据传输速率。本发明实施例不限于采用线性最小方差的预测方式,还可以采用其他预测方式。例如,每隔Is记录一次数据传输速率,读取到之前记录的历史传输速率为962、914、884、813、758、990、1036、702、935、1049、1013、946、933、734、1004、980、946、967、871、838、928、885、883、694、881、949、931、937、840、1135、1033、940、1179(单位为 kbps)。利用差分运算,发现历史传输速率基本符合ARMA(Auto Regression Moving Average,自回归滑动平均)模型。根据ARMA模型的自相关和偏相关分析法,利用MATLAB (MatrixLaboratory,矩阵实验室)程序,确定ARMA模型的阶数ARMA (p,q),预测到下一时刻数据传输速率为918kbps。实际应用中,可以在无线网络的RNC或eNB中实现分发服务器功能,利用RNC或eNB能最直接最快速的推算出网络的数据传输速率。307 :获取该客户端的用户信息;其中,该用户信息包括用户等级信息和/或终端能力信息。用户等级信息为用户在签约时获得的等级,例如金牌用户、银牌用户、铜牌用户等,用户等级信息限定了用户可用的带宽资源。终端能力信息是由客户端上报的,终端能力信息中包含用户所在的客户端终端以及浏览器的相关信息,例如屏幕分辨率、终端系统平台、终端型号、终端IMEI (International Mobile Equipment Identity,国际移动设备身份码)、终端配置Profile、CPU (Central Processing Unit,中央处理器)和内存等信息。用户信息中还可以包括用户选择信息等其它有用的信息,用于选择内容分片的语言、字幕等。具体地,本发明实施例不对客户端上报终端能力信息的方式进行具体限定,既可以通过HTTP协议携带终端能力信息,也可以通过UE Capability (能力)携带终端能力信息,还可以采用其他方式。当通过HTTP协议携带时,可以在向分发服务器发送的HTTP请求的头域中携带,如GET ######### HTTP/1. IAccept :氺/氺Accept-Language :en_us
Connection Keep-AliveHost #########User-Agent Mozilla/4. 0(compatible ;MSIE 6. 0 ;ffindows CE ;IEMobiIe8. 12 ;MSIEMobile 6. 0)UA-pixels 240x320UA-color colorl6UA-OS ffindows CE(Pocket PC)-Version 5. 2UA-CPU x86Accept-Encoding gzip, deflateUA-Voice TRUE当通过UE Capability携带终端能力信息时,可以通过客户端与基站或基站控制器之间的信令消息传递。如在Attach Request (附着请求消息)中携带UE Capability,或者在TAU Request (跟踪区更新请求消息)中携带UECapabiIity,但不局限于此处举例的两种请求消息。308 :根据获取的用户信息,选择与该数据传输速率相适配的内容分片;可选地,当获取的用户信息为用户等级信息时,选择码率小于或等于该数据传输速率,且小于或等于该用户等级信息提供的该客户端能支持的最高码率的内容分片;当获取的用户信息为终端能力信息时,选择码率小于或等于该数据传输速率,且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片;当获取的用户信息为用户等级信息和终端能力信息时,选择码率小于或等于该数据传输速率,且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最高码率的内容分片。例如,分发服务器预测到客户端下一时刻在该无线网络中的数据传输速率可达1130kbps,但是用户信息中说明客户端不能支持高于845kbps的码率文件的播放,此时也只能回复给客户端最高845kbps的内容分片。309 :向该客户端发送该内容分片。其中,在向客户端发送内容分片时,可以采用HTTP流(HTTP Streaming)的传输方式,即HTTP request/response模式,只能针对一个内容分片请求回复一个内容分片,客户端在观看一整个多媒体文件时,需要依次发送多个内容分片请求信息来完成观看。可选地,为了提高多媒体文件的传输效率,在向客户端发送内容分片时,还可以采用HTTP块(HTTP Chunk)的传输方式向客户端发送内容分片。当采用HTTP块方式时,客户端只需要请求一次,分发服务器就会依次将每一个内容分片用HTTP块方式向客户端发送。其中,可以在HTTP response的消息头部设置进行Chunked编码传输,如下Transfer-Encoding Chunked需要说明的是,获取用户信息的步骤307只要保证在选择相适配的内容分片之前执行即可,即步骤307可以在执行步骤308之前的任意时刻执行,本发明实施例仅以上述顺序为例进行说明,但不限定于此。本发明实施例提供的方法,通过由分发服务器获取客户端所在无线网络的资源信息,根据该资源信息预测该无线网络的数据传输速率,进而为客户端选择与该数据传输速率相适配的内容分片,可以达到下述有益效果
首先,分发服务器根据无线网络的历史传输数据预测下一时刻该无线网络的数据传输速率,是从总体上对网络带宽状况进行判断,以此为依据为客户端选择与该数据传输速率相适配的内容分片、进行码率调节能较好的解决网络拥塞的问题;其次,在多用户小区中,当网络拥塞时,通过分发服务器总体上对网络带宽状况进行判断,而客户端不进行码率选择,因此分发服务器可以从宏观上对小区的带宽进行调节,稳定的减缓网络拥塞,解决网络拥塞的问题;再次,由分发服务器预测该无线网络的数据传输速率后,即刻向客户端适配码率合适的内容分片,达到更实时的进行码率适配的效果,减少了现有技术中由客户端根据进行检测带宽、选择码率、并请求服务器进行码率调整的时间,使本发明实施例进行码率调整的速度跟得上网络带宽的变化速度;再次,如果分发服务器同时还参考用户信息进行码率选择,当带宽资源较好时,可以在客户端能力范围内为客户端提供较高码率的内容分片,提升用户体验;最后,本实施例提供的方法中由分发服务器构造并使用客户端MPD,那么客户端发送的内容分片请求信息中就不包括要求的码率,也就是说客户端不再需要进行带宽检测,降低了客户端复杂度;另外,HTTP流媒体采用的HTTP request/response模式只能发送一个请求回复一个内容分片,对HTTP流媒体中数目庞大的内容分片来说效率较低。当采用本发明实施例中的HTTP块的方式向客户端发送内容分片时,客户端只需要请求一次,分发服务器就会依次将每一个内容分片用HTTP块方式向客户端发送,提高了多媒体文件的传输效率。实施例三针对分发服务器后续处理客户端的内容分片请求时,本发明实施例提供了一种流媒体的处理方法,该方法可以在流媒体的分发服务器上执行,该流媒体的分发服务器可以位于在无线网络的RNC或eNB中。参见图4,方法流程包括401 :接收客户端发送的内容分片请求信息,该内容分片请求信息中包括要求的码率;具体地,客户端根据自己buffer的占用情况进行带宽检测后,在内容分片请求信息中的R印resentation元素中选择要求的码率、分辨率、语言等信息,并向分发服务器发送内容分片请求信息。假设客户端要求的码率为Bitratel。402 :获取该客户端所在无线网络的资源信息;403 :根据该资源信息预测该无线网络的数据传输速率;步骤402-403与实施例二的步骤305-306的实施方式相同,参见步骤305-306,此处不再赘述。404 :选择与该数据传输速率相适配的内容分片;具体地,比较该数据传输速率和要求的码率的大小;当该数据传输速率小于要求的码率时,选择码率小于或等于该数据传输速率的内容分片;当该数据传输速率大于或等于要求的码率时,选择码率等于该要求的码率的内容分片。也就是说,如果客户端请求的内容分片的码率为Bitratel,将该码率与分发服 务器预测出的数据传输速率Bitrate2进行比较,并选择码率相适配的内容分片。假设选择的内容分片的码率为Bitrate3,那么如果分发服务器判断Bitrate2 < Bitratel,那么 Bitrate3 ^ Bitrate2,如果分发服务器判断 Bitrate2 ^ Bitratel,那么 Bitrate3 =Bitratel0例如,MPD中携带的媒体码率信息为350kbps,470kbps,630kbps,845kbps,1130kbps ;当Bitratel = 1130kbps时,根据分发服务器的带宽检测,预测出的数据传输速率为Bitrate2 = 900kbps,那么回复内容分片的码率为Bitrate3 = 845kbps。405 :向该客户端发送该内容分片。具体可参见实施例二的步骤309的实施方式,此处不再赘述。本发明实施例提供的方法,通过由分发服务器获取客户端所在无线网络的资源信息,根据该资源信息预测该无线网络的数据传输速率,然后参考客户端要求的码率,为客户端选择与该数据传输速率相适配的内容分片,可以达到下述有益效果首先,分发服务器根据无线网络的历史传输数据预测下一时刻该无线网络的数据传输速率,是从总体上对网络带宽状况进行判断,以此为依据为客户端选择与该数据传输速率相适配的内容分片、进行码率调节能较好的解决网络拥塞的问题;其次,在多用户小区中,当网络拥塞时,通过分发服务器总体上对网络带宽状况进行判断,如果客户端要求的码率高、而分发服务器预测到的数据传输速率不足,则向客户端发送码率较低的内容分片,此时如果节省出来的带宽仍不充足,那么其它客户端要求的高码率内容分片请求也会根据情况对其下发较低码率的响应,因此分发服务器可以从宏观上对小区的带宽进行调节,稳定的减缓网络拥塞,解决网络拥塞的问题;再次,现有技术中由客户端根据自己buffer的占用情况去检测带宽、选择码率、并请求服务器进行码率调整,服务器收到请求后再下发相应码率的内容分片进行码率调整,整个调整码率的周期过长,当服务器按照客户端要求的码率进行调整时,此刻的网络带宽状况可能已经变了,非常不实时,而本实施例提供的方法由分发服务器预测该无线网络的数据传输速率后,即刻参考客户端要求的码率向客户端适配码率合适的内容分片,达到更实时的进行码率适配的效果,使本发明实施例进行码率调整的速度跟得上网络带宽的变化速度;另外,HTTP流媒体采用的HTTP request/response模式只能发送一个请求回复一个内容分片,对HTTP流媒体中数目庞大的内容分片来说效率较低。当采用本发明实施例中的HTTP块的方式向客户端发送内容分片时,客户端只需要请求一次,分发服务器就会依次将每一个内容分片用HTTP块方式向客户端发送,提高了多媒体文件的传输效率。实施例四本发明实施例还提供了一种流媒体的处理方法,该方法可以在流媒体的分发服务器上执行,该流媒体的分发服务器可以位于在无线网络的RNC或eNB中。参见图5,其中步骤501-503分别与实施例三中步骤401-403大致相同,在此不再赘述;本实施例与实施例三的主要区别在于,还包括504 :获取该客户端的用户信息;具体可参见实施例二的步骤307的实施方式,此处不再赘述。505 :根据获取的用户信息,选择与该数据传输速率相适配的内容分片;
具体地,比较该数据传输速率和要求的码率的大小;当该数据传输速率小于要求的码率时,选择码率小于或等于该数据传输速率的内容分片;当该数据传输速率大于或等于要求的码率时,可以按以下方式选取一种是,当获取的用户信息为用户等级信息时,选择码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息提供的该客户端能支持的最闻码率的内容分片;当获取的用户信息为终端能力信息时,选择码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片;当获取的用户信息为用户等级信息和终端能力信息时,选择码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最高码率的内容分片。也就是说,如果客户端请求的内容分片的码率为Bitratel,将该码率与分发服务器预测出的数据传输速率Bitrate2进行比较,并选择码率相适配的内容分片。假设选择的内容分片的码率为Bitrate3,那么如果分发服务器判断Bitrate2< Bitratel,那么 Bitrate3 ^ Bitrate2 ;如果分发服务器判断 Bitrate2 ^ Bitratel,Bitratel ^ Bitrate3 ^ Bitrate4, Bitrate4为用户信息提供的客户端能支持的最高码率。例如,MPD中携带的媒体码率信息为350kbps,470kbps,630kbps,845kbps,1130kbps ;当Bitratel = 1130kbps时,根据分发服务器的带宽检测,预测出的数据传输速率为Bitrate2 = 900kbps,认为没有足够的资源,那么回复内容分片的码率为Bitrate3 =845kbps ;当Bitratel = 630kbps时,根据分发服务器的带宽检测,预测出的数据传输速率为Bitrate2 = 1130kbps,认为有足够的资源,但是用户信息中说明客户端不能支持高于845kbps的码率文件的播放,此时也只能回复给客户端最高845kbps的内容分片。506 :向该客户端发送该内容分片。具体可参见实施例二的步骤309的实施方式,此处不再赘述。需要说明的是,获取用户信息的步骤504只要保证在选择码率相适配的内容分片之前执行即可,即步骤504可以在执行步骤505之前的任意时刻执行,本发明实施例仅以上述顺序为例进行说明,但不限定于此。本发明实施例提供的方法,通过由分发服务器获取客户端所在无线网络的资源信息,根据该资源信息预测该无线网络的数据传输速率,然后参考客户端要求的码率和用户信息,为客户端选择与该数据传输速率相适配的内容分片,不仅能够达到实施例三中的全部有益效果,相对于实施例三还进一步包括下述有益效果如果分发服务器同时还参考用户信息进行码率选择,当客户端要求的码率较低、带宽资源较好时,可以为客户端提供码率比客户端要求的码率高、同时又在客户端能力范围内的内容分片,可以使选择的码率更加准确、合适,提升用户体验。实施例五本发明实施例又提供了一种流媒体的处理方法,该方法可以在流媒体的分发服务器上执行,该流媒体的分发服务器可以位于在无线网络的RNC或eNB中。参见图6,其中步骤601-603分别与实施例三中步骤401-403大致相同,在此不再赘述;本实施例与实施例三的主要区别在于,还包括
604:将客户端发送的内容分片请求信息中要求的码率与本地信息记录的该客户端能够支持的码率进行比较,如果该要求的码率大于该本地信息记录的该客户端能够支持的码率,则将该本地信息更新为该要求的码率的信息;其中,本地信息可以以各种方式存储在本地,用于记录客户端能够支持的码率。本发明实施例以建立一个客户端码率能力表为例进行说明,但不限定于此。参见表1,为新建的客户端码率能力表,初始各项值为空
客户端标识视频流标识最大码率(Client Identity) ( Video Identity) (Max Bi trate )
NULL__NULL__NULL_表I其中,客户端标识可以为客户端IPdnternet Protocol,网络互连协议)地址,也可以为其他标识;视频流标识可以为HTTP请求的视频URL地址标识,也可以为其他标识;最大码率为当前客户端申请过的最大码率。针对该步骤,每次客户端发送内容分片请求信息,分发服务器都要根据内容分片请求信息中要求的码率判断是否需要刷新码率能力表,当要求的码率大于相应的最大码率时,则刷新该码率能力表,当要求的码率小于或等于相应的最大码率时,该码率能力表不变。当客户端发送内容分片请求信息在码率能力表中没有记录时,直接添加新的初始记录。例如,在收到客户端发送第一个内容分片请求信息时,携带的码率为Bitrate =845000bps,此时,客户端IP地址为192. 168. I. I,视频流标识利用视频URL来标识http:/www. example, com/videoname, mp4,刷新后的客户端码率能力表如下
客户端标识视频流标识最大码率
192.168.I. Ihttp:/www. example, com/videoname, mp4845000bp s表2此时,分发服务器经过带宽检测之后,如果认为目前带宽环境不能满足845000bps的数据传输速率,可以回复Bitrate为630000bps的码率分片。如收到此客户端本视频后续内容分片请求信息携带的码率为Bitrate =1130000bps, 1130000bps > 845000bps,则刷新后的客户端码率能力表如下
客户端标识视频流标识最大码率
192. 168. I. I http:/www. example, com/videoname, mp41130000bps表3605:根据当前本地信息记录的该客户端能够支持的码率,选择与该数据传输速率相适配的内容分片;
具体地,选择码率小于或等于该数据传输速率、且小于或等于当前本地信息记录的该客户端能够支持的码率的内容分片。606 :向该客户端发送该内容分片。具体可参见实施例二的步骤309的实施方式,此处不再赘述。需要说明的是,步骤604也可以在步骤603之前执行,只要保证接收到内容分片请求信息后,根据其中要求的码率,进行客户端最大码率能力表的建立和更新即可,本发明实施例不对步骤604的具体实现位置进行限定。本发明实施例提供的方法,通过由分发服务器获取客户端所在无线网络的资源信息,根据该资源信息预测该无线网络的数据传输速率,然后参考客户端要求的码率和当前本地信息记录的该客户端能够支持的码率,为客户端选择与该数据传输速率相适配的内容分片,不仅能够达到实施例三中的全部有益效果,相对于实施例三还进一步包括下述有益效果如果分发服务器同时还参考当前本地信息记录的该客户端能够支持的码率进行码率选择,当客户端要求的码率较低、带宽资源较好时,可以为客户端提供码率比客户端要求的码率高、同时又小于或等于最大码率的内容分片,可以使选择的码率更加准确、合适,提升用户体验。实施例六本发明实施例还提供了一种流媒体的处理方法,该方法可以在流媒体的分发服务器上执行,该流媒体的分发服务器可以位于在无线网络的RNC或eNB中。参见图7,该方法包括701 :接收客户端发送的内容分片请求信息;702 :获取该客户端所在无线网络的资源信息,该资源信息为信号质量参数信息;具体地,信号质量参数信息可以为该无线网络的带宽、功率、增益、信噪比等信息。703 :根据该信号质量参数信息预测该无线网络的数据传输速率;其中,预测到的该无线网络的数据传输速率具体可以为客户端下一时刻在该无线网络中的数据传输速率。具体地,根据该信号质量参数信息判断该无线网络是否拥塞,如果拥塞,则判断该无线网络中流媒体业务的流量与全部业务的流量的比例是否大于第一预设门限,如果是,则预测该无线网络在下一时刻的数据传输速率降低;如果不拥塞,则判断该分发服务器发送队列中的数据占缓存区大小的比例是否小于第二预设门限,如果是,则预测该无线网络在下一时刻的数据传输速率升高。下面以根据该无线网络的功率预测该无线网络的数据传输速率为例进行说明(其中,P_non_hspa 表不非 HSPA(High Speed Packet Access,高速分组接入)功率、P_hsupa_res 表不 HSUPA (High Speed Uplink Packet Access,高速上行链路分组接入)保留功率、P_gbr_str表示流业务的GBR(Guaranteed Bit Rate,保证比特率)功率、P_max表示小区最大功率、Thr_olc_trig表示过载触发门限)假设第一预设门限为30%,第二预设门限为70%,但不限定于此,可以根据实际情况设置为其他值;当P_non_hspa+P_hsupa_res+P_gbr_str > P_max* Thr_oIc_trig 时,网络拥塞,此时如果无线网络中流媒体业务的流量与全部业务的流量的比例大于30%,则预测该无线网络在下一时刻的数据传输速率降低,需要降低发送内容分片的码率;当P_non_hspa+P_hsupa_res+P_gbr_str < P_max*Thr_olc_trig 时,网络不拥塞,此时如果无线网络中分发服务器发送队列中的数据占缓存区大小的比例小于70%,则预测该无线网络在下一时刻的数据传输速率升高,需要升高发送内容分片的码率。704 :选择与该数据传输速率相适配的内容分片;具体地,当预测出该无线网络在下一时刻的数据传输速率降低时,可以选择比发送的前一个内容分片的码率低一个级别的内容分片;当预测出该无线网络在下一时刻的数据传输速率升高时,可以选择比发送的前一个内容分片的码率高一个级别的内容分片。705 :向该客户端发送该内容分片。具体可参见实施例二的步骤309的实施方式,此处不再赘述。本发明实施例提供的方法,通过由分发服务器获取客户端所在无线网络的信号质量参数信息,根据该信号质量参数信息再进一步预测该无线网络的数据传输速率是升高还是降低,进而为客户端选择与该数据传输速率相适配的内容分片,可以达到下述有益效果首先,分发服务器根据无线网络的信号质量参数信息预测下一时刻该无线网络的数据传输速率升高还是降低,是从总体上对网络带宽状况进行判断,以此为依据在前一内容分片码率的基础上,降低或者升高后一内容分片的码率,能较好的解决网络拥塞的问题;其次,由分发服务器预测该无线网络的数据传输速率后,即刻向客户端适配码率合适的内容分片,达到更实时的进行码率适配的效果,减少了现有技术中由客户端根据进行检测带宽、选择码率、并请求服务器进行码率调整的时间,使本发明实施例进行码率调整的速度跟得上网络带宽的变化速度;另外,HTTP流媒体采用的HTTP request/response模式只能发送一个请求回复一个内容分片,对HTTP流媒体中数目庞大的内容分片来说效率较低。当采用本发明实施例中的HTTP块的方式向客户端发送内容分片时,客户端只需要请求一次,分发服务器就会依次将每一个内容分片用HTTP块方式向客户端发送,提高了多媒体文件的传输效率。实施例七本发明实施例提供了一种HTTP流媒体的分发服务器,能够实现上述方法实施例中分发服务器侧的方法,参见图8,该分发服务器包括接收模块801,用于接收客户端发送的内容分片请求信息;第一获取模块802,用于在接收模块801接收客户端发送的内容分片请求信息后,获取该客户端所在无线网络的资源信息;预测模块803,用于根据第一获取模块802获取的资源信息预测该无线网络的数据传输速率;选择模块804,用于选择与预测模块803预测的数据传输速率相适配的内容分片;发送模块805,用于向该客户端发送选择模块804选择的内容分片。 —种实施方式下,第一获取模块802获取的资源信息包括信号质量参数信息;相应地,预测模块803,具体用于根据该信号质量参数信息判断该无线网络是否拥塞,如果拥塞,则判断该无线网络中流媒体业务的流量与全部业务的流量的比例是否大于第一预设门限,如果是,则预测该无线网络在下一时刻的数据传输速率降低;如果不拥塞,贝U判断本地发送队列中的数据占缓存区大小的比例是否小于第二预设门限,如果是,则预测该无线网络在下一时刻的数据传输速率升高;也就是说具体用于实现本发明步骤703的内容;相应地,选择模块804,具体用于当预测出该无线网络在下一时刻的数据传输速率降低时,选择比发送的前一个内容分片的码率低一个级别的内容分片;当预测出该无线网络在下一时刻的数据传输速率升高时,选择比发送的前一个内容分片的码率高一个级别的内容分片。在这种实施方式下,通过由分发服务器获取客户端所在无线网络的信号质量参数信息,根据该信号质量参数信息再进一步预测该无线网络的数据传输速率是升高还是降低,进而为客户端选择与该数据传输速率相适配的内容分片,可以达到下述有益效果首先,分发服务器根据无线网络的信号质量参数信息预测下一时刻该无线网络的数据传输速率升高还是降低,是从总体上对网络带宽状况进行判断,以此为依据在前一内容分片码率的基础上,降低或者升高后一内容分片的码率,能较好的解决网络拥塞的问题;其次,由分发服务器预测该无线网络的数据传输速率后,即刻向客户端适配码率合适的内容分片,达到更实时的进行码率适配的效果,减少了现有技术中由客户端根据进行检测带宽、选择码率、并请求服务器进行码率调整的时间,使本发明实施例进行码率调整的速度跟得上网络带宽的变化速度。另一种实施方式下,第一获取模块802获取的资源信息包括历史传输速率;相应地,预测模块803,具体用于根据该历史传输速率,采用线性最小方差的预测方法预测该无线网络在下一时刻的数据传输速率。在这种实施方式下,当接收模块801接收的内容分片请求信息中不包括要求的码率时,可选地,参见图9,该分发服务器还可以包括第二获取模806,用于在选择模块804选择内容分片之前,获取该客户端的用户等级信息;相应地,选择模块804,具体用于选择码率小于或等于该数据传输速率,且小于或等于该用户等级信息提供的该客户端能支持的最高码率的内容分片;或者,可选地,参见图10,该分发服务器还可以包括第三获取模块807,用于在选择模块804选择内容分片之前,获取该客户端的终端能力信息;相应地,选择模块804,具体用于选择码率小于或等于该数据传输速率,且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片。或者,可选地,参见图11,该分发服务器还可以包括第四获取模块808,用于在选择模块804选择内容分片之前,获取该客户端的用户等级信息和终端能力信息;相应地,选择模块804,具体用于选择码率小于或等于该数据传输速率,且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最高码率的内容分片。可选地,在这种实施方式下,当接收模块801接收的内容分片请求信息中包括要求的码率时,选择模块804,具体用于比较该数据传输速率和该要求的码率的大小;当该数据传输速率小于该要求的码率时,选择码率小于或等于该数据传输速率的内容分片;当该数据传输速率大于或等于该要求的码率时,选择码率等于该要求的码率的内容分片。在此基础上,可选地,参见图9,该分发服务器还可以包括
第二获取模块806,用于在选择模块804选择内容分片之前,获取该客户端的用户等级信息;相应地,选择模块804,具体用于比较该数据传输速率和该要求的码率的大小;当该数据传输速率小于该要求的码率时,选择码率小于或等于该数据传输速率的内容分片;当该数据传输速率大于或等于该要求的码率时,选择码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息提供的该客户端能支持的最高码率的内容分片;或者,可选地,参见图10,该分发服务器还可以包括第三获取模块807,用于在选择模块804选择内容分片之前,获取该客户端的终端能力信息;相应地,选择模块804,具体用于比较该数据传输速率和该要求的码率的大小;当该数据传输速率小于该要求的码率时,选择码率小于或等于该数据传输速率的内容分片;当该数据传输速率大于或等于该要求的码率时,选择码率大于或等于该要求的码率、小于或等于所述数据传输速率、且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片;或者,可选地,参见图11,该分发服务器还可以包括第四获取模块808,用于在选择模块804选择内容分片之前,获取该客户端的用户等级信息和终端能力信息;相应地,选择模块804,具体用于比较该数据传输速率和该要求的码率的大小;当该数据传输速率小于该要求的码率时,选择码率小于或等于该数据传输速率的内容分片;当该数据传输速率大于或等于该要求的码率时,选择码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最闻码率的内容分片。或者,可选地,参见图12,当接收模块801接收的内容分片请求信息中包括要求的码率时,该分发服务器还包括更新模块809,用于在选择模块804选择内容分片之前,将要求的码率与本地信息记录的该客户端能够支持的码率进行比较,如果该要求的码率大于本地信息记录的该客户端能够支持的码率,则将本地信息更新为该要求的码率的信息;相应地,选择模块804,具体用于选择码率小于或等于该数据传输速率、且小于或等于当前本地信息记录的该客户端能够支持的码率的内容分片。
进一步地,上述发送模块805,可以用于采用HTTP块的传输方式向客户端发送内容分片。上述第二种实施方式的有益效果是首先,分发服务器根据无线网络的历史传输数据预测下一时刻该无线网络的数据传输速率,是从总体上对网络带宽状况进行判断,以此为依据为客户端选择与该数据传输速率相适配的内容分片、进行码率调节能较好的解决网络拥塞的问题;其次,在多用户小区中,当网络拥塞时,通过分发服务器总体上对网络带宽状况进行判断,而客户端不进行码率选择,因此分发服务器可以从宏观上对小区的带宽进行调节,稳定的减缓网络拥塞,解决网络拥塞的问题;再次,现有技术中由客户端根据自己buffer的占用情况去检测带宽、选择码率、 并请求服务器进行码率调整,服务器收到请求后再下发相应码率的内容分片进行码率调整,整个调整码率的周期过长,当服务器按照客户端要求的码率进行调整时,此刻的网络带宽状况可能已经变了,非常不实时,而本实施例提供的方法由分发服务器预测该无线网络的数据传输速率后,即刻参考客户端要求的码率向客户端适配码率合适的内容分片,达到更实时的进行码率适配的效果,使本发明实施例进行码率调整的速度跟得上网络带宽的变化速度;最后,如果分发服务器同时还参考用户等级信息和终端能力信息等进行码率选择,当带宽资源较好时,可以在客户端能力范围内为客户端提供较高码率的内容分片,提升用户体验;另外,HTTP流媒体采用的HTTP request/response模式只能发送一个请求回复一个内容分片,对HTTP流媒体中数目庞大的内容分片来说效率较低。当采用本发明实施例中的HTTP块的方式向客户端发送内容分片时,客户端只需要请求一次,分发服务器就会依次将每一个内容分片用HTTP块方式向客户端发送,提高了多媒体文件的传输效率。实施例八本发明实施例提供了一种流媒体的处理方法,可以在向分发服务器请求流媒体内容的客户端上执行,参见图13,方法流程包括1301 :向分发服务器发送内容分片请求信息;可选地,该内容分片请求信息中既可以包括要求的码率,也可以不包括要求的码率。1302 :接收该分发服务器发送的内容分片。其中,该内容分片为该分发服务器接收到客户端发送的内容分片请求信息后,通过获取该客户端所在无线网络的资源信息,并根据该资源信息预测该无线网络的数据传输速率,而选择的与该数据传输速率相适配的内容分片。当步骤1301中发送的内容分片请求信息中不包括要求的码率时,在接收该分发服务器发送的内容分片之前,可选地,还可以包括以下任意一种实施方式一种实施方式,向该分发服务器发送用户等级信息;相应地,接收的该内容分片为该分发服务器选择的码率小于或等于该无线网络的数据传输速率,且小于或等于该用户等级息提供的该客户端能支持的最闻码率的内容分片;另一种实施方式,向该分发服务器发送终端能力信息;相应地,接收的该内容分片为该分发服务器选择的码率小于或等于该无线网络的数据传输速率,且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片;又一种实施方式,向该分发服务器发送用户等级信息和终端能力信息;相应地,接收的该内容分片为该分发服务器选择的码率小于或等于该无线网络的数据传输速率,且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最高码率的内容分片。进一步地,当步骤1301中发送的内容分片请求信息中包括要求的码率时,具体地,接收的该内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率等于该要求的码率的内容分片。更近一步地,当步骤1301中发送的内容分片请求信息中包括要求的码率时,在接收该分发服务器发送的内容分片之前,可选地,还可以包括以下任意一种实施方式
一种实施方式,向该分发服务器发送用户等级信息;相应地,接收的该内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息提供的该客户端能支持的最高码率的内容分片;另一种实施方式,向该分发服务器发送终端能力信息;相应地,接收的该内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片;又一种实施方式,向该分发服务器发送用户等级信息和终端能力信息;相应地,接收的该内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最高码率的内容分片。本发明实施例提供的方法,通过客户端向分发服务器发送内容分片请求信息,由分发服务器为该客户端选择与无线网络的数据传输速率相适配的内容分片,使发送给客户端的内容分片的码率与网络环境更加符合;如果客户端还向服务器发送用户等级信息或终端能力信息等用户信息,使分发服务器可以结合用户信息选择更加合适的码率,当客户端要求的码率较低、带宽资源较好时,使分发服务器可以为客户端提供码率比客户端要求的码率高、同时又小于或等于该客户端能支持的最大码率的内容分片,提高用户体验。实施例九参见图14,本发明实施例提供了一种客户端,能够实现上述方法实施例中客户端侧的方法,该客户端包括
第一发送模块1401,用于向分发服务器发送内容分片请求信息;接收模块1402,用于在第一发送模块1401向分发服务器发送内容分片请求信息之后,接收该分发服务器发送的内容分片,其中,该内容分片为该分发服务器接收到该客户端发送的内容分片请求信息后,通过获取该客户端所在无线网络的资源信息,并根据该资源信息预测该无线网络的数据传输速率,而选择的与该数据传输速率相适配的内容分片。当第一发送模块1401发送的内容分片请求信息中不包括要求的码率时,可选地,该客户端还可以包括以下模块中的任意一个参见图15,第二发送模块1403,用于在接收模块1402接收该分发服务器发送的内容分片之前,向该分发服务器发送用户等级信息;相应地,接收模块1402接收的该内容分片为该分发服务器选择的码率小于或等于该无线网络的数据传输速率,且小于或等于该用户等级信息提供的该客户端能支持的最高码率的内容分片;或,参见图16,第三发送模块1404,用于在接收模块1402接收该分发服务器发送的内容分片之前,向该分发服务器发送终端能力信息;相应地,接收模块1402接收的该内容分片为该分发服务器选择的码率小于或等于该无线网络的数据传输速率,且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片;或,参见图17,第四发送模块1405,用于在接收模块1402接收该分发服务器发送的内容分片之前,向该分发服务器发送用户等级信息和终端能力信息;相应地,接收模块1402接收的该内容分片为该分发服务器选择的码率小于或等于该无线网络的数据传输速率,且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最高码率的内容分片。当第一发送模块1401发送的内容分片请求信息中包括要求的码率时,具体地,接收模块1402接收的内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率等于该要求的码率的内容分片。进一步地,当第一发送模块1401发送的内容分片请求信息中包括要求的码率时,可选地,该客户端还可以包括以下模块中的任意一个参见图15,第二发送模块1403,用于在接收模块1402接收该分发服务器发送的内容分片之前,向该分发服务器发送用户等级信息;相应地,接收模块1402接收的该内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息提供的该客户端能支持的最高码率的内容分片;或,参见图16,第三发送模块1404,用于在接收模块1402接收该分发服务器发送的内容分片之前,向该分发服务器发送终端能力信息;相应地,接收模块1402接收的该内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该终端能力信息提供的该客户端能支持的最高码率的内容分片;或,参见图17,第四发送模块1405,用于在接收模块1402接收该分发服务器发送的内容分片之前,向该分发服务器发送用户等级信息和终端能力信息;相应地,接收模块1402接收的该内容分片为该分发服务器通过比较该无线网络的数据传输速率和该要求的码率的大小,当该数据传输速率小于该要求的码率时,选择的码率小于或等于该数据传输速率的内容分片,或,当该数据传输速率大于或等于该要求的码率时,选择的码率大于或等于该要求的码率、小于或等于该数据传输速率、且小于或等于该用户等级信息和终端能力信息提供的该客户端能支持的最高码率的内容分片。本发明实施例提供的客户端,通过向分发服务器发送内容分片请求信息,由分发服务器为该客户端选择与无线网络的数据传输速率相适配的内容分片,使发送给客户端的内容分片的码率与网络环境更加符合;如果客户端还向服务器发送用户等级信息或终端能力信息等用户信息,使分发服务器可以结合用户信息选择更加合适的码率,当客户端要求 的码率较低、带宽资源较好时,使分发服务器可以为客户端提供码率比客户端要求的码率高、同时又小于或等于该客户端能支持的最大码率的内容分片,提高用户体验。实施例十参见图18,本发明实施例提供了一种流媒体的系统,该系统包括分发服务器1801和客户端1802 ;其中,分发服务器1801如上述实施例七提供的分发服务器;客户端1802如上述实施例九提供的客户端。本发明实施例提供的系统,通过由分发服务器预测客户端所在无线网络的数据传输速率,进而为客户端选择码率与该数据传输速率相适配的内容分片,由于预测的无线网络的数据传输速率更加准确,并且从宏观上对小区的带宽进行调节,能稳定的减缓网络拥塞,解决网络拥塞的问题;同时,由分发服务器预测出下一时刻的数据传输速率后,即刻向客户端适配码率合适的内容分片,可以更快速的进行码率适配。需要说明的是上述实施例提供的分发服务器和客户端在传输流媒体文件时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将分发服务器和客户端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的分发服务器和客户端与流媒体的处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。本发明实施例中的全部或部分步骤,可以利用硬件实现,也可以通过程序来指令相关的硬件完成,所述程序可以存储在可读取的存储介质中,如光盘或硬盘等。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种流媒体的处理方法,其特征在于,所述方法包括 接收客户端发送的内容分片请求信息; 获取所述客户端所在无线网络的资源信息; 根据所述资源信息预测所述无线网络的数据传输速率; 选择与所述数据传输速率相适配的内容分片; 向所述客户端发送所述内容分片。
2.根据权利要求I所述的方法,其特征在于,所述资源信息包括信号质量参数信息; 所述根据所述资源信息预测所述无线网络的数据传输速率,包括 根据所述信号质量参数信息判断所述无线网络是否拥塞,如果拥塞,则判断所述无线网络中流媒体业务的流量与全部业务的流量的比例是否大于第一预设门限,如果是,则预测所述无线网络在下一时刻的数据传输速率降低; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 选择比发送的前一个内容分片的码率低一个级别的内容分片。
3.根据权利要求I所述的方法,其特征在于,所述资源信息包括信号质量参数信息; 所述根据所述资源信息预测所述无线网络的数据传输速率,包括 根据所述信号质量参数信息判断所述无线网络是否拥塞,如果不拥塞,则判断本地发送队列中的数据占缓存区大小的比例是否小于第二预设门限,如果是,则预测所述无线网络在下一时刻的数据传输速率升高; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 选择比发送的前一个内容分片的码率高一个级别的内容分片。
4.根据权利要求I所述的方法,其特征在于,所述资源信息包括历史传输速率; 所述根据所述资源信息预测所述无线网络的数据传输速率,包括 根据所述历史传输速率,采用线性最小方差的预测方法预测所述无线网络在下一时刻的数据传输速率。
5.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中不包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片之前,还包括 获取所述客户端的用户等级信息; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 选择码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
6.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中不包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片之前,还包括 获取所述客户端的终端能力信息; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 选择码率小于或等于所述数据传输速率,且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
7.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中不包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片之前,还包括 获取所述客户端的用户等级信息和终端能力信息; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 选择码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
8.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片,包括 比较所述数据传输速率和所述要求的码率的大小; 当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片; 当所述数据传输速率大于或等于所述要求的码率时,选择码率等于所述要求的码率的内容分片。
9.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片之前,还包括 获取所述客户端的用户等级信息; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 比较所述数据传输速率和所述要求的码率的大小; 当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片; 当所述数据传输速率大于或等于所述要求的码率时,选择码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
10.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片之前,还包括 获取所述客户端的终端能力信息; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 比较所述数据传输速率和所述要求的码率的大小; 当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片; 当所述数据传输速率大于或等于所述要求的码率时,选择码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
11.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片之前,还包括获取所述客户端的用户等级信息和终端能力信息; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 比较所述数据传输速率和所述要求的码率的大小; 当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片; 当所述数据传输速率大于或等于所述要求的码率时,选择码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
12.根据权利要求4所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述选择与所述数据传输速率相适配的内容分片之前,还包括 将所述要求的码率与本地信息记录的所述客户端能够支持的码率进行比较,如果所述要求的码率大于所述本地信息记录的所述客户端能够支持的码率,则将所述本地信息更新为所述要求的码率的信息; 相应地,所述选择与所述数据传输速率相适配的内容分片,包括 选择码率小于或等于所述数据传输速率、且小于或等于所述当前本地信息记录的所述客户端能够支持的码率的内容分片。
13.一种流媒体的分发服务器,其特征在于,所述分发服务器包括 接收模块,用于接收客户端发送的内容分片请求信息; 第一获取模块,用于在所述接收模块接收客户端发送的内容分片请求信息后,获取所述客户端所在无线网络的资源信息; 预测模块,用于根据所述第一获取模块获取的资源信息预测所述无线网络的数据传输速率; 选择模块,用于选择与所述预测模块预测的数据传输速率相适配的内容分片; 发送模块,用于向所述客户端发送所述选择模块选择的内容分片。
14.根据权利要求13所述的分发服务器,其特征在于,所述第一获取模块获取的资源信息包括信号质量参数信息; 所述预测模块,具体用于根据所述信号质量参数信息判断所述无线网络是否拥塞,如果拥塞,则判断所述无线网络中流媒体业务的流量与全部业务的流量的比例是否大于第一预设门限,如果是,则预测所述无线网络在下一时刻的数据传输速率降低; 相应地,所述选择模块,具体用于选择比发送的前一个内容分片的码率低一个级别的内容分片。
15.根据权利要求13所述的分发服务器,其特征在于,所述第一获取模块获取的资源信息包括信号质量参数信息; 所述预测模块,具体用于根据所述信号质量参数信息判断所述无线网络是否拥塞,如果不拥塞,则判断本地发送队列中的数据占缓存区大小的比例是否小于第二预设门限,如果是,则预测所述无线网络在下一时刻的数据传输速率升高; 相应地,所述选择模块,具体用于选择比发送的前一个内容分片的码率高一个级别的内容分片。
16.根据权利要求13所述的分发服务器,其特征在于,所述第一获取模块获取的资源信息包括历史传输速率; 所述预测模块,具体用于根据所述历史传输速率,采用线性最小方差的预测方法预测所述无线网络在下一时刻的数据传输速率。
17.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中不包括要求的码率;所述分发服务器还包括 第二获取模块,用于在所述选择模块选择内容分片之前,获取所述客户端的用户等级信息; 相应地,所述选择模块,具体用于选择码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
18.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中不包括要求的码率;所述分发服务器还包括 第三获取模块,用于在所述选择模块选择内容分片之前,获取所述客户端的终端能力信息; 相应地,所述选择模块,具体用于选择码率小于或等于所述数据传输速率,且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
19.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中不包括要求的码率;所述分发服务器还包括 第四获取模块,用于在所述选择模块选择内容分片之前,获取所述客户端的用户等级信息和终端能力信息; 相应地,所述选择模块,具体用于选择码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
20.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中包括要求的码率; 所述选择模块,具体用于比较所述数据传输速率和所述要求的码率的大小;当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片;当所述数据传输速率大于或等于所述要求的码率时,选择码率等于所述要求的码率的内容分片。
21.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中包括要求的码率;所述分发服务器还包括 第二获取模块,用于在所述选择模块选择内容分片之前,获取所述客户端的用户等级信息; 相应地,所述选择模块,具体用于比较所述数据传输速率和所述要求的码率的大小;当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片;当所述数据传输速率大于或等于所述要求的码率时,选择码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
22.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中包括要求的码率;所述分发服务器还包括第三获取模块,用于在所述选择模块选择内容分片之前,获取所述客户端的终端能力信息; 相应地,所述选择模块,具体用于比较所述数据传输速率和所述要求的码率的大小;当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片;当所述数据传输速率大于或等于所述要求的码率时,选择码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
23.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中包括要求的码率;所述分发服务器还包括 第四获取模块,用于在所述选择模块选择内容分片之前,获取所述客户端的用户等级信息和终端能力信息; 相应地,所述选择模块,具体用于比较所述数据传输速率和所述要求的码率的大小;当所述数据传输速率小于所述要求的码率时,选择码率小于或等于所述数据传输速率的内容分片;当所述数据传输速率大于或等于所述要求的码率时,选择码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
24.根据权利要求16所述的分发服务器,其特征在于,所述接收模块接收的内容分片请求信息中包括要求的码率;所述分发服务器还包括 更新模块,用于在所述选择模块选择内容分片之前,将所述要求的码率与本地信息记录的所述客户端能够支持的码率进行比较,如果所述要求的码率大于所述本地信息记录的所述客户端能够支持的码率,则将所述本地信息更新为所述要求的码率的信息; 相应地,所述选择模块,具体用于选择码率小于或等于所述数据传输速率、且小于或等于所述当前本地信息记录的所述客户端能够支持的码率的内容分片。
25.一种流媒体的处理方法,其特征在于,所述方法包括 向分发服务器发送内容分片请求信息; 接收所述分发服务器发送的内容分片,其中,所述内容分片为所述分发服务器接收到客户端发送的所述内容分片请求信息后,通过获取所述客户端所在无线网络的资源信息,并根据所述资源信息预测所述无线网络的数据传输速率,而选择的与所述数据传输速率相适配的内容分片。
26.根据权利要求25所述的方法,其特征在于,所述内容分片请求信息中不包括要求的码率; 所述接收所述分发服务器发送的内容分片之前,还包括 向所述分发服务器发送用户等级信息; 相应地,接收的所述内容分片为所述分发服务器选择的码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
27.根据权利要求25所述的方法,其特征在于,所述内容分片请求信息中不包括要求的码率; 所述接收所述分发服务器发送的内容分片之前,还包括 向所述分发服务器发送终端能力信息;相应地,接收的所述内容分片为所述分发服务器选择的码率小于或等于所述数据传输速率,且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
28.根据权利要求25所述的方法,其特征在于,所述内容分片请求信息中不包括要求的码率; 所述接收所述分发服务器发送的内容分片之前,还包括 向所述分发服务器发送用户等级信息和终端能力信息; 相应地,接收的所述内容分片为所述分发服务器选择的码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
29.根据权利要求25所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 相应地,接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率等于所述要求的码率的内容分片。
30.根据权利要求25所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述接收所述分发服务器发送的内容分片之前,还包括 向所述分发服务器发送用户等级信息; 相应地,接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
31.根据权利要求25所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述接收所述分发服务器发送的内容分片之前,还包括 向所述分发服务器发送终端能力信息; 相应地,接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
32.根据权利要求25所述的方法,其特征在于,所述内容分片请求信息中包括要求的码率; 所述接收所述分发服务器发送的内容分片之前,还包括 向所述分发服务器发送用户等级信息和终端能力信息; 相应地,接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
33.一种客户端,其特征在于,所述客户端包括 第一发送模块,用于向分发服务器发送内容分片请求信息; 接收模块,用于在所述第一发送模块向分发服务器发送内容分片请求信息之后,接收所述分发服务器发送的内容分片,其中,所述内容分片为所述分发服务器接收到所述客户端发送的所述内容分片请求信息后,通过获取所述客户端所在无线网络的资源信息,并根据所述资源信息预测所述无线网络的数据传输速率,而选择的与所述数据传输速率相适配的内容分片。
34.根据权利要求33所述的客户端,其特征在于,所述第一发送模块发送的内容分片请求信息中不包括要求的码率;所述客户端还包括 第二发送模块,用于在所述接收模块接收所述分发服务器发送的内容分片之前,向所述分发服务器发送用户等级信息; 相应地,所述接收模块接收的所述内容分片为所述分发服务器选择的码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
35.根据权利要求33所述的客户端,其特征在于,所述第一发送模块发送的内容分片请求信息中不包括要求的码率;所述客户端还包括 第三发送模块,用于在所述接收模块接收所述分发服务器发送的内容分片之前,向所述分发服务器发送终端能力信息; 相应地,所述接收模块接收的所述内容分片为所述分发服务器选择的码率小于或等于所述数据传输速率,且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
36.根据权利要求33所述的客户端,其特征在于,所述第一发送模块发送的内容分片请求信息中不包括要求的码率;所述客户端还包括 第四发送模块,用于在所述接收模块接收所述分发服务器发送的内容分片之前,向所述分发服务器发送用户等级信息和终端能力信息; 相应地,所述接收模块接收的所述内容分片为所述分发服务器选择的码率小于或等于所述数据传输速率,且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
37.根据权利要求33所述的客户端,其特征在于,所述第一发送模块发送的内容分片请求信息中包括要求的码率; 相应地,所述接收模块接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率等于所述要求的码率的内容分片。
38.根据权利要求33所述的客户端,其特征在于,所述第一发送模块发送的内容分片请求信息中包括要求的码率;所述客户端还包括第二发送模块,用于在所述接收模块接收所述分发服务器发送的内容分片之前,向所述分发服务器发送用户等级信息; 相应地,所述接收模块接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息提供的所述客户端能支持的最高码率的内容分片。
39.根据权利要求33所述的客户端,其特征在于,所述第一发送模块发送的内容分片请求信息中包括要求的码率;所述客户端还包括 第三发送模块,用于在所述接收模块接收所述分发服务器发送的内容分片之前,向所述分发服务器发送终端能力信息; 相应地,所述接收模块接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率 小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述终端能力信息提供的所述客户端能支持的最高码率的内容分片。
40.根据权利要求33所述的客户端,其特征在于,所述第一发送模块发送的内容分片请求信息中包括要求的码率;所述客户端还包括 第四发送模块,用于在所述接收模块接收所述分发服务器发送的内容分片之前,向所 述分发服务器发送用户等级信息和终端能力信息; 相应地,所述接收模块接收的所述内容分片为所述分发服务器通过比较所述数据传输速率和所述要求的码率的大小,当所述数据传输速率小于所述要求的码率时,选择的码率小于或等于所述数据传输速率的内容分片,或,当所述数据传输速率大于或等于所述要求的码率时,选择的码率大于或等于所述要求的码率、小于或等于所述数据传输速率、且小于或等于所述用户等级信息和终端能力信息提供的所述客户端能支持的最高码率的内容分片。
41.一种流媒体的系统,其特征在于,所述系统包括分发服务器和客户端; 所述分发服务器如上述权利要求13-24中任一权利要求所述的分发服务器;所述客户端如上述权利要求33-40中任一权利要求所述的客户端。
全文摘要
本发明实施例公开了一种流媒体的处理方法、分发服务器、客户端及系统,其中,所述方法包括接收客户端发送的内容分片请求信息;获取所述客户端所在无线网络的资源信息;根据所述资源信息预测所述无线网络的数据传输速率;选择与所述数据传输速率相适配的内容分片;向所述客户端发送所述内容分片。本发明实施例通过由分发服务器预测客户端所在无线网络的数据传输速率,进而为客户端选择码率与该数据传输速率相适配的内容分片,使发送给客户端的内容分片的码率更加合适,实现从总体上对小区无线网络的带宽状况进行调节,能稳定的减缓网络拥塞,解决网络拥塞的问题。
文档编号H04L29/06GK102801690SQ20111013716
公开日2012年11月28日 申请日期2011年5月25日 优先权日2011年5月25日
发明者韦安妮 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1