专利名称:一种基于应用层组播的视频会议直播系统的制作方法
技术领域:
本发明属于应用层组播和流媒体技术领域,具体涉及一种基于应用层组播的视频 会议直播系统。
背景技术:
随着互联网的迅速发展,越来越多的应用对组播通信提出了需求。组播 (multicast)是一到多或者多到多的多方通信形式,远程会议、交互式仿真、分布式内容系 统、多方游戏等应用都对组播业务(multicast service)提出了需求。在0SI模型的网络层或者应用层实现业务是目前组播业务的两种实现体制。传统 的IP网络层组播的扩展性和网络管理等方面都存在许多问题,在互联网上尚未广泛部署, 而应用层组播的一个很大的好处是通过端系统进行数据复制和转发。应用层组播具有只需 要改变端系统,不需要路由器的支持,便于实现和推广以及便于针对特定应用优化的优点。流媒体(Streaming Media)指在网络上按时间先后次序传输和播放的连续音视频 数据流,流媒体在播放前不需要下载整个文件,只将部分内容缓存,使得流媒体数据边传送 边播放,节省下载的等待时间和存储空间。流媒体技术可广泛应用于网上的新闻发布、在线直播、网络广告、远程教育、视频 会议等,目前应用最直接的是网上直播。流媒体业务的特点是数据传输量大、实施性强、时间同步要求严格,并要求网络提 供保证的服务质量,但是基于TCP/IP的传输在带宽、抖动、延时等方面都不能提供有效的 支持,不能保证通信的服务质量,随着接入主机数目的增加,对服务器端的性能要求越来越 高,占用越来越多的服务器资源,例如带宽。传统的点到点的单播通信方式会消耗大量的网络带宽,并且扩展性和部署性差, 无法适应大规模网络下用户较多的数据传输需求。所以,研究人员提出了应用层组播(ALM Application Layer Multicast)的概念,其基本思想是指在应用层而不是网络层上实现组 播能力,由端系统而不是路由器实现组播转发功能,部署更容易,可以支持大量的组,扩展 性好,可以很好地解决组播地址分配不足的问题,为组播的大范围开展与应用开辟了新的 途径。
发明内容
针对上述的不足,本发明提出了一种低成本高质量的基于应用层组播的视频会议 直播系统,在当前网络条件下,通过引入应用层组播模型,视频会议终端之间通过组播方式 传输流媒体数据,达到流媒体高质量传输的目的,提供了系统的实用性和灵活性,同时也简 化了系统的部署。为了实现发明目的,采用的技术方案如下一种基于应用层组播的视频会议直播系统,包括会议用户终端和会议服务器终 端;会议服务器终端是本系统的管理和控制中心,它负责会议的管理和服务功能,负责创建会议组播,处理用户加入会议,用户身份认证。会议用户终端一方面与会议服务器终端进行 控制信息交互,另一方面同时进行会议音视频的采集、预处理,以及发送,接收,转发流媒体 数据。具体包括信息管理模块、流媒体处理模块、音视频信息采集模块、应用层组播协议 管理模块、用户控制管理模块、视频会议服务模块、服务器控制管理模块。音视频信息采集模块用于视频和音频信息采集,由一个或几个用于采集视频信息 的摄像机和一个声音录入系统,负责采集终端的音视频信号,为流媒体处理模块提供数据 源;应用层组播协议管理模块用于组成和管理应用层组播覆盖网络;流媒体处理模块包括预处理模块、缓冲区管理、数据调度模块;信息管理模块包括用户信息管理、会议信息管理、链路状态管理;用户控制管理模块用于发送控制信息,例如加入或退出会议组播,申请发言等;视频会议服务模块用于会议的发布、管理,身份认证,管理会议参加者信息以及会 议信息;服务器控制管理模块用于控制、协调会议过程,例如发起、结束会议。上述技术方案中,所述的系统操作界面应具有友好、统一的风格,并具有良好的交 互性。基于本发明的特点及其有益效果如下1、充分利用现有的网络,不需要因特网的特殊支持,成本低、操作简单,容易部署。2、数据传输采用点到多点模式,解决服务器数据负荷过重问题。3、不受时间和空间的限制,方便会议的开展。4、会议终端可以根据需要任意加入和退出会议组播。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以 根据这些附图获得其它的附图。图1为本发明实施例的系统框架图;图2为本发明实施例的会议用户终端系统框架图;图3为本发明实施例的总体流程图;图4为本发明实施例的流媒体处理模块示意图;图5为本发明实施例的工作示意图。
具体实施例方式下面结合附图和实施例对本发明做进一步的说明。本发明的目的在于提供一种基于应用层组播的视频会议直播系统,为人们提供一 个延时小、带宽要求低、视音频传输质量高、实时的网络会议环境,同时解决传统会议在时 间和空间上的制约问题。
如图1所示,是基于应用层组播的视频会议直播系统的框架图,包括会议用户终 端和会议服务器终端;会议服务器终端是本系统的管理和控制中心,它负责会议的管理和 服务功能,负责创建会议组播,处理用户加入会议,用户身份认证。会议用户终端一方面与 会议服务器终端进行控制信息交互,另一方面同时进行会议音视频的采集、预处理,以及发 送,接收,转发流媒体数据。该系统具体包括音视频信息采集模块、应用层组播协议管理模块、流媒体处理模 块、信息管理模块、用户控制管理模块、视频会议服务模块、服务器控制管理模块。音视频信息采集模块用于视频和音频信息采集,由一个或几个用于采集视频信息 的摄像机和一个声音录入系统,负责采集终端的音视频信号,为流媒体处理模块提供数据 源;应用层组播协议管理模块用于组成和管理应用层组播覆盖网络;流媒体处理模块包括预处理模块、缓冲区管理、数据调度模块;信息管理模块包括用户信息管理、会议信息管理、链路状态管理;用户控制管理模块用于发送控制信息,例如加入或退出会议组播,申请发言等;视频会议服务模块用于会议的发布、管理,身份认证,管理会议参加者信息以及会 议信息;服务器控制管理模块用于控制、协调会议过程,例如发起、结束会议。其中信息管理模块包括用户信息管理、会议信息管理、链路状态管理;用户信息管 理可按身份将用户分为会议管理者和会议参与者,不同用户有不同的操作权限;链路状态 管理,主要管理节点间延时、带宽信息,保证数据传输延迟达到一定的标准。应用层组播协议管理模块包括组播树管理模块、组播拥塞控制、消息处理模块,其 中组播树管理模块,主要用于利用树模型管理组播覆盖网成员之间的逻辑关系,会议服务 器终端为树的根节点,在会议服务器终端能够维护全局的组播树结构,其余会议用户终端 只需要维护它在组播转发树中的局部结构,即其父节点列表和它所有的孩子节点列表;所 述的消息处理模块主要负责对于接收到的各种控制消息进行恰当和及时的处理,包括处理 会议用户终端的加入请求,然后形成一个组播覆盖网络;当会议用户终端离开时,更新成员 列表信息,以至最终能快速恢复一个稳定的组播覆盖网络,同时还要处理失效终端,即没有 发出退出组播的通知但已无法正常工作的会议终端。流媒体处理模块包括预处理模块、缓冲区管理、数据调度模块;其中预处理模块用 于处理音视频信息采集模块采集到的信息,主要包括数据编码、解码,压缩,封装,其中数据 的编码可以采用面向传输的可扩展性编码技术;缓冲区管理提供数据存储服务,主要用于 弥补网络延时和抖动的影响,并对数据包的时序进行处理,从而使缓冲数据能连续而有序 地播出,不至于使图像出现停顿;缓冲区数据来源包括音视频采集模块采集到的经过预处 理模块处理后的数据;上游节点转发的数以及下游节点发送的数据;数据调度模块主要功 能是接收其上游节点或会议服务器终端的流媒体数据,以供本地缓冲区使用,并且将本地 缓冲区的数据提供给播放器播放;同时向上游和下游节点发送缓冲区中来自本地音视频采 集模块采集并经过预处理模块处理的流媒体数据;向其下游节点转发从上游节点或会议服 务器终端收到的数据。如图3所示为一种基于应用层组播的视频会议直播系统的使用流程图。
具体包括如下步骤1.会议管理员运行会议服务器终端系统,通过应用层组播协议管理模块处理会议 用户终端的加入/退出请求,负责形成应用层组播覆盖网络。2.应用层组播协议管理模块,功能包括根据组播协议创建会议组播、管理组播树, 控制信息处理,组播拥塞控制。具体是根据特定网络环境选择合适的应用层组播协议,创建 一个会议组播,等待会议用户终端的信息,接收或拒绝会议用户终端加入组播;控制信息处 理部分负责处理会议用户终端的加入/退出等请求信息。3.会议参加者运行会议用户终端,通过会议用户终端的组播协议管理模块向会议 服务器终端发送加入组播请求。4.当接收到加入请求时,会议服务器终端根据特定的应用层组播协议,将该请求 的听课终端加入到组播网中,即将该节点作为原组播网中某一节点N的孩子节点。N更新自 己的孩子节点列表。5.加入组播成功后,终端通过音视频信息采集模块捕获信息,包括音频和视频。流 媒体处理模块需要处理大量的信息,将采集到的信息通过流媒体处理模块转化成适合于网 络传输的流媒体格式,然后通过应用层组播覆盖网络传输。6.会议管理员通过视频会议服务模块可以管理会议参加者信息以及会议信息,发 布会议信息,进行身份认证等。7.每个终端通过流媒体处理模块,具体包括预处理模块,缓冲区管理模块,数据调 度模块,进行流媒体数据的处理。如图4所示,通过预处理模块将音视频信息采集模块捕获 到的信息进行编码、转换,压缩、封装;缓冲区管理模块主要功能是保存预处理后的以及上 游和下游节点发送的数据;数据调度模块根据特定终端的组播树结构,一方面接收上游节 点或下游节点终端的数据,以供本地缓冲区使用,另一方面把本地缓冲区的数据转发给下 游节点,即孩子节点。
权利要求
一种基于应用层组播的视频会议直播系统,其特征在于,包括会议用户终端和会议服务器终端;会议服务器终端是本系统的管理和控制中心,它负责会议的管理和服务功能,负责创建会议组播,处理用户加入会议,用户身份认证;会议用户终端一方面与会议服务器终端进行控制信息交互,另一方面同时进行会议音视频的采集、预处理,以及发送,接收,转发流媒体数据;具体包含以下模块音视频信息采集模块、应用层组播协议管理模块、流媒体处理模块、信息管理模块、用户控制管理模块、视频会议服务模块、服务器控制管理模块;音视频信息采集模块用于视频和音频信息采集,由一个或几个用于采集视频信息的摄像机和一个声音录入系统,负责采集终端的音视频信号,为流媒体处理模块提供数据源;用户控制管理模块用于发送控制信息,包括加入或退出会议组播,申请发言;视频会议服务模块用于会议的发布、管理,身份认证,管理会议参加者信息以及会议信息;服务器控制管理模块控制、协调会议过程,包括发起会议、结束会议;应用层组播协议管理模块负责各个终端节点的建立、通讯、组成员节点的管理,是整个系统运行的基础。
2.根据权利要求1所述的基于应用层组播的视频会议直播系统,其特征在于所述的信 息管理模块包括用户信息管理、会议信息管理、链路状态管理;用户信息管理可按身份将用 户分为会议管理者和会议参与者,不同用户有不同的操作权限;链路状态管理,主要管理节 点间延时、带宽信息,保证数据传输延迟达到一定的标准。
3.根据权利要求1所叙述的基于应用层组播的视频会议直播系统,其特征在于所述 的应用层组播协议管理模块包括组播树管理模块、组播拥塞控制、消息处理模块,其中组播 树管理模块,主要用于利用树模型管理组播覆盖网成员之间的逻辑关系,会议服务器终端 为树的根节点,在会议服务器终端能够维护全局的组播树结构,其余会议用户终端只需要 维护它在组播转发树中的局部结构,即其父节点列表和它所有的孩子节点列表;所述的消 息处理模块主要负责对于接收到的各种控制消息进行恰当和及时的处理,包括处理会议用 户终端的加入请求,然后形成一个组播覆盖网络;当会议用户终端离开时,更新成员列表信 息,以至最终能快速恢复一个稳定的组播覆盖网络,同时还要处理失效终端,即没有发出退 出组播的通知但已无法正常工作的会议终端。
4.根据权利要求1所叙述的基于应用层组播的视频会议直播系统,其特征在于所述的 流媒体处理模块包括预处理模块、缓冲区管理、数据调度模块;其中预处理模块用于处理音 视频信息采集模块采集到的信息,主要包括数据编码、解码,压缩,封装,其中数据的编码可 以采用面向传输的可扩展性编码技术;缓冲区管理提供数据存储服务,主要用于弥补网络 延时和抖动的影响,并对数据包的时序进行处理,从而使缓冲数据能连续而有序地播出,不 至于使图像出现停顿;缓冲区数据来源包括音视频采集模块采集到的经过预处理模块处理 后的数据;上游节点转发的数以及下游节点发送的数据;数据调度模块主要功能是接收其 上游节点或会议服务器终端的流媒体数据,以供本地缓冲区使用,并且将本地缓冲区的数 据提供给播放器播放;同时向上游和下游节点发送缓冲区中来自本地音视频采集模块采集 并经过预处理模块处理的流媒体数据;向其下游节点转发从上游节点或会议服务器终端收 到的数据。
全文摘要
本发明公开了一种基于应用层组播的视频会议直播系统,它涉及多媒体数据处理和流媒体网络通信的技术领域,其由会议用户终端和会议服务器终端组成,包括信息管理模块、流媒体处理模块、音视频信息采集模块、应用层组播协议管理模块、用户控制管理模块、视频会议服务模块、服务器控制管理模块。通过应用层组播协议构造组播覆盖网,将会议的多媒体数据进行实时传送,使得会议终端之间能够进行实时交流。本发明目的在于将应用层组播与流媒体相结合,实现音频、视频双向交互,提供一个延时小、带宽要求低、音视频传输质量高、实时的视频会议环境。
文档编号H04L12/18GK101873219SQ20101019187
公开日2010年10月27日 申请日期2010年5月31日 优先权日2010年5月31日
发明者刘宁, 徐武强, 曹广源, 曹旦森, 罗笑南, 董涛 申请人:中山大学深圳研究院;中山大学