媒体流的发送、接收方法及装置、系统、视频中继与流程

文档序号:14267845阅读:306来源:国知局

本发明涉及通信技术领域,具体而言,涉及一种媒体流的发送、接收方法及装置、系统、视频中继。



背景技术:

基于ip多媒体子系统(ipmultimediasubsystem,简称ims)的多流架构目前已经获得多家主流运营商的高度认可。但是目前运营商也针对此架构提出一些关键的增强需求。其中最为关键的一个增强需求,就是针对中继服务器(relayserver)的媒体分级的。具体描述如下:

目前的ims多流架构,允许多方视频的场景中,根据成员数量,动态的调整单个用户的上行视频流的等级(如分辨率、码率等)。这么做,用户的上行视频流总是按照实际显示的需要提供,可以有效降低单个用户的上行带宽占用。但是这样做,还是存在一个局限性,就是所有用户所能看到的具体的一个视频流的等级是完全一样的,通俗的说就是,具体的一个视频流,要分辨率高,大家看的都会是分辨率高的;要分辨率低,大家看的都会是分辨率低的。

随着技术的发展和用户需求的提高,如有些用户用的是大屏设备(如pad或机顶盒+平板电视机),对某些流的清晰度要求会高于手机终端用户,所以他们就希望这些流的发送端能按高等级传送视频流。又比如,不同用户存在差异化的需求,某个用户可能对会议中的另一个人更关注一些,对这个用户的流的清晰度要求会高于其它用户,所以希望这个流的发送端能按高等级传送视频流。

针对相关技术中的上述技术问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明实施例提供了一种媒体流的发送、接收方法及装置、系统、视频中继,以至少解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题。

根据本发明的一个实施例,提供了一种媒体流的发送方法,包括:接收发送端发送的媒体流;其中,媒体流为发送端按照发送端接收到的等级要求编码的媒体流;按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

可选地,接收端包括:支持接收和解码分等级媒体流的第一终端。

可选地,在接收端包括多个第一终端的情况下,按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端包括:按照对应关系,将接收到的媒体流中多个第一终端对应的相同等级的媒体流复制为多份,将复制的多份相同等级的媒体流和与多个第一终端各自对应的其他等级的媒体流分别发送给多个第一终端。

可选地,在接收端还包括高级视频编码avc终端的情况下,按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端还包括:复制接收到的媒体流;将接收到的媒体流中等级最低的媒体流中的网络抽象层面nal头部修改为avc格式的nal头部;按照avc格式将修改后的等级最低的媒体流发送给avc终端。

可选地,在编码为可分层视频编解码svc编码的情况下,接收到的媒体流中的nal头部中包括:媒体流的各个等级的等级标识。

可选地,按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端包括:按照对应关系和等级标识,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

可选地,在接收发送端发送的媒体流之前,方法还包括:接收接收端发送的用于请求调整媒体流等级的第一请求信息;其中,第一请求信息中携带接收端的等级要求;建立对应关系;向发送端发送用于请求将媒体流调整为分级方式的第二请求信息,其中,第二请求信息中也携带接收端的等级要求。

可选地,接收接收端发送的用于请求调整媒体流等级的第一请求信息包括以下之一:直接接收接收端发送的第一请求信息;通过网页web服务器和应用服务器接收接收端发送的第一请求信息。

可选地,在向发送端发送用于请求将媒体流调整为分级方式的第二请求信息之后,方法还包括以下之一:发送端拒绝第二请求信息;发送端接受第二请求信息。

根据本发明的另一个实施例,提供了一种媒体流的发送系统,包括:发送端、视频中继和接收端;发送端按照发送端接收到的等级要求对媒体流进行编码,以及将编码后的媒体流发送给视频中继;视频中继接收到编码后的媒体流后,按照预先建立的媒体流的等级与接收端的对应关系,将接收到的编码后的媒体流中与接收端对应的等级的媒体流发送给接收端。

可选地,接收端包括:支持接收和解码分等级媒体流的第一终端。

可选地,视频中继还用于按照对应关系,将接收到的媒体流中多个第一终端对应的相同等级的媒体流复制为多份,将复制的多份相同等级的媒体流和与多个第一终端各自对应的其他等级的媒体流分别发送给多个第一终端。

可选地,在接收端还包括高级视频编码avc终端的情况下,视频中继还用于复制接收到的媒体流,将接收到的媒体流中等级最低的媒体流中的网络抽象层面nal头部修改为avc格式的nal头部以及按照avc格式将修改后的等级最低的媒体流发送给avc终端。

可选地,在编码为可分层视频编解码svc编码的情况下,接收到的媒体流中的nal头部中包括:媒体流的各个等级的等级标识。

可选地,视频中继还用于按照对应关系和等级标识,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

可选地,接收端还用于向视频中继发送用于请求调整媒体流等级的第一请求信息;其中,第一请求信息中携带接收端的等级要求;视频中继在接收到第一请求信息后,建立对应关系;以及向发送端发送用于请求将媒体流调整为分级方式的第二请求信息;,其中,第二请求信息中也携带接收端的等级要求。

可选地,系统还包括:网页web服务器;其中,web服务器用于向接收端提供web界面,web界面用于向web服务器提交用户选择的等级要求。

可选地,系统还包括:应用服务器,用于将提交给web服务器的等级要求发送给视频中继。

可选地,发送端还用于以下至少之一:拒绝第二请求信息;接受第二请求信息。

根据本发明的另一个实施例,提供了一种媒体流的发送装置,其特征在于,包括:接收模块,用于接收发送端发送的媒体流;其中,媒体流为发送端按照发送端接收到的等级要求编码的媒体流;发送模块,用于按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

可选地,接收端包括:支持接收和解码分等级媒体流的第一终端。

可选地,在接收端包括多个第一终端的情况下,发送模块还包括:复制单元,用于按照对应关系,将接收到的媒体流中多个第一终端对应的相同等级的媒体流复制为多份;发送单元,用于将复制的多份相同等级的媒体流和与多个第一终端各自对应的其他等级的媒体流分别发送给多个第一终端。

可选地,在接收端还包括高级视频编码avc终端的情况下,复制单元,还用于复制接收到的媒体流;发送模块还包括:修改单元,用于将接收到的媒体流中等级最低的媒体流中的网络抽象层面nal头部修改为avc格式的nal头部;发送单元,还用于按照avc格式将修改后的等级最低的媒体流发送给avc终端。

