CN101273631B - 一种多方视频通讯媒体流控制系统和方法 - Google Patents

一种多方视频通讯媒体流控制系统和方法 Download PDF

Info

Publication number
CN101273631B
CN101273631B CN2005800516476A CN200580051647A CN101273631B CN 101273631 B CN101273631 B CN 101273631B CN 2005800516476 A CN2005800516476 A CN 2005800516476A CN 200580051647 A CN200580051647 A CN 200580051647A CN 101273631 B CN101273631 B CN 101273631B
Authority
CN
China
Prior art keywords
mentioned
unit
communicating terminal
rtp
media
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
Application number
CN2005800516476A
Other languages
English (en)
Other versions
CN101273631A (zh
Inventor
夏正勋
王金东
叶剑章
潘承锦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Publication of CN101273631A publication Critical patent/CN101273631A/zh
Application granted granted Critical
Publication of CN101273631B publication Critical patent/CN101273631B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/14Systems for two-way working
    • H04N7/15Conference systems
    • H04N7/152Multipoint control units therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23424Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4348Demultiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明的一种多方视频通讯媒体流控制系统和方法,该系统包括媒体流传输控制路径、通讯终端和服务器,其中通讯终端包括RTCP单元、RTP输出单元和RTP输入单元,TS编码单元,I帧编码单元,媒体缓冲单元,TS解码单元,I帧解码单元及流控制单元;服务器包括I帧存储单元,流控制单元及通讯子单元,其中该通讯子单元包括RTCP传输单元、RTP输出单元和RTP输入单元,I帧提取单元,RTP解包单元,媒体缓冲单元及媒体源单元。本发明提出一种将静态图像与TS流混合传输的方法及一种媒体流无缝切换和控制的方法,在降低服务器和通讯终端负载的同时能够提供足够多的信息,简化了多方视频通讯的过程。

Description

一种多方视频通讯媒体流控制系统和方法
技术领域
本发明属于多媒体技术领域,涉及一种多方视频通讯媒体流控制系统和方法,更具体地涉及一种实时多方视频通讯时将静态图像与实时流(Transport Stream)(以下简称TS流)混合传输的系统和方法及媒体流控制和切换的系统和方法。
背景技术
随着网络技术的发展,一种新的媒体技术应运而生,这就是流媒体技术。流媒体是指在网络中使用流式传输技术的连续时基媒体,如音频、视频或多媒体文件。流媒体技术在视频电话和视频会议系统中得到了极大的应用。在现有的视频通讯系统中,各通讯终端通过流媒体服务器进行通讯,在多方视频通讯时,一个通讯终端通常要建若干对通讯链接以接收其他通讯终端的音视频数据,这种方式的服务器作为通讯中心负担很大,作为通讯终端可能并不关心所有参与通讯的通讯终端的视频信息,所以在此基础上业界又提出了若干减轻服务器负担的方法,例如在视频会议系统中,各通讯终端仅接收正在发言的通讯终端的音视频数据。虽然上述方法部分地减轻了服务器的负担,但仍然存在以下不足:
1、通讯终端从一个媒体源切换到另一个媒体源的切换步骤复杂;
2、在一个多方视频通讯过程中,如果通讯终端仅接收某一个通讯源的数据,就会丧失信息的完整性。
发明内容
针对上述情形,本发明的目的在于提出一种多方视频通讯媒体流控制系统和方法。本发明充分考虑了多方视频通讯系统的特点,提出了一种将静态图像与TS流混合传输的系统和方法及一种媒体流无缝切换和控制的系统和方法,在降低服务器和通讯终端负载的同时能够提供足够多的信息,从而简化了多方视频通讯的过程。
本发明主要提出了解决以下三个问题的系统和方法:
1、静态图像和TS流同时传输时,如何识别这2种数据;
2、多方通讯建立时,通讯终端接收其他通讯终端的静态图像,并据此选择其所关心的主媒体源;
3、如何无缝切换主媒体源。
为实现上述目的,本发明的一种多方视频通讯媒体流控制系统,包括媒体流传输控制路径,负责传输音视频数据和控制信号;通讯终端,负责发送和接收上述音视频数据和控制信号;和服务器,负责响应上述控制信号,为视频通讯终端提供媒体流服务;其中上述通讯终端包括:实时传输控制协议(Realtime Transport Control Protocol)(以下简称RTCP)单元、实时传输协议(Realtime Transport Protocol)(以下简称RTP)输出单元和RTP输入单元,TS编码单元,帧内编码帧(I-frame,又叫内部画面(intra picture))(以下简称I帧)编码单元,媒体缓冲单元,TS解码单元,I帧解码单元及流控制单元;上述服务器包括:I帧存储单元,流控制单元及通讯子单元,其中该通讯子单元包括:RTCP传输单元、RTP输出单元和RTP输入单元,I帧提取单元,RTP解包单元,媒体缓冲单元及媒体源单元。
其中,上述通讯终端的RTP输出单元负责将本通讯终端的音视频数据传递给上述服务器中的与本通讯终端对应的通讯子单元的RTP输入单元;
上述通讯终端的RTP输入单元负责从上述服务器接收其他通讯终端的音视频数据;
上述通讯终端的TS编码单元负责本通讯终端的TS流编码;
上述通讯终端的I帧编码单元负责定时对本通讯终端的静态图像进行编码,形成I帧数据输出到该通讯终端的RTP输出单元,并用上述RTP包中一特定的Payload类型来标记该通讯终端的I帧数据;
上述通讯终端的媒体缓冲单元负责接收上述通讯终端的RTP输入单元的数据;
上述通讯终端的TS解码单元负责从上述媒体缓冲单元中提取TS流,并将其解码;
上述通讯终端的I帧解码单元负责从上述媒体缓冲单元中提取上述有特定Payload类型的RTP包,并对I帧数据进行解码,形成静态图像;
上述通讯终端的流控制单元负责与上述服务器的流控制单元通讯,通知该服务器本通讯终端当前要使用的主媒体源或接收该服务器的启动本通讯终端的TS编码单元的指令;
上述服务器的I帧存储单元负责存储各通讯终端的I帧数据;
上述服务器的流控制单元负责控制各通讯终端的音视频流的链接;
上述服务器的通讯子单元负责与上述通讯终端建立通讯链路传递上述音视频数据和控制信号,负责向上述服务器的I帧存储单元输出视频I帧数据,和负责从上述服务器的I帧存储单元和上述服务器的其他通讯子单元的RTP解包单元中获取媒体源数据输入到该通讯子单元的媒体源单元中;其中
上述服务器的通讯子单元的RTP输出单元负责将其他通讯终端的音视频数据传递给与该通讯子单元对应的通讯终端;
上述服务器的通讯子单元的RTP输入单元负责接收上述通讯终端的音视频数据;
上述服务器的通讯子单元的I帧提取单元负责根据上述RTP包的一特定的Payload类型来提取I帧数据,并将其存储到上述服务器的I帧存储单元中;若该I帧提取单元没有找到上述类型的RTP包,则其直接从上述服务器的通讯子单元的RTP解包单元中的数据中提取I帧数据;例如:如果当前视频采用MPEG4编码格式,则可以通过vop_coding_type或group_of_vop_start_code字段找到I帧数据;
上述服务器的通讯子单元的RTP解包单元负责在过滤掉上述服务器的通讯子单元的I帧提取单元需要的数据包后,将接收到的音视频数据的RTP包头移除,并将其输出到该通讯子单元的媒体缓冲单元中;
上述服务器的通讯子单元的媒体缓冲单元负责接收上述服务器的通讯子单元的RTP解包单元输出的数据;
上述服务器的通讯子单元的媒体源单元负责从上述服务器的I帧存储单元和与其他通讯终端对应的通讯子单元的媒体缓冲单元中获取与该通讯子单元对应的通讯终端需要的音视频数据。
此外,上述通讯终端的RTP输出单元分别与上述通讯终端的TS编码单元及I帧编码单元连接;
上述通讯终端的RTP输入单元与上述通讯终端的媒体缓冲单元连接;
上述通讯终端的媒体缓冲单元分别与上述通讯终端的TS解码单元及I帧解码单元连接;及
上述服务器的通讯子单元的I帧提取单元分别与上述服务器的I帧存储单元、上述服务器的通讯子单元的RTP输入单元及RTP解包单元连接;
上述服务器的通讯子单元的RTP解包单元分别与上述服务器的通讯子单元的RTP输入单元、I帧提取单元及媒体缓冲单元连接;
上述服务器的通讯子单元的媒体源单元分别与上述服务器的通讯子单元的RTP输出单元、上述服务器的I帧存储单元及流控制单元连接。
其中,上述通讯终端通过定义RTP包中一特定的负载类型(以下简称Payload类型)来标记该通讯终端的I帧数据,该类型的RTP包仅包含该通讯终端的音视频数据的I帧数据;由于是通讯系统,因此上述通讯终端与服务器均为双向的音视频流通讯;在多方视频通讯建立时,上述服务器包含多个上述通讯子单元,且每一个上述通讯子单元与每一个上述通讯终端相对应;在多方视频通讯建立后,上述通讯终端与服务器至少可以通过RTP/RTCP传输通道传输音视频数据。
为实现上述目的,本发明的一种多方视频通讯媒体流控制方法,对于静态图像与TS流混合传输的方法包括以下步骤:
步骤101:通讯终端的RTP输出\输入单元与服务器中的与该通讯终端对应的通讯子单元的RTP输入\输出单元建立一对数据通讯链路,其中上述静态图像与上述TS流都通过这对数据通讯链路传输;
步骤102:上述通讯终端的I帧编码单元定时将上述静态图像编码为I帧数据,并将其传输到上述通讯终端的RTP输出单元中;
步骤103:如果上述通讯终端的RTP输出单元接收到上述I帧编码单元中的I帧数据,则将其封装成有特定Payload类型的RTP包,并立即发送;如果上述通讯终端的RTP输出单元接收到的是上述通讯终端的TS编码单元的数据,则将其封装成RTP包后,按时间戳(以下简称TimeStamp)发送;其中上述特定Payload类型的RTP包区别于上述TS流的RTP包;
步骤104:如果上述服务器中的与上述各通讯终端对应的通讯子单元的RTP输入单元接收到上述特定Payload类型的RTP包,则将上述I帧数据提取出来并将其存储到服务器中的I帧存储单元中;如果接收到的是TS流数据,则经上述通讯子单元的RTP解包单元去除包头后,将其存储在上述通讯子单元的媒体缓冲单元内;
步骤105:上述服务器中的与上述各通讯终端对应的通讯子单元的媒体源单元定时从上述I帧存储单元中获取其他通讯终端的I帧数据,且从上述各通讯终端确定的主媒体源所对应的通讯子单元的媒体缓冲单元中获取上述TS流数据;
步骤106:如果上述服务器中的与上述各通讯终端对应的通讯子单元的RTP输出单元接收到上述特定Payload类型的RTP包,则立即发送;如果接收到的是上述TS流的RTP包,则按上述TimeStamp发送;
步骤107:如果上述通讯终端的RTP输入模块接收到上述特定Payload类型的RTP包,则将其传送给上述通讯终端的I帧解码单元,形成其他通讯终端的静态图像;如果接收到的是上述TS流的RTP包,则将其传送给上述通讯终端的TS解码单元,形成上述主媒体源的TS流。
其中上述步骤101中的数据通讯链路例如可以为RTP/RTCP传输通道。
为实现上述目的,本发明的一种多方视频通讯媒体流控制方法,对于通过通讯终端接收到的静态图像选择主媒体源的方法包括以下步骤:
步骤201:最初开始多方视频通讯时,通讯终端仅进行I帧编码,I帧数据通过特定Payload类型的RTP包定时发送给服务器;
步骤202:上述服务器接收各通讯终端的上述I帧数据,并将其存储在上述服务器的I帧存储单元中;
步骤203:上述服务器中的与上述各通讯终端对应的通讯子单元从上述I帧存储单元中获取其他通讯终端的I帧数据并发送给该通讯终端;
步骤204:上述通讯终端根据显示的上述其他通讯终端的静态图像,选择主媒体源,之后该通讯终端的流控制单元通知上述服务器的流控制单元该通讯终端选择的主媒体源;
步骤205:上述服务器检查上述通讯终端所选择的主媒体源是否在传送TS流,如果没有,则通知该主媒体源的流控制单元启动TS编码单元;
步骤206:上述服务器的流控制单元发送控制信号给与上述通讯终端对应的通讯子单元的媒体源单元让其从与上述主媒体源对应的通讯子单元的媒体缓冲单元中获取TS流数据。
其中上述主媒体源为与上述通讯终端不同的另一通讯终端。
为实现上述目的,本发明的一种多方视频通讯媒体流控制方法,对于一通讯终端从当前的主媒体源切换至另一主媒体源的方法包括以下步骤:
步骤301:通讯终端Ax的流控制单元通知服务器的流控制单元将其当前的主媒体源由A1、A2、...、An切换至Ay
步骤302:上述服务器检查上述主媒体源Ay是否在传送TS流,如果没有,则通知该主媒体源Ay的流控制单元启动该主媒体源Ay的TS编码单元;
步骤303:上述服务器的流控制单元发送控制信号给与上述通讯终端Ax对应的通讯子单元的媒体源单元让其从与上述主媒体源Ay对应的通讯子单元的媒体缓冲单元中获取TS流数据。
其中,上述当前的主媒体源A1、A2、...、An与上述主媒体源Ay为与上述通讯终端Ax互不相同的通讯终端;上述下标x、y及n互不相同。
与现有的视频通讯系统相比,采用本发明具有以下优点:
1、在初期建立多方视频通讯时,通讯终端仅定时传输视频I帧数据,从而可以缩短建立多方视频通讯的时间;
2、通讯终端可以在显示定时更新的其他通讯终端的静态图像的同时接收当前的通讯终端关心的通讯终端的主媒体源TS流数据,可以在节约带宽的同时保证获取的信息量最大;
3、与其他媒体流切换技术相比,本发明了建立独立于媒体源的RTP/RTCP传输通道,在传输时不需要进行TimeStamp及同步源标识(Synchronization Source identifiers)(以下简称SSRC)的变换。
为让本发明的上述和其它目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合说明书附图,作详细说明如下。
附图说明
图1为本发明的系统构成图;
图2为本发明一较佳实施例的一种应用环境示意图;
图3为本发明所述系统中三方通讯时的系统处理示意图;
图4为本发明的通讯终端定时显示其他通讯终端的静态图像时的大致处理流程图;
图5为本发明的通讯终端A确认通讯终端B作为其主媒体源时的处理流程图;
图6为本发明的通讯终端A将其主媒体源由通讯终端B切换至通讯终端C时的处理流程图。
具体实施方式
下面结合附图对本发明的技术方案的具体实施作进一步的详细说明,但其并不作为对本发明的限定。
图1为本发明的系统构成图。如图1所示,本发明所述系统包括媒体流传输控制路径、通讯终端和服务器,其中上述通讯终端包括:RTCP单元、RTP输出单元和RTP输入单元,TS编码单元,I帧编码单元,媒体缓冲单元,TS解码单元,I帧解码单元及流控制单元;上述服务器包括:I帧存储单元,流控制单元及通讯子单元,其中该通讯子单元包括:RTCP传输单元、RTP输出单元和RTP输入单元,I帧提取单元,RTP解包单元,媒体缓冲单元及媒体源单元。
图2为本发明一较佳实施例的一种应用环境示意图。如图2所示,通讯终端A、B、C分别通过移动网络、因特网(Internet)、企业内部网(Intranet)与视频通讯系统服务器相连,当多方视频通讯开始后(系统处理图如图3所示),服务器创建3个通讯子单元分别与上述3个通讯终端A、B、C一一对应;上述每一个通讯终端与上述每一个通讯子单元建立RTCP控制链接和RTP输入\输出链接来传输音视频数据,并建立流控制链接来传送主媒体源控制信息。上述通讯终端A接收从上述服务器发送过来的音视频数据,提取其中的I帧数据以形成其他通讯终端的定时更新的静态图像,并根据显示画面确定其主媒体源为上述通讯终端B,所以上述通讯终端B需同时输出TS流数据和定时的静态图像数据,上述通讯终端A在接收通讯终端B、C的定时的静态图像数据的同时接收上述通讯终端B的TS流数据。当上述通讯终端A选择上述通讯终端C作为其主媒体源时,上述服务器能够将TS流顺利地从上述通讯终端B切换到上述通讯终端C,而不需上述通讯终端A作除切换动作之外的操作,即为无缝切换。
结合上述实时例,本发明能够顺利实施后必须达到以下功能:
1、上述通讯终端B、C发送的I帧数据,上述通讯终端A能够收到并显示;
2、上述通讯终端A根据显示图像,确定上述通讯终端B为其主媒体源后,通讯终端B开始发送其TS流,上述通讯终端A能够在接收上述通讯终端C发送的静态图像的同时,接收上述通讯终端B的TS流;
3、若上述通讯终端A选择上述通讯终端C作为其主媒体源时,上述服务器能够在上述通讯终端A无察觉的情况下,将TS流由通讯终端B切换到通讯终端C。
为实现上述目的,且为节约带宽、加快通讯建立速度,在多方视频通讯建立时,参与通讯的各通讯终端仅定时传输I帧数据,各通讯终端能够显示其他各通讯终端的定时更新的静态图像,此过程的大致流程如图4所示,请同时参照图2、图3和图4其具体实施步骤如下:
步骤一、多方视频通讯建立时,服务器为各通讯终端创建与其对应的通讯子单元,通讯终端与通讯子单元建立RTP/RTCP传输通道;
步骤二、通讯终端A、B、C的I帧编码单元周期性地(例如每隔10秒)获取本通讯终端当前的静态图像,将其编码成I帧数据,并传递给上述各通讯终端的RTP输出单元;
步骤三、上述通讯终端A、B、C的RTP输出单元接收到上述I帧编码单元的数据时,为该数据封装RTP包头,其中此RTP包头的SSRC字段与该通讯终端TS流数据的RTP包头的SSRC一致,其标记该数据的来源;同时,该RTP包头的Payload字段定义为一特定的7bit的数据,以标记该静态图像数据包区别于TS流的数据;
步骤四、上述通讯终端的RTP输出单元对上述静态图像数据加上RTP包头后,立即通过上述RTP传输通道将其发送给上述服务器中的与上述各通讯终端A、B、C对应的通讯子单元A、B、C的RTP输入单元;
步骤五、上述服务器中的与上述各通讯终端A、B、C对应的通讯子单元A、B、C的I帧提取单元周期性地从其通讯子单元的RTP输入单元中根据RTP包头的Payload字段提取静态图像数据,并将其传送给上述服务器的I帧存储单元;
步骤六、上述服务器的I帧存储单元根据各数据包的RTP包头中不同的SSRC字段来区分来自不同通讯终端的静态图像数据;
步骤七、上述服务器中的与上述各通讯终端A、B、C对应的通讯子单元A、B、C的媒体源单元周期性地从上述I帧存储单元中获取其他通讯终端的静态图像数据,并将其立即传送给其通讯子单元的RTP输出单元,该RTP输出单元立即将此类数据传输给与其通讯子单元相对应的通讯终端的RTP输入单元;
步骤八、上述通讯终端A、B、C的媒体缓冲单元从其通讯终端的RTP输入单元中接收数据,根据其RTP包的Payload字段提取静态图像数据,并根据上述RTP包的SSRC字段来区分其他不同通讯终端的数据,以组成不同的各通讯终端的完整的I帧数据;
步骤九、上述通讯终端A、B、C的I帧解码单元对上述I帧数据进行解码,并根据上述SSRC字段来区分显示解码图像的不同来源,这样上述通讯通端A、B、C就可以看到其他通讯终端的定时更新的静态图像。
对于上述通讯终端A来说,现在可以看到定时更新的通讯终端B、C的静态图像,并可以根据上述通讯终端的B、C的静态图像,选择自己感兴趣的主媒体源B,这样通讯终端A就可以在接受上述通讯终端B、C的定时更新的静态图像的同时,接收通讯终端B的TS流,此过程的大致流程如图5所示,请同时参照图2、图3和图5,此过程的具体实施步骤如下:
步骤一、通讯终端A选择通讯终端B作为其当前的主媒体源,通讯终端A的流控制单元发送控制信号给服务器的流控制单元要求通讯终端A当前的主媒体源为通讯终端B;
步骤二、上述服务器的流控制单元接收到上述通讯终端A确定主媒体源为上述通讯终端B的请求后,首先查看当前的通讯终端B的TS流访问计数是否为0,若上述通讯终端B的TS流访问计数为0,表明该通讯终端B才开始建立多方视频通讯,则上述服务器的流控制单元给上述通讯终端B的流控制单元发送TS流开始请求;否则执行步骤六;
步骤三、上述通讯终端B的流控制单元接收到上述服务器发送的TS流开始请求后,通讯终端B的流控制单元通知其通讯终端的TS编码单元开始工作,该TS编码单元对当前的通讯终端B的音视频数据进行编码,并将编码后的数据传递给上述通讯终端B的RTP输出单元,该RTP输出单元为编码后的数据加上RTP包头,并按TimeStamp发送;
步骤四、上述服务器中的通讯子单元B的RTP输入单元接收到上述通讯终端B发送的TS流数据后,将其传递给该通讯子单元的RTP解包单元,其中根据RTP包的Payload字段来区别是静态图像数据还是TS流数据;
步骤五、上述服务器中的通讯子单元B的RTP解包单元,去除上述TS流数据的RTP包头后将数据存储在该通讯子单元的媒体缓冲单元中;
步骤六、上述服务器的流控制单元通知上述通讯子单元A的媒体源单元从通讯子单元B的媒体缓冲单元中取数据,且上述通讯终端B的TS流访问计数加1;在开始取数据时都是从TS流的I帧数据开始取,如果是MPEG4压缩编码,可以通过vop_coding_type或group_of_vop_start_code字段找到I帧;
步骤七、上述服务器的通讯子单元A的媒体源单元从上述通讯子单元B的媒体缓冲单元中取得TS流数据,并将其传递给该通讯子单元的RTP输出单元;
步骤八、上述服务器的通讯子单元A的RTP输出单元根据当前与通讯终端A建立的RTP会话属性,为上述TS流数据加上RTP包头,即此时RTP包头的SSRC字段为通讯终端A与通讯子单元A确立RTP会话的SSRC,其中TimeStamp和序列号(以下简称SqucneceNumber)与数据源的来源无关;该通讯子单元的RTP输出单元根据TimeStamp发送上述TS流数据;
步骤九、上述通讯终端A的RTP输入单元收到上述TS流数据后将其传送给其通讯终端的TS解码单元,该TS解码单元对上述通讯终端B的实时音视频流数据进行解码操作,并显示图像和播放声音。
这样上述通讯终端A就能够在接收上述通讯终端B、C的定时更新的静态图像的同时接收通讯终端B的实时音视频数据并播放。当该通讯终端A想将当前的主媒体源由上述通讯终端B切换到上述通讯终端C时,仅需根据静态图像选择上述通讯终端C,上述服务器将通讯终端A的主媒体源由上述通讯终端B切换到上述通讯终端C。对于上述通讯终端A来说,在其做出选择不久,TS流的显示窗口将显示通讯终端C的图像,并播放通讯终端C的声音,此过程大致处理流程如图6所示。请同时参照图2、图3和图6,此过程具体的实施步骤如下:
步骤一、通讯终端A的流控制单元向服务器的流控制单元发送流切换指令,要求将其主媒体源由通讯终端B切换到通讯终端C;
步骤二、上述服务器的流控制单元接收到上述通讯终端A的流切换指令后,首先查看当前的通讯终端C的TS流访问计数,如果上述通讯终端C的TS流访问计数>0,表明该通讯终端C已经开始传送其TS流,则执行步骤三;如果上述通讯终端C的TS流访问计数为0,表明该通讯终端C没有传送TS流,则上述服务器的流控制单元给上述通讯终端C的流控制单元发送TS流开始请求,如前面所述步骤,上述通讯终端C开始发送其TS流,且上述通讯子单元C的媒体缓冲单元中存放该通讯终端C的实时音视频数据;
步骤三、上述服务器的流控制单元将上述通讯终端B的TS流访问计数减1,并检查当前的通讯终端B的TS流访问计数是否为0,如果计数为0,表明没有通讯终端需要通讯终端B的TS流,则上述服务器的流控制单元通知上述通讯终端B的流控制单元停止其当前的TS流编码操作,该通讯终端B的流控制单元向其通讯终端的TS编码单元发送停止实时编码指令,上述通讯终端B的TS编码单元停止工作;否则,执行步骤四;
步骤四、上述服务器的流控制单元通知上述通讯子单元A的媒体源单元从上述通讯子单元C的媒体缓冲单元中取数据,上述通讯终端C的TS流访问计数加1;其中开始取数据时都是从TS流的I帧数据开始取,如果是MPEG4压缩编码,可以通过vop_coding_type或group_of_vop_start_code字段找到I帧;
步骤五、上述服务器的通讯子单元A的媒体源单元从上述通讯子单元C的媒体缓冲单元中取得TS流数据并将其传送给其通讯子单元的RTP输出单元;
步骤六、上述服务器的通讯子单元A的RTP输出单元根据当前与上述通讯终端A建立的RTP会话属性,为上述TS流数据加上RTP包头,即此时RTP包头的SSRC字段为上述通讯终端A与上述通讯子单元A确立RTP会话的SSRC,TimeStamp和SequenceNumber与数据源的来源无关,该通讯子单元的RTP输出单元根据TimeStamp发送上述TS流数据;
步骤七、上述通讯终端A的RTP输入单元收到上述TS流数据后将其传送给其通讯终端的TS解码单元,该TS解码单元对上述通讯终端C的实时音视频流数据进行解码操作,并显示图像、播放声音。
这样服务器就能顺利地将上述通讯终端A的主媒体源由通讯终端B切换到通讯终端C。本发明涉及的媒体流切换方法的特点为:
1、面向终端建立一独立的RTP/RTCP传输通道,与媒体源无关;
2、针对实时流的特点,在音视频流切换时,只要选择不同的数据源即可完成切换,而不需要对RTP会话中的TimeStamp、SequenceNumber、SSRC作变换;
3、不论是一个还是多个流切换到同一媒体源上,对于媒体源来说都是一样的。
当然,本发明还可有其他多种实施例,例如采用直接采用传送控制协议(Transmission Control Protocol)(以下简称TCP协议)传输静态图像数据,或将静态图像数据和TS流数据用不同的传输通道传输。在不背离本发明精神及其实质的情况下,所属技术领域的技术人员可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

Claims (8)

1.一种多方视频通讯媒体流控制系统,包括媒体流传输控制路径,负责传输音视频数据和控制信号;通讯终端,负责发送和接收上述音视频数据和控制信号;和服务器,负责响应上述控制信号,为视频通讯终端提供媒体流服务,其特征在于
上述通讯终端包括:
实时传输控制协议单元、实时传输协议输出单元和实时传输协议输入单元,其中该实时传输协议输出单元负责将本通讯终端的音视频数据传递给上述服务器中的与本通讯终端对应的通讯子单元的实时传输协议输入单元,该实时传输协议输入单元负责从上述服务器接收其他通讯终端的音视频数据;
实时流编码单元,负责本通讯终端的实时流编码;
帧内编码帧编码单元,负责定时对本通讯终端的静态图像进行编码,形成帧内编码帧数据输出到本通讯终端的实时传输协议输出单元,并用实时传输协议包中一特定的负载类型来标记本通讯终端的帧内编码帧数据;
媒体缓冲单元,负责接收本通讯终端的实时传输协议输入单元的数据;
实时流解码单元,负责从上述媒体缓冲单元中提取实时流,并将其解码;
帧内编码帧解码单元,负责从上述媒体缓冲单元中提取上述有特定负载类型的实时传输协议包,并对帧内编码帧数据进行解码,形成静态图像;及
流控制单元,负责与上述服务器的流控制单元通讯,通知该服务器本通讯终端当前要使用的主媒体源或接收该服务器的启动本通讯终端的实时流编码单元的指令;
上述服务器包括:
帧内编码帧存储单元,负责存储上述各通讯终端的帧内编码帧数据;
流控制单元,负责控制上述各通讯终端的音视频流的链接;及
通讯子单元,负责与上述各通讯终端建立通讯链路传递上述音视频数据和控制信号,负责向上述服务器的帧内编码帧存储单元输出视频帧内编码帧数据,和负责从上述服务器的帧内编码帧存储单元和上述服务器的其他通讯子单元的实时传输协议解包单元中获取媒体源数据输入到该通讯子单元的媒体源单元中,其中该通讯子单元包括:
实时传输控制协议传输单元、实时传输协议输出单元和实时传输协议输入单元,其中该实时传输协议输出单元负责将上述其他通讯终端的音视频数据传递给与该通讯子单元对应的通讯终端,该实时传输协议输入单元负责接收上述各通讯终端的音视频数据;
帧内编码帧提取单元,负责根据上述实时传输协议包的一特定的负载类型来提取帧内编码帧数据,并将其存储到上述服务器的帧内编码帧存储单元中;若该帧内编码帧提取单元没有找到上述类型的实时传输协议包,则其直接从上述服务器的通讯子单元的实时传输协议解包单元中的数据中提取帧内编码帧数据;
实时传输协议解包单元,负责在过滤掉上述服务器的通讯子单元的帧内编码帧提取单元需要的数据包后,将接收到的音视频数据的实时传输协议包头移除,并将其输出到该通讯子单元的媒体缓冲单元中;
媒体缓冲单元,负责接收上述服务器的通讯子单元的实时传输协议解包单元输出的数据;及
媒体源单元,负责从上述服务器的帧内编码帧存储单元和与其他通讯终端对应的通讯子单元的媒体缓冲单元中获取与该通讯子单元对应的通讯终端需要的音视频数据;
其中,上述本通讯终端的实时传输协议输出单元分别与上述本通讯终端的实时流编码单元及帧内编码帧编码单元连接;
上述本通讯终端的实时传输协议输入单元与上述通讯终端的媒体缓冲单元连接;
上述本通讯终端的媒体缓冲单元分别与上述本通讯终端的实时流解码单元及帧内编码帧解码单元连接;及
上述服务器的通讯子单元的帧内编码帧提取单元分别与上述服务器的帧内编码帧存储单元、上述服务器的通讯子单元的实时传输协议输入单元及实时传输协议解包单元连接;
上述服务器的通讯子单元的实时传输协议解包单元分别与上述服务器的通讯子单元的实时传输协议输入单元、帧内编码帧提取单元及媒体缓冲单元连接;
上述服务器的通讯子单元的媒体源单元分别与上述服务器的通讯子单元的实时传输协议输出单元、上述服务器的帧内编码帧存储单元及流控制单元连接。
2.根据权利要求1所述的系统,其特征在于
上述通讯终端通过定义实时传输协议包中一特定的负载类型来标记该通讯终端的帧内编码帧数据,该类型的实时传输协议包仅包含该通讯终端的音视频数据的帧内编码帧数据;
上述通讯终端与服务器均为双向的音视频流通讯;
多方视频通讯建立时,上述服务器包含多个上述通讯子单元,且每一个上述通讯子单元与每一个上述通讯终端相对应;
多方视频通讯建立后,上述通讯终端与服务器通过实时传输协议/实时传输控制协议传输通道传输音视频数据。
3.一种多方视频通讯媒体流控制方法,其特征在于静态图像与实时流混合传输的方法包括以下步骤:
步骤101:通讯终端的实时传输协议输出\输入单元与服务器中的与该通讯终端对应的通讯子单元的实时传输协议输入\输出单元建立一对数据通讯链路,其中上述静态图像与上述实时流都通过这对数据通讯链路传输;
步骤102:上述通讯终端的帧内编码帧编码单元定时将上述静态图像编码为帧内编码帧数据,并将其传输到上述通讯终端的实时传输协议输出单元中;
步骤103:如果上述通讯终端的实时传输协议输出单元接收到上述帧内编码帧编码单元中的帧内编码帧数据,则将其封装成有特定负载类型的实时传输协议包,并立即发送;如果上述通讯终端的实时传输协议输出单元接收到的是上述通讯终端的实时流编码单元的数据,则将其封装成实时传输协议包后,按时间戳发送;其中上述特定负载类型的实时传输协议包区别于上述实时流的实时传输协议包;
步骤104:如果上述服务器中的与上述各通讯终端对应的通讯子单元的实时传输协议输入单元接收到上述特定负载类型的实时传输协议包,则将上述帧内编码帧数据提取出来并将其存储到服务器中的帧内编码帧存储单元中;如果接收到的是实时流数据,则经上述通讯子单元的实时传输协议解包单元去除包头后,将其存储在上述通讯子单元的媒体缓冲单元内;
步骤105:上述服务器中的与上述各通讯终端对应的通讯子单元的媒体源单元定时从上述帧内编码帧存储单元中获取其他通讯终端的帧内编码帧数据,且从上述各通讯终端确定的主媒体源所对应的通讯子单元的媒体缓冲单元中获取上述实时流数据;
步骤106:如果上述服务器中的与上述各通讯终端对应的通讯子单元的实时传输协议输出单元接收到上述特定负载类型的实时传输协议包,则立即发送;如果接收到的是上述实时流的实时传输协议包,则按上述时间戳发送;
步骤107:如果上述通讯终端的实时传输协议输入单元接收到上述特定负载类型的实时传输协议包,则将其传送给上述通讯终端的帧内编码帧解码单元,形成其他通讯终端的静态图像;如果接收到的是上述实时流的实时传输协议包,则将其传送给上述通讯终端的实时流解码单元,形成上述主媒体源的实时流。
4.根据权利要求3所述的方法,其特征在于上述步骤101中的数据通讯链路为实时传输协议/实时传输控制协议传输通道。
5.一种多方视频通讯媒体流控制方法,其特征在于通过通讯终端接收到的静态图像选择主媒体源的方法包括以下步骤:
步骤201:最初开始多方视频通讯时,各通讯终端仅进行帧内编码帧编码,帧内编码帧数据通过特定负载类型的实时传输协议包定时发送给服务器;
步骤202:上述服务器接收各通讯终端的上述帧内编码帧数据,并将其存储在上述服务器的帧内编码帧存储单元中;
步骤203:上述服务器中的与上述各通讯终端对应的通讯子单元从上述帧内编码帧存储单元中获取其他通讯终端的帧内编码帧数据并发送给一通讯终端;
步骤204:上述通讯终端根据显示的上述其他通讯终端的静态图像,选择主媒体源,之后上述通讯终端的流控制单元通知上述服务器的流控制单元上述通讯终端选择的主媒体源;
步骤205:上述服务器检查上述通讯终端所选择的主媒体源是否在传送实时流,如果没有,则通知该主媒体源的流控制单元启动实时流编码单元;
步骤206:上述服务器的流控制单元发送控制信号给与上述通讯终端对应的通讯子单元的媒体源单元让其从与上述主媒体源对应的通讯子单元的媒体缓冲单元中获取实时流数据。
6.根据权利要求5所述的方法,其特征在于上述主媒体源为与上述通讯终端不同的另一通讯终端。
7.一种多方视频通讯媒体流控制方法,其特征在于一通讯终端从当前的主媒体源切换至另一主媒体源的方法包括以下步骤:
步骤301:通讯终端Ax的流控制单元通知服务器的流控制单元将其当前的主媒体源由A1、A2、...、An切换至Ay
步骤302:上述服务器检查上述主媒体源Ay是否在传送实时流,如果没有,则通知该主媒体源Ay的流控制单元启动该主媒体源Ay的实时流编码单元;
步骤303:上述服务器的流控制单元发送控制信号给与上述通讯终端Ax对应的通讯子单元的媒体源单元让其从与上述主媒体源Ay对应的通讯子单元的媒体缓冲单元中获取实时流数据。
8.根据权利要求7所述的方法,其特征在于
上述当前的主媒体源A1、A2、...、An与上述主媒体源Ay为与上述通讯终端Ax互不相同的通讯终端;
上述下标x、y及n互不相同。
CN2005800516476A 2005-12-12 2005-12-12 一种多方视频通讯媒体流控制系统和方法 Active CN101273631B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2005/002152 WO2007068139A1 (fr) 2005-12-12 2005-12-12 Systeme et procede pour la commande de flux multimedias sur la communication video a plusieurs abonnes

Publications (2)

Publication Number Publication Date
CN101273631A CN101273631A (zh) 2008-09-24
CN101273631B true CN101273631B (zh) 2010-04-21

Family

ID=38162531

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2005800516476A Active CN101273631B (zh) 2005-12-12 2005-12-12 一种多方视频通讯媒体流控制系统和方法

Country Status (2)

Country Link
CN (1) CN101273631B (zh)
WO (1) WO2007068139A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101083605B (zh) * 2007-08-01 2011-07-06 华为技术有限公司 一种媒体源快速切换的方法、系统和装置
CN101562911B (zh) * 2008-04-16 2011-06-15 北京信威通信技术股份有限公司 一种支持端到端应用的无线接入系统空中接口rtp代理方法
CN101867764A (zh) * 2010-04-21 2010-10-20 崔崧 移动多方视频通话系统
CN106341642A (zh) * 2016-08-29 2017-01-18 安徽云图信息技术有限公司 大数据多维的可视化系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002045398A1 (fr) * 1999-06-14 2002-06-06 Ginganet Corporation Systeme de teleconference
CN1510919A (zh) * 2002-12-23 2004-07-07 ����ͨѶ�ɷ����޹�˾ 会议电视多点控制设备中数据处理的方法及装置
CN1581967A (zh) * 2003-08-11 2005-02-16 英业达股份有限公司 视频会议中切换通信联机的系统及其方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002045398A1 (fr) * 1999-06-14 2002-06-06 Ginganet Corporation Systeme de teleconference
CN1510919A (zh) * 2002-12-23 2004-07-07 ����ͨѶ�ɷ����޹�˾ 会议电视多点控制设备中数据处理的方法及装置
CN1581967A (zh) * 2003-08-11 2005-02-16 英业达股份有限公司 视频会议中切换通信联机的系统及其方法

Also Published As

Publication number Publication date
WO2007068139A1 (fr) 2007-06-21
CN101273631A (zh) 2008-09-24

Similar Documents

Publication Publication Date Title
CN100553329C (zh) 图像编码数据的转换方法以及装置、系统
CN101218820B (zh) 中继装置和通信系统
US9596468B2 (en) System and method for transferring data
CN1910926B (zh) 用于处理视频通信差错的方法和装置
CN101271720B (zh) 一种手机流媒体音视频的同步方法
US8760492B2 (en) Method and system for switching between video streams in a continuous presence conference
CN100550999C (zh) 一种数字频道快速切换方法和系统以及辅助频道生成设备
US8253775B2 (en) Multipoint conference system, multipoint conference method, and program
KR101122143B1 (ko) 수신기 버퍼 아키텍처를 나타내는 버퍼 파라미터의 시그널링
CN101116306A (zh) 在分组交换网络上的按需多频道流会话
CN103327287B (zh) 一种会议信号播放方法和装置、视频会议终端、移动设备
US20030143985A1 (en) Method, apparatus, and system for transmitting moving image data
CN101536088A (zh) 用于提供冗余管理的系统和方法
CN100531361C (zh) 控制信息的转换装置和控制信息的转换方法
CN101273631B (zh) 一种多方视频通讯媒体流控制系统和方法
CN105191316A (zh) 用于切换经压缩的视频流的切换装置、具有切换装置的会议系统以及用于切换经压缩的视频流的过程
WO2022100528A1 (zh) 音视频转发方法、装置、终端与系统
CN105979284B (zh) 移动终端视频共享方法
CN101755442A (zh) 多媒体提供业务
EP2557780A2 (en) Method and system for switching between video streams in a continuous presence conference
US20090174762A1 (en) Mobile communication apparatus
CN100366080C (zh) 在会议电视系统中实现单画面和多画面切换的方法
CN1976376B (zh) 一种呼叫会话的方法、ip电话系统及ip电话终端
WO2009145293A1 (ja) サーバ装置と通信方法ならびにプログラム
CN102377977A (zh) 一种视频通话过程中对视频的处理方法、装置及系统

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
CI01 Publication of corrected invention patent application

Correction item: Patentee

Correct: ZTE Corporation

False: ZTE Corp.

Number: 16

Volume: 26

CI03 Correction of invention patent

Correction item: Patentee

Correct: ZTE Corporation

False: ZTE Corp.

Number: 16

Page: Description

Volume: 26

ERR Gazette correction

Free format text: CORRECT: PATENTEE; FROM: ZTE CORP. TO: ZTE CORPORATION