一种在httpstreaming系统中实现分层请求内容的方法,装置和系统的制作方法

文档序号:7705062阅读:133来源:国知局
专利名称:一种在http streaming系统中实现分层请求内容的方法,装置和系统的制作方法
技术领域
本发明涉及一种在http streaming系统中实现分层请求内容的方法,装置和系统。
背景技术
用户使用终端设备获取多媒体内容并进行播放的方式有多种,典型的有通过HTTP 文件下载或者P2P文件下载到本地磁盘后播放、传统的流媒体方式(数据传输的RTP/RTCP 和播放控制RTSP)、P2P流媒体方式的在线直播/点播、HTTP渐进式下载(HTTP Progressive Download)等等。HTTP渐进式下载则是对HTTP文件下载方式的一种改进,它可以让终端设备边下 载边播放,而无需等到整个文件下载完成后才能够进行播放,播放启动时间也不太长。其实 现原理是对媒体内容进行分片,一个(/一组)内容分片能够在终端设备进行独立解码,而 不用依赖其他分片。这样,服务器和客户端之间每次只要传输一个(/一组)内容分片,终 端设备接收到之后可以解码播放,同时还可接收下一个(/一组)内容分片。这种方式将媒 体文件的处理粒度从整个文件调整为其中一个内容分片,典型的内容分片播放时长可以是 几秒,例如1-10秒。HTTP协议是无状态协议,基于HTTP协议构造的HTTP Streaming方案也因此能取 得简单易实现的优点每次的HTTP请求和响应都能构成一个与其他HTTP请求/响应独立 的事务(transaction)。但这同时也对这种方案提出了这样的需求每次为获得一个媒体 内容分片,客户端需要主动向服务器发送一个HTTP请求,HTTP服务器为客户端的请求服务 并返回包括相应内容分片的响应消息。这样服务器在对媒体内容进行分片的时候,就需要衡量究竟应该如何分割多大 (多少时长)的内容分片如果每个内容分片较大(时长较长),在启动播放和kek操作时客户端需要较长 时间来获取和缓冲内容分片。另外,由于HTTP协议没有取消机制,一旦开始传输内容分片 就需要传输完(当然也可关闭TCP连接并重建TCP连接,但这样会引起额外负担),较长的 分片时长也会影响码率切换响应的及时性,因为码率切换至少是以分片作为最小单位的;如果每个内容分片较小(时长较短),那么客户端将需要频繁向服务器发起请求, 较多的HTTP请求消息将使上行链路带宽占用增加,同时还会造成服务器处理请求的负担 加重,以及每个HTTP响应中包括的有效媒体内容的降低,造成有效媒体传输率下降。现有技术中,高通提出可以将多个连续的内容分片封装到一个分片集(kgment Aggregates)文件内,客户端可以获取完整的分片集,或者根据需要通过分片集的元数据来 获得分片集中所包括分片在分片集内的分布情况和位置信息,并通过partial GET方式请 求获取分片数据。分片集(kgment Aggregates)是处于整个媒体内容和最基本组成内容分片两者之间的一种结构,以期获得比以前更大的灵活性。在这种情况下,客户端对媒体内容的获取 流程可以概括如下图所示步骤1-2 客户端向服务器请求Media Presentation Description信息,获取必 要的媒体元数据信息,并可借助这些信息产生后续的媒体内容请求;服务器向客户端返回 描述信息,包括分片集层次的时间信息,以及能获取到分片集的URL信息,等;步骤3-4 客户端按照描述信息中的分片集URL,用HTTP GET请求的方式请求相应 的分片集;服务器收到这样的请求消息后,返回对应的分片集;步骤5 如果有分片请求触发事件(如刚启动播放、Seek操作、带宽变动导致需要 进行码率切换等)发生,将确定所需请求的分片位于哪个分片集;步骤6-7 客户端按照确定的分片集URL的,用partial GET请求的方式请求分 片集的初始部分(initial potion,描述分片集的元数据信息需要位于分片集的头部),可 以先请求约1000个字节;服务器收到请求消息后,返回包括元数据信息的分片集初始部分 (如果客户端所需要的元数据信息并没有包括在返回的响应消息中,客户端可以确定还需 请求的字节范围并再发一个请求,服务器将把剩余的分片集元数据信息发送给客户端);步骤8 客户端解析并处理分片集的元数据信息,获得所需分片在分片集中的位 置信息(起始位置和分片长度);步骤9-10 客户端利用分片集URL以及分片在分片集中的位置信息,采请求分片 集内某个分片;服务器在响应消息中返回对应的分片数据。上述步骤3-4、5_10发生的先后顺序视实际的播放过程而定,并可根据实际需要重复多次。现有技术一为了获取分片集的元数据信息,以及分片集内所包括的内容分片,需 要终端和服务器支持HTTP协议的partial GET操作,但目前存在部分服务器(特别是内容 分发网络边缘的缓存服务器)或终端不能支持partialGET。如果内容分发网络边缘的缓存 服务器不能支持partial GET,可能需要将收到的partial GET请求转发给服务器处理,将 无法缓存该响应,并且会增加请求的响应时间;其次,客户端在需要请求分片时,首先要从 服务器请求分片集的元数据,分析处理获得的元数据信息,在得到分片的位置信息之后才 能构造相应的partial GET请求,处理效率较低。但是,HTTP协议对于partial GET的支持并不是必须的,暂且不论互联网中已经 广泛部署的HTTP服务器和缓存设备可能会包括较早的只支持HTTP1. 0协议的服务器,就算 在HTTP 1. 1协议RFC2616中,其对partial GET的规范部分有文字明确指出“A server MAY ignore the Range header. ”,并且也没有使用RFC中强制必须支持的“MUST”、"SHALL,, 或"SHOULD”,而只是给出建议“ought to support byte ranges when possible”。因此采 用partialGET方案,在某些网络环境中就可能会遇到不支持或不兼容的情况。

发明内容
一种在http streaming系统中实现分层请求内容的方法,包括,接收客户端发 送的业务信息获取请求;向客户端返回包含媒体展现描述信息的业务信息获取请求响应, 媒体展现描述信息中包含与多层次业务内容对应的URL ;接收客户端发送的业务请求消息 GET消息,请求消息中包含客户端根据业务需求和媒体展现描述信息确定的多层次业务内容的URL;向客户端返回业务请求消息响应,业务请求消息响应中包含与客户端根据业务 需求和媒体展现描述信息确定的业务内容URL对应的业务内容;一种服务器,包括,接收模块,用于接收客户端发送的业务信息获取请求;业务信 息发送模块,用于向客户端返回包含媒体展现描述信息的业务信息获取请求响应,媒体展 现描述信息中包含与业务内容对应的URL;业务请求接收模块,用于接收客户端发送的业 务请求消息GET消息,请求消息中包含客户端根据业务需求和媒体展现描述信息确定的业 务内容URL;业务内容发送模块,用于向客户端返回业务请求消息响应,业务请求消息响应 中包含与客户端根据业务需求和媒体展现描述信息确定的业务内容URL对应的业务内容。一种在httpstreaming系统中实现分层请求内容的系统,包括,服务器,用于接收 客户端发送的业务信息获取请求;向客户端返回包含媒体展现描述信息的业务信息获取请 求响应,媒体展现描述信息中包含与业务内容对应的URL ;接收客户端发送的业务请求消 息GET消息,请求消息中包含客户端根据业务需求和媒体展现描述信息确定的分片URL ;向 客户端返回业务请求消息响应,业务请求消息响应中包含与客户端根据业务需求和媒体展 现描述信息确定的业务内容URL对应的业务内容;客户端,用于向服务器发送业务信息获 取请求;在获得服务器返回的包含与业务内容对应的URL媒体展现描述信息后,向服务器 发送包含根据业务需求和媒体展现描述信息确定的业务内容URL的业务请求消息GET消 息。