可选地,在编码为可分层视频编解码svc编码的情况下,接收到的媒体流中的nal头部中包括:媒体流的各个等级的等级标识。

可选地,发送模块,还用于按照对应关系和等级标识,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

可选地,接收模块还用于接收接收端发送的用于请求调整媒体流等级的第一请求信息;其中,第一请求信息中携带接收端的等级要求;装置还包括:建立模块,用于建立对应关系;发送模块,还用于向发送端发送用于请求将媒体流调整为分级方式的第二请求信息,其中,第二请求信息中也携带接收端的等级要求。

可选地,接收模块还用于以下之一:直接接收接收端发送的第一请求信息;通过网页web服务器和应用服务器接收接收端发送的第一请求信息。

根据本发明的另一个实施例,提供了一种视频中继,包括上述的媒体流的发送装置。

根据本发明的另一个实施例,提供了一种媒体流的发送方法,包括:通过视频中继接收接收端的等级要求;按照所述等级要求对媒体流进行编码;将编码后的媒体流发送给所述视频中继。

可选地,通过视频中继接收接收端的等级要求包括:接收所述视频中继发送的用于请求将媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述接收端的等级要求。

可选地,接收所述视频中继发送的用于请求将媒体流调整为分级方式的请求信息之后,所述方法还包括以下之一:拒绝所述请求信息;接受所述请求信息。

可选地,按照所述等级要求对媒体流进行编码包括:按照所述等级要求对媒体流进行svc编码;其中,svc编码后的媒体流中的nal头部中包括:所述媒体流的各个等级的等级标识。

根据本发明的另一个实施例,提供了一种媒体流的发送装置,包括:接收模块,用于通过视频中继接收接收端的等级要求;编码模块,用于按照所述等级要求对媒体流进行编码;发送模块,用于将编码后的媒体流发送给所述视频中继。

可选地,所述接收模块,还用于接收所述视频中继发送的用于请求将媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述接收端的等级要求。

可选地,所述编码模块,还用于按照所述等级要求对媒体流进行svc编码;其中,svc编码后的媒体流中的nal头部中包括:所述媒体流的各个等级的等级标识。

根据本发明的另一个实施例,提供了一种媒体流的接收方法,包括:通过视频中继向发送端发送等级要求;其中,所述等级要求用于所述发送端对媒体流进行编码;通过所述视频中继接收与接收端对应的等级的媒体流。

可选地,通过视频中继向发送端发送等级要求包括:通过所述视频中继向所述发送端发送用于请求将所述媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述等级要求。

可选地,所述编码为可分层视频编解码svc编码。

可选地,在通过视频中继向发送端发送等级要求之前,所述方法还包括:向网页web服务器请求web界面,其中,所述web界面用于向所述web服务器提交用户选择的所述等级要求。

根据本发明的另一个实施例,提供了一种媒体流的接收装置,包括:发送模块,用于通过视频中继向发送端发送等级要求;其中,所述等级要求用于所述发送端对媒体流进行编码;接收模块,用于通过所述视频中继接收与接收端对应的等级的媒体流。

可选地,所述发送模块,还用于通过所述视频中继向所述发送端发送用于请求将所述媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述等级要求。

可选地,所述编码为可分层视频编解码svc编码。

可选地,所述装置还包括:请求模块,用于向网页web服务器请求web界面,其中,所述web界面用于向所述web服务器提交用户选择的所述等级要求。

根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:接收发送端发送的媒体流;其中,媒体流为发送端按照发送端接收到的等级要求编码的媒体流;按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:通过视频中继接收接收端的等级要求;按照所述等级要求对媒体流进行编码;将编码后的媒体流发送给所述视频中继。

根据本发明的又一个实施例,还提供了一种存储介质。该存储介质设置为存储用于执行以下步骤的程序代码:通过视频中继向发送端发送等级要求;其中,所述等级要求用于所述发送端对媒体流进行编码;通过所述视频中继接收与接收端对应的等级的媒体流。

通过本发明,由于媒体流按照接收端的等级要求进行了编码,使得可以根据媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端,可以使得不同的接收端所接收到的媒体流的等级不同,因而使得不同用户观看到的视频流的等级不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明优选实施例提供的流媒体分级的relay架构的结构框图;

图2是根据本发明优选实施例提供的web化控制的媒体流分级的relay架构的结构框图;

图3是根据本发明实施例提供的媒体流的发送方法的流程图;

图4是根据本发明实施例提供的媒体流的发送方法的流程示意图;

图5是根据本发明实施例提供的媒体流的接收方法的流程示意图;

图6是根据本发明优选实施例提供的媒体流分级的relay处理流程的示意图一;

图7是根据本发明优选实施例提供的媒体流分级的relay处理流程的示意图二;

图8是根据本发明优选实施例提供的基于svc技术的媒体流分级的relay处理流程的示意图一;

图9是根据本发明优选实施例提供的基于svc技术的媒体流分级的relay处理流程的示意图二;

图10是根据本发明优选实施例提供的媒体流分级协商流程的示意图一;

图11是根据本发明优选实施例提供的web化控制的媒体流分级协商流程的示意图;

图12是根据本发明优选实施例提供的视频源不支持媒体流分级的处理流程的示意图;

图13是根据本发明优选实施例提供的sbc进行媒体流分级转码的处理流程的示意图;

图14是根据本发明实施例提供的媒体流的发送装置的结构框图一;

图15是根据本发明实施例提供的媒体流的发送装置的结构框图二;

图16是根据本发明实施例提供的一种媒体流的接收装置的结构框图;

图17是根据本发明实施例提供的媒体流的发送系统的结构框图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。

实施例1

本申请实施例可以运行于图1或图2所示的网络架构上,如图1或2所示,该网络架构包括:a类终端、视频中继、b类终端和/或c类终端,其中,a类终端与b类终端和/或c类终端之间通过视频中继进行交互,或者a类终端与b类终端和/或c类终端之间通过视频中继、web服务器和应用服务器进行交互。

在本实施例中提供了一种运行于上述网络架构的媒体流的发送方法,图3是根据本发明实施例提供的媒体流的发送方法的流程图,如图3所示,该流程包括如下步骤:

