一种在ip分组网中实现关联媒体流的方法及装置的制作方法

文档序号:7645449阅读:116来源:国知局
专利名称:一种在ip分组网中实现关联媒体流的方法及装置的制作方法
技术领域
本发明涉及媒体流传送领域,更为具体地,本发明涉及一种在IP分组网中 实现关联媒体流的方法及装置。
背景技术
网络电视(Internet Protocol Television, IPTV)是一种利用宽带有线电视 网,集互联网、多4某体、通讯等多种技术于一体,向家庭用户提供包括数字 电视在内的多种交互式服务的崭新技术。用户在家中可以使用个人计算机
(Personal Computer, PC )或者通过网络机顶盒在普通电视机上享受IPTV业 务,也可以通过移动终端享受IPTV业务。IPTV使用传输控制协议
(Transmission Control Protocol, TCP) /网际十力H义(Internet Protocol, IP)作 为承载协议进行单播、广播或组播视频业务,有效地将电视网、电话网和互 联网三个领域结合在一起,是三网融合最具代表性的业务,正受业界越来越 多的关注。
基于IMS实现的IPTV (IMS based IPTV)就是在IP多媒体子系统(IP Multimedia Subsystem, IMS )的整体架构下提供IPTV业务,以充分利用IMS 网络中已有的注册、认证、路由、会话控制与建立、业务触发、计费、端到 端服务质量(Quality of Service, QoS )保证等机制来为用户提供流媒体业务 及融合流媒体和实时会话业务的多媒体业务,即用户到内容的多媒体会话 是通过IMS已有的会话控制机制来完成,在建立会话过程中,需要为媒体流 的传送预留承载资源。
在IMS中,会话建立和纟某体协商是通过会话发起协议(Session Initiation Protocol, SIP)与实时传输协议(Real time Transport Protocol, RTP) /实时传 输控制协议(Real time Transport Control Protocol, RTCP )、会话描述协议 (Session Description Protocol, SDP)、 实时流协i义(Real Time Streaming Protocol, RTSP)、 DNS等协议配合完成的。其中,SIP是由IETF (Internet工程任务组)制定的多媒体通信系统框架协议之一,用于建立、改变或结束
多媒体会话的应用层协议。RTSP是应用级协议,控制实时数据的发送,其提 供了一个可扩展框架,使实时数据(如音频和视频)的受控、点播传送成为 可能。数据源包括现场数据(如直播)与存储在剪辑中的数据(如VOD等)。 该协议目的在于控制多个数据传送会话,提供选择传送通道的方法,传送通 道如用户数据报协议(User Datagram Protocol, UDP)、组播UDP与TCP,提 供基于RTP选择传输机制的方法。
正TF的一个草案(draft-boulton-sip-control-framework-04.txt)定义了一个 媒体控制的通用架构。如图1所示,在所述通用架构中定义了三个逻辑角色
控制服务器(Control Server):接收控制客户端(Control Client)的媒体 处理请求,执行具体的々某体处理操作,如放音、录音、媒体混合等。
控制客户端(Control Client):向Control Server发送消息,请求处理媒体 资源。
J(某体控制通道(Control Channel): Control Client通过SIP与Control Server 间的SDP交互、协商建立的一个用于传递控制消息的通道,基于可靠连接。
图2为欧洲电4言标准f办会(European Telecommunications Standards Institute, ETSI)电信和互联网融合业务及高级网络协议(Telecommunications and Internet Converged Services and Protocols for Advanced Networking, TISPAN)定义的IMS based IPTV的业务功能架构,其中,IPTV媒体控制功 能(IPTV Media Control Function)负责到用户设备(UE)媒体流的控制与交 付(Delivery), 乂人功能角度分解为々某体控制功能(Media Control Function , MCF)和媒体交付功能(Media Delivery Function, MDF )。媒体交付功能通常 是一些媒体服务器,在媒体控制功能的控制下向用户终端或用户设备(UE) 传送用户需要的^f某体流。媒体控制功能还能接收和处理用户的播放控制(通 常使用RTSP协议实现),例如媒体的快进、后退、暂停、定位等操作。IPTV 业务控制功能(IPTV Service Control Function, IPTV SCF )负责向UE提供业 务,包括会话初始化、用户账户控制、控制MCF提供相应的媒体功能等。 SCF通过y2接口与MCF交互,请求媒体处理服务。在流媒体应用中,如视频共享,需要通过将源用户终端正在接收的媒体 流复制到其它终端的方式实现,此时需要对源媒体流与目的媒体流进行关联 实现媒体流的复制,发明人在实现本发明的过程中发现在IP分组网中,目前 还没有技术可以实现对^^某体流进行关联。

发明内容
本发明实施例所要解决的技术问题在于,提供一种在IP分组网中实现关 联媒体流的方法及装置,可以实现不同媒体流之间的关联。
为解决上述技术问题,本发明实施例的一种在IP分组网中实现关联媒体
流的方法,包4舌
业务提供实体获取源客户端会话信息和目的客户端会话信息; 所述业务提供实体根据所述源客户端会话信息和所述目的客户端会话信
息生成关联关系
所述业务提供实体将所述关联关系发送给媒体处理实体。
相应地, 一种业务控制实体,用于在IP分组网中实现关联i某体流,包括
会话信息获取单元,用于获取第一客户端会话信息和第二客户端会话信

关联处理单元,用于为会话信息获取单元所获取的第一客户端会话信息
和第二客户端会话信息生成关联关系;
关联关系发送单元,用于将关联处理单元所生成的所述关联关系发送给 媒体处理实体。
本发明实施例的在IP分组网中实现关联士某体流的方法及装置,通过将第 一客户端会话信息和第二客户端会话信息中的媒体流进行关联,可以很方便 地应用于J(某体流(如视频等)的共享、会话媒体流监控等多种场景中。


图1是现有的IETF定义的一个媒体控制的通用架构的示意图;
9业务功能架构的示意图; 图3是本发明的应用环境的原理模型示意图4是本发明在IP分组网中实现关联媒体流的业务控制实体的实施例的 结构示意图5是图4中关联处理模块的一种实施例的结构示意图; 图6是图4中关联处理模块的另一种实施例的结构示意图; 图7是本发明在IP分组网中实现关联J某体流的方法的第一具体实施例流 程图8是本发明在IP分组网中实现关联媒体流的方法的第二具体实施流程
图9是本发明在IP分组网中实现关联j某体流的方法的第三具体实施流程图。
图IO是本发明的第一应用例流程图; 图ll是本发明的第二应用例流程图; 图12是本发明的第三应用例流程图。
具体实施例方式
下面结合附图以优选实施例对本发明进行详细说明。
如图3所示,是本发明的应用环境的原理模型示意图;其中,源客户端l 首先需要与业务控制实体2建立SIP会话,并接收媒体处理实体3的所发送的媒 体流;且在需要将正在接收的媒体流复制至其他客户端(目的客户端4)时, 发送媒体流关联复制请求指示进行媒体流的关联复制,所述关联复制请求至 少包括进行关联复制的属性标识、需要复制的源媒体流信息及目的客户端标 识;
业务控制实体2,用于在获得所述媒体流关联复制请求时,获得目的客户 端会话信息与及源客户端会话信息,对所获得的目的客户端会话信息与源客
10户端会话信息中的源媒体流与输出媒体流进行关联,并指示媒体处理实体3将 指定的媒体流复制发送给所述目的客户端4;
媒体处理实体3,用于根据与所述业务控制实体2的指示,将所述源々某体 流复制发送给所述目的客户端4。
具体进行关联的过程及细节会在下文中进行说明。
如图4所示,是本发明在IP分组网中实现关联士某体流的业务控制实体的第 一具体实施例结构图。其中包括
会话信息获取单元20,用于获取第一客户端会话信息和第二客户端会话 信息;其中,该第一客户端会话信息为第一客户端与业务提供实体建立媒体 会话的SDP信息,第二客户端会话信息为第二客户端与业务提供实体建立媒 体会话的SDP信息,在具体实施时,该第一客户端可以是源客户端,该第二 客户端可以是目的客户端。
关联处理单元22,用于根据会话信息获取单元20所获取的源客户端会话 信息和目的客户端会话信息生成关联关系;
关联关系发送单元24,用于将关联处理单元22所生成的所述关联关系发 送给媒体处理实体,其中,该关联关系可以通过SIP消息或々某体控制消息发 送给媒体处理实体。
参见图5所示,为图4中关联处理模块22的一种实施例的结构示意图; 其中,关联处理模块22进一步包括
SDP信息聚合单元220,用于根据所述第一客户端会话信息(SDP信息) 和所述第二客户端会话信息(SDP信息)生成聚合的SDP信息,其中,每个 聚合的SDP信息中至少包括一个々某体复制组,在该々某体复制组中包括两个以 上的媒体流信息,通过该媒体复制组将所述两个以上的媒体流进行关联。
其中,该SDP信息聚合单元220进一步包括媒体流类型确定单元2220, 用于在所述聚合的SDP信息中所包含的每个媒体复制组中确定一个媒体流作 为输入媒体流,该媒体复制组中其他的媒体流为输出媒体流。具体地,该媒体流类型确定单元2220可以以下述任一种方式来确定々某体复制组中的 一个々某 体流为输入々某体流
在对^某体复制组中对所述输入媒体流的mid说明中以一预定值(如"src" 等)进行标示;
在所述媒体复制组中的所述输入媒体流的组号后以一预定值(如"src,,等) 进行标识;
将所述媒体复制组中默认位置的组号所对应的媒体流确定为输入媒体 流,例如可以将该媒体复制组中的第 一个或最后一个媒体流确定为输入媒体 流。
这样,业务控制单元可以通过SIP消息携带该聚合的SDP信息将关联关 系发送给媒体处理实体。
参见图6所示,为图4中关联处理才莫块22的另一种实施例的结构示意图; 其中,关联处理模块22进一步包括
SDP信息聚合单元220,用于根据所述第一客户端会话信息(SDP信息) 和所述第二客户端会话信息(SDP信息)生成聚合的SDP信息。
会话信息转换单元222,用于根据第一客户端会话信息生成第一 SDP信 息,根据第二客户端会话信息生成第二SDP信息。
复制逻辑生成单元224,用于根据SDP信息聚合单元220或会话信息转换单 元222的结果生成表示有该第一客户端会话信息和第二客户端会话信息中媒 体流的关联关系的复制逻辑。
具体地,该复制逻辑生成单元224进一步包括
媒体流类型确定单元2240,用于在所复制逻辑中确定至少一个々某体流为 输入媒体流,以及与所述输入媒体流对应的至少一个输出媒体流,其中一个 输入媒体流与 一个或多个输出媒体流相对应,/人而将该一个输入4某体流与该 一个或多个输出媒体流关a来。
在实际实施中,该复制逻辑中的输入媒体流和所述输出媒体流通过其在 所述聚合的SDP中的位置信息(如label信息,或在SDP中描述的媒体行的
12顺序号)进行表示;或者
该复制逻辑中,该输入媒体流通过其在第一SDP中的位置信息(如label 信息,或在SDP中描述的媒体行的顺序号)和第一SDP关联业务提供实体与媒 体处理实体间建立的第一对话(Dialog)进行表示,该输出媒体流通过其在所 述第二SDP中的位置信息(如label信息)和第二SDP关联业务提供实体与媒体 处理实体间建立的第二对话(Dialog)进行表示;其中,每一对话包括有call-id、 from-tag、 to-tag信息。
需要说明的是,在其他的一些实施例中,关联处理单元22可以只包括SDP 信息聚合单元220和会话信息转换单元222中的一个。
下面通过多个实施例对本发明的实现关联4某体流的方法进行说明。
如图7所示,是本发明的在IP分组网中实现关联々某体流的方法第一实施 例示意图;其中
步骤S70,业务提供实体获取第一客户端会话信息和第二客户端会话信 息;例如,当业务提供实体接收到来自第一客户端的指示,需要对第一客户 端与第二客户端进行关联,则业务提供实体需要获取第一客户端会话信息和 第二客户端的会话信息。该第一客户端会话信息可以为第一客户端与业务提 供实体建立媒体会话的SDP信息,第二客户端会话信息可以为第二客户端与 业务提供实体建立媒体会话的SDP信息。
步骤S72,所述业务提供实体根据所述第一客户端会话信息和所述第二客 户端会话信息生成关联关系;其中,生成关联关系的步骤具体如下
业务提供实体根据第一客户端会话信息和第二客户端会话信息生成聚合 的SDP信息。
在该聚合的SDP中包括至少一个媒体复制组,并在每一媒体复制组中确 定一个媒体流作为输入媒体流,其他的媒体流作为输出媒体流,从而将该输 入媒体流和该输出媒体流进行关联。
例如,在本发明的一些实施例中,可以通过扩展RFC388来定义新的group类型和mid的扩展标识,来标识出媒体复制组和输入媒体流。如 在RFC3388中,原group属性定义如下
group-attribute = "a=group:" semantics
* (space identification-tag) semantics = "LS" | "FID"
原mid属性定义如下
mid-attribute = "a=mid:" identification-tag
identification-tag = token
对其进行扩展后,定义如下
group-attribute = "a=group:" semantics
* (space identification-tag) semantics = "LS" | "FID" | "COPY"
其中,在"semantics"中新增的"COPY"表示媒体组(group)的类型是媒体 复制組。该媒体复制组中只能有一个输入的媒体流,可以有多个输出的媒体 流。可以采用多种方式来标识该々某体复制组中的哪个为输入々某体流,哪些为 输出的々某体流。例如可以采用下述方式
方式一、在媒体复制组中对输入媒体流的mid说明中以一预定值进行标 示例如,通过定义一个"src"来标识输入纟某体流,可以设置在mid的 identification-tag后,用逗号进行分隔,产生新的identification-tag。具有"src" 标识的mid对应的々某体行是输入媒体流;没有"src"标识的mid对应的媒体行是 输出媒体流。在SDP中可以出现多个媒体复制组。同一媒体复制组中的媒体流 的类型必须相同,例如必须同为音频或同为^L频等,不能出现不同类型的4某 体流在同 一个々某体复制组中。
方式二、在媒体复制组中的输入媒体流的组号后以一预定值进行标识 例如,将"src"标识i殳置在group國attribute的identification-tag中,用于标识输入的 士某体流,用逗号将原identification-tag和"src"标识分隔,产生新的
14identification-tag。具有"src"标识的为输入媒体流,其它没有"src"标识的就是 输出々某体流。
方式三、在4某体复制组中默认位置的组号所对应的媒体流确定为输入媒 体流例如可以定义一个媒体复制组中,第一个identification-tag所对应的就是 输入媒体流,其他的全为输出媒体流;或者反之,可以定义该媒体复制组中 最后一个是输入媒体流,其他的全为输出媒体流。
需要说明的,上述三种方式仅为举例,当可以有更多的方式来指示输入 媒体流和输出媒体流。
为便以理解,下述举例来说明前述的对SDP信息进行聚合的过程。
假设,需要对一个第一客户端与两个第二客户端的SDP信息进行聚合。其
中,
第一客户端(SrcUe)与业务提供实体建立会话的源媒体流SDP中,包括 了视频(video)和音频(audio)两个々某体流,其SDP信息如下
v=0
o=SCF 511111111 511111111 IN IP4 scf.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
m=audio 40000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 m=video 40010 RTP/AVP 31 32 a=rtpmap:31 H261/90000
第一个第二客户端(DstUel)与业务提供实体建立会话的媒体流SDP,包 括一个视频媒体流,其SDP格式如下
v=0
o=SCF 611111111 611111111 INIP4 scf.example.com s=
c=IN IP4 DstUel.example.com t=0 0
m=video 50000 RTP/AVP 31 32a=rtpmap:31 H261/90000
第二个第二客户端(DstUe2)与业务提供实体建立会话的媒体流SDP,包 括一个音频媒体流,其SDP信息如下
v=0
o=SCF 711111111 711111 111 IN IP4 scf.example.com
s=
c=IN IP4 DstUe2.example.com t=0 0
m=audio 60000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000
在业务提供实体上,可以将上述三个SDP聚合成一个新的SDP;对应于对 输入々某体流与输出々某体流进4亍标识的方式一,该聚合的SDP信息可以为
v=0
o=SCF 811111111 811111111 IN IP4 scf.example.com
c=/iVIP4 SrcUe.example.com t=0 0
a=grow;r COT" 4
m=audio 41000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000
m=video 41010 RTP/AVP 3132 a=rtpmap:31 H261/90000 a=mzV/..2, sir
m=video 51000 RTP/AVP 3132 a=rtpmap:31 H261/90000
m=audio 61000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000
16对应于对输入士某体流与输出媒体流进行标识的方式二,该聚合的SDP信息 可以为
v=0
o=SCF 811 111 111 811111111 INIP4 scf.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
a=group: COPY l,src 4 a=group: COPY 2,src 3 m=audio 41000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 a=mid: 1
m-video 41010 RTP/AVP 31 32 a=rtpmap :31 H261/90000 a=mid:2
m=video 51000 RTP/AVP 31 32 c=INIP4 DstUel.example.com a=rtpmap:31 H261/90000 a=mid:3
m=audio 61000 RTP/AVP 0 8 97 c=IN IP4 DstUe2.example.com a=rtpmap:8 PCMA/8000 a=mid:4
对应于对输入々某体流与输出媒体流进行标识的方式三,该聚合的SDP信息 可以为 v=0
o=SCF 8111 11111 811111111 INIP4 scf.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
a=group: COPY 1 4 /*第一个标识"r'对应的为输入媒体流*/
a=group: COPY 2 3 /*第一个标识"2"对应的为输入媒体流*/
m=audio 41000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 a=mid: 1
m=video 41010 RTP/AVP 31 32
17a=rtpmap:31 H261簡00 a=mid:2
m=video 51000 RTP/AVP 3132 c=IN IP4 DstUel.example.com a=rtpmap:31 H261/90000 a=mid:3
m=audio 61000 RTP/AVP 0 8 97 c=IN IP4 DstUe2.example.com a=rtpmap:8 PCM A/8000 a=mid:4
在上述的三个聚合的SDP中,其中包括有两个媒体复制组,分别为关联 mid号为l, 4的音频媒体流组和关联mid号为2, 3的视频媒体流组;其中,mid 号为1和2的作为输入媒体流(对应于第一客户端的媒体流),而mid号为3和4 的作为输出媒体流(对应于第二客户端的媒体流)。
步骤S74,业务控制实体在完成了对第一客户端会话信息与第二客户端会 话信息中的媒体流的关联操作后;业务控制实体就可以通过SIP消息(如 relNVITE/UPDATE等)携带所述聚合的SDP信息并发送给媒体处理实体,以 将所述关联关系发送给々某体处理实体。
由于在业务控制实体与媒体处理实体之间的交互信息中均需要包括SDP 信息,上述的通过聚合的SDP信息指示输入媒体流与输出々某体流之间的关系, 实现起来非常方便。
如图8所示,是本发明的在IP分组网中实现关联J桨体流的方法第二实施 例示意图;其中
步骤S80,业务提供实体获取第一客户端会话信息和第二客户端会话信 息;例如,当业务提供实体接收到来自第一客户端的指示,需要对第一客户 端与第二客户端进行关联,则业务提供实体需要获取第一客户端会话信息和 第二客户端的会话信息。该第 一客户端会话信息可以为第 一客户端与业务提 供实体建立媒体会话的SDP信息,第二客户端会话信息可以为第二客户端与
18业务提供实体建立媒体会话的SDP信息。
步骤S82,所述业务提供实体根据所述第一客户端会话信息和所述第二客 户端会话信息生成关联关系;其中,生成关联关系的步骤具体如下
首先,业务提供实体根据第 一客户端会话信息和第二客户端会话信息生 成聚合的SDP信息;
例如需要将第 一客户端和两个第二客户端的SDP合并,其中,
第一客户端(SrcUe)与业务提供实体建立会话的源媒体流SDP,包括了 视频和音频两个媒体流,其SDP信息如下
v=0
o=SCF 511111111 5111 111 11 INIP4 scf.example.com s=
c=IN IP4 SrcUe.example.com t=0 0
m=audio 40000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 m=video 40010 RTP/AVP 31 32 a=rtpmap:31 H261/90000
第一个第二客户端(DstUel)与业务提供实体建立会话的媒体流SDP,包 括一个视频媒体流,其SDP信息如下
v=0
o=SCF 611111111 611111111INIP4 scf.example.com s=
c=IN IP4 DstUel.example.com t=0 0
m=video 50000 RTP/AVP 31 32 a,map:31 H261/90000
第二个第二客户端(DstUe2)与业务提供实体建立会话的媒体流SDP,包 括一个音频媒体流,其SDP信息如下
v=0
o=SCF 711111 111 711111111 INIP4 scf.example.comS=
c=IN IP4 DstUe2.example.com t=0 0
m=audio 60000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000
则聚合的SDP信息可以为 v=0
o=SCF 811111111 8111 111 11 INIP4 scf.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
m=audio 41000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 a=label:l
m=video 41010 RTP/AVP 3132 a=rtpmap:31 H261/90000 a=label:2
m=video 51000 RTP/AVP 3132 c=IN IP4 DstUel.example.com a=rtpmap:31 H261/90000 a=label:3
m=audio 61000 RTP/AVP 0 8 97 c=IN IP4 DstUe2.example.com a=rtpmap:8 PCMA/8000 a=label:4
其次,在进行SDP信息聚合后,业务控制实体通过生成复制逻辑来对该 第一客户端会话信息和所述第二客户端会话信息中的媒体流进行关联,从而 诸如指导媒体处理实体进行媒体流复制操作。
在该复制逻辑中需要确定一个媒体流为输入4某体流,以及与所述输入4某 体流对应的至少一个输出媒体流,该输入媒体流和所述输出媒体流根据其在 所述聚合的SDP中的位置信息(如label信息,或在SDP中描述的媒体行的 顺序号)来确定的。其中,由于输入媒体流和输出媒体流都在一个聚合后的
20SDP中。该复制逻辑的格式可以诸如为(采用XML方式进行描述)
< xml version="1.0" encoding="UTF-8" >
<mediacopy xmlns="um:ietf:params:xml:ns:mediacopy"
xmlns:xsi="http:〃www.w3.org/2001/XMLSchema-instance"> 〈input label=l>
</output label=4> </input> <input label=2>
</output label=3> </input> </mediacopy>
其中,〈input〉标签表明输入媒体流,可以有多个〈input〉; 〈output〉标签 表明输出士某体流,可以有多个< output >; 〈output〉是〈input〉的子元素,表示 该输出媒体流与输入媒体流的关联关系。从中可以看出,在聚合的SDP信息 中,"labe泸l"所对应的媒体流和"labe—4"所对应的媒体流存在关联关系,且前 者为输入媒体流,后者为输出媒体流;同理,"labe卜2"所对应的媒体流和 "label-3"所对应的媒体流存在关联关系,且前者为输入媒体流,后者为输出媒 体流。
步骤S84,在业务控制实体就完成了对第一客户端会话信息与第二客户端 会话信息中媒体流的关联操作;业务控制实体就可以通过媒体控制消息携带 所述复制逻辑发送给々某体处理实体,以将该关联关系发送给々某体处理实体。
如图9所示,是本发明的在IP分组网中实现关联士某体流的方法第三实施 例示意图;其中
步骤S90,业务提供实体获取第一客户端会话信息和第二客户端会话信 息;例如,当业务提供实体接收到来自第一客户端的指示,需要对第一客户 端与第二客户端进行关联,则业务提供实体需要获取第一客户端会话信息和 第二客户端的会话信息。该第 一客户端会话信息可以为第 一客户端与业务提 供实体建立媒体会话的SDP信息,第二客户端会话信息可以为第二客户端与 业务提供实体建立士某体会话的SDP信息。
21步骤S92,所述业务提供实体根据所述第一客户端会话信息和所述第二客 户端会话信息生成关联关系;其中,生成关联关系的步骤具体如下
首先,所述业务提供实体根据所述第一客户端会话信息生成第一 SDP信 息,所述业务提供实体根据所述第二客户端会话信息生成第二SDP信息,第 一 SDP信息用于业务提供实体与媒体处理实体间第一对话(Dialog)的会话 交互,第二SDP信息用于业务提供实体与媒体处理实体间第二对话(Dialog) 的会话交互。
其次,在完成所述第一客户端会话信息与第二客户端会话信息的转换之 后,业务控制实体通过生成复制逻辑来对该第一客户端会话信息和所述第二 客户端会话信息中的媒体流进行关联,从而诸如指导媒体处理实体进行媒体 流复制4喿作。
在该复制逻辑中需要确定一个媒体流为输入媒体流,以及与所述输入媒 体流对应的至少一个输出媒体流,从而将该输入媒体流与该至少一个输出媒 体流进行关联。该输入媒体流根据其在所述第一 SDP中的位置信息和第一 SDP关联业务提供实体与媒体处理实体间建立的第一对话(Dialog)来确定的, 该输出媒体流根据其在所述第二 SDP中的位置信息和第二 SDP关联业务提供 实体与媒体处理实体间建立的第二对话(Dialog)来确定的。其中,由于输入 媒体流和输出々某体流在不同会话的不同SDP中。该复制逻辑的才各式可以诸如 为(采用XML方式进行描述)
< xml version="1.0" encoding="UTF-8" >
<mediacopy xmlns="urn:ietf:params:xml:ns:mediacopy"
xmlns:xsi="http:〃www.w3 .org/2001 /XMLSchema-instance"> <input call-id=dsffs from-tag=dfds to-tag=fr343 label=l>
</output call-id=sdfs from-tag=aa^d to-tag=ffsa label=l> </input>
<input call-id=dsffs from-tag=dfds to-tag=fr343 label=2>
</output call-id=wwe from-tag=fgdf to-tag=tyu label=l〉 </output call-id=w23e from-tag=fgl2f to-tag=td3454 label=l>
</input></mediacopy>
其中,〈i叩ut〉标签表明输入i某体流,可以有多个〈nput、 〈output〉标签 表明输出媒体流,可以有多个〈output〉; 〈output〉是〈npu^的子元素,表示该 输出媒体流与输入媒体流的关联关系。call-id, from-tag, to-tag用于标识一个对 话(Dialog),位置信息(label)与SDP中々某体行的label属性值相等,用于 标示具体位置所指示的纟某体流。通过对话(Dialog)信息与位置信息的结合, 从而确定不同会话中的具体媒体流。从中可以看出,"call-id=dsffs from-tag=dfds to-tag=fr343 label=l"所对应的Jf某体流与"call-id=sdfs from-tag=aadd to-tag=ffsa label-l"所对应的媒体流存在关联关系,且前者为输 入媒体流,后者为输出i某体流。同理,"call-id=dsffs from-tag=dfds to-tag=fr343 labe^2"所对应的士某体流与"call-id^wwe from-tag=fgdf to-tag=tyu label-l"及 "call-id=w23e from-tag=fgl2f to-tag=td3454 labe—l"所对应的媒体流存在关联 关系,前者为输入媒体流,后两者为输出媒体流。
步骤S94,在业务控制实体就完成了对第一客户端会话信息与第二客户端 会话信息中々某体流的关联操作;业务控制实体就可以通过々某体控制消息携带 所述复制逻辑并发送给士某体处理实体,以将该关联关系发送给士某体处理实体。
上述通过复制逻辑来表示输入媒体流与输出媒体流的关联关系的方法, 实施起来非常灵活,可以将不同对话(Dialog)中的i某体流进行关联,应用范 围非常广泛。
在上述的具体实施例中,如果应用在TISPANIPTV中时,其中的业务提 供实体可以为业务控制功能实体(SCF),媒体处理实体可以为媒体功能实体 (MF)。而媒体功能实体(MF)包括媒体控制功能实体(MCF)和媒体交 付功能实体(MDF)。业务开展过程中,业务控制功能实体(SCF)与媒体 控制功能实体(MCF)进行交互实现业务,媒体控制功能实体(MCF)控制 媒体交付功能实体(MDF)完成媒体处理和交付。
23如果应用在IMS架构中,则其中的业务提供实体为应用服务器 (Application server , AS ),媒体处理实体为媒体资源功能实体(MRF)。而 媒体资源功能实体(Multimedia Resource Function , MRF )包括媒体资源功能 控制实体(Media Resource Function - Controller Part , MRFC )和媒体资源功能 处理实体(Media Resource Function - Process Part , MRFP )。业务开展过程中, 应用服务器(AS)与媒体资源功能控制实体(MRFC)进行交互实现业务, 媒体资源功能控制实体(MRFC)控制媒体资源功能处理实体(MRFP)完成 媒体处理和交付。
上述描述了本发明实施例的实施例的基本流程,为便于理解本发明,下 述将以更详细的例子来说明本发明的具体应用场景。下述例子仅为举例,非 为限制本发明的应用场景,本领域的技术人员可以理解,本发明当可应用在 其他场景下。后文以TISPANIPTV为业务场景进4亍描述,相关流程同样可应 用于IMS架构。以下仅举出三种典型的应用流程,在此就不进行穷举。
为了描述方便,下述所述的MCF即为媒体处理实体,当MCF和MDF作为 一个整体时,描述MCF即代表MF。
如图10所示,是本发明的第一应用例流程图。该图示出了本发明应用在 源客户端指示目的客户端接收复制媒体流的场景下的具体过程。
首先,源客户端(SrcUE)已经通过SCF与MCF间建立了媒体流的传输, 假定所述々某体流包括音频流和视频流。在该实施例中,需要向目的客户端复 制牙见频流。
步骤F1:源客户端(SrcUE)向目的客户端(DstUE)发送REFER消息, 指示Dstl正与SCF建立会话接收SrcUE的复制媒体流,并在refer-to头域中携带 video的属性标识,指示DstUE复制的媒体流是视频媒体流;
其中,在本发明的实施例中,需要中定义一个属性标识(如"mediacopy") 来指示需要进行关联复制媒体;该属性标识可以通过已有的机制在refer-to头 域的SIPURI参数部分携带,同时在refer-to中携带call-id, from-tag, to-tag, cid
24用于标识一个需要复制具休的媒体流。所述的属性标识可通过Request-URI, Contact, Accept-Contact等头域携带,为描述方便,在下述流程均为在 Accept-Contact头域中携带所述属性标识。 例如,该REFER消息为
REFER sip:Bob@example.com SIP/2.0
Via:…
Route:…
Max-Forwards:…
From:...
To:...
Call-ID:...
CSeq:…
Refer-to: <sip:scf.example.com;call-id=48020298;to-tag=7743; from-tag=6472;cid=2 Accept-Contact=mediacopy>; method=INVITE; video
Referred-By: <sip:Alice@SrcUe.example.com>
步骤F2: DstUE返回202OK表示REFER请求正在处理; 步骤F3 F4: DstUE返回NOTIFY,报告REFER处理的进展; 步骤F5: Dst UE根据REFER消息的向业务控制实体(SCF)发送INVITE 请求复制媒体流。如
INVITE sip:scf.example.com;call-id=48020298; to-tag=7743;from-tag=6472;cid=2;mediacopy SIP/2.0 Via:... Route:… Max-Forwards:... From:... To:... Call-ID:...
Accept-Contact:mediacopy v=0
o=Bob 40000000 40000000 IN IP4 DstUe.example.com
s=
c=IN IP4 DstUe.example.com
25t=0 0
m=video 40010 RTP/AVP 31 32 a=rtpmap:32 MPV/90000
其中,Dst UE的编码采用MPV方式,与源客户端所发送的REFER消息中 所指示的被复制媒体流编码H261不同。
步骤F6: SCF收到DstUE发送的INVITE消息,检查发现Accept-Contact头 域中带有mediacopy属性标识,则对该INVITE消息执行々某体流复制处理根据 R叫uest-URI中携带的dialog-idl, to-tag, from-tag参数,匹配到SCF与Src UE建 立的对话(Dialog),并4艮据这个对话(Dialog)获得SCF与MCF建立的媒体会 话(Session)的对话(Dialog),根据该媒体Session的Dialog的已有媒体信息 和Request-URI中的cid参数,构造reINVITE消息,携带新的SDP信息(增加了 DstUE的媒体描述)并发送给MCF;如
INVITE sip:mf.example.com SIP/2.0
Via:…
Route:...
Max-Forwards:…
From:...
To:…
Call-ID:…
CSeq:...
v=0
o=SCF 210000000 210000001 IN IP4 scf.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
a=group: COPY 1 2 /*可以是多个a行,表示多个聚合的组*/
m=audio 10000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/動0 m=video 10010 RTP/AVP 31 32 a=rtpmap:31 H261/90000
a=mid:l, src /*1所对应的媒体流为源媒体流,如果组内的m
行编码有不同的,MF以源的编码为标准进行 转换*/
26其中,斜体字部分为目的客户端的SDP信息,为新增部分;另外,由于源 媒体流的编码与新增J(某体流的编码不同,MCF需要完成编码的转换处理。
步骤F7: MCF接收SCF的reINVITE消息,在200 OK中返回更新的SDP信 息。如
SIP/2.0 200 OK Via:...
Max-Forwards:… From:... To:… Call-ID:… CSeq:…
v=0
o=MF 300000000 300000000 IN IP4 mfhost.example.com
s=
c=IN IP4 mcfhost.example.com t=0 0
m=audio 30000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 m=video 30010 RTP/AVP 31 32 a=rtpmap:31 H261/90000
步骤FS: SCF接收MCF返回的200 OK,根据其中的SDP回复构造新的 SDP,通过200 OK响应消息发送给Dst UE;如
SIP/2.0 200 OK Via:...
Max-Forwards:... From:... To:…
27Call-ID:… CSeq:...
v=0
o=SCF 200000000 200000000 IN IP4 scf.example.com
c=IN IP4 mcfhostexample.com t=0 0
m=video 20010 RTP/AVP 31 32 a=rtpmap:32 MPV/90000
步骤F9: Dst UE收到SCF的200 OK返回ACK;
步骤F10: SCF收到DstUE的ACK,向MCF返回ACK, MCF向DstUE发送 复制的媒体流;
步骤F11 F12:在复制完所有媒体流后,DstUE通过NOTIFY消息向SrcUE 报告复制媒体流操作完成。
如图ll所示,是本发明的第二应用例流程图。该图示出了本发明应用在 源客户端指示SCF将々某体目的客户端接收复制i某体流的场景下的具体过程。
如图8所示,是本发明的实现关联复制媒体流的方法的第二具体实施例流 程图;该流程包:fe:
首先,源客户端(SrcUE)已经通过SCF与MCF间建立了々某体流的传输, 假定所述媒体流包括音频流和视频流。在该实施例中,需要向目的客户端复
步骤F1:源客户端(SrcUE)向业务控制实体(SCF )发送REFER消息, 指示SCF将SrcUE的视频媒体流复制到DstUE,例如,在R叫uest-URI中携带 关于关联复制的属性标识(如,mediacopy),并指示需要复制的为视频媒体 流(例如可以在refer-to头域中携带video来进行指示)。例如,该REFER消息 为
REFER sip:scf.example.com;call-id=48020298;to-tag=7743; from-tag=6472;cid=2;mediacopy;video SIP/2.0
28Via:... Route:… Max-Forwards:... From:... To:... Call-ID:... CS叫...
Refer-to: <sip:Bob@example.com;method=INVITE> Referred-By: <sip:Alice@example.com>
步骤F2: SCF返回202 OK表示REFER请求正在处理; 步骤F3 F4: SCF返回NOTIFY,报告REFER处理的进展; 步骤F5: SCF根据REFER消息的R叫uest-URI中的"mediacopy"属性标识确 认Src UE希望复制媒体流,根据Request-URI中的dialog-id, from-tag, to-tag匹配 到SrcUE与SCF间的对话(Dialog),再根据Request-URI中的cid确定SrcUE 请求复制的媒体流是SDP中的视频媒体流(其中,cid = 2,表示SDP中的第二 个m行)。SCF构造携带mediacopy属性标识的INVITE消息发送给DstUE。 SCF 在SDP中携带MCF支持的所有的视频编码格式的信息。该INVITE消息例如为
INVITE sip:Bob@example.com SIP/2.0
Via:...
Route:...
Max-Forwards:...
From:…
To:...
Call-ID:…
CSeq:...
Accept-Contact:mediacopy v=0
o=SCF 20000000 20000000 IN IP4 scf.example.com
s=
c=IN IP4 mcfhost.example.com t=0 0
m=video 30010 RTP/AVP 31 32 /*如果SCF不能决定媒体参数,就将
30010部分设为0*/
a=rtpmap:31 H261/90000a=rtpmap:32 MPV簡OO
其中,在SCF构造的SDP中,如果SCF不能决定新增媒体流在MCF上的媒 体参数,就将该媒体流保持(Hold)住,也就是将m行的端口设为0。这样SCF 通过步骤F8获得々某体参数后,需要与Dst UE进行二次SDP协商将J 某体流激活。 另外,在步骤F5中,SCF可以发送不带SDP的INVITE,由Dst UE发送200 OK 携带SDP提供(offer), SCF通过ACK携带SDP回复(answer)确认。
步骤F6: DstUE接收INVITE消息,返回200OK消息。该200OK消息例如
SIP/2.0 200 OK Via:...
Max-Forwards:… From:… To:... Call-ID:… CS叫…
v=0
o=Bob 40000000 40000000 IN IP4 DstUe.example.com
s=
c=IN IP4 DstUe.example.com t=0 0
m=video 40010 RTP/AVP 31 32 a=rtpmap:31 H261/90000
步骤F7: SCF接收Dst UE的200 OK,根据Dst UE响应中的SDP构造INVITE 消息发送给MCF。如
/*单SDP方式*/
INVITE sip:mf.example.com SIP/2.0
Via:…
Route:…
Max-Forwards:...
From:...
To:…
Call-ID:...
30CSeq:… v=0
o-SCF 21000000 21000001 IN IP4 scf.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
m=audio 10000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA細O m-video 10010 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=label:l
m=video 40010 RTP/AVP 31 32/*增加DstUe的媒体描述部分,同时为
两个m-video的媒体行增加 label */
c=IN IP4 DstUe.example.com a=rtpmap:31 H261簡00 a=label:2
或者例如,将DstUe的的SDP部分作为一个单独的SDP携带在INVITE消息 中,这样INYITE消息中就存在SrcUe的SDP和DstUe的SDP两个SDP:
/*多SDP方式*/
INVITE sip:mf.example.com SIP/2.0
Via:…
Route:…
From:...
To:...
Call-ID:...
Content-Type: ultipart/related;type=application/sdp;
start="<nXYxAE@example.com>";
boundary="50UBfW7LSCVLtggUPe5z" Content-Length:…
--50UBfW7LSCVLtggUPe5z Content-Transfer-Encoding: binary Content-ID: <nXYxAE@example.com> Content-Type: application/sdp
31v=0
o=SCF 21000000 21000001 IN IP4 scf.example.com
s=
c=IN IP4 SrcUe.example.com t-0 0
m=audio 10000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/画0 m=video 10010 RTP/AVP 31 32 a-rtpmap:31 H261/90000 a-label:l
—50UBfW7LSCVLtggUPe5z Content-Transfer-Encoding: binary Content-ID: <wcwcwc@example.com> Content-Type: application/sdp
v=0
o-SCF 21100000 21100000 IN IP4 scf.example.com
s=
c=IN IP4 DstUe.example.com t=0 0
m=video 40010 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=labd:l
—50UBfW7LSCVLtggUPe5z—
步骤F8: MCF返回200OK消息,携带SDP answerf言息。如:
/*单SDP方式*/ SIP/2.0 200 OK Via:…
Max-Forwards:… From:... To:… Call-ID:... CSeq:…
v=0
o=MF 30000000 30000000 IN IP4 mfhost.example.com
s=
c=IN IP4 mfhost.example.com t=0 0
m-audio 30000 RTP/AVP 0 8 97a=rtpmap:8 PCMA/8000 m-video 30010 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=label:l
m=video 20010 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=label:2
步骤F9: SCF向MCF返回ACK; 步骤F10: SCF向DstUE返回ACK;
步骤F11: SCF向MCF下发媒体控制消息(Request)请求复制指定的媒体 流,Request消息体中携带指示复制指定Jf某体流的复制逻辑。如
/*单SDP方式*/
< xml version-" 1.0" encoding="UTF-8" >
<media-copy xmlns="um:ietf:params:xml:ns:media-copy"
xmlns:xsi="http:〃www.w3 .org/2001 /XMLSchema腸instance"〉 <item input-1> <output> 2
</output> </item> </media-copy>
/*多SDP方式*/
< xml version-" 1.0" encoding="UTF-8" >
<media-copy xmlns-"um:ietf:params:xml:ns:media-copy"
xmlns:xsi="http:〃www.w3 .org/200 l/XMLSchema-instance"> < item sessionid="21000000" input-1> <output sessionid="21100000"> 1
</output > </item> </media-copy>
其中,inpu漆示源媒体流,outpu漆示输出的复制媒体流。在多SDP方式 下,〈tem〉和〈output〉标签中的sessionid属性对应SCF向MCF发送的SDP offer
33中的sess-id, input:l对应第一个SDP中lable = 1, output:l对应第二个SDP中 label - 1。
步骤F12: MCF接收SCF下发的媒体复制请求消息,返回Response响应; MCF将复制的媒体流发送到Dst UE;
步骤F13 F14: SCF向SrcUE发送NOTIFY消息报告媒体流复制完成。
如图12所示,是本发明的第二应用例流程图。该图示出了本发明应用在 源客户端创建复制焦点,并指示目的客户端加入该复制焦点,从而将媒体流 发送给目的客户端的场景下的具体过程。
首先,源客户端(SrcUE)已经通过SCF与MCF间建立了媒体流的传输, 假定所述媒体流包括音频流和视频流。在该实施例中,需要向目的客户端复 制视频流。
步骤S1: SrcUE与4某体复制控制实体进行会话交互,创建复制焦点; 步骤F1: Srcl正向媒体复制控制实体发送INVITE消息,携带mediacopy 的属性标识,在SDPoffer中携带两个视频媒体流描述,其中一个视频流是MCF 发出的作为输入媒体流,另 一个视频流是由Src UE接收的作为输出媒体流; 如
INVITE sip:scfcopy.example.com; SIP/2.0
Via:...
Route:…
Max-Forwards:...
From:…
To:…
Call-ID:...
Accept-Contact: mediacopy v=0
o=Alice 20000000 20000000 IN IP4 SrcUe.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
a=group: COPY 1 2
34m=video 20000 RTP/AVP 3132 /*协商建立MCF与媒体复制处理实体
的媒体流,MCF作为媒体流 发送源*/
c=IN IP4 mcf.example.com a=rtpmap :31画1/90000 a=sendonly a=mid:l
m=video 20100 RTP/AVP 31 32 /*协商建立Src UE与媒体复制处理实体
的媒体流,SrcUE作为媒体流 接收端*/
a=rtpmap:31 H261/90000
a=recvonly
a=mid:2
其中SDP中使用"COPY"组标识,"COPY"后的第一个标识(mid:l )默 认为输入媒体流,其后的标识是输出媒体流。
步骤F2:媒体复制控制实体接收SrcUE发送的INVITE消息,检测到其中 携带有mediacopy的属性标识,则创建业务层的复制焦点,向媒体复制处理实 体发送INVITE请求创建媒体层复制焦点;如
INVITE sip:mcfcopy.example.com; SIP/2.0
Via:…
Route:...
Max-Forwards:...
From:...
To:...
Call-ID:…
Accept画Contact: mediacopy v=0
o=SCFCopy 30000000 30000000 IN IP4 scfcopy.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
a=group: COPY 1 2
m-video 20000 RTP/AVP 3132/*协商建立MCF与媒体复制处理实体的
媒体流,MCF作为媒体流发送 源*/
c=IN IP4 mcf.example.com
35a=rtpmap:31 H261/90000
a=sendonly
a=mid: 1
m-video 20100 RTP/AVP 3132/*协商建立Src UE与媒体复制 处理实
体的媒体流,SrcUE作为媒体 流接收端*/
a=rtpmap:31 H261/90000
a=recvonly
a=mid:2
F3:媒体复制处理实体接收媒体复制控制实体发送的INVITE消息,检查 其中携带了 mediacopy属性标识,将创建媒体层的复制焦点与创建焦点的会话 (Session)进行关联,将SDP中描述的属性是mid:l的媒体流作为焦点的输入 媒体流,将SDP中描述的属性是mid:2的媒体流作为焦点的输出媒体流,媒体 层复制焦点能自动执行i某体编码转换,如果输入输出编码不同,将输入媒体 流编码转换成输出Jf某体流编码;媒体复制处理实体返回200 OK消息;
SIP/2.0 200 OK Via:…
Max-Forwards:... From:... To:… Call-ID:… CSeq:…
v=0
o=MCFCopy 30000000 30000000 IN IP4 mcfcopy.example.com s=
c=IN IP4 mcfcopy.example.com t=0 0
a=group: COPY 1 2
m=video 30000 RTP/AVP 3132/*协商建立MCF与媒体复制处理实体的
媒体流,MCF作为媒体流发送 源*/
a=rtpmap:31 H261/90000
a=r6cvonly
a=mid: 1
m-video 30100 RTP/AVP 3132/*协商建立Src UE与媒体复制处理实体的媒体流,Srcl正作为媒体流 接收端*/
a=rtpmap:31 H261/90000
a=sendonly
a=mid:2
步骤F4:媒体复制控制实体接收200OK消息,返回ACK消息;
步骤F^々某体复制控制实体向SrcUE发送200OK消息,在Contact头域中
携带业务层复制焦点标识; SIP/2.0 200 OK Via:…
Max-Forwards:... From:... To:… Call-ID:... CSeq:…
Contact: scfcopy.example.com;focusid=xyzswq v=0
o=MCFCopy 30000000 30000000 IN IP4 mcfcopy.example.com s=
c=IN IP4 mcfcopy.example.com t=0 0
a=group: COPY 1 2
m=video 30000 RTP/AVP 31 32 /*协商建立MCF与媒体复制处理实体的
媒体流,MCF作为媒体流发送 源*/
a=rtpmap:31 H261/90000
3=recvonly
a=mid: 1
m=video 30100 RTP/AVP 3132/*协商建立Src UE与媒体复制处理实体
的媒体流,Srcl正作为媒体流 接收端*/
a=rtpmap:31 H261/90000
a=sendonly
a=mid:2
步骤F6: Srcl正返回ACK;
37步骤S2: Srcl正与SCF进行媒体重协商,将MCF发送到Src UE的视频流改 向到々某体复制处理实体(MCFCopy);
步骤F7: Src UE向SCF发送reINVITE携带SDP offer,将视频媒体行改为 F5步骤中接收到的SDP中属性为recvonly的々某体行;
請ITE sip:scf.example.com SIP/2.0
Via:...
Route:...
Max-Forwards:...
From:…
To:…
Call-ID:...
CSeq:...
v=0
o^Alice 100000000 100000001 INIP4 SrcUe.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
m=audio 10000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 m=video 30100 RTP/AVP 31 32 c=IN IP4 mcfcopy.example.com a=rtpmap:31 H261/90000 a=recvonly
F8: SCF向MCF发送reINVITE携带SDP offer;
INVITE sip:mcf.example.com SIP/2.0
Via:…
Route:...
Max-Forwards:...
From:...
To:...
Call-ID:...
CS叫…
v=0
o=SCF 400000000 400000001 IN IP4 scf.example.com
s=c=IN IP4 SrcUe.example.com t=0 0
m=audio 10000 RTP/AVP 0 8 97 a=rtpmap:8 PCMA/8000 m=video 30100 RTP/AVP 31 32 c=IN IP4 mcfcopy.example.com a=rtpmap :31 H261細OO a=recvonly
步骤F9 ~ F10: MCF向SCF返回200 OK携带SDP answer, SCF返回ACK消

步骤Fll ~ F12: SCF向Src UE返回200 OK携带SDP answer, Src UE返回 ACK消息;
步骤S3: SrcUE指示DstUE力口入复制焦点;
步骤F13: SrcUE向DstUE发送REFER消息,携带复制焦点标识和 mediacopy属l生才示i口、; J(口
REFER sip: Bob@example.com;mediacopy;video SIP/2.0
Via:…
Route:...
Max-Forwards:...
From:...
To:...
Call-ID:...
CSeq:…
Refer-to: <sip:scfcopy.example.com;focusid=xyzswq >;method=INVITE Referred-By: <sip:Alice@example.com> Refer-Sub: false Supported: norefersub
步骤F 14: Dst UE向Src UE返回200 OK消息;
步骤F15: DstUE向媒体复制控制实体发出INVITE消息在Request-URI中 携带复制焦点标识,在Accept-Contact中携带mediacopy属性标识,请求加入媒 体复制焦点;
可以理解的是,其中,复制焦点标识也可以在Accept-Contact中携带。如
39INVITE sip:scfcopy.example.com; focusid-xyzswq SIP/2.0
Via:...
Route:…
Max-Forwards:...
From:...
To:…
Call-ID:...
Accept-Contact:mediacopy
v=0
o=Bob 40000000 40000000 IN IP4 DstUe.example.com
s=
c=IN IP4 DstUe.examplei.com t=0 0
m=video 40010 RTP/AVP 31 32 a=rtpmap:32 MPV簡OO
F16:媒体复制控制实体向媒体复制处理实体发送reINVITE消息,通过 媒体重协商在创建复制焦点的Session中增加Dstl正的SDP描述,将Dstl正加入 到媒体复制处理实体的复制焦点中;如
INVITE sip:mcfcopy.example.com; SIP/2.0
Via:...
Route:…
Max-Forwards:...
From:…
To:…
Call-ID:...
Accept画Contact: mediacopy v=0
o=SCFCopy 30000000 30000001 IN IP4 scfcopy.example.com
s=
c=IN IP4 SrcUe.example.com t=0 0
a=group: COPY 1 2 3
m=video 20000 RTP/AVP 31 32 /*协商建立MCF与媒体复制处理实体的
媒体流,MCF作为媒体流发送 源*/
40c=IN IP4 mcf.example.com a=rtpmap:31 H261/90000 a=sendonly a=mid: 1
m=video 20100 RTP/AVP 31 32 /*协商建立Src UE与媒体复制
处理实体的媒体流,SrcUE作 为媒体流接收端*/
a=rtpmap:31 H261/90000
a=recvonly
a=mid:2
m=video 40010 RTP/AVP 31 32/* Dst l正的媒体流描述*/
c=IN IP4 DstUe.example.com
a=rtpmap:32 MPV/90000
a=recvonly
a=mid:3
步骤F17:媒体复制处理实体返回200OK消息,其中携带有SDP answer;
SIP/2.0 200 OK Via:...
Max-Forwards:… From:... To:... Call-ID:... CS叫...
v=0
o-MCFCopy 30000000 30000000 IN IP4 mcfcopy.example.com
s==
c=IN IP4 mcfcopy.example.com t=0 0
a=group: COPY 1 2 3
m^video 30000 RTP/AVP 31 32 /*协商建立MCF与媒体复制处理实体的
媒体流,MCF作为媒体流发送 源*/
a=rtpmap:31 H261/90000
3=T6cvonly
a=mid:l
m=video 30100 RTP/AVP 31 32 /*协商建立Src UE与媒体复制处理实体
的媒体流,Srcl正作为媒体流
41接收端*/
a=rtpmap:31 H261/90000
a=sendonly
a=mid:2
m=video 40020 RTP/AVP 3132/* Dst UE的媒体流描述*/
a,map:32 MPV/90000
a=sendonly
a=mid:3
步骤F18:媒体复制控制实体根据媒体复制处理实体返回的SDP answer, 构造新的SDP answer通过200 OK消息发送给Dst UE;如
SIP/2.0 200 OK Via:...
Max-Forwards:... From:... To:… Call-ID:... CS叫…
v=0
o=SCFCopy 60000000 60000000 IN IP4 scfcopy.example.com s=
c=IN IP4 mcfcopy.example.com t=0 0
m=video 40020 RTP/AVP 31 32 a=rtpmap:32 MPV層OO a=sendonly
F19: Dst UE收到200 OK消息向媒体复制控制实体返回ACK消息;
F20:媒体复制控制实体向媒体复制处理实体发送ACK消息,媒体复制处 理实体收到ACK向Dst UE发送复制媒体流。
在上述描述的三个应用场景中,业务控制实体利用输入媒体流与输出媒 体流的关联关系来指示媒体处理实体进行媒体流的复制,可以减少现有的 IPTV中的点播的次数,并且可以由源客户端来控制将正在接收的媒体流复制 到哪个或哪些目的客户端,增加了用户的使用体验。本发明实施例的在IP分组网中实现关联媒体流的方法及装置,通过将源 客户端会话信息和目的客户端会话信息进行关联,可以应用于媒体流(如视 频等)的共享、会话媒体流监控等多种场景中。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在 本发明的保护范围之内。
权利要求
1、一种在IP分组网中实现关联媒体流的方法,其特征在于,包括业务提供实体获取第一客户端会话信息和第二客户端会话信息;所述业务提供实体根据所述第一客户端会话信息和所述第二客户端会话信息生成关联关系;所述业务提供实体将所述关联关系发送给媒体处理实体。
2、 如权利要求l所述的方法,其特征在于,所述业务提供实体根据所述 第一客户端会话信息和所述第二客户端会话信息生成关联关系的步骤包括所述业务提供实体根据所述第 一客户端会话信息和所述第二客户端会话 信息生成聚合的SDP信息。
3、 如权利要求2所述的方法,其特征在于,所述第一客户端会话信息为 第一客户端与业务提供实体建立媒体会话的SDP信息,第二客户端会话信息 为第二客户端与业务提供实体建立媒体会话的SDP信息。
4、 如权利要求l所述的方法,其特征在于,所述业务^是供实体根据所述 第一客户端会话信息和所述第二客户端会话信息生成关联关系的步骤包括所述业务提供实体根据所述第一客户端会话信息生成第一 SDP信息,所 述业务提供实体根据所述第二客户端会话信息生成第二 SDP信息。
5、 如权利要求4所述的方法,其特征在于,所述第一客户端会话信息为 第一客户端与业务提供实体建立媒体会话的SDP信息,第二客户端会话信息 为第二客户端与业务提供实体建立媒体会话的SDP信息。
6、 如权利要求2或3所述的方法,其特征在于,所述业务提供实体根据所述第 一客户端会话信息和所述第二客户端会话信息生成关联关系的步骤为在所述聚合的SDP信息中包含至少一个媒体复制组,从每一媒体复制组 中确定一个媒体流作为输入媒体流。
7、 如权利要求6所述的方法,其特征在于,以下述任一种方法来确定媒 体复制组中的一个媒体流为输入媒体流在对媒体复制组中对所述输入媒体流的mid说明中以一预定值进行标示;或在所述媒体复制组中的所述输入媒体流的组号后以一预定值进行标识;或将所述媒体复制组中默认位置的组号所对应的媒体流确定为输入媒体流。
8、 如权利要求2或3所述的方法,其特征在于,所述业务提供实体根据 所述第一客户端会话信息和所述第二客户端会话信息生成关联关系的步骤 为通过复制逻辑来生成所述第一客户端会话信息和所述第二客户端会话信 息中媒体流的关联关系。
9、 如权利要求8所述的方法,其特征在于,所述复制逻辑中确定一个媒 体流为输入媒体流,以及与所述输入4某体流对应的至少一个输出媒体流,所 述输入媒体流和所述输出媒体流是根据其在所述聚合的SDP中的位置信息来 确定的。
10、 如权利要求4或5所述的方法,其特征在于,所述业务提供实体根 据所述第一客户端会话信息和所述第二客户端会话信息生成关联关系的步骤为通过复制逻辑来生成所述第一客户端会话信息和所述第二客户端会话信 息中媒体流的关联关系。
11、 如权利要求IO所述的方法,其特征在于,所述复制逻辑中确定一个 媒体流为输入媒体流,以及与所述输入媒体流对应的至少 一个输出媒体流, 所述输入媒体流是根据其在所述第一 SDP中的位置信息和第一 SDP关联业务 提供实体与媒体处理实体间建立的第一对话(Dialog)来确定的,所述输出媒 体流是根据其在所述第二 SDP中的位置信息和第二 SDP关联业务提供实体与 i某体处理实体间建立的第二对话(Dialog)来确定的。
12、 一种业务控制实体,用于在IP分组网中实现关联:J 某体流,其特征在 于,包括会话信息获取单元,用于获取第一客户端会话信息和第二客户端会话信自 关联处理单元,用于为会话信息获取单元所获取的第一客户端会话信息和第二客户端会话信息生成关联关系;关联关系发送单元,用于将关联处理单元所生成的所述关联关系发送给 媒体处理实体。
13、 如权利要求12所述的业务控制实体,其特征在于, 所述会话信息获取单元获取的所述第一客户端会话信息为第一客户端与业务提供实体建立媒体会话的SDP信息,第二客户端会话信息为第二客户端 与业务提供实体建立媒体会话的SDP信息。
14、 如权利要求13所述的业务控制实体,其特征在于,所述关联处理单元进一步包括SDP信息聚合单元,用于根据所述第一客户端会话信息和所述第二客户 端会话信息生成聚合的SDP信息。
15、 如权利要求14所述的业务控制实体,其特征在于,所述SDP信息聚 合单元进一步包括媒体流类型确定单元,用于在所述聚合的SDP信息中所包含的每个媒体 复制组中确定一个媒体流作为输入媒体流。
16、 如权利要求15所述的业务控制实体,其特征在于,所述媒体流类型 确定单元以下述任一种方式来确定媒体复制组中的 一个媒体流为输入媒体 流在对媒体复制组中对所述输入媒体流的mid说明中以一预定值进行标示; 在所述i某体复制组中的所述输入i某体流的组号后以一预定值进行标识; 将所述媒体复制组中默认位置的组号所对应的媒体流确定为输入媒体流。
17、 如权利要求16所述的业务控制实体,其特征在于,所述关联处理单 元进一步包括会话信息转换单元,用于根据所述第一客户端会话信息生成第一 SDP信 息,根据所述第二客户端会话信息生成第二 SDP信息。
18、 如权利要求12所述的业务控制实体,其特征在于,所述第一客户端 会话信息为第一客户端与业务提供实体建立媒体会话的SDP信息,第二客户 端会话信息为第二客户端与业务提供实体建立媒体会话的SDP信息。
19、 如权利要求13、 14、 15或16所述的业务控制实体,其特征在于, 所述关联处理单元进一步包括复制逻辑生成单元,用于根据所述SDP信息聚合单元或会话信息转换单 元的结果生成表示有所述第一客户端会话信息和所述第二客户端会话信息中 媒体流的关联关系的复制逻辑。
20、 如权利要求19所述的业务控制实体,其特征在于,所述复制逻辑生 成单元进一步包括媒体流类型确定单元,用于在所述复制逻辑中确定至少一个媒体流为输 入媒体流,以及与所述输入i某体流对应的至少一个输出媒体流。
21、 如权利要求20所述的业务控制实体,其特征在于 所述输入媒体流和所述输出媒体流是根据所述聚合的SDP中的位置信息来确定的;或者所述输入媒体流是根据其在所述第一 SDP中的位置信息和第一 SDP关联 业务提供实体与々某体处理实体间建立的第一对话(Dialog)来确定的,所述输 出媒体流是根据其在所述第二 SDP中的位置信息和第二 SDP关联业务提供实 体与媒体处理实体间建立的第二对话(Dialog)来确定的。
22、 如权利要求12至18任一项所述的业务控制实体,其特征在于,所 述业务控制实体为IPTVSCF,所述媒体处理实体为IPTVMF;或者所述业务 控制实体为应用服务器(AS ),所述媒体处理实体为媒体资源功能实体(MRF )。
全文摘要
本发明实施例公开了一种在IP分组网中实现关联媒体流的方法,包括业务提供实体获取第一客户端会话信息和第二客户端会话信息;所述业务提供实体根据所述第一客户端会话信息和所述第二客户端会话信息生成关联关系;所述业务提供实体将所述关联关系发送给媒体处理实体。相应地,本发明实施例还公开了一种业务控制实体。本发明的实施例可以实现在诸如IPTV应用中将不同的客户端的媒体流进行关联,以实现诸如客户端的媒体流共享等功能。
文档编号H04L12/56GK101459572SQ200710032420
公开日2009年6月17日 申请日期2007年12月13日 优先权日2007年12月13日
发明者啸 王 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1