图1为现有技术中在SA方案下获取媒体内容的处理流程;图2为本发明实施例提供的一种在http streaming系统中实现分层请求内容的 方法的流程图;图3为本发明实施例提供的对媒体内容进行层次式分片的示例图;图4为本发明实施例提供的客户端的分片集请求处理流程图;图5为本发明实施例提供的客户端的分片请求处理流程图;图6为本发明实施例提供的服务器框图;图7为本发明实施例提供的一种在http streaming系统中实现分层请求内容的 系统的基本框图;图8为本发明实施例提供的另一种在http streaming系统中实现分层请求内容 的方法的基本流程图;图9为本发明实施例提供的另一种在http streaming系统中实现分层请求内容 的方法的基本流程图;图10为本发明实施例提供的另一种在http streaming系统中实现分层请求内容 的方法的基本流程图;图11为本发明实施例提供的另一种在http streaming系统中实现分层请求内容 的方法的基本流程图;图12为本发明实施例提供的客户端对分片触发事件的处理流程图;图13为本发明实施例提供的另一种在http streaming系统中实现分层请求内容 的方法的基本流程图14为本发明实施例提供的客户端对分片触发事件的处理流程。
具体实施例方式为了使本领域的技术人员更好的理解本发明内容,以下结合附图以及具体实施例 对本发明内容作具体说明。本发明实施例的一种在http streaming系统中实现分层请求内容的方法的基本 流程可参考图2,主要包括步骤Al、接收客户端发送的业务信息获取请求;客户端向服务器请求Media Presentation Description信息,以获取必要的媒体 元数据,这里的元数据即为资源描述信息。A2、向客户端返回包含媒体展现描述信息的业务信息获取请求响应,所述媒体展 现描述信息中包含与分层次业务内容对应的URL ;服务器向客户端返回媒体展现描述信息,描述信息中需包括各级分片的时长(及 所包括的下一级内容分片数目)信息或者统一的分片时间轴信息,以及与各层次分片对应 的完整的URL信息;在提供媒体描述信息时,如果同一层次(粒度)的分片在时长上完全相同,则只需 要提供不同层次分片的时长信息(可选的,还有所包括的下一层内容分片的数目),如每个 分片集1分钟(包括30个分片,或10秒包括10个分片,或30秒包括15个分片等)、分片 2秒(或1秒)。对于按照定长进行内容分片的情况,如果最后一个段落或分片集跟前面同 层次的分片在时长上不一样,需单独提供针对性的描述信息。如果同层次(粒度)的分片 在时长上不完全相同,则需要提供一份统一的、有关整个媒体内容分片情况的时间轴信息。 一个定长分片的实施例如图3所示在图3中每个分片集的时长可以相同,或者不同;同样,分片集中每个分片的时长 可以相同,或者不同。相应的,与这个按照层次式进行内容分片实施例相对应的内容分片 URL可以组织如表1所示码率1 URL——> 码率1版本对应的媒体内容段落1 URL——> 码率1段落1对应的内容分片 分片集1 URL——> 对应分片集1 分片1—1 URL——> 对应分片1 分片1—2 URL——> 对应分片2 分片1—3 URL——> 对应分片3…… 分片1—M URL——> 对应分片M 分片集2 URL——> 对应分片集2…… 分片集3 URL——> 对应分片集3…… 分片集N URL——> 对应分片集N 段落2 URL——> 码率1段落2对应的内容分片 段落3 URL——> 码率1段落3对应的内容分片 可选码率2 URL…… 其他可选码率URL……
表 1这里的分片只是对应于分片集中的某一时间段内容,但也允许与分片集中直接包 括的相应时间段的数据内容不完全相同,只要所有连续的、对应于一个分片集的各个连续 分片所包括的媒体内容与该分片集所包括的媒体内容相同即可。A3、接收客户端发送的业务请求消息GET消息,所述请求消息中包含客户端根据 业务需求和媒体展现描述信息确定的分层次业务内容的URL ;客户端按照描述信息中的分片集URL,以及所需请求的分片集的时间信息,用HTTP GET请求的方式请求相应的分片集;客户端的分片集请求处理流程参考图4 401、客户端判断是否无分片请求触发事件,若有分片集请求触发事件,则转到相 应的分片触发事件处理流程,否则继续下面步骤;402、客户端根据描述信息和需请求分片集的时间信息,确定所需请求分片集的 URL。如果是分片集的时长是定长的,可根据需请求分片集的时间信息除以每个分片集的 时长信息,得到分片集的序号(例如每个分片集时长为30秒,要请求距开始20分钟的分 片集,则为第41个分片集);如果分片集的时长不是定长的,可根据媒体展现描述信息中统 一的分片时间轴信息确定所需请求分片集的序号。根据分片集的序号,从媒体展现描述信 息中所包括的与各层次分片对应的完整的URL信息获取与该序号对应的分片集URL。如果 HTTP Streaming方案支持动态码率切换,则在确定分片集的URL时,还需将分片集的序号 和码率信息结合起来,即下一个要请求的分片集应该是什么码率的,并在相应的码率下获 取与序号对应的分片集URL;403、客户端基于获得的分片集URL,构造相应的HTTP GET请求消息;404、客户端将上述HTTP GET请求消息发送给服务器;这里支持不同的部署实现方式(a)、每个分片集URL对应于一个存储的静态的分片集文件(例如每个分片集可存 储为一个.3gp文件或.mp4文件),服务器根据分片集URL直接获取与之相对应的分片集文 件,封装在HTTP响应消息中并发送给客户端;(b)、每个分片集URL所对应的分片集内容是静态的,即不同客户端发出由相同分 片集URL构造的HTTP请求消息,所获得的分片集内容是完全相同的。但是多个分片集可以 连续存放在同一个较大的文件内,由服务器根据URL信息映射出分片集在所处大文件中的 位置和长度信息,并在服务于客户端请求时动态地从存放多个分片集的文件内提取所需的 分片集内容,封装在HTTP响应消息中并发送给客户端;405、客户端等待服务器返回响应消息。如果有分片请求触发事件(如刚启动播放、Seek操作、带宽变动导致需要进行码 率切换等)发生,客户端将根据媒体展现描述信息以及请求的时间点确定所需请求的分片 位于哪个分片集,以及在分片集中的序号,进而确定所需请求分片的URL,具体的分片处理 流程可参考图5 501、客户端判断是否有分片请求触发事件,若无分片请求触发事件,则转到相应 的分片集请求处理流程,否则继续下面步骤;502、客户端根据描述信息和需请求分片的时间信息,确定所需请求分片所对应的 分片集。如果是分片集的时长是定长的,可根据需请求分片集的时间信息以及每个分片集的时长信息,得到相应分片集的序号(例如每个分片集时长为30秒,要请求距开始30分12 秒的分片,则是第61个分片);如果分片集的时长不是定长的,可根据媒体展现描述信息中 统一的分片时间轴信息,以及分片所落在分片集的时间范围中这点,来确定所需请求分片 集的序号;503、如果上述确定的分片集中所包括的分片的时长是定长的,可根据该分片集的 时长以及每个分片的时长信息(或者该分片集所包括的下一级分片数目),得到相应分片 的序号(例如该分片集时长为30秒,分片的时长为2秒(或者该分片集中包括了 15个分 片)要请求的分片距开始分片集开头12秒,则是第7个分片);如果该分片集包括的分片 的时长不是定长的,可根据媒体展现描述信息中统一的分片时间轴信息,以及请求分片的 时间点信息,来确定所需请求分片在对应分片集中的序号;504、客户端根据媒体展现描述信息中所包括的与各层次分片对应的完整的URL 信息,获取与该序号对应的分片URL信息。如果HTTP Streaming方案支持动态码率切换, 则在确定分片的URL时,还需要将分片的序号和码率信息结合起来,即下一个要请求的分 片应该是多少码率的,并在相应的码率下获取到序号对应的分片URL信息;客户端利用上 述步骤获得的分片URL,构造HTTPGET请求消息,并发送给服务器以请求相应的内容分片。A4、向客户端返回业务请求消息响应,所述业务请求消息响应中包含与客户端根 据业务需求和媒体展现描述信息确定的业务内容URL对应的业务内容;服务器收到该请求消息后,返回分片集URL对应的内容分片。本发明实施例采用一种在http streaming系统中实现分层请求内容的方法,接收 客户端发送的业务信息获取消息,向客户端返回包含媒体展现描述信息的业务信息获取消 息响应,所述媒体展现描述信息中包含与业务内容对应的URL,接收客户端发送的业务请求 消息GET消息,所述请求消息中包含客户端根据业务需求和媒体展现描述信息确定的业务 内容URL,向客户端返回业务请求消息响应,所述业务请求消息响应中包含与客户端根据业 务需求和媒体展现描述信息确定的业务内容URL对应的业务内容,使得在查找内容时可直 接根据URL进行查找,提高了处理效率。本发明实施例的一种服务器的基本框图可参考图6,主要包括接收模块601,用于接收客户端发送的业务信息获取请求客户端向服务器请求 Media Presentation Description信息,以获取必要的媒体元数据,这里的元数据即为资 源描述信息;业务信息发送模块602,用于向客户端返回包含媒体展现描述信息的业务信息获 取请求响应,所述媒体展现描述信息中包含与业务内容对应的URL ;业务信息发送模块602 向客户端返回媒体展现描述信息,描述信息中需包括各级分片的时长(及所包括的下一级 内容分片数目)信息或者统一的分片时间轴信息,以及与各层次分片对应的完整的URL信 息;在提供媒体描述信息时,如果同一层次(粒度)的分片在时长上完全相同,则只需 要提供不同层次分片的时长信息(可选的,还有所包括的下一层内容分片的数目),如每个 分片集1分钟(包括30个分片,或10秒包括10个分片,或30秒包括15个分片等)、分片 2秒(或1秒)。对于按照定长进行内容分片的情况,如果最后一个段落或分片集跟前面同 层次的分片在时长上不一样,需单独提供针对性的描述信息。如果同层次(粒度)的分片在时长上不完全相同,则需要提供一份统一的、有关整个媒体内容分片情况的时间轴信息。 一个定长分片的实施例如图3所示。在图3中每个分片集的时长可以相同,或者不同;同样,分片集中每个分片的时长 可以相同,或者不同。相应的,与这个按照层次式进行内容分片实施例相对应的内容分片 URL可以组织如表1所示。业务请求接收模块603,用于接收客户端发送的业务请求消息GET消息,所述请求 消息中包含客户端根据业务需求和媒体展现描述信息确定的业务内容URL;客户端按照描 述信息中的分片集URL,以及所需请求的分片集的时间信息,用HTTP GET请求的方式请求 相应的分片集;服务器收到这样的请求消息后,返回对应的分片集,客户端的分片集请求处 理流程参考上述对图4和图5的说明业务内容发送模块604,用于向客户端返回业务请求消息响应,所述业务请求消息 响应中包含与客户端根据业务需求和媒体展现描述信息确定的业务内容URL对应的业务 内容。客户端利用上述步骤获得的分片URL,构造HTTP GET请求消息,并发送给服务器 以请求相应的内容分片;服务器收到该请求消息后,返回对应的内容分片。所述服务器进一步包括,分层模块605,用于将媒体资源至少分成以下播放单元分片,分片集,段落。分配模块606,至少用于为分片,分片集,段落分配URL。本发明实施例采用一种服务器,接收模块601接收客户端发送的业务信息获取消 息,业务信息发送模块602向客户端返回包含媒体展现描述信息的业务信息获取消息响 应,所述媒体展现描述信息中包含与业务内容对应的URL,业务请求接收模块603接收客户 端发送的业务请求消息GET消息,所述请求消息中包含客户端根据业务需求和媒体展现描 述信息确定的业务内容URL,业务内容发送模块604向客户端返回业务请求消息响应,所述 业务请求消息响应中包含与客户端根据业务需求和媒体展现描述信息确定的业务内容URL 对应的业务内容,使得在查找内容时可直接根据URL进行查找,提高了处理效率。本发明实施例的一种在http streaming系统中实现分层请求内容的系统的基本 框图可参考图7,主要包括服务器701,用于接收客户端702发送的业务信息获取请求;向客户端702返回包 含媒体展现描述信息的业务信息获取请求响应,所述媒体展现描述信息中包含与业务内容 对应的URL ;接收客户端702发送的业务请求消息GET消息,所述请求消息中包含客户端根 据业务需求和媒体展现描述信息确定的分片URL ;向客户端702返回业务请求消息响应,所 述业务请求消息响应中包含与客户端702根据业务需求和媒体展现描述信息确定的业务 内容URL对应的业务内容;接收客户端702发送的业务信息获取请求客户端向服务器请求 MediaPresentation Description信息,以获取必要的媒体元数据,这里的元数据即为资源 描述信息;向客户端702返回包含媒体展现描述信息的业务信息获取请求响应,所述媒体 展现描述信息中包含与业务内容对应的URL描述信息中需包括各级分片的时长(及所包括 的下一级内容分片数目)信息或者统一的分片时间轴信息,以及与各层次分片对应的完整 的URL信息;在提供媒体描述信息时,如果同一层次(粒度)的分片在时长上完全相同,则只需11要提供不同层次分片的时长信息(可选的,还有所包括的下一层内容分片的数目),如每个 分片集1分钟(包括30个分片,或10秒包括10个分片,或30秒包括15个分片等)、分片 2秒(或1秒)。对于按照定长进行内容分片的情况,如果最后一个段落或分片集跟前面同 层次的分片在时长上不一样,需单独提供针对性的描述信息。如果同层次(粒度)的分片 在时长上不完全相同,则需要提供一份统一的、有关整个媒体内容分片情况的时间轴信息。 一个定长分片的实施例如图3所示在图3中每个分片集的时长可以相同,或者不同;同样,分片集中每个分片的时长 可以相同,或者不同。相应的,与这个按照层次式进行内容分片实施例相对应的内容分片 URL可以组织如表1所示接收客户端702发送的业务请求消息GET消息,所述请求消息中 包含客户端根据业务需求和媒体展现描述信息确定的业务内容URL ;客户端702按照描述 信息中的分片集URL,以及所需请求的分片集的时间信息,用HTTP GET请求的方式请求相 应的分片集;服务器收到这样的请求消息后,返回对应的分片集,客户端702,用于向服务器701发送业务信息获取请求;在获得服务器701返回的 包含与业务内容对应的URL媒体展现描述信息后,向所述服务器701发送包含根据业务需 求和媒体展现描述信息确定的业务内容URL的业务请求消息GET消息。客户端的分片集请求处理流程同上文中对图4和图5的描述。401、客户端判断是否无分片请求触发事件,若有分片请求触发事件,则转到相应 的分片触发事件处理流程,否则继续下面步骤;402、客户端根据描述信息和需请求分片集的时间信息,确定所需请求分片集的 URL。如果是分片集的时长是定长的,可根据需请求分片集的时间信息除以每个分片集的 时长信息,得到分片集的序号(例如每个分片集时长为30秒,要请求距开始20分钟的分 片集,则为第41个分片集);如果分片集的时长不是定长的,可根据媒体展现描述信息中统 一的分片时间轴信息确定所需请求分片集的序号。根据分片集的序号,从媒体展现描述信 息中所包括的与各层次分片对应的完整的URL信息获取与该序号对应的分片集URL。如果 HTTP Streaming方案支持动态码率切换,则在确定分片集的URL时,还需将分片集的序号 和码率信息结合起来,即下一个要请求的分片集应该是什么码率的,并在相应的码率下获 取与序号对应的分片集URL;403、客户端基于获得的分片集URL,构造相应的HTTP GET请求消息;404、客户端将上述HTTP GET请求消息发送给服务器;具体处理流程与服务器实现和内容部署相关,可以支持不同的部署实现方式(a)、每个分片集URL对应于一个存储的静态的分片集文件(例如每个分片集可存 储为一个.3gp文件或.mp4文件),服务器根据分片集URL直接获取与之相对应的分片集文 件,封装在HTTP响应消息中并发送给客户端;(b)、每个分片集URL所对应的分片集内容是静态的,即不同客户端发出由相同分 片集URL构造的HTTP请求消息,所获得的分片集内容是完全相同的。但是多个分片集可以 连续存放在同一个较大的文件内,由服务器根据URL信息映射出分片集在所处大文件中的 位置和长度信息,并在服务于客户端请求时动态地从存放多个分片集的文件内提取所需的 分片集内容,封装在HTTP响应消息中并发送给客户端;405、客户端等待服务器返回响应消息。
如果有分片请求触发事件(如刚启动播放、kek操作、带宽变动导致需要进行码 率切换等)发生,客户端将根据媒体展现描述信息以及请求的时间点确定所需请求的分片 位于哪个分片集,以及在分片集中的序号,进而确定所需请求分片的URL,具体的分片处理 流程可参考图5 501、客户端判断是否有分片请求触发事件,若无分片请求触发事件,则转到相应 的分片集请求处理流程,否则继续下面步骤;502、客户端根据描述信息和需请求分片的时间信息,确定所需请求分片所对应的 分片集。如果是分片集的时长是定长的,可根据需请求分片集的时间信息以及每个分片集 的时长信息,得到相应分片集的序号(例如每个分片集时长为30秒,要请求距开始30分12 秒的分片,则是第61个分片);如果分片集的时长不是定长的,可根据媒体展现描述信息中 统一的分片时间轴信息,以及分片所落在分片集的时间范围中这点,来确定所需请求分片 集的序号;503、如果上述确定的分片集中所包括的分片的时长是定长的,可根据该分片集的 时长以及每个分片的时长信息(或者该分片集所包括的下一级分片数目),得到相应分片 的序号(例如该分片集时长为30秒,分片的时长为2秒(或者该分片集中包括了 15个分 片)要请求的分片距开始分片集开头12秒,则是第7个分片);如果该分片集包括的分片 的时长不是定长的,可根据媒体展现描述信息中统一的分片时间轴信息,以及请求分片的 时间点信息,来确定所需请求分片在对应分片集中的序号;504、客户端根据媒体展现描述信息中所包括的与各层次分片对应的完整的URL 信息,获取与该序号对应的分片URL信息。如果HTTP Mreaming方案支持动态码率切换, 则在确定分片的URL时,还需要将分片的序号和码率信息结合起来,即下一个要请求的分 片应该是多少码率的,并在相应的码率下获取到序号对应的分片URL信息。本发明实时例采用一种在http streaming系统中实现分层请求内容的系统,服务 器701向客户端702返回业务请求消息响应中包含与客户端根据业务需求和媒体展现描述 信息确定的业务内容URL对应的业务内容,使得在查找内容时可直接根据URL进行查找,提 高了处理效率。本发明实施例的一种在http streaming系统中实现分层请求内容的方法的一个 具体实施例参考图8,主要包括步骤801、客户端向服务器发送业务信息获取请求;客户端向服务器请求Media Presentation Description信息,以获取必要的媒体 元数据,这里的元数据即为资源描述信息802、服务器向客户端返回业务信息获取请求响应;服务器向客户端返回媒体展现描述信息,描述信息中需包括各级分片的时长(及 所包括的下一级内容分片数目)信息或者统一的分片时间轴信息,以及与各层次分片对应 的完整的URL信息;在提供媒体描述信息时,如果同一层次(粒度)的分片在时长上完全相同,则只需 要提供不同层次分片的时长信息(可选的,还有所包括的下一层内容分片的数目),如每个 分片集1分钟(包括30个分片,或10秒包括10个分片,或30秒包括15个分片等)、分片 2秒(或1秒)。对于按照定长进行内容分片的情况,如果最后一个段落或分片集跟前面同层次的分片在时长上不一样,需单独提供针对性的描述信息。如果同层次(粒度)的分片 在时长上不完全相同,则需要提供一份统一的、有关整个媒体内容分片情况的时间轴信息。 一个定长分片的实施例如图3所示在图3中每个分片集的时长可以相同,或者不同;同样,分片集中每个分片的时长 可以相同,或者不同。相应的,与这个按照层次式进行内容分片实施例相对应的内容分片 URL可以组织如表1所示这里的分片只是对应于分片集中的某一时间段内容,但也允许与分片集中直接包 括的相应时间段的数据内容不完全相同,只要所有连续的、对应于一个分片集的各个连续 分片所包括的媒体内容与该分片集所包括的媒体内容相同即可。803、客户端向服务器发送GET消息请求分片集;客户端的分片集请求处理流程参考图4所述的流程804、服务器向客户端返回对应的分片集;805、分片请求触发事件;如果有分片请求触发事件(如刚启动播放、Seek操作、带宽变动导致需要进行码 率切换等)发生,客户端将根据媒体展现描述信息以及请求的时间点确定所需请求的分片 位于哪个分片集,以及在分片集中的序号,进而确定所需请求分片的URL806、客户端向服务器发送GET消息请求分片内容;具体的分片处理流程可参考图5所述的流程807、服务器向客户端返回对应的分片内容;服务器收到该请求消息后,返回对应的内容分片。本发明实时例采用一种在http streaming系统中实现分层请求内容的方法,接收 客户端发送的业务信息获取消息,向客户端返回包含媒体展现描述信息的业务信息获取消 息响应,所述媒体展现描述信息中包含与业务内容对应的URL,接收客户端发送的业务请求 消息GET消息,所述请求消息中包含客户端根据业务需求和媒体展现描述信息确定的业务 内容URL,向客户端返回业务请求消息响应,所述业务请求消息响应中包含与客户端根据业 务需求和媒体展现描述信息确定的业务内容URL对应的业务内容,使得在查找内容时可直 接根据URL进行查找,提高了处理效率。本发明实施例的一种在http streaming系统中实现分层请求内容的方法的一个 具体设施例参考图9,主要包括步骤901、客户端向服务器发送业务信息获取请求;客户端向服务器请求Media Presentation Description信息,以获取必要的媒体 元数据,这里的元数据即为资源描述信息902、服务器向客户端返回业务信息获取请求响应;服务器向客户端返回媒体展现描述信息,描述信息中需包括各级分片的时长(及 所包括的下一级内容分片数目)信息或者统一的分片时间轴信息,以及与各层次分片对应 的完整的URL信息;在提供媒体描述信息时,如果同一层次(粒度)的分片在时长上完全相同,则只需 要提供不同层次分片的时长信息(可选的,还有所包括的下一层内容分片的数目),如每个 分片集1分钟(包括30个分片,或10秒包括10个分片,或30秒包括15个分片等)、分片2秒(或1秒)。对于按照定长进行内容分片的情况,如果最后一个段落或分片集跟前面同 层次的分片在时长上不一样,需单独提供针对性的描述信息。如果同层次(粒度)的分片 在时长上不完全相同,则需要提供一份统一的、有关整个媒体内容分片情况的时间轴信息。 一个定长分片的实施例如图3所示在图3中每个分片集的时长可以相同,或者不同;同样,分片集中每个分片的时长 可以相同,或者不同。相应的,与这个按照层次式进行内容分片实施例相对应的内容分片 URL可以组织如表1所示这里的分片只是对应于分片集中的某一时间段内容,但也允许与分片集中直接包 括的相应时间段的数据内容不完全相同,只要所有连续的、对应于一个分片集的各个连续 分片所包括的媒体内容与该分片集所包括的媒体内容相同即可。903、客户端向服务器发送GET消息请求业务内容;这里需要判断并确定当前处理的分片的层次,获取与该层次相对应的URL信息。 选择分片层次的可供考虑因素有用户选择、可用带宽情况、播放器缓存大小、对有效媒体内 容负载率的需求、服务器策略,假设这里请求的是如图3所示的分片集客户端的分片集请求处理流程参考图4 904、服务器向客户端返回对应的分片集;905、分片请求触发事件;向较低层次分片触发事件。这里要考虑的不仅仅只有分片触发事件,而是需要全 局考虑所有向较低层次分片切换的事件(也即每个分片的时长需要变得更短,当然也包括 了从分片集向分片切换的情形)。在相应的事件处理完成或者结束之后,需要有相应的处理 或信息能告知步骤903,以便步骤903的处理能够确定后续所需请求的媒体分片内容的层 次。这里以分片触发事件处理为例906、客户端向服务器发送GET消息请求分片内容;907、服务器向客户端返回对应的分片内容;服务器收到该请求消息后,返回对应的内容分片。本发明实施例的一种在http streaming系统中实现分层请求内容的方法的一个 具体实施例参考图10,主要包括步骤1001、客户端向服务器发送业务信息获取请求;客户端向服务器请求Media Presentation Description信息,以获取必要的媒体 元数据,这里的元数据即为资源描述信息,这里需要分别获得是音频和视频的元数据。1002、服务器向客户端返回业务信息获取请求响应;服务器向客户端返回媒体展现描述信息,描述信息中需包括各级分片的时长(及 所包括的下一级内容分片数目)信息或者统一的分片时间轴信息,以及与各层次分片对应 的完整的URL信息,这里媒体展现描述信息中分别包含音频和视频的URL信息,下面以音频 为例,视频类似。在提供媒体描述信息时,如果同一层次(粒度)的分片在时长上完全相同,则只需 要提供不同层次分片的时长信息(可选的,还有所包括的下一层内容分片的数目),如每个 分片集1分钟(包括30个分片,或10秒包括10个分片,或30秒包括15个分片等)、分片 2秒(或1秒)。对于按照定长进行内容分片的情况,如果最后一个段落或分片集跟前面同层次的分片在时长上不一样,需单独提供针对性的描述信息。如果同层次(粒度)的分片 在时长上不完全相同,则需要提供一份统一的、有关整个媒体内容分片情况的时间轴信息。 一个定长分片的实施例如图3所示在图3中每个分片集的时长可以相同,或者不同;同样,分片集中每个分片的时长 可以相同,或者不同。相应的,与这个按照层次式进行内容分片实施例相对应的音视频内容 分片URL可以如表2所示内容的URL。一个对应的内容分片URL实施例3可以组织如下码率1 URL——> 码率1版本对应的媒体内容段落1 URL——> 码率1段落1对应的内容分片分片集1视频URL——>对应分片集1视频内容分片集1音频URL——>对应分片集1音频内容分片1—1视频URL-—>对应分片1视频内容分片1—1音频URL-—>对应分片1音频内容分片1—2视频URL-—>对应分片2视频内容分片1—2音频URL-——>对应分片2音频内容分片1—3视频URL-——>对应分片3视频内容分片1—3音频URL-——>对应分片3音频内容……分片1—M视频URL-——>对应分片M视频内容分片1—M音频URL-——>对应分片M音频内容分片集2视频URL——>对应分片集2视频内容分片集2音频URL——>对应分片集2音频内容……分片集3视频URL—一〉对应分片集3视频内容分片集3音频URL—一〉对应分片集3音频内容……分片集N视频URL—一〉对应分片集N视频内容分片集N音频URL—一〉对应分片集N音频内容段落2 URL——> 码率1段落2对应的内容分片……段落3 URL——> 码率1段落3对应的内容分片……可选码率2 URL其他可选码率URL……
表2上表中,对每个段落的内容没有将音视频内容分开,当然也可以分开。这里的分片只是对应于分片集中的某一时间段内容,但也允许与分片集中直接包 括的相应时间段的数据内容不完全相同,只要所有连续的、对应于一个分片集的各个连续 分片所包括的媒体内容与该分片集所包括的媒体内容相同即可。1003、客户端向服务器发送GET消息请求分片集;为了播放某个分片集时间段的媒体内容,需要分别发送音频分片集的HTTPGET请 求和视频分片集的HTTP GET请求,两者处理和发送的先后次序并没有严格要求,只要能满16足在请求分片集的播放时间点到来之前相应分片集的音频和视频内容已经就绪即可,下面 以请求音乐分片集为例,客户端的分片集请求处理流程参考图4 1004、服务器向客户端返回对应的分片集;1005、分片请求触发事件;这里需要确定所需请求视频分片的URL以及音频分片的URL,下面以音乐分片为 例如果有分片请求触发事件(如刚启动播放、kek操作、带宽变动导致需要进行码 率切换等)发生,客户端将根据媒体展现描述信息以及请求的时间点确定所需请求的分片 位于哪个分片集,以及在分片集中的序号,进而确定所需请求分片的URL。1006、客户端向服务器发送GET消息请求分片内容;1007、服务器向客户端返回对应的分片内容;服务器收到该请求消息后,返回对应的内容分片。本发明实施例的一种在http streaming系统中实现分层请求内容的方法的一个 具体实施例参考图11,主要包括步骤1101、客户端向服务器发送业务信息获取请求;客户端向服务器请求Media Presentation Description信息,以获取必要的媒体 元数据,这里的元数据即为资源描述信息1102、服务器向客户端返回业务信息获取请求响应;服务器向客户端返回媒体展现描述信息,描述信息中需包括各级分片的时长(及 所包括的下一级内容分片数目)信息或者统一的分片时间轴信息,以及较高层次的URL信 息(只包括分片集层次的URL,但不包括最底层的分片的URL);在提供媒体描述信息时,如果同一层次(粒度)的分片在时长上完全相同,则只需 要提供不同层次分片的时长信息(可选的,还有所包括的下一层内容分片的数目),如每个 分片集1分钟(包括30个分片,或10秒包括10个分片,或30秒包括15个分片等)、分片 2秒(或1秒)。对于按照定长进行内容分片的情况,如果最后一个段落或分片集跟前面同 层次的分片在时长上不一样,需单独提供针对性的描述信息。如果同层次(粒度)的分片 在时长上不完全相同,则需要提供一份统一的、有关整个媒体内容分片情况的时间轴信息。 一个定长分片的实施例如图3所示在图3中每个分片集的时长可以相同,或者不同;同样,分片集中每个分片的时长 可以相同,或者不同。相应的,与这个按照层次式进行内容分片实施例相对应的内容分片 URL可以组织如表3所示1权利要求
1.一种在http streaming系统中实现请求内容的方法,其特征在于 接收客户端发送的业务信息获取请求;向客户端返回包含媒体展现描述信息的业务信息获取请求响应,所述媒体展现描述信 息中包含与分层次业务内容对应的URL ;接收客户端发送的业务请求消息GET消息,所述请求消息中包含客户端根据业务需求 和媒体展现描述信息确定的分层次业务内容的URL ;向客户端返回业务请求消息响应,所述业务请求消息响应中包含与客户端根据业务需 求和媒体展现描述信息确定的分层次业务内容的URL对应的业务内容。
2.如权利要求1所述的方法,其特征在于,所述分层次业务内容至少包括分片,分片集,段落;所述媒体展现描述信息中包含与分层次业务内容对应的URL具体为至少为分片,分片集,段落分配对应的URL。
3.如权利要求2所述的方法,其特征在于,所述请求消息中包含客户端根据业务需求和媒体展现描述信息确定的业务内容URL 具体为客户端根据业务需求和媒体展现描述信息确定分片集中的分片对应的URL。
4.如权利要求3所述的方法,其特征在于,所述向客户端返回业务请求消息响应,所述 业务请求消息响应中包含与客户端根据业务需求和媒体展现描述信息确定的业务内容URL 对应的业务内容具体包括,当客户端根据业务需求和媒体展现描述信息确定的业务内容URL为户端根据据业务 需求和媒体展现描述信息确定的分片对应的URL时,将分片发送给客户端;
5.如权利要求2所述的方法,其特征在于,所述客户端根据业务需求和媒体展现描述 信息确定分片集中的分片对应的URL具体为客户端根据业务需求和媒体展现描述信息确定分片对应的分片集; 客户端确定分片在所述分片集中对应的序号; 客户端根据媒体展现描述信息获取所述分片对应的URL。
6.如权利要求2所述的方法,其特征在于,所述客户端根据业务需求和媒体展现描述 信息确定分片集中的分片对应的URL具体为;客户端根据业务需求和媒体展现描述信息确定分片对应的分片集; 客户端确定分片在所述分片集中对应的序号; 客户端获取分片集中的分片索引信息; 客户端根据分片索引信息获取所述分片对应的URL。
7.如权利要求2所述的方法,其特征在于,所述客户端根据业务需求和媒体展现描述 信息确定分片集中的分片对应的URL具体为;客户端根据业务需求和媒体展现描述信息确定分片对应的分片集和分片集对应的URL ;客户端确定分片在所述分片集中对应的序号;客户端根据媒体展现描述信息中的URL构造规则,构造分片对应的URL。
8.如权利要求1所述的方法,其特征在于,所述媒体展现描述信息进一步包括多层次业务内容对应的URL ;
9.如权利要求1所述的方法,其特征在于,所述方法进一步包括,接收客户端发送的业 务请求消息GET消息,所述请求消息中包含客户端根据业务需求和媒体展现描述信息确定 的不同多层次业务内容的URL ;向客户端返回业务请求消息响应,所述业务请求消息响应中包含与客户端根据业务需 求和媒体展现描述信息确定的不同多层次业务内容的URL对应的不同业务内容。
10.一种服务器,其特征在于,所述服务器包括,接收模块,用于接收客户端发送的业务信息获取请求;业务信息发送模块,用于向客户端返回包含媒体展现描述信息的业务信息获取请求响 应,所述媒体展现描述信息中包含与业务内容对应的URL ;业务请求接收模块,用于接收客户端发送的业务请求消息GET消息,所述请求消息中 包含客户端根据业务需求和媒体展现描述信息确定的业务内容URL ;业务内容发送模块,用于向客户端返回业务请求消息响应,所述业务请求消息响应中 包含与客户端根据业务需求和媒体展现描述信息确定的业务内容URL对应的业务内容。
11.如权利要求10所述的服务器,其特征在于,所述服务器进一步包括, 分层模块,用于将媒体资源至少分成以下播放单元,分片,分片集,段落。
12.如权利要求10所述的服务器,其特征在于,所述服务器进一步包括, 分配模块,至少用于为,分片,分片集,段落分配URL。
13.—种在htt pstreaming系统中实现分层请求内容的系统,其特征在于,所述系统 包括,服务器,用于接收客户端发送的业务信息获取请求;向客户端返回包含媒体展现描述 信息的业务信息获取请求响应,所述媒体展现描述信息中包含与业务内容对应的URL ;接 收客户端发送的业务请求消息GET消息,所述请求消息中包含客户端根据业务需求和媒体 展现描述信息确定的分片URL ;向客户端返回业务请求消息响应,所述业务请求消息响应 中包含与客户端根据业务需求和媒体展现描述信息确定的业务内容URL对应的业务内容; 客户端,用于向服务器发送业务信息获取请求;在获得服务器返回的包含与业务内容 对应的URL媒体展现描述信息后,向所述服务器发送包含根据业务需求和媒体展现描述信 息确定的业务内容URL的业务请求消息GET消息。
14.如权利要求13所述的系统,其特征在于,所述根据业务需求和媒体展现描述信息 确定的业务内容URL具体为客户端根据业务需求和媒体展现描述信息确定分片对应的分片集; 客户端确定分片在所述分片集中对应的序号; 客户端根据媒体展现描述信息获取所述分片对应的URL。
15.如权利要求13所述的系统,其特征在于,所述根据业务需求和媒体展现描述信息 确定的业务内容URL具体为客户端根据业务需求和媒体展现描述信息确定分片对应的分片集; 客户端确定分片在所述分片集中对应的序号; 客户端获取分片集中的分片索引信息; 客户端根据分片索引信息获取所述分片对应的URL。
16.如权利要求13所述的系统,其特征在于,所述根据业务需求和媒体展现描述信息 确定的业务内容URL具体为;客户端根据业务需求和媒体展现描述信息确定分片对应的分片集和分片集对应的URL ;客户端确定分片在所述分片集中对应的序号; 客户端根据URL构造规则,构造分片对应的URL。
全文摘要
本发明采用一种在http streaming系统中实现分层请求内容的方法,接收客户端发送的业务信息获取消息,向客户端返回包含媒体展现描述信息的业务信息获取消息响应,所述媒体展现描述信息中包含与多层次业务内容对应的URL,接收客户端发送的业务请求消息GET消息,所述请求消息中包含客户端根据业务需求和媒体展现描述信息确定的多层次业务内容的URL,向客户端返回业务请求消息响应,所述业务请求消息响应中包含与客户端根据业务需求和媒体展现描述信息确定的业务内容URL对应的业务内容,使得在查找内容时可直接根据URL进行查找,提高了处理效率。
文档编号H04L29/08GK102055718SQ20091011005
公开日2011年5月11日 申请日期2009年11月9日 优先权日2009年11月9日
发明者乐培玉, 刘光远, 吴凌燕, 张仁宙, 张园园, 张楚雄, 田永辉, 石腾, 袁卫忠 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1