步骤s302,接收发送端发送的媒体流;其中,媒体流为发送端按照发送端接收到的等级要求编码的媒体流;

步骤s304,按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

通过上述步骤,由于媒体流按照接收端的等级要求进行了编码,根据媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端,可以使得不同的接收端所接收到的媒体流的等级不同,因而使得不同用户观看到的视频流的等级不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

需要说明的是,上述等级可以是媒体流的分辨率的等级或者媒体流的码率的等级,但并不限于此,比如在为分辨率的等级的情况下,可以将等级分为高清、标清,流畅等,但并不限于此。

在本发明的一个实施例中,上述接收端可以包括:支持接收和解码分等级媒体流的第一终端。上述发送端可以是支持分级编码协商、分级视频编码并发送的终端。需要说明的是,一般该接收端可以不具有发送端的能力,发送端可以具有接收端的能力。

需要说明的是,上述对媒体流进行编码可以通过层级间依赖的方式进行编码,比如等级1为最低等级,等级2为高一级的等级,而完整的等级2的媒体流包括等级1和等级2两部分媒体流,因而,在接收端对应的等级(接收端的等级要求为等级2)的情况下,上述步骤s304可以表现为:将等级1和等级2对应的媒体流(即完整的等级2的媒体流)都发送给该接收端。但并不限于上述编码方式,比如svc编码。

在本发明的一个实施例中,在接收端包括多个第一终端的情况下,上述步骤s304可以表现为:按照对应关系,将接收到的媒体流中多个第一终端对应的相同等级的媒体流复制为多份,将复制的多份相同等级的媒体流和与多个第一终端各自对应的其他等级的媒体流分别发送给多个第一终端。

以下举例说明,比如上述第一终端包括两个,分别为终端1和终端2,而终端1的等级要求为等级2,终端2的等级要求为等级3,那么基于上述层级间依赖的方式进行编码,则终端1对应的等级为等级1和等级2,终端2对应的等级为等级1、等级2和等级3,则两者相同的等级为等级1和等级2,则将等级1和等级2对应的媒体流复制为两份,将复制的一份等级1和等级2对应的媒体流发送给终端1,将另一份等级1和等级2对应的媒体流和等级3对应的媒体流一起发送给终端2。

在本发明的一个实施例中,在上述接收端还可以包括高级视频编码avc终端的情况下,上述步骤s304还可以包括:复制接收到的媒体流;将接收到的媒体流中等级最低的媒体流中的网络抽象层面nal头部修改为avc格式的nal头部;按照avc格式将修改后的等级最低的媒体流发送给avc终端。

需要说明的是,上述接收到的媒体流中等级最低的媒体流中的数据块部分可以不变,仅仅修改了nal头部,使得媒体流中的最低等级是与avc完全兼容的,即只需要将nal修改,传统的avc终端则可以解码该媒体流。

需要说明的是,上述步骤s304中将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端可以通过实时传输协议(real-timetransportprotocol,简称rtp)发送给接收端。

在本发明的一个实施例中,在编码为可分层视频编解码svc编码的情况下,接收到的媒体流中的nal头部中包括:媒体流的各个等级的等级标识。因而,可以通过该等级标识将媒体流进行分发,具体的,在本发明的一个实施例中,上述步骤s304可以表现为:按照对应关系和等级标识,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

在本发明的一个实施例中,在上述步骤s302之前,上述方法还可以包括:接收接收端发送的用于请求调整媒体流等级的第一请求信息;其中,第一请求信息中携带接收端的等级要求;建立对应关系;向发送端发送用于请求将媒体流调整为分级方式的第二请求信息,其中,第二请求信息中也携带接收端的等级要求。

需要说明的是:接收接收端发送的用于请求调整媒体流等级的第一请求信息包括以下之一:直接接收接收端发送的第一请求信息;通过网页web服务器和应用服务器接收接收端发送的第一请求信息。

需要说明的是,上述接收端可以从web服务器中下载web界面,用户可在web界面上选择该等级要求,触发上述第一请求信息,该第一请求信息中包括选择的等级要求,然后上报给web服务器,然后再通过应用服务器来获取该第一请求信息。

在本发明的一个实施例中,在向发送端发送用于请求将媒体流调整为分级方式的第二请求信息之后,上述方法还可以包括以下之一:发送端拒绝第二请求信息;发送端接受第二请求信息。

通过上述发送端和接收端的协商过程,可以实现发送端按照接收端的需要进行具体的分级,进而可以实现某一个媒体流,对于不同的接收端,可以采用不同的媒体等级呈现。

可选地,上述步骤的执行主体可以为视频中继等,但不限于此。

本实施例中还提供了一种媒体流的发送方法,图4是根据本发明实施例提供的媒体流的发送方法的流程示意图,如图4所示,包括:

步骤s402,通过视频中继接收接收端的等级要求;

步骤s404,按照所述等级要求对媒体流进行编码;

步骤s406,将编码后的媒体流发送给所述视频中继。

通过上述步骤,根据接收端的等级要求对媒体流进行编码,将编码后的媒体流发送给视频中继,进而可以使得接收端有可能通过视频中继来得到接收端本身需要的等级要求的媒体流,进而可以实现不同的接收端可以采用不同的视频等级来实现,因而使得不同用户观看到的视频流的等级可以不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

在本发明的一个实施例中,上述步骤s402可以表现为:接收所述视频中继发送的用于请求将媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述接收端的等级要求。即可以通过请求信息的方式来接收接收端的等级要求。

通过上述步骤,可以按照接收端的需要进行具体的分级,进而可以实现某一个媒体流,对于不同的接收端,可以采用不同的媒体等级呈现。

在本发明的一个实施例中,上述步骤s404可以表现为:按照所述等级要求对媒体流进行svc编码;其中,svc编码后的媒体流中的nal头部中包括:所述媒体流的各个等级的等级标识。

需要说明的是,在上述步骤s402之后,上述方法还可以包括:拒绝所述请求信息;接受所述请求信息。

需要说明的是,在接受所述请求信息的情况下,可以执行上述步骤s404,在拒绝上述请求信息的情况下,可以不执行步骤s404,但并不限于此。

需要说明的是,上述步骤s406可以表现为将编码后的媒体流通过rtp发送给所述视频中继,但并不限于此。

需要说明的是,上述图4所示的实施例的方法的执行主体可以是发送端,比如上述图1或图2所述的a类终端,但并不限于此。

本实施例中还提供了一种媒体流的接收方法,图5是根据本发明实施例提供的媒体流的接收方法的流程示意图,如图5所示,包括:

步骤s502,通过视频中继向发送端发送等级要求;其中,所述等级要求用于所述发送端对媒体流进行编码;

步骤s504,通过所述视频中继接收与接收端对应的等级的媒体流。

通过上述步骤,通过向发送端发送等级要求;其中,等级要求用于所述发送端对媒体流进行编码;使得发送端可以根据接收端的等级要求对媒体流进行编码,将编码后的媒体流发送给视频中继,进而可以使得接收端有可能通过视频中继来得到接收端本身需要的等级要求的媒体流,进而可以实现不同的接收端可以采用不同的视频等级来实现,因而使得不同用户观看到的视频流的等级可以不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

需要说明的是,上述步骤s502可以表现为:通过所述视频中继向所述发送端发送用于请求将所述媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述等级要求。

需要说明的是,上述编码可以为可分层视频编解码svc编码,但并不限于此。

在本发明的一个实施例中,在上述步骤s502之前,上述方法还可以包括:向网页web服务器请求web界面,其中,所述web界面用于向所述web服务器提交用户选择的所述等级要求。

需要说明的是,上述图5所示的实施例的方法的执行主体可以是接收端,比如上述图1或图2所述的b类终端,但并不限于此。

需要说明的是,上述图4所示的方法和图5所示的方法实际上都是发送端与接收端进行媒体流分级协商的流程。

为了更好地理解本发明,以下结合优选的实施例对本发明做进一步解释。

本发明优选实施例提供了一种媒体流的发送方法,其中,图6是根据本发明优选实施例提供的媒体流分级的relay处理流程的示意图一,如图6所示,包括:

1,ue_a为视频源,为支持媒体流分级发送的ue,ue_a之前通过其它操作(下文其它实施例会描述),已经建立视频流需要的编码分级的等级,具体为需要按几个等级编码,每个等级的视频等级定义(如分辨率、码率、帧速率、视频质量等);

2,videorelay为支持媒体流分级的relayserver,videorelay之前通过其它操作(下文其它实施例会描述),已经建立视频流的分级分发关系,具体为某一个分级视频流(如ue_a发出的分级视频流),其中某个等级需要转发到哪些接收端(ue);

3,ue_a按具体的分级等级要求编码;

4,ue_a将分级视频流通过rtp发送到videorelay;

5,videorelay按照ue_a的视频流的分发关系复制(如对多个接收端对某个等级的rtp流都提出需求)、分发。当有多个视频源时,videorelay需要对每个视频源建立分发关系,如果这些视频源中有分级视频流(如ue_a的视频流),则对应的分发关系需要是分级分发关系;

6,如ue_b1在分发关系中,是等级1,则videorelay将从ue_a接受的视频流中的等级1的部分发送到ue_b1;

7,如ue_b2在分发关系中,是等级2,则videorelay将从ue_a接受的视频流中的等级2的部分发送到ue_b12;

8,如ue_b3在分发关系中,是等级3,则videorelay将从ue_a接受的视频流中的等级3的部分发送到ue_b3;

备注:步骤1、2是前置条件,在时序上可以互换,后续步骤并不依赖于步骤1、2发生的时序,而是依赖于步骤1、2已经发生。

备注:如果分级视频是按层级间依赖的方式编码的,如等级1为最低等级,等级2为高一级的等级(以等级1为基础,等级2的为补充部分),则完整的等级2的视频流包括等级1和等级2两部分视频流;同理完整的等级3的视频流包括等级1、等级2和等级3三部分视频流。所以此时转给ue_b2的分级视频流,应该是包括等级1和等级2两部分。

备注:ue_a在编码时,分级视频的分级关系,以及分级内的视频内容(networkabstractionlayer数据)与rtp的序列编号是无关的,所以videorelay不需要对rtp包内的数据进行修改,直接转发。ue_b(包括ue_b1、ue_b2、ue_b3)在解码时,也不依赖于rtp的序列编号,而是根据分级内的视频内容(networkabstractionlayer数据)进行解码。

图7是根据本发明优选实施例提供的媒体流分级的relay处理流程的示意图二,该流程兼容avc类型终端,包括:

1,ue_a为视频源,为支持媒体流分级发送的ue,ue_a之前通过其它操作(下文其它实施例会描述),已经建立视频流需要的编码分级的等级,具体为需要按几个等级编码,每个等级的视频等级定义(如分辨率、码率、帧速度、视频质量等);

2,videorelay为支持媒体流分级的relayserver,videorelay之前通过其它操作(下文其它实施例会描述),已经建立视频流的分级分发关系,具体为某一个分级视频流(如ue_a发出的分级视频流),其中某个等级需要转发到哪些接收端(ue);

3,ue_a按具体的分级等级要求编码;

4,ue_a将分级视频流通过rtp发送到videorelay;

5,videorelay按照ue_a的视频流的分发关系分发。当有多个视频源时,videorelay需要对每个视频源建立分发关系,如果这些视频源中有分级视频流(如ue_a的视频流),则对应的分发关系需要是分级分发关系;

6,videorelay根据分发关系,将某个等级的rtp复制、分发到ue_b;

7,videorelay根据分发关系,需要将流复制、分发到传统的avc终端(如ue_c),则videorelay需要将最低等级(等级1)的rtp流进行预处理,具体的处理为,将视频流的分等级的nal头部(networkabstractionlayerunitheader)修改为avc格式的nal头部;

8,videorelay按照avc格式,将rtp流发送到ue_c;

备注:分级视频流的最低等级(等级1)的vcl(videocodinglayer)与avc是完全兼容的。所以只需要将nal修改,则传统avc终端则可以解码该rtp流。

图8是根据本发明优选实施例提供的基于svc技术的媒体流分级的relay处理流程的示意图一,典型的分级视频编码,为rfc6190定义的svc技术。该流程包括:

1,ue_a为视频源,为支持媒体流分级发送的ue,ue_a之前通过其它操作(下文其它实施例会描述),已经建立视频流需要的编码分级的等级,具体为需要按几个等级编码,每个等级的视频等级定义(如分辨率、码率、帧速度、视频质量等);

2,videorelay为支持媒体流分级的relayserver,videorelay之前通过其它操作(下文其它实施例会描述),已经建立视频流的分级分发关系,具体为某一个分级视频流(如ue_a发出的分级视频流),其中某个等级需要转发到哪些接收端(ue);

3,ue_a按具体的svc分级等级要求编码;

4,ue_a将svc分级视频流通过rtp发送到videorelay;

5,videorelay按照ue_a的视频流的分发关系复制(如对多个接收端对某个等级的rtp流都提出需求)、分发。当有多个视频源时,videorelay需要对每个视频源建立分发关系,如果这些视频源中有分级视频流(如ue_a的视频流),则对应的分发关系需要是分级分发关系;对于svc编码,在nal头部中扩展了视频分级的标识,videorelay可以根据此标识进行分发。

6,如ue_b1在分发关系中,是等级1,则videorelay将从ue_a接受的视频流中的等级1的部分发送到ue_b1;

7,如ue_b2在分发关系中,是等级2,则videorelay将从ue_a接受的视频流中的等级2的部分发送到ue_b12;

8,如ue_b3在分发关系中,是等级3,则videorelay将从ue_a接受的视频流中的等级3的部分发送到ue_b3;

备注:svc技术只是定义了编码的分级,即一次编码可以等到源视频的多个等级的版本,在后续使用中,如果需要不同的等级的版本,不需要转码。但是svc并没有定义videorelay的分发机制,更没有定义如何在复杂的分发环境中,由接收端与视频源进行视频等级的协商,以及videorelay根据这些协商结果,进行精确的分级转发。这是本发明与svc技术最大的区别特征。

图9是根据本发明优选实施例提供的基于svc技术的媒体流分级的relay处理流程的示意图二,该流程兼容avc类型终端,该流程包括:

1,ue_a为视频源,为支持媒体流分级发送的ue,ue_a之前通过其它操作(下文其它实施例会描述),已经建立视频流需要的编码分级的等级,具体为需要按几个等级编码,每个等级的视频等级定义(如分辨率、码率、帧速度、视频质量等);

2,videorelay为支持媒体流分级的relayserver,videorelay之前通过其它操作(下文其它实施例会描述),已经建立视频流的分级分发关系,具体为某一个分级视频流(如ue_a发出的分级视频流),其中某个等级需要转发到哪些接收端(ue);

3,ue_a按具体的svc分级等级要求编码;

4,ue_a将svc分级视频流通过rtp发送到videorelay;

5,videorelay按照ue_a的视频流的分发关系分发。当有多个视频源时,videorelay需要对每个视频源建立分发关系,如果这些视频源中有分级视频流(如ue_a的视频流),则对应的分发关系需要是分级分发关系;

6,videorelay根据分发关系,将某个等级的rtp复制、分发到ue_b;

7,videorelay根据分发关系,需要将流复制、分发到传统的avc终端(如ue_c),则videorelay需要将最低等级(等级1)的rtp流进行预处理,具体的处理为,将视频流的分等级的nal头部(networkabstractionlayerunitheader)修改为avc格式的nal头部;videorelay按照avc格式,将rtp流发送到ue_c;

8,videorelay按照avc格式,将rtp流发送到ue_c。

图10是根据本发明优选实施例提供的媒体流分级协商流程的示意图一,该流程包括:

1,当前视频源(ue_a)按照固定等级的视频,如avc发送。此时ue_b1对视频提出不同等级要求,通过rtcp协议,在带内发送调整视频等级请求;

2,因为有接收端提出不同的视频等级要求,videorelay则需要建立分级分发关系

3,videorelay通过rtcp协议向视频源(ue_a)在带内发送调整视频等级请求;

4,ue_a根据请求,建立编码分级的等级;

5,目前为两个等级,ue_a按两个等级编码,并由videorelay转发;

6,此时ue_b2也提出等级要求,通过rtcp协议,在带内发送调整视频等级请求;

7,videorelay根据收到的请求,修改分级分发关系;

8,videorelay通过rtcp协议向视频源(ue_a)在带内发送调整视频等级请求;

9,ue_a根据请求,修改编码分级的等级;

10,目前为三个等级,ue_a按三个等级编码,并由videorelay转发。

备注:如果第6步中,ue_b2提出的视频等级要求并不是第三个等级,而是与ue_b1相同的等级,则videorelay只需要修改分级转发关系,将第2等级的也转发到ue_b2即可。并不需要向ue_a发送第三个等级的要求。

图11是根据本发明优选实施例提供的web化控制的媒体流分级协商流程的示意图:

如果终端形式是web化的,则可以提出一种更为便捷的媒体流分级协商流程。

该流程包括:

1,ue_a注册时,在注册消息中携带其视频分级能力等级,即ue_a可以按几个等级进行视频分级编码,以及具体每个等级的视频等级定义(如分辨率、码率、帧速率、视频质量等),这类信息由as记录;

2,webserver通过as开放的能力接口,向as查询ue_a的视频能力等级,具体可以通过http协议的get请求;

3,as返回结果,具体可以通过http协议的200ok响应;

4,ue_b1接入整个多流业务场景(如视频会议),且ue_b1使用web化的界面,则ue_b1向webserver请求web应用(webapp)的页面,具体可以通过http协议的get请求;

5,webserver返回页面,具体可以通过http协议的200ok响应;在web页面上,会有ue_a的视频流对应的<video>标签,在此视频界面上,可以悬浮呈现此视频的能力等级(如标清、高清、超清等);

6,ue_b2请求页面,同ue_b1;

7,返回页面,同与ue_b1的交互;

8,ue_c请求页面,同ue_b1;

9,返回页面,同与ue_b1的交互;ue_c为avc终端能力,在此视频界面上,不呈现此视频的能力等级;

10,ue_b1的用户通过web界面的操作,修改视频等级(如从标清改为高清);

11,ue_b1向webserver提交修改请求,具体可以通过http协议的put请求;

12,webserver返回响应,具体可以是200ok;

13,webserver通过as开放的能力接口,向as请求某个接受端(ue_b1)对视频分级的设定,具体可以通过http协议的put请求;

