CN102025760B - Http的媒体传输方法及装置 - Google Patents
Http的媒体传输方法及装置 Download PDFInfo
- Publication number
- CN102025760B CN102025760B CN200910175674.4A CN200910175674A CN102025760B CN 102025760 B CN102025760 B CN 102025760B CN 200910175674 A CN200910175674 A CN 200910175674A CN 102025760 B CN102025760 B CN 102025760B
- Authority
- CN
- China
- Prior art keywords
- ability
- server
- streaming media
- client
- http streaming
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/24—Negotiation of communication capabilities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种HTTP的媒体传输方法及装置,涉及媒体传输技术领域,解决了服务器和客户端都具有增强功能的情况下不能确定具体采用何种能力方式的问题。本发明实施例HTTP的媒体传输方法及系统获取服务器和客户端所能支持的HTTP流媒体的能力信息;根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;服务器根据所确定的HTTP流媒体能力提供媒体服务;或客户端根据所确定的HTTP流媒体能力获取媒体服务。本发明实施例主要用于各种媒体获取系统中,例如:IMS系统、基于电子节目指南的系统等等。
Description
技术领域
本发明涉及媒体传输技术领域,尤其涉及HTTP(HypertextTransferProtocol,超文本传输协议)的媒体传输方法及装置。
背景技术
HTTP渐进式下载是对HTTP文件下载方式的一种改进,可以让客户端边下载边播放,无需等到整个文件下载完成后才能够进行播放。其实现原理是对媒体内容进行分片,一个(或一组)内容分片能够在客户端中独立解码。这样,客户端只要完成一个(或一组)内容分片的接收就可以进行解码播放,同时还可以接收下一个(或一组)内容分片。
基于IMS(IPMultimediaSubsystem,IP多媒体子系统)的HTTP渐进式下载的其中一种实现方案在SCF(ServiceControlFunction,业务控制功能)和HTTP服务器之间引入了HTTP代理适配器(AdapterHTTPProxy)。该HTTP代理适配器既支持SIP协议,也支持HTTP协议;HTTP代理适配器具有与SCF的SIP(SessionInitiationProtocol,会话发起协议)接口、与HTTP服务器的HTTP接口、以及与客户端的直接连接的HTTP接口。
但HTTP渐进式下载依然存在如下缺陷:渐进式下载对已经下载到本地的内容部分可支持后向拖动等操作,但对于还没有下载的部分,不支持前向快进(FastForward)、前向拖动(ForwardSeek)等操作。因此,在HTTP渐进式下载的基础上发展出了一种增强的(enhanced)、基于HTTP协议的流式内容传输,称为HTTPStreaming。增强的功能可以包括:播放控制的管理和维护;把基于时间的播放请求转换成对具体内容分片的请求;基于获知的带宽等信息,进行码率适配。
目前,这种对HTTPStreaming的增强有不同的实现方案,可以通过增强服务器来实现,也可以通过增强客户端来实现。并且在具体运用时,服务器和客户端可以查询对方是否支持HTTPStreaming,例如:在HTTP消息中增加“Pragma”头,以携带扩展的3GPP定义的指令来查询对方是否支持3GPPHTTPStreaming。指令可以为“3gpp-http-streaming”,返回的消息中如果取值为true或1时表示对方支持HTTPStreaming。
发明人发现现有技术中至少存在如下问题:上述方案只能确定对方是否支持HTTPStreaming,但可能存在如下情况:增强的服务器既能支持普通的客户端,又能支持增强的客户端;而增强的客户端既能支持普通的服务器,又能支持增强的服务器;那么,当这种增强的服务器和增强的客户端之间进行交互的时候,有可能在媒体传输的时候导致业务混乱。
发明内容
本发明的实施例提供一种HTTP的媒体传输方法及装置,使得在确定能够采用何种HTTP流媒体能力进行媒体传输后,避免媒体传输过程中的混乱。
为达到上述目的,本发明的实施例采用如下技术方案:
一种HTTP的媒体传输方法,包括:
获取服务器和客户端所能支持的HTTP流媒体的能力信息;
根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;
服务器根据所确定的HTTP流媒体能力提供媒体服务;或客户端根据所确定的HTTP流媒体能力获取媒体服务。
一种HTTP的媒体传输装置,包括:
第一能力获取单元,用于获取服务器和客户端所能支持的HTTP流媒体的能力信息;
第一确定单元,用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;
服务获取单元,用于根据所确定的HTTP流媒体能力获取媒体服务。
一种HTTP的媒体传输装置,包括:
第二能力获取单元,用于获取服务器和客户端所能支持的HTTP流媒体的能力信息;
第二确定单元,用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;
服务提供单元,用于根据所确定的HTTP流媒体能力提供媒体服务。
本发明实施例提供的HTTP的媒体传输方法及装置,服务器和客户端需要确定各自所采用的HTTP流媒体能力,并在后续进行媒体传输的过程中服务器按照所确定的HTTP流媒体能力提供媒体服务,而客户端则按照所确定的HTTP流媒体能力获取媒体服务。如此一来,如果服务器和客户端均支持HTTPStreaming增强功能,采用本发明实施例后,服务器和客户端都可以确定各自需要采用的HTTP流媒体能力,能够确定由服务器还是客户端执行HTTPStreaming增强功能。从而,确保后续客户端能够成功地从服务器获取与能力相应的内容描述信息,继而获取所请求的媒体内容分片,以避免在媒体传输过程中由于能力协商不一致导致的媒体传输的混乱。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例1中HTTP的媒体传输方法流程图;
图2为本发明实施例1中HTTP的媒体传输装置框图;
图3为本发明实施例1中HTTP的媒体传输装置框图;
图4为本发明实施例2中HTTP的媒体传输方法流程图;
图5为图4中404过程的具体实现流程图;
图6为图4中405过程的具体实现流程图;
图7为图4中407过程的具体实现流程图;
图8为图4中408过程的具体实现流程图;
图9为本发明实施例2中HTTP的媒体传输装置框图;
图10为本发明实施例3中HTTP的媒体传输方法流程图;
图11为图10中1004过程的具体实现流程图;
图12为本发明实施例3中HTTP的媒体传输装置框图;
图13为本发明实施例4中HTTP的媒体传输方法流程图;
图14为本发明实施例5中HTTP的媒体传输方法流程图;
图15为本发明实施例6中HTTP的媒体传输方法流程图;
图16为本发明实施例6中HTTP的媒体传输装置框图。
具体实施方式
在HTTP渐进式下载的基础上发展出了一种增强的(enhanced)、基于HTTP协议的流式内容传输,称为HTTPStreaming。增强后的HTTPStreaming能力可以包括如下能力:
1、播放状态的控制能力,主要进行播放控制的管理和维护,包括播放状态信息的获取或接收、播放状态信息的管理维护和存储、播放状态的转换及相应的处理,等等;
2、将基于时间的播放请求转换成对内容分片的播放请求的能力,即:基于媒体内容的元数据等信息,对播放请求中的时间进行换算,得到相应的内容分片;对服务器来说还可能包括抽取相应的内容片段和元数据,并组装成客户端播放所需的内容分片;
3、进行码率适配的能力,即:同一个媒体内容可按照不同的比特率存储为多个不同版本,例如:可以按照视频分辨率、帧率、质量等情况存储为不同版本,并且不同版本之间按照完全一致的时间片段进行内容分片,这样可以在带宽发生变化时发送下一个不同比特率的、但在时间上能无缝衔接的内容分片,即可实现内容播放过程中的动态码率无缝适配。
目前,这种对HTTPStreaming的增强有不同的实现方案,可以通过增强服务器来实现,也可以通过增强客户端来实现。这两种不同的实现方式将导致如下一些方面的不同:
第一、内容描述信息不同,对于增强服务器的方案,客户端只需要获知与内容相关的简单的描述信息如时长、内容编码、访问地址等;但对于增强客户端方案,客户端则需要获取更多的信息,例如更详细的元数据信息,以及同一内容不同版本的文件级的元数据信息,以便客户端能够自行计算请求分片在文件中所处的内容范围;
第二、播放请求不同,对于增强服务器方案,客户端发送的播放请求将是基于时间信息的或者播放控制命令;但对于增强客户端方案,客户端发送的播放请求将是对内容分片的请求,即直接在请求中指定内容分片在文件中的内容范围。
本发明实施例提供一种HTTP的媒体传输方法及系统,当这种增强的服务器和增强的客户端之间进行交互的时候,能够协商确定由服务器还是客户端执行HTTPStreaming功能,使得服务器和客户端能够按照确定的媒体能力进行媒体传输,避免媒体传输过程中的混乱。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
本发明实施例提供一种HTTP的媒体传输方法,如图1所示,该HTTP的媒体传输方法包括:
101、获取服务器和客户端所能支持的HTTP流媒体的能力信息。
在客户端需要从服务器上获取媒体的时候,本发明实施例需要先确定服务器和客户端在后续媒体传输过程中所采用的HTTP流媒体能力,为了确定服务器和客户端各自所采用的HTTP流媒体能力,本发明实施例先要获取服务器和客户端所能支持的HTTP流媒体的能力信息。这里所采用的HTTP流媒体能力主要指:在客户端上执行HTTPStreaming增强功能,还是在服务器上执行HTTPStreaming增强功能。在本发明实施例后续的描述中HTTP流媒体能力或、HTTPStreaming能力都是指HTTPStreaming的增强功能。
102、在得到服务器和客户端所能支持的HTTP流媒体的能力信息后,本发明实施例可以根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息,确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力。
具体的确定过程可以采用但不限于如下方案:服务器和客户端的其中一方先确定所采用的HTTP流媒体能力,另一方在根据该HTTP流媒体能力确定自身所采用的HTTP流媒体能力;具体的实现过程见后续实施例。
103、在确定服务器的HTTP流媒体能力后,服务器可以根据所确定的HTTP流媒体能力提供媒体服务;或者客户端可以根据所确定的HTTP流媒体能力获取媒体服务。
本发明实施例还提供一种HTTP的媒体传输装置,如图2所示,该装置包括:第一能力获取单元21、第一确定单元22、服务获取单元23。
其中,第一能力获取单元21用于获取服务器和客户端所能支持的HTTP流媒体的能力信息;第一确定单元22用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;这里所采用的HTTP流媒体能力主要指:在客户端上是否执行HTTPStreaming增强功能;服务获取单元23用于根据所确定的HTTP流媒体能力获取媒体服务。
本发明实施例还提供一种HTTP的媒体传输装置,如图3所示,该装置包括:第二能力获取单元31、第二确定单元32、服务提供单元33。
其中,第二能力获取单元31用于获取服务器和客户端所能支持的HTTP流媒体的能力信息;第二确定单元32用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;这里所采用的HTTP流媒体能力主要指:在服务器上是否执行HTTPStreaming增强功能;服务提供单元33用于根据所确定的HTTP流媒体能力提供媒体服务。
上述HTTP的媒体传输方法及系统概括起来就是:服务器或客户端首先获知对方所能支持的HTTP流媒体能力,协商出服务器和客户端各自所采用的HTTP流媒体能力,在协商确定各自所采用的HTTP流媒体能力之后,服务器才下发对应的内容描述信息,并基于协商确定的HTTP流媒体能力进行后续的HTTPStreaming处理步骤。
本发明实施例提供的HTTP的媒体传输方法及系统,服务器和客户端需要确定各自所采用的HTTP流媒体能力,并在后续进行媒体传输的过程中服务器按照所确定的HTTP流媒体能力提供媒体服务,而客户端则按照所确定的HTTP流媒体能力获取媒体。如此一来,如果服务器和客户端均支持HTTPStreaming增强功能,采用本发明实施例后,服务器和客户端都可以确定各自需要采用的HTTP流媒体能力,能够确定由服务器还是客户端执行HTTPStreaming增强功能,使得服务器和客户端能够按照确定的媒体能力进行媒体传输,避免媒体传输过程中的混乱。从而,确保后续客户端能够成功地从服务器获取与能力相应的内容描述信息,继而获取所请求的媒体内容分片,以避免在媒体传输过程中由于能力协商不一致导致的媒体传输的混乱。
实施例2:
本发明实施例提供一种HTTP的媒体传输方法及装置,下面以基于电子节目指南(EPG,ElectronicProgramGuide)、或基于业务指南(SG,ServiceGuide)来进行HTTP流媒体能力通报和确认的方案为例,具体说明本发明实施例HTTP的媒体传输方法应用,如图4所示,该方法包括:
401、服务器在电子节目指南中的内容描述中将服务器所支持的HTTP流媒体能力标识出来,或者在电子节目指南中接入描述字段将服务器所支持的HTTP流媒体能力标识出来,例如是否支持增强后的HTTPStreaming功能。这可以通过扩展现有的电子节目指南来实现,如果后续的媒体业务采用单播方式发送,则可以采用如下方案:
第一、对SG进行相应扩展,通过扩展后的SG通知客户端某个媒体业务可以采用HTTPStreaming方式发送;
第二、增加一个标识,通过该标识表明HTTPStreaming是否通过增强服务器实现。
上述的HTTP流媒体能力包括但不限于:播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力。
402、服务器向客户端下发包括了已标识服务器所支持的HTTP流媒体能力的EPG。
403、客户端接收到电子节目指南后,根据服务器通报的HTTP流媒体能力、以及自身所支持的HTTP流媒体能力确定客户端所采用的HTTP流媒体能力。
404、客户端根据确定客户端所采用的HTTP流媒体能力构造请求内容描述信息的请求消息并将该请求消息发送给服务器。
本实施例中客户端将自己采用的HTTP流媒体能力标识携带入请求消息中,例如:如果客户端确定采用增强后的HTTP流媒体能力(br功能),即:客户端需要计算出内容分片在文件中的具体位置,以便客户端能够利用该内容分片具体位置向服务器发起播放请求,那么请求消息所携带的能力标识为br;如果客户端确定采用未增强的HTTP流媒体能力,相当于服务器需要采用增强后的HTTP流媒体能力(tq功能),即:服务器需要将基于时间的播放请求转换成对内容分片的播放请求的能力,那么请求消息所携带的能力标识为tq。
上述能力标识可以携带在请求消息的URL(统一资源定位符)中,也可以携带在消息头或消息体中。
405、服务器接收到客户端的请求,读取请求消息中能力标识,确定服务器所采用的HTTP流媒体能力,同时确定需要下发的内容描述信息。
一般分为如下两种情况:
第一、客户端采用未增强的HTTP流媒体能力,服务器采用增强后的HTTP流媒体能力(tq功能)。
此时,服务器下发的内容描述信息只是简单的描述信息,例如:媒体的时长、内容编码格式、访问地址等。
第二、客户端采用增强后的HTTP流媒体能力(br功能),服务器采用未增强的HTTP流媒体能力。
此时,服务器下发的内容描述信息包括更多的描述信息,例如更详细的元数据信息:包括分片信息如每个分片的时长和在文件中的位置和长度,以便客户端能够自行计算请求分片在文件中所处的内容范围。
如果服务器为同一个媒体内容提供了多个不同码率的多个版本,还要提供获取这些多个版本的元数据信息(如码率等)和媒体内容的途径(如URL)。以3GPP文件格式为例,内容描述信息可以放在metadatabox,或者提供URL让客户端获取,客户端可以一次性获取,也可分批或者有选择地获取所需的内容描述信息。
一般来说,播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力等HTTP流媒体能力只需要在服务器和客户端的其中之一上执行就可以,也就是说,当服务器得到了客户端所支持的HTTP流媒体能力后,就能够确定服务器所需要采用的HTTP流媒体能力。
406、服务器向客户端下发内容描述信息。
407、客户端根据客户端所采用的HTTP流媒体能力以及获取到的内容描述信息向服务器请求相应的内容分片。
一般分为如下两种情况:
第一、客户端采用未增强的HTTP流媒体能力,服务器采用增强后的HTTP流媒体能力(tq功能)。
此时,客户端向服务器服务器请求相应的内容分片方式可以采用但不限于如下方案:
1、类似于原来流媒体的,采用播放控制命令,具体的播放控制命令如下:
http://www.example.com/requiredVoDContent/nbafinal.3gp?hsCommand=play;
http://www.example.com/requiredVoDContent/nbafinal.3gp?hsCommand=pause;如果是seek操作,还需要携带seek所指向的时间信息。
2、扩展HTTP的header或消息体,具体运用实例如下:
http://www.example.com/requiredVoDContent/nbafinal.3gp。并把播放命令作为参数,放在扩展后的Header中或者消息体,具体为:Pragma:hsCommand=play。
3、采用携带时间参数的方式,具体实例如下:
http://www.example.com/requiredVoDContent/nbafinal.3gp?timeoffset=1200s。当然,这种运用还可以把时间信息“timeoffset=1200s”携带在扩展后HTTP的header或消息体中。
第二、客户端采用增强后的HTTP流媒体能力(br功能),服务器采用未增强的HTTP流媒体能力。此时,客户端向服务器服务器请求相应的内容分片方式可以采用但不限于如下方案:
http://www.example.com/requiredVoDContent/nbafinal.3gp;并在HTTPheader中指出获取对应分片的byteranges为:bytes=1024-1560;这里对byteranges的支持是HTTP协议规范所提供的。
408、服务器根据内容分片请求下发内容分片到客户端,客户端接收内容分片并进行播放。
上述方法404过程中客户端构造请求内容描述信息的请求消息并将该请求消息发送给服务器的过程具体实现如图5所示,具体包括:
501、客户端判断是否需要携带两种能力标识,如果需要携带两种能力标识,则执行502;如果不需要携带两种能力标识,则执行503。
502、客户端将两种能力标识进行复合得到能力标识信息,例如得到“br&tq”,其中br表示br功能,tq表示tq功能,具体而言,br功能是指计算出内容分片在文件中的具体位置,以便客户端能够利用该内容分片具体位置向服务器发起播放请求;tq功能是指:将基于时间的播放请求转换成对内容分片的播放请求的能力。
503、客户端基于能力标识信息和原先请求内容描述信息的URL,构造一个新的URL,够造原则为:“原先的URL内容?能力标识信息”,例如:http://www.example.com/requiredVoDContent/metadata.html?httpstreamingcapability=br&tq。
504、客户端将使用上述步骤得到的新URL来构造内容描述信息请求消息,并发送给服务器。
上述方法405过程中确定服务器所采用的HTTP流媒体能力和内容描述信息的过程具体实现如图6所示,具体包括:
601、服务器接收并解析处理客户端发送的请求内容描述信息的请求消息;并提取请求消息中的能力标识信息,本实施例是解析URL并提取能力标识信息;
603、服务器判断能力标识信息中是否包括两种能力标识,如果包括两种能力标识,则执行604;如果不包括两种能力标识,则执行605。
604、服务器根据终端所采用的能力信息,选择并确定自己要使用的能力,并执行606。
605、由于客户端只支持一种能力,服务器确定采用与客户端相对应的能力方式,例如:如果请求消息中携带了br能力标识,表示客户端具有br功能,服务器就以支持br的方式与之交互;如果请求消息中携带了tq能力标识,表示客户端具有tq能力,服务器就以支持tq的方式与之交。
606、服务器根据确定的能力来确定要下发的内容描述信息,在这个步骤中,服务器还可以把选择的能力信息包括在内容描述信息中。具体有如下两种情况:
如果服务器确定的能力是br,则服务器下发的内容描述信息包括更多的描述信息,例如更详细的元数据信息:包括分片信息如每个分片的时长和在文件中的位置和长度,以便客户端能够自行计算请求分片在文件中所处的内容范围。;
如果服务器确定的能力是tq,则服务器下发的内容描述信息只是简单的描述信息,例如:媒体的时长、可供选择的码率、访问地址等。
上述方法407过程中客户端向服务器请求相应的内容分片的过程具体实现如图7所示,具体包括:
701、客户端根据自身采用的HTTP流媒体能力判断自身采用的HTTP流媒体能力是否包含br(byteranges)功能,此处的br功能是指计算出内容分片在文件中的具体位置,以便客户端能够利用该内容分片具体位置向服务器发起播放请求;
如果客户端采用的HTTP流媒体能力包含br功能,则继续执行702;如果客户端所采用的HTTP流媒体能力不包含br功能,则执行703。
702、客户端基于内容描述信息计算出内容分片值,即内容分片在服务器某个文件中的起始位置和长度,然后构造内容分片请求,并在该请求中通过标准HTTP协议对br功能的支持来直接向服务器请求对应分片,然后执行704。
703、客户端构造内容分片请求,并且可以在请求中携带请求内容的开始时间,或者播放控制命令参数,然后执行704。
704、客户端向服务器发送内容分片请求。
上述方法408过程中服务器下发内容分片到客户端的过程具体实现如图8所示,具体包括:
801、服务器接收并处理客户端发来的内容分片请求;
802、服务器判断自身采用的HTTP流媒体能力是否包含tq(timebasedrequest)功能,所述tq功能是指:将基于时间的播放请求转换成对内容分片的播放请求的能力。
如果服务器采用的HTTP流媒体能力包含tq功能,则继续执行803;如果服务器所采用的HTTP流媒体能力不包含tq功能,则执行804。
803、服务器基于自己保存或掌握的完整的内容描述信息,以及请求中携带请求内容的开始时间(或者播放控制命令参数),计算出内容分片值,即内容分片在某个文件中的起始位置和长度。
804、服务器构造或选择内容分片。服务器可能需要把相应的内容分片内容片段和分片元数据信息组装成客户端所需的内容分片。
805、服务器向客户端下发内容分片。
通过上述图4至图8的介绍可以知道,采用本发明实施例HTTP的媒体传输方法后,服务器和客户端都可确定各自所采用的HTTP流媒体能力。这样一来,服务器在提供媒体服务的时候就可以明确地执行HTTP流媒体能力相应的操作,而客户端也可以按照相应的方式请求和获取媒体。
在上述实施例,如果客户端所采用的HTTP流媒体能力包含br功能,则客户端获取的内容描述信息需要包括比较详细的元数据信息,具体见606步骤,从而掌握媒体内容的较为详尽的信息以及分片的情况,以便后续能够自行计算获知内容分片在文件中的位置和长度;否则,客户端只需要获取基本的内容元数据信息,例如内容时长、编码格式等,以便播放器能够完成初始化处理。
如图9所示,本发明实施例还提供一种HTTP的媒体传输装置,该装置包括:第一能力获取单元91、第一确定单元92、服务获取单元93。
其中,第一能力获取单元91用于获取服务器和客户端所能支持的HTTP流媒体的能力信息;本实施例中第一能力获取单元91具体用于接收服务器发送的服务器所能支持HTTP流媒体的能力信息,并获取客户端所支持的HTTP流媒体的能力信息;第一确定单元92用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;这里所采用的HTTP流媒体能力主要指:在客户端上是否执行HTTPStreaming增强功能;服务获取单元93用于根据所确定的HTTP流媒体能力获取媒体服务,具体而言,服务获取单元93用于根据所确定的HTTP流媒体能力向服务器发送内容描述信息请求消息。。
一般而言,上述第一能力获取单元91可以通过电子节目指南或业务指南获取服务器所能支持的HTTP流媒体能力信息。并且,在第一能力获取单元91接收服务器发送的服务器所能支持HTTP流媒体的能力信息之前,所述第一能力获取单元91还可以向服务器发起HTTP流媒体的能力确定请求。
上述HTTP的媒体传输方法及系统中,确定服务器和客户端在后续媒体传输过程中所采用的HTTP流媒体能力所传送的信息为:携带在服务器和客户端之间进行流媒体传输之前现有的消息中,也就是在现有的一些消息中直接携带上述HTTP流媒体能力信息,以便客户端和服务器能够确定各自所采用的HTTP流媒体能力。当然,在实际运用时,可以在服务器和客户端之间新增专用消息,然后利用新增的专用消息进行HTTP流媒体能力的通报和确定,具体的其中一种实现方式见实施例4。
实施例3:
本发明实施例提供一种HTTP的媒体传输方法及系统,下面以基于电子节目指南(EPG,ElectronicProgramGuide)、或基于业务指南(SG,ServiceGuide)来进行HTTP流媒体能力通报和确认的方案为例,具体说明本发明实施例HTTP的媒体传输方法应用,如图10所示,该方法包括:
1001、服务器向客户端下发电子节目指南。
1002、客户端接收到电子节目指南后,客户端构造请求内容描述信息的请求消息并将该请求消息发送给服务器。本实施例中客户端将自己能够支持的HTTP流媒体能力标识携带入请求消息中,该能力标识可以携带在请求消息的URL(统一资源定位符)中,也可以携带在消息头或消息体中。
1003、服务器接收到客户端的请求,读取请求消息中能力标识,确定服务器所采用的HTTP流媒体能力,同时根据确定的服务器所采用的HTTP流媒体能力确定需要下发的内容描述信息。具体的内容描述信息和实施例2中405步骤相同,此处不再赘述。
一般来说,播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力等HTTP流媒体能力只需要在服务器和客户端的其中之一上执行就可以,也就是说,当服务器得到了客户端所支持的HTTP流媒体能力后,就能够确定服务器所需要采用的HTTP流媒体能力。
1004、服务器将服务器所选择的HTTP流媒体能力随同内容描述信息下发给客户端。
通过该内容描述信息客户端可以知道服务器所采用的HTTP流媒体能力,所以本过程中客户端就可以根据自己所支持的HTTP流媒体能力和服务器所采用的HTTP流媒体能力确定客户端需要采用的HTTP流媒体能力,例如:如果服务器和客户端所支持的HTTP流媒体能力均包括:播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力。那么,如果服务器选择使用上述HTTP流媒体能力,此时需要客户端选择不使用上述HTTP流媒体能力;如果服务器选择不使用上述HTTP流媒体能力,此时需要客户端选择使用上述HTTP流媒体能力。
1005、客户端根据客户端所采用的HTTP流媒体能力以及接收到的内容描述信息向服务器请求相应的内容分片。具体请求内容分片的请求中所包含的信息与实施例2中407相同,此处不再赘述。
1006、服务器根据服务器所采用的HTTP流媒体能力及接收到的内容分片请法语下发内容分片到客户端。
上述方法1004过程中服务器下发内容描述信息到客户端的过程具体实现如图11所示,具体包括:
1101、服务器将步骤1003中确定需要下发的内容描述信息下发给客户端,其中也可能包括服务器所采用的HTTP流媒体能力信息。
1102、客户端判断内容描述信息中是否携带有服务器所采用的HTTP流媒体能力标识,如果携带有该能力标识,则执行1103;如果没有携带有该能力标识,则执行1104;
1103、客户端根据自己所支持的HTTP流媒体能力和服务器所采用的HTTP流媒体能力确定客户端需要采用的HTTP流媒体能力,并执行1105,具体确定客户端需要采用的HTTP流媒体能力的方式可以参考图10中1004步骤的描述。
1104、客户端通过所接收到的内容描述信息来判断和获知服务器所采用的HTTP流媒体能力,例如可以通过判断内容描述信息所包括的内容的项数、或者判断是否只包括简单的内容描述信息还是包括了更多的内容描述信息、又或者是服务器可以提供专门的参数来指示内容描述信息的类型,等等。然后根据自己所支持的HTTP流媒体能力和服务器所采用的HTTP流媒体能力确定客户端需要采用的HTTP流媒体能力,并执行1105。
1105、客户端判断采用的HTTP流媒体能力是否包含br(byteranges)功能,此处的br功能是指计算出内容分片在文件中的具体位置,以便客户端能够利用该内容分片具体位置向服务器发起播放请求,相当于服务器中将基于时间的播放请求转换成对内容分片的播放请求的能力;
如果客户端采用的HTTP流媒体能力包含br功能,则继续执行1106;如果客户端所采用的HTTP流媒体能力不包含br功能,则结束该流程,返回并执行图10中的1005过程。
1106、客户端判断服务器下发的内容描述信息是否采取分批下发的方式,如果服务器采取分批下发的方式下发内容描述信息,表示客户端还没有得到全部的内容描述信息,需要执行1107;如果服务器不是采取分批下发的方式下发内容描述信息,表示客户端已经得到全部的内容描述信息,可以结束该流程,返回并执行图10中的1005过程。
1107、客户端继续获取更多的内容描述信息。这可以利用前面内容描述信息中提供的链接有选择性地获取;或者依次获取服务器提供的所有的内容描述信息,获取完所有的内容描述信息后,可以结束该流程,返回并执行图10中的1005过程。
上述方法1005过程的具体执行可以按照图7所示的过程进行处理;1006过程的具体执行可以按照图8所示的过程进行处理。
如图12所示,本发明实施例还提供一种HTTP的媒体传输装置,该装置包括:第二能力获取单元121、第二确定单元122、服务提供单元123。
其中,第二能力获取单元121用于获取服务器和客户端所能支持的HTTP流媒体的能力信息,具体而言,所述第二能力获取单元121用于接收客户端发送的客户端所能支持HTTP流媒体的能力信息,或者用于获取第三方服务器中预存的客户端所能支持HTTP流媒体的能力信息;以及获取服务器所支持的HTTP流媒体的能力信息;第二确定单元122用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;这里所采用的HTTP流媒体能力主要指:在服务器上是否执行HTTPStreaming增强功能;服务提供单元123用于根据所确定的HTTP流媒体能力提供媒体服务,具体而言,所述服务提供单元123用于根据所确定的HTTP流媒体能力向终端提供内容描述信息,所述客户端根据内容描述信息确定请求的内容。。
一般情况下,所述第二能力获取单元121接收客户端发送的客户端所能支持HTTP流媒体的能力信息之前,所述第二能力获取单元121还用于向客户端发起HTTP流媒体的能力确定请求。
上述HTTP的媒体传输方法及系统中,确定服务器和客户端在后续媒体传输过程中所采用的HTTP流媒体能力所传送的信息为:携带在服务器和客户端之间进行流媒体传输之前现有的消息中,也就是在现有的一些消息中直接携带上述HTTP流媒体能力信息,以便客户端和服务器能够确定各自所采用的HTTP流媒体能力。当然,在实际运用时,可以在服务器和客户端之间新增专用消息,然后利用新增的专用消息进行HTTP流媒体能力的通报和确定,具体的其中一种实现方式见实施例4。
实施例4:
在实际运用时,HTTP流媒体能力的通报和确定可以采用不同的方式和渠道。具体可以采用但不限于如下方式:
第一、客户端可以向服务器发送客户端所能支持HTTP流媒体的能力信息;由服务器根据接收到的能力信息和服务器所支持的HTTP流媒体能力确定服务器所采用的HTTP流媒体能力;然后服务器向客户端指示客户端所采用的HTTP流媒体能力。实施例3就是采用这种方案。当然,在客户端向服务器发送能力信息之前,服务器可以向客户端发起HTTP流媒体的能力确定请求。
第二、服务器可以向客户端发送服务器所能支持HTTP流媒体的能力信息;由客户端根据接收到的能力信息和客户端所支持的HTTP流媒体能力确定客户端所采用的HTTP流媒体能力;并且由客户端向服务器指示服务器所采用的HTTP流媒体能力。实施例2就是采用这种方案。当然,在服务器向客户端发送能力信息之前,客户端可以向服务器发起HTTP流媒体的能力确定请求。
本实施例在服务器和客户端之间新增专用消息,然后利用新增的专用消息来进行HTTP流媒体能力的通报和确定,相当于通过专门的协商过程来确定客户端和服务器所采用的HTTP流媒体能力,如图13所示,具体过程包括:
1301、在需要进行媒体获取的时候,客户端获得所需要请求内容对应的URL,具体的可以通过服务器下发的电子节目指南或者Web页面等获得该URL。
1302、客户端向服务器发送能力协商请求,该能力协商请求包括客户端所能支持的HTTP流媒体能力的标识,其中该标识可以为br或tq,其中br表示客户端能计算出内容分片的具体位置,以便客户端能够利用该内容分片具体位置向服务器发起播放请求,相当于服务器中将基于时间的播放请求转换成对内容分片的播放请求的能力;tq表示客户端需要直接构成基于时间的播放请求。如果客户端两种HTTP流媒体能力都支持也可以携带两种能力标识上报给服务器。
1303、服务器接收到客户端的能力协商请求后,可以从自身所支持的HTTP流媒体能力列表中选择一个自己所采用的、符合双方要求的HTTP流媒体能力,并将服务器所采用的HTTP流媒体能力发给客户端。
1304、客户端得到服务器所采用的HTTP流媒体能力后,可以确定客户端自身所需要采用的HTTP流媒体能力,一般情况下客户端还可以向服务器发送一个反馈,当然,客户端也可以省略本步骤不向服务器发送反馈。
1305、服务器根据自己所采用的HTTP流媒体能力构建的内容描述信息,并将构建好的内容描述信息下发到客户端。
1306、客户端按照客户端所采用的HTTP流媒体能力向服务器请求相应的内容分片。
1307、服务器按照服务器所采用的HTTP流媒体能力下发内容分片到客户端。
上述1306过程的具体执行可以按照图7所示的过程进行处理;1307过程的具体执行可以按照图8所示的过程进行处理。
通过上述介绍可以知道,采用本发明实施例HTTP的媒体传输方法后,服务器和客户端都可确定各自所采用的HTTP流媒体能力,这样一来,服务器在提供媒体服务的时候就可以明确地执行HTTP流媒体能力相应的操作,而客户端也可以按照相应的方式请求和获取媒体。
上述实施例1至实施例4的HTTP流媒体能力包括:播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力;这些能力可以分布在服务器和客户端分别实现,并要求同一项能力不能同时在服务器和客户端上同时实现,例如:所有的HTTP流媒体能力均在客户端或服务器上实现;或者所述服务器所采用HTTP流媒体能力包括所述HTTP流媒体能力中的至少一种,而所述客户端所采用的HTTP流媒体能力包括所述HTTP流媒体能力中服务器未采用的HTTP流媒体能力。
实施例5:
在实现HTTPStreaming能力增强时,不同的服务器增强的功能可能不会完全相同,不同的客户端增强的功能可能也不会完全相同,而是有些差别。在这种情况之下,对HTTPStreaming增强的能力,还可以按照增强功能的多少划分为不同的能力集,一般可以划分为至少两个等级,并且服务器和客户端中其中一个设备采用最低等级的HTTP流媒体能力,另一个设备采用高于最低等级的HTTP流媒体能力:例如,HTTP流媒体能力的级别划分可以但不限于如下方式:将HTTP流媒体能力的等级按照从低到高依次为初级、中级、高级,其中,各个等级对应的功能如下:
初级HTTP流媒体能力:具有了支持HTTP流媒体能力的所必须的基本功能;
中级HTTP流媒体能力:为在初级基础上增加了播放控制能力、以及将基于时间的播放请求转换成对内容分片的播放请求的能力;
高级HTTP流媒体能力:为中级基础上增加了进行码率适配的能力。
对于服务器来说上述各个等级的功能具体描述如下:
初级HTTP流媒体能力:服务器需要支持把媒体内容按照HTTPStreamingProfile的要求进行分片和存储,接收并处理客户端发送的基于标准HTTP协议的请求消息;
中级HTTP流媒体能力:在初级HTTP流媒体能力的基础上,服务器还支持播放控制,即能根据客户端提交的基于时间的播放请求,返回给客户端请求的内容分片;
高级HTTP流媒体能力:在中级HTTP流媒体能力的基础上,服务器可根据获知的带宽等信息,视情况主动选择返回给用户在时间上衔接的、但码率不同的内容分片。
对于客户端来说上述各个等级的功能具体描述如下:
初级HTTP流媒体能力:客户端需要能够支持类似于RTSP那样的操作,在请求中可以携带起始时间(甚至包括码率)等参数,并能够对接收到的元数据和内容分片进行解析处理并播放呈现;
中级HTTP流媒体能力:在初级HTTP流媒体能力的基础上,客户端还能通过获取详细的内容元数据,获知如何请求具体的文件,并负责计算与请求时间点相对应的分片在文件中的位置和长度,并通过标准的HTTP请求向服务器获取对应的内容分片;
高级HTTP流媒体能力:在中级HTTP流媒体能力的基础上,客户端通过探测带宽等信息,主动向服务器请求同一个媒体内容不同码率版本的文件中的内容分片,来实现码率适配。
相应的,针对以上HTTP流媒体能力级别划分,有如下一些要求:为了支持HTTPStreaming,服务器和客户端都必须支持HTTPStreamingProfile;为了能够支持播放控制,增强的服务器或增强的客户端两者中至少要有一方能够支持到中级或以上的HTTP流媒体能力;当增强的服务器或增强的客户端都高于等于中级HTTP流媒体能力时,还需要协商出唯一确定的、相应功能集的实际实施方或执行者。
在IMSIPTV(InternetProtocolTelevision,因特网协议电视)中,可以充分利用IMS的SIP(SessionInitiationProtocol,会话发起协议)消息或者已有的会话协商流程,来同时完成HTTPStreaming能力信息的通报和协商确定。基于前述能力集的实施例,IMSIPTV中HTTP的媒体传输方法的实现可以采用如下方案:在SDP中添加扩展属性来指示客户端或服务器所支持的HTTP流媒体能力,并利用SDPOffer/Answer模式通报所支持的HTTP流媒体能力;若双方都具有增强的HTTP流媒体能力,还可以协商出实际的HTTP流媒体能力执行者。
下面以Enhanced_Level_0表示初级HTTP流媒体能力、Enhanced_Level_1表示中级HTTP流媒体能力、Enhanced_Level_2表示高级HTTP流媒体能力,并且服务器和客户端两者之一为发起方、另一个为接收方。本实施例中SDP扩展两个属性“a=httpProfile:attrValue1”、“a=hsControl:attrValue2”。其中,对于属性“a=httpProfile:attrValue1”,attrValue1可以取值如下:
HTTPProgressiveDownload
HTTPStreamingServer_Enhanced_Level_0
HTTPStreamingServer_Enhanced_Level_1
HTTPStreamingServer_Enhanced_Level_2
HTTPStreamingClient_Enhanced_Level_0
HTTPStreamingClient_Enhanced_Level_1
HTTPStreamingClient_Enhanced_Level_2
对于属性“a=hsControl:attrValue2”,attrValue2可以取值如下:
Active:发起方负责执行播放控制/码率适配功能
Ready:发起方让对方选择是否愿意执行播放控制/码率适配功能
Passive:发起方不支持执行播放控制/码率适配功能
为了确保交互双方仅通过一次SDPOffer/Answer交互就能完成HTTP流媒体能力的协商,发起方和接收方可以按照下表对SDP的扩展属性进行赋值。这将协商出所采用的HTTP流媒体能力,并在双方都支持HTTPStreaming时协商出播放控制/码率适配等功能实际的实施方或执行者。当然,如果客户端和服务器都只能支持到Enhanced_Level_0级别时,由于没有哪一方能够担当播放控制的执行者,在这种情况下将不支持采用HTTPStreaming方式传输媒体内容。
当由客户端发起SDPOffer(会话描述协议请求)、服务器响应SDPAnswer(会话描述协议应答)时,具体的SDPOffer和SDPAnswer的扩展属性如表1:
当由服务器主动发起SDPOffer,而客户端响应SDPAnswer时,具体的SDPOffer和SDPAnswer的扩展属性取值如表2:
erver_Enhanced _Level_0 | 致协商失败 | ||
HTTPStreamingS erver_Enhanced _Level_1或2 | Active | a=hsControl:Passive | a=hsControl:Passive |
HTTPStreamingS erver_Enhanced _Level_1或2 | Ready | a=hsControl:Passive | a=hsControl:Active/ Passive |
按照上述表1或表2对SDP的HTTPStreaming扩展属性进行赋值,将能够实现服务器和客户端仅通过一次交互,即可获知对方的HTTPStreaming的能力信息,并且能力协商的结果是确定的和唯一的。
IMSIPTV中HTTP的媒体传输方法的具体实现方式如图14所示,该方法包括:
1401、客户端向IP多媒体核心网(IMCN)子系统发送SIP请求,该SIP请求中携带了扩展的SDPoffer;该SDPoffer增加扩展属性“a=httpProfile:attrValue1”和“a=hsControl:attrValue2”,如果客户端支持播放控制功能、并希望担当功能执行者,则具体的扩展的SDPOffer如下:
v=0
o=bob28908445272890844527INIP4b.biloxi.example.com
s=DownloadSession
i=Adownloadsessiondeclaredwithinthesessiondescriptionprotocol
c=INIP4b.biloxi.example.com
t=00
m=application8080TCP3gpp_http_download//indicationofthehttpdownload
a=connection:new
a=setup:active
a=httpProfile:HTTPStreamingClient_Enhanced_Level_1
a=hsControl:Active//或Ready,Enhanced_Level_0时只能取Passive
c=INIP4……………….
b=AS:15000//bandwidthreservedbyUEforCoDservice(receivedfromSSForpreconfigured)
1402、IMCN子系统向SCF发送SIP请求,请求SCF预留初始资源,在本过程中的SIP请求中包括上述1401中的扩展属性。
1403、SCF验证用户是否对请求的内容有访问权限,在具有访问权限的情况下,SCF向HTTP代理适配器发送SIP请求,并且本过程中的SIP请求中包括上述1401中的扩展属性。
1404、HTTP代理适配器将内容标识映射到位于HTTP服务器上的文件,并使用一个特殊的令牌(token)来映射SIP会话与后续HTTPProgressiveDownload请求,并在发送给SCP的200OK响应消息体中包括与文件相应的URL、SDPanswer以及该令牌。适配器同时还将把token信息发送给HTTP服务器,以备其后续使用;
本过程中的200OK响应消息中所包括的SDPAnswer为扩展后的SDPAnswer,增加了扩展属性“a=httpProfile:attrValue1”和“a=hsControl:attrValue2”,如果HTTP代理适配器需要获取服务器所支持的HTTP流媒体能力,或者HTTP代理适配器所支持的HTTP流媒体能力,并根据该能力及SDPOffer中携带的能力信息在SDPAnswer中设定相应的属性值,则可以但不限于采用如下SDPAnswer:
v=0
o=alice28908445262890844527INIP4host.atlanta.example.com
s=DownloadSession
i=Adownloadsessiondeclaredwithinthesessiondescriptionprotocol
c=INIP4host.atlanta.example.com
t=00
m=application8080TCP3gpp_http_download//indicationofthehttpdownload
a=connection:new
a=setup:passive
a=httpProfile:HTTPStreamingServer_Enhanced_Level_0
a=hsControl:passive//服务器不执行播放控制/码率适配等功能
c=INIP4……………….
b=AS:15000
1405、SCP将向IMCN子系统发送200OK响应消息,该响应消息至少携带了上述扩展后的SDPAnswer。
1406、IMCN子系统联系SCF执行资源预留,并配置策略执行机制,然后向客户端发送包含上述SDPAnswer和URL的200OK响应消息。
1407、客户端接收到200OK响应消息后,发送HTTPGET请求到SIP200OK消息中所包含的URL,该HTTPGET请求中还包括获取到的令牌。
1408、HTTP代理适配器将HTTPGET请求中的令牌与保存的令牌相比较,如果通过则向服务器转发HTTPGET请求。
1409、服务器通过HTTP代理适配器向客户端传输HTTP响应,响应中包括了所请求的内容。
上述方案中HTTP流媒体能力是携带在扩展后的SDPoffer或SDPanswer中,在具体运用时,还可以通过在SIP消息中携带服务器的HTTP流媒体能力信息,而客户端在后续的请求消息中把自己的能力信息及协商的结果上报给服务器。即:在步骤1404至1406的SIP消息中携带服务器的HTTP流媒体能力信息,在1407的HTTPGET请求中携带客户端的能力信息及确定的结果。
采用本发明实施例HTTP的媒体传输方法后,在IMS系统中,服务器(或者HTTP代理适配器)和客户端都可确定各自所采用的HTTP流媒体能力,使得服务器在提供媒体服务的时候就可以明确地执行HTTP流媒体能力相应的操作,而客户端也可以按照相应的方式请求和获取媒体,不会出现同一个增强功能在服务器和客户端都被执行而导致媒体获取失败的情况。
实施例6:
上述实施例2至实施例5中都是服务器和客户端之间通过直接的信息交互来确定各自所采用的HTTP流媒体能力,本实施例提供一种通过额外设置的第三方服务器实现的方案,在第三方服务器中存储有客户端的HTTP流媒体能力信息,一般来说,客户端可以在注册时将自己的HTTP流媒体能力信息注册到第三方服务器。如图15所示,采用该方案时服务器和客户端相互确定所采用流媒体能力的过程如下:
1501、服务器首先从第三方服务器获取客户端所能支持HTTP流媒体的能力信息。
1502、服务器根据获取到的能力信息和服务器所支持的HTTP流媒体能力确定服务器所采用的HTTP流媒体能力;
1503、服务器向客户端发送服务器所采用的HTTP流媒体能力信息,由于客户端已经知道服务器所采用的HTTP流媒体能力,客户端根据自己所支持的HTTP流媒体能力和服务器所采用的HTTP流媒体能力确定客户端需要采用的HTTP流媒体能力,这就相当于服务器向客户端指示客户端所采用的HTTP流媒体能力。
在服务器和客户端的后续交互的过程中,服务器下发电子节目单时元数据时,服务器根据该第三方服务器提供的客户端所支持HTTP流媒体能力过滤节目内容,只下发符合要求的媒体内容到客户端。如果客户端直接向服务器请求获取相关内容描述信息时,服务器也可以先从第三方服务器得到客户端所支持的HTTP流媒体能力,然后根据客户端支持的HTTP流媒体能力下发对应的描述信息。
本实施例还提供一种HTTP的媒体传输系统,如图16所示,该系统包括:服务器161、客户端162和第三方服务器163。
其中,第三方服务器163用于存储客户端162所能支持HTTP流媒体的能力;所述服务器161用于从第三方服务器163获取客户端162所能支持HTTP流媒体的能力信息;并服务器161根据获取到的能力信息和服务器161所支持的HTTP流媒体能力确定服务器161所采用的HTTP流媒体能力;所述服务器161还用于向客户端162指示客户端162所采用的HTTP流媒体能力。
在确定各自所采用的HTTP流媒体能力之后,所述服务器161还用于按照所确定的HTTP流媒体能力提供媒体服务;所述客户端162还用于按照所确定的HTTP流媒体能力获取媒体。
本发明实施例主要用在各种媒体获取系统中,例如:IMS系统、基于电子节目指南的系统等等。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (15)
1.一种HTTP的媒体传输方法,其特征在于,包括:
HTTP的媒体传输装置获取服务器和客户端所能支持的HTTP流媒体的能力信息;
所述HTTP的媒体传输装置根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;
服务器根据所确定的HTTP流媒体能力提供媒体服务;或客户端根据所确定的HTTP流媒体能力获取媒体服务;其中,所述HTTP流媒体能力包括:播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力;
所述客户端根据所确定的HTTP流媒体能力获取媒体服务包括:
客户端根据所确定的HTTP流媒体能力向服务器发送内容描述信息请求消息;
所述客户端根据所确定的HTTP流媒体能力向服务器发送内容描述信息请求消息包括:若客户端确定采用增强后的HTTP流媒体能力,客户端计算出内容分片在文件中的具体位置,以便客户端利用该内容分片具体位置向服务器发起播放请求;若客户端确定采用未增强的HTTP流媒体能力,服务器将基于时间的播放请求转换成对内容分片的播放请求的能力;
所述服务器根据所确定的HTTP流媒体能力提供媒体服务包括:
服务器根据所确定的HTTP流媒体能力向终端提供内容描述信息,以便所述客户端根据内容描述信息确定请求的内容。
2.根据权利要求1所述的HTTP的媒体传输方法,其特征在于,所述获取服务器和客户端所能支持的HTTP流媒体的能力信息包括:
客户端接收服务器发送的服务器所能支持HTTP流媒体的能力信息;
客户端获取自身所支持的HTTP流媒体的能力信息。
3.根据权利要求2所述的HTTP的媒体传输方法,其特征在于,所述客户端接收服务器发送的服务器所能支持HTTP流媒体的能力信息包括:客户端通过电子节目指南或业务指南获取服务器所能支持的HTTP流媒体能力信息。
4.根据权利要求2所述的HTTP的媒体传输方法,其特征在于,在客户端接收服务器发送的服务器所能支持HTTP流媒体的能力信息之前,所述获取服务器和客户端所能支持的HTTP流媒体的能力信息还包括:客户端向服务器发起HTTP流媒体的能力确定请求。
5.根据权利要求1所述的HTTP的媒体传输方法,其特征在于,所述获取服务器和客户端所能支持的HTTP流媒体的能力信息包括:
服务器接收客户端发送的客户端所能支持HTTP流媒体的能力信息,或获取第三方服务器中预存的客户端所能支持HTTP流媒体的能力信息;
服务器获取自身所支持的HTTP流媒体的能力信息。
6.根据权利要求5所述的HTTP的媒体传输方法,其特征在于,在服务器接收客户端发送的客户端所能支持HTTP流媒体的能力信息之前,所述获取服务器和客户端所能支持的HTTP流媒体的能力信息还包括:服务器向客户端发起HTTP流媒体的能力确定请求。
7.根据权利要求2至6中任意一项所述的HTTP的媒体传输方法,其特征在于,所述服务器或客户端所能支持的HTTP流媒体的能力信息通过以下方式携带:通过扩展服务器和客户端之间进行媒体传输之前的传送的现有消息携带,通过在服务器和客户端之间新增的专用消息携带,或通过属性扩展后的会话描述协议请求中携带。
8.根据权利要求1至7中任意一项所述的HTTP的媒体传输方法,其特征在于,
所述服务器所采用HTTP流媒体能力包括所有的HTTP流媒体能力;或者
所述客户端所采用HTTP流媒体能力包括所有的HTTP流媒体能力;或者
所述服务器所采用HTTP流媒体能力包括所述HTTP流媒体能力中的至少一种,所述客户端所采用的HTTP流媒体能力包括所述HTTP流媒体能力中服务器未采用的HTTP流媒体能力。
9.一种HTTP的媒体传输装置,其特征在于,包括:
第一能力获取单元,用于获取服务器和客户端所能支持的HTTP流媒体的能力信息;
第一确定单元,用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;
服务获取单元,用于根据所确定的HTTP流媒体能力获取媒体服务;其中,所述HTTP流媒体能力包括:播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力;
所述服务获取单元具体用于根据所确定的HTTP流媒体能力向服务器发送内容描述信息请求消息;所述服务获取单元具体用于若客户端确定采用增强后的HTTP流媒体能力,客户端计算出内容分片在文件中的具体位置,以便客户端利用该内容分片具体位置向服务器发起播放请求;若客户端确定采用未增强的HTTP流媒体能力,服务器将基于时间的播放请求转换成对内容分片的播放请求的能力。
10.根据权利要求9所述的HTTP的媒体传输装置,其特征在于,第一能力获取单元具体用于接收服务器发送的服务器所能支持HTTP流媒体的能力信息,并获取客户端所支持的HTTP流媒体的能力信息。
11.根据权利要求10所述的HTTP的媒体传输装置,其特征在于,所述第一能力获取单元通过电子节目指南或业务指南获取服务器所能支持的HTTP流媒体能力信息。
12.根据权利要求10所述的HTTP的媒体传输装置,其特征在于,在第一能力获取单元接收服务器发送的服务器所能支持HTTP流媒体的能力信息之前,所述第一能力获取单元还用于向服务器发起HTTP流媒体的能力确定请求。
13.一种HTTP的媒体传输装置,其特征在于,包括:
第二能力获取单元,用于获取服务器和客户端所能支持的HTTP流媒体的能力信息;
第二确定单元,用于根据获取的服务器和客户端所能支持的HTTP流媒体的能力信息确定服务器或客户端在后续媒体传输过程中所采用的HTTP流媒体能力;
服务提供单元,用于根据所确定的HTTP流媒体能力提供媒体服务;其中,所述HTTP流媒体能力包括:播放状态的控制能力、将基于时间的播放请求转换成对内容分片的播放请求的能力、进行码率适配的能力;
所述服务提供单元,具体用于根据所确定的HTTP流媒体能力向终端提供内容描述信息,所述客户端根据内容描述信息确定请求的内容。
14.根据权利要求13所述的HTTP的媒体传输装置,其特征在于,所述第二能力获取单元具体用于:接收客户端发送的客户端所能支持HTTP流媒体的能力信息,或获取第三方服务器中预存的客户端所能支持HTTP流媒体的能力信息;以及获取服务器所支持的HTTP流媒体的能力信息。
15.根据权利要求14所述的HTTP的媒体传输装置,其特征在于,在所述第二能力获取单元接收客户端发送的客户端所能支持HTTP流媒体的能力信息之前,所述第二能力获取单元还用于向客户端发起HTTP流媒体的能力确定请求。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910175674.4A CN102025760B (zh) | 2009-09-21 | 2009-09-21 | Http的媒体传输方法及装置 |
PCT/CN2010/075474 WO2011032431A1 (zh) | 2009-09-21 | 2010-07-27 | Http的媒体传输方法及装置 |
EP10816635.6A EP2429144B1 (en) | 2009-09-21 | 2010-07-27 | Method and apparatus for transmitting hyper text transport protocol (http) media |
US13/340,121 US8566395B2 (en) | 2009-09-21 | 2011-12-29 | Method and apparatus for transmitting hypertext transfer protocol media |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910175674.4A CN102025760B (zh) | 2009-09-21 | 2009-09-21 | Http的媒体传输方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102025760A CN102025760A (zh) | 2011-04-20 |
CN102025760B true CN102025760B (zh) | 2015-11-25 |
Family
ID=43758076
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910175674.4A Active CN102025760B (zh) | 2009-09-21 | 2009-09-21 | Http的媒体传输方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8566395B2 (zh) |
EP (1) | EP2429144B1 (zh) |
CN (1) | CN102025760B (zh) |
WO (1) | WO2011032431A1 (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2545706A4 (en) * | 2010-03-08 | 2013-09-11 | Samsung Electronics Co Ltd | APPARATUS AND METHOD FOR READING MULTIMEDIA CONTENT DATA |
US9451319B2 (en) * | 2010-12-17 | 2016-09-20 | Microsoft Technology Licensing, Llc | Streaming digital content with flexible remote playback |
KR20120114016A (ko) * | 2011-04-06 | 2012-10-16 | 삼성전자주식회사 | 사용자 컨텐츠를 외부 단말기에서 네트워크 적응적으로 스트리밍하는 방법 및 장치 |
CN102801690B (zh) | 2011-05-25 | 2015-09-30 | 华为技术有限公司 | 流媒体的处理方法、分发服务器、客户端及系统 |
US9473668B2 (en) * | 2011-11-01 | 2016-10-18 | Siemens Industry, Inc. | Distributed storage and processing of mail image data |
US9264481B2 (en) * | 2012-03-30 | 2016-02-16 | Qualcomm Incorporated | Responding to hypertext transfer protocol (HTTP) requests |
US9438883B2 (en) * | 2012-04-09 | 2016-09-06 | Intel Corporation | Quality of experience reporting for combined unicast-multicast/broadcast streaming of media content |
US8949206B2 (en) * | 2012-10-04 | 2015-02-03 | Ericsson Television Inc. | System and method for creating multiple versions of a descriptor file |
CN104247364B (zh) * | 2013-03-19 | 2017-05-10 | 华为技术有限公司 | 一种应用于远程桌面的视频传输方法及设备、系统 |
US9959019B1 (en) * | 2013-04-23 | 2018-05-01 | Amazon Technologies, Inc. | Customizable media player framework |
US9973559B2 (en) * | 2013-05-29 | 2018-05-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for presenting content streams to a client device |
KR20150000309A (ko) * | 2013-06-24 | 2015-01-02 | 삼성전자주식회사 | 컨텐츠를 스트리밍으로 제공하는 방법 및 장치 |
CN104349176B (zh) * | 2013-07-30 | 2017-11-10 | 中国电信股份有限公司 | 自适应流媒体系统、下载方法及流媒体服务器、用户终端 |
CN103731415A (zh) * | 2013-12-09 | 2014-04-16 | 乐视网信息技术(北京)股份有限公司 | 一种高码流数据传输方法及装置 |
CN105100172B (zh) * | 2014-05-22 | 2018-03-27 | 华为技术有限公司 | 一种http协议的缓存状态更新方法和设备、处理机 |
CN105282624A (zh) * | 2014-06-23 | 2016-01-27 | 中兴通讯股份有限公司 | 桌面云视频的播放处理方法及装置 |
US20160092037A1 (en) * | 2014-09-25 | 2016-03-31 | Osix Corporation | Computer-Implemented Methods, Computer Readable Media, And Systems For Distributed Processing |
GB201504403D0 (en) * | 2015-03-16 | 2015-04-29 | Microsoft Technology Licensing Llc | Adapting encoded bandwidth |
US10021187B2 (en) * | 2015-06-29 | 2018-07-10 | Microsoft Technology Licensing, Llc | Presenting content using decoupled presentation resources |
US10116719B1 (en) | 2016-06-03 | 2018-10-30 | Amazon Technologies, Inc. | Customized dash manifest |
US10104143B1 (en) * | 2016-06-03 | 2018-10-16 | Amazon Technologies, Inc. | Manifest segmentation |
US10432690B1 (en) | 2016-06-03 | 2019-10-01 | Amazon Technologies, Inc. | Manifest partitioning |
US20190215729A1 (en) * | 2018-03-15 | 2019-07-11 | Intel Corporation | Session description protocol mechanisms for signaling radio access network capabilities in multimedia telephony sessions |
CN110582012B (zh) * | 2018-06-11 | 2021-07-30 | 腾讯科技(深圳)有限公司 | 视频切换方法、视频处理方法、装置及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1751304A (zh) * | 2003-02-13 | 2006-03-22 | 诺基亚有限公司 | 在多媒体流中用于信号指示流质量匹配和控制机制的方法 |
CN101282339A (zh) * | 2008-05-16 | 2008-10-08 | 华为技术有限公司 | 流媒体系统的能力协商方法、数据传输方法及相关设备 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030126605A1 (en) * | 2001-12-28 | 2003-07-03 | Betz Steve Craig | Method for displaying EPG video-clip previews on demand |
WO2004072766A2 (en) * | 2003-02-13 | 2004-08-26 | Nokia Corporation | Rate adaptation method and device in multimedia streaming |
US7392316B2 (en) * | 2003-06-30 | 2008-06-24 | Microsoft Corporation | Client to server streaming of multimedia content using HTTP |
KR100601670B1 (ko) * | 2004-05-03 | 2006-07-14 | 삼성전자주식회사 | 네트워크를 통한 컨텐츠의 제어 방법, 미디어 랜더러 장치및 미디어 소오스 장치 |
CN1859561B (zh) * | 2005-11-01 | 2010-05-12 | 华为技术有限公司 | 流媒体点播系统及方法 |
CN100571143C (zh) * | 2006-12-31 | 2009-12-16 | 中国科学院声学研究所 | 跨网络下载业务的质量保证方法 |
AU2009231676B2 (en) * | 2008-04-02 | 2013-10-03 | Twilio Inc. | System and method for processing telephony sessions |
CN101478755B (zh) | 2009-01-21 | 2011-05-11 | 中兴通讯股份有限公司 | 一种网络安全的http协商的方法及其相关装置 |
US8694631B2 (en) * | 2009-08-06 | 2014-04-08 | Telefonaktiebolaget L M Ericsson (Publ) | HTTP streaming with proved service quality |
-
2009
- 2009-09-21 CN CN200910175674.4A patent/CN102025760B/zh active Active
-
2010
- 2010-07-27 EP EP10816635.6A patent/EP2429144B1/en active Active
- 2010-07-27 WO PCT/CN2010/075474 patent/WO2011032431A1/zh active Application Filing
-
2011
- 2011-12-29 US US13/340,121 patent/US8566395B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1751304A (zh) * | 2003-02-13 | 2006-03-22 | 诺基亚有限公司 | 在多媒体流中用于信号指示流质量匹配和控制机制的方法 |
CN101282339A (zh) * | 2008-05-16 | 2008-10-08 | 华为技术有限公司 | 流媒体系统的能力协商方法、数据传输方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
EP2429144A4 (en) | 2012-04-25 |
WO2011032431A1 (zh) | 2011-03-24 |
EP2429144B1 (en) | 2017-02-22 |
CN102025760A (zh) | 2011-04-20 |
US8566395B2 (en) | 2013-10-22 |
US20120096083A1 (en) | 2012-04-19 |
EP2429144A1 (en) | 2012-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102025760B (zh) | Http的媒体传输方法及装置 | |
CN101026615B (zh) | 一种基于ims的流媒体网络系统 | |
US10015437B2 (en) | Supporting transport diversity and time-shifted buffers for media streaming over a network | |
JP5365820B2 (ja) | クライアント端末、コンテンツ受信方法、およびセッション管理装置 | |
US8307049B2 (en) | Method and device for obtaining media description information of IPTV services | |
US20120023530A1 (en) | Content location method and content delivery network node | |
KR100891745B1 (ko) | 주문형 비디오 서비스 제공을 위한 프로토콜 변환 방법 및 그 장치 | |
CN102055718B (zh) | 一种在http streaming系统中实现分层请求内容的方法,装置和系统 | |
JP3922575B2 (ja) | SIPセッション制御によるCDNにおけるQoS保証方法とQoS保証システムおよび端末装置とコンテンツ配信サブシステムとSIPセッション制御サブシステムならびにプログラム | |
CN104396263A (zh) | 用于流式媒体内容的实时复用变换的方法和系统 | |
CN103813185B (zh) | 一种分段节目快速分发的方法、服务器及客户端 | |
JP2009540643A (ja) | Imsアーキテクチャ・ネットワークにおけるipサービスに渡ってテレビジョンにアクセスするためのシステム | |
CN101662658B (zh) | 节目推送方法、机顶盒及电子节目菜单 | |
CN101299748A (zh) | 在iptv业务中应用终端能力信息的方法、系统及装置 | |
US20110167441A1 (en) | An interactive iptv system and a content pushing method thereof | |
CN107925798A (zh) | 接收设备、发送设备和数据处理方法 | |
CN101674470B (zh) | 实现客户端录制的方法、系统及录制控制实体 | |
WO2008071083A1 (fr) | Procédé et dispositif pour traiter une anomalie de service | |
CN102238152B (zh) | 控制内容报告行为的方法、装置和系统 | |
CN112788348A (zh) | 一种点播方法、装置、设备、系统及存储介质 | |
CN101662654A (zh) | 基于ims的网络电视系统及该系统的实现方法和装置 | |
CN101287155B (zh) | 一种发现流媒体业务的方法和系统 | |
CN101459525B (zh) | 一种实现媒体控制的方法、系统及设备 | |
Shibeshi et al. | An RTSP proxy for implementing the IPTV media function using a streaming server | |
JP5052555B2 (ja) | メタファイル取得方法、ファイルリスト取得方法、ファイル取得方法、映像配信システムおよびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211223 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: Super fusion Digital Technology Co.,Ltd. Address before: 518129 headquarters building of Bantian HUAWEI base, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |