传输流媒体的方法、http服务器、客户端装置和系统的制作方法
【专利摘要】本发明实施例提供一种传输流媒体的方法、HTTP服务器、客户端装置和系统,方法包括:HTTP服务器收到客户端反馈的理想码率;根据理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码;在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,HTTP服务器生成新的媒体信息;HTTP服务器向客户端发送编码后的一组流媒体。HTTP服务器接到反馈的理想码率,根据理想码率通知编码服务器编码一组流媒体,并通知客户端,由客户端来接收编码后的流媒体,使得HTTP服务器能够根据客户端的需要动态的调整所发送的流媒体,提升了客户端的观看体验。
【专利说明】传输流媒体的方法、HTTP服务器、客户端装置和系统
【技术领域】
[0001]本发明涉及流媒体技术,特别是指一种传输流媒体的方法、HTTP服务器、客户端装置和系统。
【背景技术】
[0002]现有的媒体内容分发技术主要包括:实时流协议/实时传输协议(RTSP/RTP,Real-time Streaming Protocol/Real-time Transport Protocol)流媒体技术,超文本传送协议(HTTP)渐进式下载(HTTP Progress Download)技术。
[0003]RTSP流媒体技术支持进度条搜索、快进、快退等控制功能和内容版权保护。流媒体服务器的安装、配置和维护都较为复杂;RTSP协议使用的特定的网络端口号(554)可能被部分用户网络中的防火墙和NAT等封堵,导致无法使用;需要流媒体服务器为每一个对应的流媒体建立一个会话(Session),这导致大规模部署时流媒体服务器资源过于集中。
[0004]HTTP渐进式下载技术与有状态的RT SP/RTP流媒体技术相比,采用了无状态的HTTP协议,其中的web服务器配置好后便于配置和维护;为用户提供了更好的兼容性,且不需要流媒体业务的提供者去考虑收看用户的带宽。
[0005]HTTP码率自适应技术是混合型媒体内容分发技术,融合RTSP/RTP流媒体技术以及HTTP渐进式下载技术的优点,为多屏融合的媒体传输提供了一个良好的解决方案,逐渐成为流媒体传输的发展趋势。HTTP码率自适应技术为用户提供了流的方式的体验,但是实际上与HTTP渐进式下载技术一样采用HTTP协议完成了媒体内容的下载分发,这些媒体内容都被切割成了一系列的媒体分块后进行传输。HTTP码率自适应的国际标准包括MPEGDASH和IETF的草案(Apple提案)等。HTTP码率自适应技术具有HTTP渐进式下载的优点,以及,用户等待的时间更短,可不间断地播放,不需要大的缓存,没有抖动的平滑视频播放体验;基于网络状况和CPU解码能力的无缝码率切换;客户端决定需要下载的媒体内容,不需要下载超过实际消耗的媒体内容,减少了服务器负荷等。
[0006]现有技术存在如下问题:HTTP码率自适应技术由客户端驱动,即根据客户端的情况实现码流切换,但服务器在配置时需要确定提供的视频的码流数目,及某一对应视频的码率和分辨率,以及视频切边的长度(单个切片的小视频的持续时间)等;这会导致服务器无法提供客户端所希望的理想码率,若客户端当前网络状况下理想码率为500kbps,但当前服务器仅仅提供200kbps和1000kbps的码流,这样即使此时服务器的转码器有能力给客户端提供更适应的码流,但客户端进行流媒体播放时仍会不停地在200kbps和1000kbps间切换,导致用户的观看效果差。
【发明内容】
[0007]本发明要解决的技术问题是提供一种传输流媒体的方法、HTTP服务器、客户端装置和系统,用于解决现有技术中,服务器仅仅提供额定码率的流媒体,服务器的转码器的空闲能力得不到有效利用,导致观看效果差的缺陷。[0008]为解决上述技术问题,本发明的实施例提供一种传输流媒体的方法,应用于HTTP服务器,方法包括=HTTP服务器收到客户端反馈的理想码率;根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码;在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,HTTP服务器生成新的媒体信息,通知客户端媒体信息已经更改;HTTP服务器收到客户端根据新的媒体信息产生的流媒体请求后,向客户端发送编码后的一组流媒体。
[0009]所述的方法中,HTTP服务器收到客户端反馈的理想码率之前还包括:HTTP服务器与客户端之间建立传输通道,通过所述传输通道向客户端传输具有初始码率Ltl的流媒体。
[0010]所述的方法中,通过所述传输通道向客户端传输具有初始码率的流媒体具体包括:在客户端检测到对视频内容的点击操作,并向HTTP服务器发送获取媒体信息的Manifest请求之后;HTTP服务器收到Manifest请求,发送当前时刻的媒体信息给客户端,客户端得到并分析所述当前时刻的媒体信息后,请求获取初始码率Ltl的流媒体Stl ;HTTP服务器将初始码率Ltl的流媒体Stl传输给客户端;其中,所述当前时刻的媒体信息与所述新的媒体信息不同。
[0011]所述的方法中,HTTP服务器收到客户端反馈的理想码率是客户端根据流媒体的缓冲信息以及网络质量计算出的码率。
[0012]所述的方法中,编码服务器当前提供的多路流媒体的当前码率按照从小到大的顺序排列后分别为k0...,km ;所述方法还包括:当分布在k厂ki+1之间的理想码率的数量为0,且分布在ki+1-ki+2之间的理想码率的数量为O时,通知编码服务器停止提供码率为ki+1的码流,并修改编码服务器当前能够提供的流媒体的路数目加I。
[0013]所述的方法中,编码服务器当前提供的多路流媒体的当前码率按照从小到大的顺序排列后分别为k0...,km,每相邻两个当前码率形成一个区间;通知编码服务器按照理想码率对一组流媒体进行编码,包括:选定第一区间k厂ki+1,第一区间k厂ki+1中包括的理想码率的数量不少于其他各个区间中包括的理想码率的数量,通知编码服务器为所述第一区间生成新的码率。
[0014]所述的方法中,所述生成新的码率的步骤包括:所述新的码率为分布在第一区间内的理想码率的平均值;通知编码服务器按照所述平均值对一组流媒体进行编码。
[0015]所述的方法中,生成新的码率为分布在ki-ki+1之间的理想码率的平均值之前还包
括:判断^^是否大于预设的阈值S,当大于阈值δ时,进入生成新的码率的步骤,否则结束。
[0016]一种HTTP服务器,与编码服务器连接,包括:接收单元,用于收到客户端反馈的理想码率;反馈处理单元,用于根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码;媒体信息处理单元,用于在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,HTTP服务器生成新的媒体信息,通知客户端媒体信息已经更改;流媒体请求处理单元,用于收到客户端根据新的媒体信息产生的流媒体请求后,向客户端发送编码后的一组流媒体。[0017]所述的服务器装置中,还包括:交互单元,用于当分布在Id1之间的理想码率的数量为0,且分布在ki+广ki+2之间的理想码率的数量为O时,通知编码服务器停止提供码率为ki+1的码流,并修改编码服务器当前能够提供的流媒体的路数目加I。
[0018]一种客户端装置,包括:反馈单元,用于向HTTP服务器反馈理想码率;由HTTP服务器根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码;接收单元,用于在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,接收HTTP服务器生成的新的媒体信息之后所发出的媒体信息已经更改的通知;流媒体请求单元,用于向HTTP服务器发送流媒体请求,并接收编码后的一组流媒体。
[0019]一种传输流媒体的系统,包括HTTP服务器、编码服务器和客户端装置,HTTP服务器与编码服务器连接;HTTP服务器,用于收到客户端反馈的理想码率;根据理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码;编码服务器,用于根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器,HTTP服务器,还用于生成新的媒体信息,通知客户端媒体信息已经更改;客户端装置,用于根据新的媒体信息产生的流媒体请求,向HTTP服务器发送流媒体请求,接收HTTP服务器向客户端发送的编码后的一组流媒体。
[0020]本发明的上述技术方案的有益效果如下:HTTP服务器接到客户端反馈的理想码率,根据理想码率通知编码服务器编码一组流媒体,并通知客户端,由客户端来接收这一组编码后的流媒体,使得HTTP服务器能够根据客户端的需要动态的调整所发送的流媒体,提升了客户端的观看体验。
【专利附图】
【附图说明】
[0021]图1表示HTTP服务器向客户端传输流媒体的工作原理示意图;
[0022]图2表示一种传输流媒体的方法流程示意图;
[0023]图3表示HTTP服务器、客户端和编码服务器的工作流程示意图;
[0024]编码服务器 101
[0025]HTTP 服务器 102
[0026]网络103
[0027]客户端104。
【具体实施方式】
[0028]为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0029]本发明中,基于现有的HTTP码率自适应技术,客户端定期向HTTP服务器反馈当前接收的理想码率,HTTP服务器根据客户端当前反馈的理想码率及编码服务器的编码能力,通知编码服务器完成一组码率的流媒体编码。HTTP服务器生成新的流媒体信息,通知客户端媒体索引信息更改,客户端获取新的流媒体信息后获取对应码流进行播放。
[0030]如图1所示,实线表示流媒体的传输,虚线表示控制及相关信息传送。流媒体送给编码服务器101,编码服务器101中的编码模块对流媒体进行编码,切片模块把完成编码后的视频进行分片,把生成的媒体片段及更改后的媒体信息存储到HTTP服务器102上;客户端104经过网络103从HTTP服务器102上获取媒体信息后,根据当前接收视频状况动态调整从HTTP服务器102获取不同码率的视频。
[0031]本发明实施例提供一种传输流媒体的方法,如图2所示,应用于HTTP服务器102,方法包括:
[0032]步骤201 (步骤一 ),HTTP服务器收到客户端反馈的理想码率;
[0033]步骤202 (步骤二),根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码;
[0034]步骤203 (步骤三),在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,HTTP服务器生成新的媒体信息,通知客户端媒体信息已经更改;
[0035]步骤204 (步骤四),HTTP服务器收到客户端根据新的媒体信息产生的流媒体请求后,向客户端发送编码后的一组流媒体。
[0036]应用所提供的技术,HTTP服务器接到客户端反馈的理想码率,根据理想码率通知编码服务器编码一组流媒体,并通知客户端,由客户端来接收这一组编码后的流媒体,使得HTTP服务器能够根据客户端的需要动态的调整所发送的流媒体,提升了客户端的观看体验。
[0037]一组流媒体支持实现传输多路流媒体。流媒体请求中包括:客户端根据所述新的媒体信息确定的理想码率h的流媒体。
[0038]在一个优选实施例中,HTTP服务器收到客户端反馈的理想码率之前还包括:HTTP服务器与客户端之间建立有传输通道,通过所述传输通道向客户端传输具有初始码率的流媒体。
[0039]在一个优选实施例中,通过所述传输通道向客户端传输具有初始码率的流媒体具体包括:在客户端检测到对视频内容的点击操作,并向HTTP服务器发送获取媒体信息的Manifest请求之后;
[0040]HTTP服务器收到Manifest请求,发送当前时刻的媒体信息给客户端;客户端得到并分析当前时刻的媒体信息后,请求获取初始码率Ltl的流媒体Stl ;
[0041]HTTP服务器将初始码率Ltl的流媒体Stl传输给客户端;其中,所述当前时刻的媒体信息与所述新的媒体信息不同。
[0042]在一个应用场景中,应用实施例所提供的技术,如图3所示,包括:
[0043]客户端检测到用户点击视频内容,客户端向HTTP服务器发送获取媒体信息的Manifest请求!Manifest请求是符合相关协议的一种请求;此时的客户端刚刚被用户请求了观看视频内容,因此并不需要即刻获取理想码率的流媒体;
[0044]HTTP服务器收到Manifest请求后,发送当前的媒体信息给客户端;客户端得到当前的媒体信息后,分析当前的媒体信息,请求获取码率Ltl的流媒体Stl ;HTTP服务器把对应的码率Ltl的流媒体Stl传输给客户端,在客户端播放。其中,当前的媒体信息与所述新的媒体信息不同。
[0045]在一个优选实施例中,HTTP服务器收到客户端反馈的理想码率是客户端根据流媒体的缓冲信息以及网络质量计算出的码率。[0046]在一个优选实施例中,编码服务器当前提供的多路流媒体的当前码率按照从小到大的顺序排列后分别为U...,km ;所述方法还包括:
[0047]当分布在k厂ki+1之间的理想码率的数量为0,且分布在ki+1~ki+2之间的理想码率的数量为O时,通知编码服务器停止提供码率为ki+1的码流,并修改编码服务器当前能够提供的流媒体的路数目加I。
[0048]在一个优选实施例中,编码服务器当前提供的多路流媒体的当前码率按照从小到大的顺序排列后分别为h,...,km,每相邻两个码率形成一个区间;通知编码服务器按照理想码率对一组流媒体进行编码,包括:
[0049]选定第一区间k厂ki+1,第一区间k厂ki+1中包括的理想码率的数量不少于其他各个区间中包括的理想码率的数量,通知编码服务器为所述第一区间生成新的码率。
[0050]在一个优选实施例中,生成新的码率的步骤包括:所述新的码率为分布在第一区间内的理想码率的平均值;
[0051 ] 通知编码服务器按照所述平均值对一组流媒体进行编码。
[0052]在一个优选实施例中,生成新的码率为分布在k^ki+1之间的理想码率的平均值之前还包括:
[0053]判断
【权利要求】
1.一种传输流媒体的方法,应用于HTTP服务器,其特征在于,方法包括: HTTP服务器收到客户端反馈的理想码率; 根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码; 在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,HTTP服务器生成新的媒体信息,通知客户端媒体信息已经更改; HTTP服务器收到客户端根据新的媒体信息产生的流媒体请求后,向客户端发送编码后的一组流媒体。
2.根据权利要求1所述的方法,其特征在于,HTTP服务器收到客户端反馈的理想码率之前还包括: HTTP服务器与客户端之间建立传输通道,通过所述传输通道向客户端传输具有初始码率Ltl的流媒体。
3.根据权利要求2所述的方法,其特征在于,通过所述传输通道向客户端传输具有初始码率的流媒体具体包括: 在客户端检测到对视频内容的点击操作,并向HT T P服务器发送获取媒体信息的Manifest请求之后; HTTP服务器收到Manifest请求,发送当前时刻的媒体信息给客户端,客户端得到并分析所述当前时刻的媒体信息后,请求获取初始码率Ltl的流媒体Stl ; HTTP服务器将初始码率Ltl的流媒体Stl传输给客户端;其中,所述当前时刻的媒体信息与所述新的媒体信息不同。
4.根据权利要求1所述的方法,其特征在于,HTTP服务器收到客户端反馈的理想码率是客户端根据流媒体的缓冲信息以及网络质量计算出的码率。
5.根据权利要求1所述的方法,其特征在于,编码服务器当前提供的多路流媒体的当前码率按照从小到大的顺序排列后分别为U...,km ;所述方法还包括: 当分布在ki~ki+1之间的理想码率的数量为O,且分布在ki+1~ki+2之间的理想码率的数量为O时,通知编码服务器停止提供码率为ki+1的码流,并修改编码服务器当前能够提供的流媒体的路数目加I。
6.根据权利要求1所述的方法,其特征在于,编码服务器当前提供的多路流媒体的当前码率按照从小到大的顺序排列后分别为U...,km,每相邻两个当前码率形成一个区间;通知编码服务器按照理想码率对一组流媒体进行编码,包括: 选定第一区间ki~ki+1,第一区间ki~ki+1中包括的理想码率的数量不少于其他各个区间中包括的理想码率的数量,通知编码服务器为所述第一区间生成新的码率。
7.根据权利要求6所述的方法,其特征在于,所述生成新的码率的步骤包括: 所述新的码率为分布在第一区间内的理想码率的平均值; 通知编码服务器按照所述平均值对一组流媒体进行编码。
8.根据权利要求6所述的方法,其特征在于,生成新的码率为分布在ki~ki+1之间的理想码率的平均值之前还包括: 判断^^是否大于预设的阈值S,当^大于阈值δ时,进入生成新的码率的步骤,否则结束。
9.一种HTTP服务器,其特征在于,与编码服务器连接,包括: 接收单元,用于收到客户端反馈的理想码率; 反馈处理单元,用于根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码; 媒体信息处理单元,用于在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,HTTP服务器生成新的媒体信息,通知客户端媒体信息已经更改; 流媒体请求处理单元,用于收到客户端根据新的媒体信息产生的流媒体请求后,向客户端发送编码后的一组流媒体。
10.根据权利要求9所述的服务器装置,其特征在于,还包括: 交互单元,用于当分布在k厂ki+1之间的理想码率的数量为0,且分布在ki+广ki+2之间的理想码率的数量为O时,通知编码服务器停止提供码率为ki+1的码流,并修改编码服务器当前能够提供的流媒体的路数目加I。
11.一种客户端装置,其特征在于,包括: 反馈单元,用于向H TTP服务器反馈理想码率; 由HTTP服务器根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码; 接收单元,用于在编码服务器根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器之后,接收HTTP服务器生成的新的媒体信息之后所发出的媒体信息已经更改的通知; 流媒体请求单元,用于向HTTP服务器发送流媒体请求,并接收编码后的一组流媒体。
12.一种传输流媒体的系统,其特征在于,包括HTTP服务器、编码服务器和客户端装置,HTTP服务器与编码服务器连接; HTTP服务器,用于收到客户端反馈的理想码率;根据所述理想码率以及编码服务器的编码能力,通知编码服务器根据客户端反馈的理想码率对一组流媒体进行编码; 编码服务器,用于根据客户端反馈的理想码率产生一组流媒体,并将编码后的一组流媒体部署到HTTP服务器, HTTP服务器,还用于生成新的媒体信息,通知客户端媒体信息已经更改; 客户端装置,用于根据新的媒体信息产生的流媒体请求,向HTTP服务器发送流媒体请求,接收HTTP服务器向客户端发送的编码后的一组流媒体。
【文档编号】H04L29/08GK103812821SQ201210439981
【公开日】2014年5月21日 申请日期:2012年11月6日 优先权日:2012年11月6日
【发明者】张世俊, 郭勐, 黄晓伟, 张俭 申请人:中国移动通信集团公司