14,as返回响应,具体可以是200ok;

15,as通过媒体控制接口,控制videorelay修改分级设定(如果之前该视频流没有分级,就是创建分级设定)及分发关系,具体可以通过info消息,携带xml控制结构;

16,videorelay回200ok;

17,因为之前该视频流没有分级,videorelay创建分级分发关系;

18,videorelay通过rtcp协议,带内发送分级请求;

19,ue_a根据请求,建立编码分级的等级;

20,目前为两个等级,ue_a按两个等级编码,并由videorelay转发;

21,ue_b2的用户通过web界面的操作,修改视频等级(如从标清改为高清);

22,ue_b2向webserver提交修改请求,具体可以通过http协议的put请求;

23,webserver返回响应,具体可以是200ok;

24,webserver通过as开放的能力接口,向as请求某个接受端(ue_b2)对视频分级的设定,具体可以通过http协议的put请求;

25,as返回响应,具体可以是200ok;

26,as通过媒体控制接口,控制videorelay修改分级设定及分发关系,具体可以通过info消息,携带xml控制结构;

27,videorelay回200ok;

28,videorelay修改分级分发关系;

29,videorelay通过rtcp协议,带内发送分级请求;

30,ue_a根据请求,修改编码分级的等级;

31,目前为三个等级,ue_a按三个等级编码,并由videorelay转发;

图12是根据本发明优选实施例提供的视频源不支持媒体流分级的处理流程的示意图,视频源ue_a为c类终端,及不支持分级的终端,其中,流程包括:

1,ue_b1通过rtcp协议,带内发送分级请求;

2,因为ue_a不支持分级视频,videorelay拒绝;

3,ue_a继续按avc编码,videorelay继续按avc复制、分发。

备注:videorelay获取ue_a不支持分级视频的信息的方式,可以通过向ue_a发送转发分级请求被拒绝/没有响应,或通过as指示。

图13是根据本发明优选实施例提供的sbc进行媒体流分级转码的处理流程的示意图,如图13所示,该流程包括:

1,ue_b1通过rtcp协议,带内发送分级请求;

2,videorelay创建分级分发关系;

3,videorelay向ue_a侧通过rtcp协议,带内发送分级请求,先发送到sbc;

4,sbc根据请求,建立编码分级的等级;

5,sbc向ue_a通过rtcp协议,带内发送调整视频等级请求(avc兼容的请求),sbc按分级中的最高等级要求;

6,ue_a按新等级要求编码;

7,ue_a发送新等级的rtp流;

8,sbc将高等级的avc流转码为分级流形式,如svc;

9,sbc发送分级流到videorelay;

10,videorelay按分级分发关系分发;

11,等级2的发送到ue_b1;

12,等级1的发送到ue_b2。

需要说明的是,上述ue_a或者视频源都可以认为是发送端,上述ue_b和/或ue_c都可以认为接收端。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

在本实施例中还提供了一种媒体流的发送装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图14是根据本发明实施例提供的媒体流的发送装置的结构框图一,如图14所示,该装置包括:

接收模块1402,用于接收发送端发送的媒体流;其中,媒体流为发送端按照发送端接收到的等级要求编码的媒体流;

发送模块1404,与上述接收模块1402连接,用于按照预先建立的媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

通过上述装置,由于媒体流按照接收端的等级要求进行了编码,因而上述装置可以根据媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端,可以使得不同的接收端所接收到的媒体流的等级不同,因而使得不同用户观看到的视频流的等级不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

需要说明的是,上述等级可以是媒体流的分辨率的等级或者媒体流的码率的等级,但并不限于此,比如在为分辨率的等级的情况下,可以将等级分为高清、标清,流畅等,但并不限于此。

在本发明的一个实施例中,上述接收端可以包括:支持接收和解码分等级媒体流的第一终端。上述发送端可以是支持分级编码协商、分级视频编码并发送的终端。需要说明的是,一般该接收端可以不具有发送端的能力,发送端可以具有接收端的能力。

需要说明的是,上述媒体流的编码为层级间依赖的方式的编码,比如等级1为最低等级,等级2为高一级的等级,而完整的等级2的媒体流包括等级1和等级2两部分媒体流,因而,在接收端对应的等级(接收端的等级要求为等级2)的情况下,上述发送模块1304可以将等级1和等级2对应的媒体流(即完整的等级2的媒体流)都发送给该接收端。但并不限于上述编码方式,比如svc编码。

在本发明的一个实施例中,在接收端包括多个第一终端的情况下,上述发送模块1404还可以包括:复制单元,用于按照对应关系,将接收到的媒体流中多个第一终端对应的相同等级的媒体流复制为多份;发送单元,与上述复制单元连接,用于将复制的多份相同等级的媒体流和与多个第一终端各自对应的其他等级的媒体流分别发送给多个第一终端。

以下举例说明,比如上述第一终端包括两个,分别为终端1和终端2,而终端1的等级要求为等级2,终端2的等级要求为等级3,那么基于上述层级间依赖的方式进行编码,则终端1对应的等级为等级1和等级2,终端2对应的等级为等级1、等级2和等级3,则两者相同的等级为等级1和等级2,则复制单元将等级1和等级2对应的媒体流复制为两份,发送单元将复制的一份等级1和等级2对应的媒体流发送给终端1以及将另一份等级1和等级2对应的媒体流和等级3对应的媒体流一起发送给终端2。

在本发明的一个实施例中,在上述接收端还包括高级视频编码avc终端的情况下,上述复制单元,还用于复制接收到的媒体流;上述发送模块1404还包括:修改单元,与上述复制单元连接,用于将接收到的媒体流中等级最低的媒体流中的网络抽象层面nal头部修改为avc格式的nal头部;上述发送单元,还可以用于按照avc格式将修改后的等级最低的媒体流发送给avc终端。

需要说明的是,上述接收到的媒体流中等级最低的媒体流中的数据块部分可以不变,仅仅修改了nal头部,使得媒体流中的最低等级是与avc完全兼容的,即只需要将nal修改,传统的avc终端则可以解码该媒体流。

需要说明的是,上述发送模块1404可以通过实时传输协议(real-timetransportprotocol,简称rtp)将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端发送给接收端。

