首页 > 范文大全 > 正文

基于SIP的视频会议系统设计与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于SIP的视频会议系统设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

[摘 要]随着近年来我国网络技术的提升,视频会议这种会议形式也被越来越多的企业、单位所应用。在本文中,将就基于sip视频会议系统设计实现进行一定的研究。

[关键词]SIP;视频会议系统;设计;实现;

中图分类号:TN948.63 文献标识码:A 文章编号:1009-914X(2015)48-0118-01

1 引言

视频会议系统是现今各大企业、单位经常会运用到的一类技术,其通过音视频解编码技术以及网络通信技术的应用,能够对地理位置上较为分散的用户在一种虚拟的会议形式下获得文本、视频以及声音的交流与讨论。SIP协议是一种IP电话信令协议,能够对多个用户参与的会话过程进行建立与修改。在视频会议系统中具有着非常好的发展与研究与前景。

2 系统设计

2.1 模块结构

在本基于SIP的视频会议系统中,其以C/S结构构件,由会议控制子系统、SIP终端子系统以及会议管理子系统组成,其具体结构如下图所示:

在上图中,虚线上方为服务器端实现,下方为客户端实现,其基本会议流程为:首先,管理员通过浏览器的应用对该管理系统进行访问,并对一个会议进行创建,在建设中对服务器地址、会议参加人员以及其他属性进行设置,并通过网络的形式对该会议进行;其次,该系统则会根据管理员所制定的会议信息对一个会议进行启动,并等待用户参加到该会议中;再次,会议参加人员在收到会议通告后,则会对自身相应的SIP终端系统进行启动并参与到会议之中;最后,当会议召开结束后,控制系统则会通知该会议已经结束,并将其状态更改为结束。

2.2 会议管理系统

会议管理系统为服务器端程序,在每一个会议系统中,都具有一个对应的管理系统,并根据权限的不同制定了三种级别:系统管理员、会议管理员以及普通用户。在具体功能方面,首先,是用户管理。能够对本次会议参加用户以及用户在会议中的权限进行确定;其次,是会议管理。能够对会议进行创建,并对相关信息如服务器端口、地址、会议时间等进行设置;再次,是会议通告。能够通过电子邮件以及web两种方式对会议信息进行公布;最后,是信息查询。能够根据不同条件对会议或者用户进行查找。

2.3 会议控制系统

在本系统中,由会议管理系统与控制系统共同组成了视频会议服务器端。对于控制系统来说,其可以说是本会议系统的一个核心部分,能够根据系统会议配置情况对会议进行启动,并在对用户呼叫请求进行接收之后对用户的角色以及身份进行鉴别,在对会议流程进行控制的基础上根据会议信息对音视频数据进行接收与转发。其具体功能实现为:首先,是传输层。该层主要负责接收与发送多媒体数据流以及SIP消息,并支持UDP单播与组播;其次,是数据转发模块。该模块能够根据所接收到的会议信息对多媒体流的转发与接收进行控制;再次,SIP协议栈。该区域为系统实现多媒体通信的协议栈,负责呼叫信号的终止、建立,且能够对通话双方的信息交流进行实现,通过传输层对SIP消息进行接收与发送;最后,消息处理模块。该模块可以是是控制系统中的核心部分,负责会议管理交互、配置信息的获得等。并能够对终端用户会议加入、离开以及会议流程等进行控制。

2.4 会议终端系统

该部分由音视频处理模块、消息处理模块以及客户端界面组成。其中,客户端界面通过可视化图形界面的提供非常便于用户对会议进行操纵与管理;消息处理模块能够对服务器同客户端间的通信进行处理,并能够对会议控制消息进行发送与解析;音视频模块则能够根据会议控制策略的不同选择适当的编解码技术对多媒体数据进行发送或者播放。

3 基于SIP视频会议系统的实现

3.1 会议终端的实现

会议终端由媒体处理、消息处理以及界面这三部分组成。其中,界面会根据用户权限的不同分为主持人界面、预览界面、普通听众界面以及可发言听众界面,并在不同的界面中对不同接口以及窗口进行了设置;媒体处理方面,其主要功能是对本地音视频数据进行采集,并在压缩之后将其发送给会议服务器等;消息处理则主要负责对不同消息的分析,并根据消息类型的不同对多媒体数据实现接收与发送,之后再将响应数据发送到会议服务器之中。

3.2 会议控制系统实现

3.2.1 会议控制消息

在SIP中,其本身不具有会议的控制与管理功能,对此,我们通过一个会议控制协议的建立实现该功能。该协议由一系列用户状态以及会议控制信息组成,能够通过对该信息的控制实现状态的转移。在整个控制系统中,分为SIP消息以及非SIP这两种类型,其中,SIP消息有REGISTER、INVITE、MESSAGE以及REFER等;非SIP消息则有SESSIONQUERY、AVSTART/ AVEND以及CURRENTSESSIONLIST等。

3.2.2 数据转发模块

在该会议系统中,以几种方式对数据进行控制,所有预备发言用户的数据都会统一被发送到数据转发模块,而在该模块中,则为每一个发言用户都创建了一个数据缓冲区以及接受现场,以此将用户发言的音视频数据线写入到该缓冲区中。而当会议中主持人要求某个用户在会上发言时,则会将用户的数据以单播或者组播的方式传送到参加会议的用户。

3.2.3 会议控制/管理系统同SIP终端的通信

在该系统中,通过TCP对消息进行传送,且每个会议服务器与用户都会具有一个TCP连接,而系统则会以同步事件、多路分离的方式对多个用户同服务器间的通信进行实现。

3.3 会议管理系统的实现

该管理系统为MySQL为数据库平台,以Tomcat作为Web服务器。在系统实现中,数据库设计是非常关键的一个部分,对此,我们通过以下数据表的设计对用户以及会议信息进行记录:第一,用户信息表。该表中主要负责对注册用户信息进行记录;第二,会议信息表。主要负责对会议名、ID等基本信息进行记录;第三,会议参数表。主要负责对会议端口、IP地址等信息进行记录;第四,时间安排表。主要负责对会议的起始时间进行记录。

4 结束语

在上文中,我们对基于SIP的视频会议系统设计与实现进行了一定的研究,具有较好的研究与应用意义。

参考文献

[1] 王森,雷为民.SIP多方视频会议系统与原型系统的实现[J].小型微型计算机系统.2010(01):99-102.

[2] 闫文耀,王志晓,白海涛,陈海荣.IPv6组播的轻量级视频会议系统设计与实现[J].计算机技术与发展.2010(03):33-35.