论基于多媒体终端的在线会议系统的实现
2016-03-05耿森
耿森
摘要:文章以多媒体在线会议的发展现状为切入点,详细研究了在线会议系统中的SIP协议、RTP协议等关键技术,并对基于多媒体终端的在线会议系统进行了设计与实现。
关键词:SIP协议;RTP协议;在线会议系统;实现
0 引言
在信息时代,各种新技术不断出现并应用在日常生活和商务交流中,如远程监控系统、远程视频会议系统等,这些技术的出现,极大地缩短TAG人之间的距离,方便、快捷地解决了人们的问题,提高了工作效率。在会议系统中,传统的会议模式已经不能满足人们工作和生活的需要,流动性的会议越来越受到人们的关注,多媒体终端的普及为在线会议系统的发展指明了新的方向。
1 多媒体在线会议的发展现状
自20世纪70年代开始,国外就展开了对视频会议系统的研究,近些年来,视频会议在国内也取得了迅速的发展。随着用户的需求多样化,多媒体视频会议的发展也呈现多样化趋势,广泛应用于企业、监控、教学、运营等各个领域。但视频会议仍存在美中不足之处,一是专业的视频会议系统造价高,二是一般的会议系统不能满足人们对于会议系统随时随地使用的要求。
最初的视频会议均采用专业的硬件设备,成本较高,无法在社会上进行普及。但随着PC和手机3G业务的不断发展,人们开始期待能够依靠多媒体终端进行视频会议。所以,在智能手机上开展随时随地的在线视频会议成为研发者研究的方向,促进了基于多媒体终端的在线会议系统成为现实。
2 关键技术的研究
2.1 SIP协议的基本原理及工作流程
SIP(Session Initiation Protocol)是信令协议中的一种,它可以实现对多媒体对话和会议进行创建、改变和结束的操作,被广泛应用于工作在IP网络之上的多媒体通信的控制过程,包括视频会议系统中。SIP协议可以同时在TCP协议和UDP协议之上进行工作。
SIP协议是属于文本类型的一种协议,借鉴了HTTP(Hypertext Transfer Protocol,超文本传输协议)和SMTP(Simple Mail TransferProtocol,简单邮件转发协议)协议的格式。SIP包含请求和应答两种消息,具体实现如下:当一方发送请求消息时,另一方以状态码的形式对请求方作出响应,经双方协商可进行语音、视频等通信,等会话结束后再使用SIP进行处理。
2.2 RTP协议及RTCP协议
实时传输协议RTP(Real time Transport Protocol)用于在IP网络上传输标准的音频和视频数据包,它被广泛应用于包括流媒体在内的数据通信与娱乐系统中,当然,在线会议系统中也需要用到RTP协议。
RTP应结合RTP控制协议RTCP(RTP Control Protocol)来使用。RTP携带的是媒体流,被用于传输多媒体数据;RTCP则用于监控数据信息,并通过监控发送的QoS参数保证服务质量。RTP主要通过用户数据报协iXuDP(User DatagramProtocol)实现其功能,且被认为是IP网络中音视频传输的主要标准。
2.3 VOIP的基本原理
VOIP(Voice over IP)将声音这种模拟信号转换为数字信号,并将数字信号组装成数据包的形式在IP网络上进行实时传输。相对于传统网络电话的服务,VoIP的服务更优质,因为VOIP利用了Internet全球化的优势。VOIP可以在IP网络上传送语音和视频等数据,比如视频会议,而且成本比传统业务低。其基本原理是:设备实时采集音频数据,先编码后进行压缩,随之将压缩的语音封装成数据包,通过IP网络把数据包传送到目的地,经解压缩与解码还原音频信号,实现由IP网络传送语音的目的。
2.4 其它相关技术
Ffmpeg是一个极其快速的视频和音频转换器,可以跨平台实现音视频的录制、转换与播放等功能。它的优势还在于可以从直播中获取音视频来源,并且实现任意采样率与任意大小视频之间的相互转换。Ffmpeg对于多输入文件的处理流程如下:首先根据输入流的最低时间戳将文件同步,然后将编码后的数据包传递给解码器,解码器产生未压缩的帧并进行处理过滤,再次传送到编码器进行编码,随后编码的数据包传递给复用器,写入到输出文件中。
Android操作系统基于Linux内核的自由及开源,多用于智能手机、平板电脑等便携设备中。Android系统采用了分层架构的思想,主要有系统内核层、系统运行库层、应用程序框架层和应用程序层,这种内核和应用分开的设计,符合Linux系统的设计风格。Android平台具有开放性和开发者不受任何限制的优势。
3 基于多媒体终端的在线会议系统的设计与实现
3.1 在线会议系统的需求及功能
根据用户需求,我们需要为无法到场的与会人员建立一个可以通过PC或者智能手机加入到会议中的平台。从用户的角度来讲,一般的接入用户只需要会操作PC和手机就能正常使用会议终端的各种功能,而作为主持会议的用户则对在线会议系统有更多的要求,需要控制会议的发起、进行和结束以及人员的安排等。从功能上来看,会议系统需要向各个会场提供音频和视频服务,保证信息的完整性。从系统结构上讲,系统的拓扑结构应尽量简单,以减少系统冗余资源和不必要的错误。会议的传输网络以LAN、WLAN网络为主,智能手机端由WLAN接入,通过对网络优化和系统优化的方法,保证传输的实时性。
多媒体终端会议系统应具备以下功能:人员安排与分配、会议控制(包括会议发起、查询、结束及会议日志报告等)、媒体处理、多终端接入等。
3.2 在线会议系统的设计方案
视频会议系统的设计必须满足基本的会议功能要求,同时尽量使系统结构模块化,便于模块的改进和升级。该系统不需要专门的设备,只要为用户提供多媒体终端的可视化会议,满足大多数人在线会议的需要即可。
在线会议系统的拓扑结构可以从控制拓扑和媒体拓扑两种结构中选择。控制拓扑中的集中式控制方式采用一个集中控制单元,可实现对整个会议系统的发起与调度功能,该集中控制单元与每个与会者都有端对端的连接,保证与会者都参与到会议中。媒体拓扑中的集中式拓扑结构主要是通过媒体处理实体和与会人员进行数据交互,该媒体处理实体负责数据的接收、编码、发送、解码等功能。从物理结构上看,在线会议系统由服务器、主会场和分会场三部分组成。从逻辑上看,会议系统包括注册服务器、代理服务器、会议控制器、媒体处理器和用户终端等。在线会议系统中可采用Speex作为音频解码器,H.263作为视频解码器。
3.3 在线会议系统的实现
3.3.1 注册服务器的实现
在SIP信令协议中,用户代理要想发起和接受呼叫,都必须先在注册服务器进行信息注册。注册流程如下:注册服务器首先对发送来的消息进行分析,如果是注册消息,则进行用户信息解析,同时判断是注册命令还是注销命令;若为注册命令,则在该用户不存在的情况下将用户加入到用户库中;若为注销命令,则在用户库中将用户信息删除。
在注册服务器注册的实质是指绑定注册用户的用户名和物理地址的映射关系,代理服务器可以根据用户名查找到对应的位置并进行命令操作。
3.3.2 会议控制器的实现
会议控制器是包括会议控制、代理服务器和媒体处理器三个模块的统称,是整个会议的核心控制系统。会议控制器的工作流程如下:会议主持人通过会议控制器中的会议控制模块进行会议发起和相关多媒体功能的使用;随后代理服务器分析命令,进行SIP消息的组装,将消息发送到各个终端;媒体处理器进行媒体数据的处理,负责主会场与各终端音视频数据的接收和发送等。
3.3.3 多媒体终端的实现
普通用户要想参与会议需使用多媒体终端,终端系统主要包含会议注册、接受邀请、加入会议以及退出会议等多种功能。多媒体终端作为用户与会议交互的媒介,不仅需要向用户提供会议服务,也需要将终端用户的数据提供给服务器方。
多媒体终端最核心的功能是获取流媒体数据的处理,因为终端系统需要捕获用户的图像和声音,并将这些信息进行编码后发给服务器,服务器进行解码还原到为图像和声音,在扬声器和显示屏上进行显示,最终保证会议的顺利进行。
4 结语
随着技术的发展和进步,在线会议系统的研究和应用也不断取得新的进展,满足了人们随时随地进行沟通和交流的需要,但仍然存在一些需要解决的问题。目前,随着网络技术以及多媒体技术的发展,在线会议系统已成为通信领域研究的热点,尤其是基于多媒体终端的在线会议系统。相信随着科技的进一步发展,基于多媒体终端的在线会议系统会越来越完善,逐渐满足人们对于会议的更高要求。