在本发明的一个实施例中,在编码为可分层视频编解码svc编码的情况下,接收到的媒体流中的nal头部中包括:媒体流的各个等级的等级标识。因而,可以通过该等级标识将媒体流进行分发,具体的,在本发明的一个实施例中,上述发送模块1404,还可以用于按照对应关系和等级标识,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端。

在本发明的一个实施例中,上述接收模块1402还可以用于接收接收端发送的用于请求调整媒体流等级的第一请求信息;其中,第一请求信息中携带接收端的等级要求;装置还包括:建立模块,与上述接收模块1402连接,用于建立对应关系;发送模块1404,还可以用于向发送端发送用于请求将媒体流调整为分级方式的第二请求信息,其中,第二请求信息中也携带接收端的等级要求。

需要说明的是,上述接收模块1404还可以用于以下之一:直接接收接收端发送的第一请求信息;通过网页web服务器和应用服务器接收接收端发送的第一请求信息。

需要说明的是,上述接收端可以从web服务器中下载web界面,用户可在web界面上选择该等级要求,触发上述第一请求信息,该第一请求信息中包括选择的等级要求,然后上报给web服务器,然后再通过应用服务器来获取该第一请求信息。

通过接收模块1402和发送模块1404实现了上述发送端和接收端的协商过程,进而可以实现发送端按照接收端的需要进行具体的分级,进而可以实现某一个媒体流,对于不同的接收端,可以采用不同的媒体等级呈现。

在本发明实施例中,还提供了一种视频中继,包括上述实施例中的媒体流的发送装置。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

实施例3

本实施例中提供了一种媒体流的发送装置,图15是根据本发明实施例提供的一种媒体流的发送装置的结构框图二,如图15所示,该装置包括:

接收模块1502,用于通过视频中继接收接收端的等级要求;

编码模块1504,与接收模块1502连接,用于按照所述等级要求对媒体流进行编码;

发送模块1506,与编码模块1504连接,用于将编码后的媒体流发送给所述视频中继。

通过上述装置,可以根据接收端的等级要求对媒体流进行编码,将编码后的媒体流发送给视频中继,进而可以使得接收端有可能通过视频中继来得到接收端本身需要的等级要求的媒体流,进而可以实现不同的接收端可以采用不同的视频等级来实现,因而使得不同用户观看到的视频流的等级可以不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

在本发明的一个实施例中,上述接收模块1502还用于接收所述视频中继发送的用于请求将媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述接收端的等级要求。即可以通过请求信息的方式来接收接收端的等级要求。

通过上述装置,可以按照接收端的需要进行具体的分级,进而可以实现某一个媒体流,对于不同的接收端,可以采用不同的媒体等级呈现。

在本发明的一个实施例中,上述编码模块1504,还可以用于按照所述等级要求对媒体流进行svc编码;其中,svc编码后的媒体流中的nal头部中包括:所述媒体流的各个等级的等级标识。

需要说明的是,上述装置还包括:处理模块,与上述接收模块1502连接,用于拒绝或者接受所述请求信息。

需要说明的是,上述发送模块1506还可以将编码后的媒体流通过rtp发送给所述视频中继,但并不限于此。

需要说明的是,上述装置可以位于发送端,比如图1或图2所示的a类终端中,但并不限于此。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

本实施例中提供了一种媒体流的接收装置,图16是根据本发明实施例提供的一种媒体流的接收装置的结构框图,如图16所示,该装置包括:

发送模块1602,用于通过视频中继向发送端发送等级要求;其中,所述等级要求用于所述发送端对媒体流进行编码;

接收模块1604,与上述发送模块1602连接,用于通过所述视频中继接收与接收端对应的等级的媒体流。

通过上述装置,通过向发送端发送等级要求;其中,等级要求用于所述发送端对媒体流进行编码;使得发送端可以根据接收端的等级要求对媒体流进行编码,将编码后的媒体流发送给视频中继,进而可以使得接收端有可能通过视频中继来得到接收端本身需要的等级要求的媒体流,进而可以实现不同的接收端可以采用不同的视频等级来实现,因而使得不同用户观看到的视频流的等级可以不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

需要说明的是,上述发送模块1602,还可以用于通过所述视频中继向所述发送端发送用于请求将所述媒体流调整为分级方式的请求信息;其中,所述请求信息中携带所述等级要求。

需要说明的是,上述编码可以为可分层视频编解码svc编码,但并不限于此。

在本发明的一个实施例中,上述述装置还可以包括:请求模块,与上述发送模块1602连接,用于向网页web服务器请求web界面,其中,所述web界面用于向所述web服务器提交用户选择的所述等级要求。

需要说明的是,上述装置可以位于接收端,比如图1或图2所示的b类终端中,但并不限于此。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

实施例4

本发明实施例还提供了一种媒体流的发送系统,图17是根据本发明实施例提供的媒体流的发送系统的结构框图,如图17所示,该系统包括:发送端1702、视频中继1704和接收端1706;

发送端1702按照发送端1702接收到的等级要求对媒体流进行编码,以及将编码后的媒体流发送给视频中继1704;视频中继1704接收到编码后的媒体流后,按照预先建立的媒体流的等级与接收端的对应关系,将接收到的编码后的媒体流中与接收端1706对应的等级的媒体流发送给接收端1706。

通过上述系统,由于媒体流按照接收端的等级要求进行了编码,因而上述系统可以根据媒体流的等级与接收端的对应关系,将接收到的媒体流中与接收端对应的等级的媒体流发送给接收端,可以使得不同的接收端所接收到的媒体流的等级不同,因而使得不同用户观看到的视频流的等级不同,因此,可以解决相关技术中的ims的多流架构中所有用户能看到的视频流的等级完全相同而导致用户体验度低的问题,提高了用户的体验度。

需要说明的是,上述等级可以是媒体流的分辨率的等级或者媒体流的码率的等级,但并不限于此,比如在为分辨率的等级的情况下,可以将等级分为高清、标清,流畅等,但并不限于此。

在本发明的一个实施例中,上述接收端1706可以包括:支持接收和解码分等级媒体流的第一终端。上述发送端1702可以是支持分级编码协商、分级视频编码并发送的终端。需要说明的是,一般该接收端1706可以不具有发送端1702的能力,发送端1702可以具有接收端1706的能力。

