一、Openmeetings应用前景
Openmeetings使得远程视频会议办公系统得到普遍应用,它能利用现有飞速发展的网络接入以及简单的pc资源,为用户提供视频、语音、丰富的白板操作界面,以及文档资源即时共享加载阅读,在线聊天、桌面共享以及控制功能,以上功能都能有会议主持人即时控制与会者的使用权限。由于本身是一套软件解决方案,造价和维护成本远低于全硬件操作,特别是作为在线沟通交流办公类非正式会议,是一款首选、优越、很受普通用户欢迎的系统,所以,应用前景是非常好的。
Openmeetings 的详细介绍:请点这里
Openmeetings 的下载地址:请点这里
二、Openmeetings特点
1、是一个谷歌开源代码的系统,这就为基于之上的开发改造,带来了广阔的思维以及极大的可能性。
2、免费即使改造也是低成本的开发。
3、使用便捷,软件上辅助工具有:浏览器、网络,硬件上的辅助工具:电脑摄像头、麦克风、电脑PC机,界面操作简单明了。
4、二次开发容易,使用的开发语言主要有java、openlaszlo(开源拉兹洛)运行的lzx语言(一种基于XML和JavaScript的语言)、服务端是现成red5流媒体服务器发布,作为web应用,对外提供接口清晰。
5、一个房间能容纳最多100人,可以看到房间所有人的视频头(如果客户端PC都有摄像头), 可以控制单用户以及多用户下的交流应用模式。
6、用户可以录制视频、语音(通过第三方辅助软件实现格式转换处理)。在线聊天、临时保存用户办公资料。
三、技术架构实现以及二次开发浅谈
Openmeetings是一个基于EPL(Eclipse Public License)协议发布的多语言支持,通过PTMP(Real Time Messaging Protocol,实时消息传输协议)和HTTP协议传送数据,支持发布的LDAP(轻量目录访问协议)。
3.1. 开发环境介绍
- JDK 1.5或以上版本。
- Red5 - 开源流媒体服务器,集成OpenLaszlo客户端编译运行环境。
- OpenMeetings - 开源视频会议系统,基于OpenLaszlo开发。
- MySQL或者其他数据库 - 必须是Hibernate支持的数据库。
- SVN -版本管理工具Subversion,从谷歌开源代码中检出OpenMeetings的源代码。
- ant,编译工具,将发布的文件以及lzx客户端源文件、red5服务器端运行文件、后台java源文件编译输出在dist文件夹里。
- 到解压后的OpenMeetings项目下Install目录中(新版本可能为conf)按照你自己的数据库来修改目录中的任意一个 xxx_hibernate.cfg.xml文件并另存为hibernate.cfg.xml,我的是MySQL所以就直接把 mysql_hibernate.cfg.xml文件改名然后把数据库地址用户名密码写上。
- 打开config.xml文件,看看端口\地址。
- 启动Red5服务器。
- 开浏览器输入地址http://localhost:5080/openmeetings/install,另外5080是默认端口。
- 使用客户端使用solo模式部署的话,在ant的build.xml文件中,有编译配置:下载的源代码中有openlaszlo客户端文件以及jar包,只需在此配置编译路径,还可以配置修改后台服务代码的编译路径、jar包、red5服务部署路径以及清除路径。
3.2. 运行环境介绍
1、流媒体服务器Red5
Red5的主要功能和Macromedia公司收费的FMS(Flash Media Server)类似,提供基于Flash的流媒体服务的一款基于Java的开源流媒体服务器,可开发Web音视频应用程序(比如,视频聊天室、视频会议系 统、播客系统、音视频留言等等)的最方便最快捷的解决方案。它由Java语言编写,使用RTMP作为流媒体传输协议,可与FMS完全兼容。
OpenMeetings的服务器端处理均是在Red5服务器中运行处理,Red5主要支持把音频(MP3)和视频(FLV)转换成播放流,实时录制客户端播放流(只支持FLV),共享对象,实时视频播放、Remoting远处调用等。
2、客户端OpenLaszlo
OpenLaszlo是一个与Flex并驾齐驱的主流的开源RIA(Rich Internet Applications)构建平台,使用Macromedia Flash 作为部署载体。OpenLaszlo 依赖 JavaScript 来表达逻辑,并提供了传统 Flash 开发方式无法比拟的一些优点,包括高级的 UI 约束系统、面向对象的设计方法学以及内置的对 Web 服务和各种风格的远程过程调用(Remote Procedure Call,RPC)的支持。
OpenLaszlo应用程序开发使用的是基于XML的LZX语言,它可以被编译成DHMTL,SWF等格式。
OpenMeetings中所有前台操作都是通过它编译生成flash,然后客户端操作产生事件再传递到后台服务端处理的,所以它在相当于我们常见网页界面,只不过它是flash形式展示的。
3、开源办公软件OpenOffice
OpenOffice.org 是一套开源的跨平台的办公室软件套件,能在 Windows、Linux、MacOS X (X11)、和 Solaris 等操作系统上执行。
它主要是用来处理OpenMeetings中演示文档时需要将各类格式的文档转换成PDF,它可将MS Word,Excel,PowerPoint,文本文件txt,MS Office 2007在内的多种格式,并且能够将其导出为PDF文件,由于它能广泛支持MS Office,而且免费,所以用它来进行转换处理是非常合适。
4、图像处理ImageMagick
ImageMagick是一套功能强大、稳定而且免费的工具集和开发包,可以用来读、写和处理超过89种基本格式的图片文件,包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式。利用ImageMagick,可以根据web应用程序的需要动态生成图片, 还可以对一个(或一组)图片进行改变大小、旋转、锐化、减色或增加特效等操作,并将操作的结果以相同格式或其它格式保存。对图片的操作,即可以通过命令行 进行,也可以用C/C++、Perl、Java、PHP、Python或Ruby编程来完成。同时ImageMagick提供了一个高质量的2D工具包, 部分支持SVG。现在,ImageMagic的主要精力集中在性能、减少bug以及提供稳定的API和ABI上。
OpenMeetings中通过它处理白板中的图像操作以及生成等工作。
5、Flash转换工具SWFTools
SWFTools是一种为Adobe Flash文件(SWF文件)工作的实用工具集。该工具集包括用于阅读或者合并SWF文件,,或者将(如图像,声音文件,视频或源代码)等文件转换成swf文件的程序。
它在OpenMeetings中是非常重要的,因为其中许多上传的文件或者系统运行中的文件都需要通过它来创建或者格式转换成swf文件,以便前台可以访问或者使用。
6、视频处理FFmpeg
FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库。
libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。OpenMeetings中通过它来实现录制视频并后期重组处理。
7、音频处理SoX
SoX是一个跨平台(Windows,Linux操作系统,MacOS X系统等)的命令行实用工具,可以转换各种格式音频文件的计算机在为其他格式。它也可以应用各种效果,将这些声音文件作为外放,SoX可以播放和录制大多数平台上的音频文件。
OpenMeetings中会议录制时将会用到音频处理,并将音频单独拆分出来外放。