需要说明的是,上述媒体流的编码为层级间依赖的方式的编码,比如等级1为最低等级,等级2为高一级的等级,而完整的等级2的媒体流包括等级1和等级2两部分媒体流,因而,在接收端对应的等级(接收端的等级要求为等级2)的情况下,上述视频中继1504可以将等级1和等级2对应的媒体流(即完整的等级2的媒体流)都发送给该接收端1506。但并不限于上述编码方式,比如svc编码。

在本发明的一个实施例中,上述接收端1706包括:支持接收和解码分等级媒体流的第一终端。

在本发明的一个实施例中,上述视频中继1704还可以用于按照对应关系,将接收到的媒体流中多个第一终端对应的相同等级的媒体流复制为多份,将复制的多份相同等级的媒体流和与多个第一终端各自对应的其他等级的媒体流分别发送给多个第一终端。

以下举例说明,比如上述第一终端包括两个,分别为终端1和终端2,而终端1的等级要求为等级2,终端2的等级要求为等级3,那么基于上述层级间依赖的方式进行编码,则终端1对应的等级为等级1和等级2,终端2对应的等级为等级1、等级2和等级3,则两者相同的等级为等级1和等级2,则上述视频中继1704用于将等级1和等级2对应的媒体流复制为两份,将复制的一份等级1和等级2对应的媒体流发送给终端1以及将另一份等级1和等级2对应的媒体流和等级3对应的媒体流一起发送给终端2。

在本发明的一个实施例中,在上述接收端1706还可以包括高级视频编码avc终端的情况下,上述视频中继1704还可以用于复制接收到的媒体流,将接收到的媒体流中等级最低的媒体流中的网络抽象层面nal头部修改为avc格式的nal头部以及按照avc格式将修改后的等级最低的媒体流发送给avc终端。

需要说明的是,上述接收到的媒体流中等级最低的媒体流中的数据块部分可以不变,仅仅修改了nal头部,使得媒体流中的最低等级是与avc完全兼容的,即只需要将nal修改,传统的avc终端则可以解码该媒体流。

需要说明的是,上述视频中继1704可以通过实时传输协议(real-timetransportprotocol,简称rtp)将接收到的媒体流中与接收端1706对应的等级的媒体流发送给接收端1706。

在本发明的一个实施例中,在编码为可分层视频编解码svc编码的情况下,接收到的媒体流中的nal头部中包括:媒体流的各个等级的等级标识。因而,可以通过该等级标识将媒体流进行分发,具体的,在本发明的一个实施例中,上述视频中继1704还可以用于按照对应关系和等级标识,将接收到的媒体流中与接收端1706对应的等级的媒体流发送给接收端1706。

在本发明的一个实施例中,上述接收端1706还可以用于向视频中继发送用于请求调整媒体流等级的第一请求信息;其中,第一请求信息中携带接收端的等级要求;视频中继在接收到第一请求信息后,建立对应关系;以及向发送端发送用于请求将媒体流调整为分级方式的第二请求信息;,其中,第二请求信息中也携带接收端的等级要求。

在本发明的一个实施例中,上述系统还可以包括:网页web服务器;其中,web服务器用于向接收端1706提供web界面,web界面用于向web服务器提交用户选择的等级要求。

需要说明的是,上述系统还包括:应用服务器,用于将提交给web服务器的等级要求发送给视频中继1704。

在本发明的一个实施例中,上述发送端1702还可以用于以下至少之一:拒绝第二请求信息;接受第二请求信息。

为了更好的理解本发明,以下结合优选的实施例,对本发明做进一步解释。

图1是根据本发明优选实施例提供的流媒体分级的relay架构的结构框图,如图1所示,包括:

视频中继(videorelay):支持对视频流内部建立分级分发关系,并将收到的分级视频流按照分级分发关系分发给不同的接受端;videorelay支持接受多个视频流,部分为分级视频流,部分为非分级视频流(avc格式)。

a类终端:支持分级编码协商、分级视频编码并发送的终端。一般a类终端也具有b类终端的能力。

b类终端:支持分级视频接受和解码的终端。可选的,支持rtcp带内调整视频等级。一般b类终端也具有a类终端的能力。

c类终端:不支持分级视频接受和解码的终端。如典型的avc格式的终端。

网络接口:

带内控制接口a(a类终端与videorelay之间):videorelay发送到a类终端的请求,使用rtcp协议,用于请求将视频源调整为分级方式,并指示具体的分级等级。

带内控制接口a(b类终端与videorelay之间):b类终端送到videorela的请求,使用rtcp协议,用于请求调整视频等级。备注:可选接口。

视频媒体接口a(a类终端与videorelay之间):a类终端发送到videorelay的分等级rtp流。

视频媒体接口b(b类终端与videorelay之间):videorelay分发到b类终端的某个等级的rtp流。

视频媒体接口c(c类终端与videorelay之间):videorelay分发到c类终端的avc格式的rtp流。

图2是根据本发明优选实施例提供的web化控制的媒体流分级的relay架构的结构框图,如图2所示,与上述图1相比,新增功能实体包括:

web服务器(webserver):向终端提供web界面(界面中包含视频源的分级等级能力),并通过用户对页面的操作,向webserver提交用户对视频等级的选择。

应用服务器(as):通过a类终端注册时,获取视频源的分级等级能力,并通过as的能力开放接口,供webserver查询视频源的分级等级能力。同时通过as的能力开放接口,接受webserver对某个视频源的分级等级设定,并通过媒体控制接口,向videorelay设定。

视频中继(videorelay):需要具备图1中videorelay的能力。此外,还需要接受as通过媒体控制接口,对某个视频源的分级等级设定,并触发向a类终端发送带内rtcp设定视频源的分级等级。

a类终端:同图1中a类终端。

b类终端:支持分级视频接受和解码的终端。同时支持web界面。

c类终端:同图1中c类终端。

需要说明的是,上述图1和/或图2中的视频中继相当于上述视频中继1704,上述a类终端相当于上述图1和/或图2中的发送端1702,上述b类终端和/或c类终端相当于上述图1和/或图2中的接收端1706。

实施例5

本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以被设置为存储用于执行实施例1中的方法的步骤的程序代码。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行实施例1中的方法的步骤。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1