OMCS ——卓尔不群的网络语音视频聊天框架(跨平台)

  OMCS网络语音视频框架是集成了语音通话、视频通话、远程桌面观看与协助、电子白板编辑与观看等多种媒体于一身的跨平台(.NET、Android、iOS)网络多媒体框架,实现了多媒体设备【麦克风、摄像头、桌面、电子白板】的采集、编码、网络传送、解码、播放(或显示)等相关的一整套流程,且可智能地根据网络状况实时调整帧频、清晰度、并优先保证语音通话效果。您只要连接到OMCS服务器,就可以随时访问任何一个在线用户的多媒体设备。基于OMCS语音视频聊天框架,您可以快速地开发视频聊天系统、视频会议系统、远程医疗系统、远程教育系统、网络监控系统等等基于网络多媒体的应用系统。(可跳过概要介绍,直接进入开发手册目录 或 Demo下载

一.OMCS语音视频聊天框架功能简介

1.Owner与Guest

任何一个OMCS的Client都有两种身份:Owner和Guest。

当一个Client作为Owner时,它提供本地的摄像头、话筒、桌面、电子白板等多媒体设备供其它的Client访问。

而当一个Client访问其它Client提供的多媒体设备时,则该Client就是以Guest的身份出现。

2.单向连接,1对1,1对N,N对1,N对N的关系

一个Client可以同时访问多个在线Client的多媒体设备;而一个Client提供的某个多媒体设备,也可以同时被多个其它的Client同时访问。其基础是单向连接(比如当A访问B的摄像头时,B不用访问A的摄像头),由单向连接就可以组合成1对1,1对N,N对1,N对N的关系, 这样就非常灵活。

像监控一个摄像头这样的系统直接使用单向连接就可以;两个人视频聊天就是1对1的关系;在线教育系统中,老师讲学生听,就是1对N的关系;同时监控多个摄像头就是N对1的关系;而视频会议则是“N对N的关系”。

3.P2P通道

当两个Client之间相互通信时,OMCS底层会自动尝试P2P连接,如果P2P通道能创建成功,该两个客户端之间的后续通信都经过P2P通道进行。即使P2P通道是基于UDP的,OMCS也会保证P2P通信的可靠性。

4.信道分离

在某些具体的应用中,我们可能需要把信道依据数据的类型进行分离。比如,在视频会议系统中,希望能将传送语音的信道独立出来,以避免其它类型数据传送时可能产生的拥挤而影响到语音的流畅性。这种情况下,我们就可以将语音数据分离到一条专用的信道进行传送。

5.超简单的编程模型

当基于OMCS语音视频聊天框架进行开发时,如果要访问其它客户端提供的多媒体设备,我们只需要从工具箱中拖拽对应的连接器控件/组件到UI上,然后调用其Connect方法连接到目标设备即可。Connect方法会返回连接的结果,如果连接成功,则该连接器控件/组件将会正常工作(比如,CameraConnector控件将会显示目标摄像头捕捉到的视频)。

另外,我们已经提供了完整的OMCS服务端程序,即OMCS.Server.exe,在使用时,只要部署该程序并启动它即可。

6.与应用集成

OMCS解决的仅仅是多媒体设备的管理、连接、显示/播放、控制等问题,并没有掺杂具体的业务逻辑。所以,当与具体的应用集成时,通常OMCS的服务端是独立的,而OMCS的客户端dll将被嵌入到具体应用的客户端程序中,就像下面一样:

 

(如果您只需要采集本地语音视频数据,敬请了解 MCapture。如果您需要录制语音视频,敬请了解 MFile。)

二.OMCS语音视频聊天框架技术特点

1.视频通话

(1)支持160*120、320*240、480*360、640*480、720p、1080p等多种采集分辨率。可在运行时,动态修改该分辨率。

(2)支持高、中、低三种视频编码质量。

(3)支持帧频1~25fps。

(4)当网络拥塞时,主动弃帧。

(5)根据网络状态,自动调整视频的编码质量。

(6)可以以位图格式获取当前视频帧。

(7)支持多种视频设备:普通摄像头、usb摄像头、虚拟摄像头、视频卡等。

2.音频通话

(1)支持高、中、低三种音频编码质量。

(2)支持回音消除(AEC)、静音检测(VAD)、噪音抑制(DENOISE)、自动增益(AGC)等网络语音技术。

(3)最多可支持16路混音。

(4)自适应的JitterBuffer,根据网络状态,动态调整缓冲深度。

(5)如果同时开启音频和视频会话,则自动同步视频画面与声音。

(6)在网速慢时,自动调整视频的质量,优先保证音频的清晰和连贯。

(7)根据网络状态,自动切换语音数据到质量更高的网络通道,保证语音通话效果。

3.远程桌面

(1)支持高、中、低三种视频编码质量。

(2)根据机器性能和网速自动选择帧频。

(3)可动态调整屏幕分辨率。

(4)提供观看模式和控制模式两种选择。

(5)当网络拥塞时,主动弃帧。

(6)根据网络状态,自动调整远程桌面的清晰度。

4.电子白板

(1)支持常用的视图元素:直线、曲线、箭头、矩形、三角形、椭圆、文字等;支持视图元素的上下对齐,左右对齐。

(2)可修改边框颜色、填充颜色、线条粗细、线条虚实、显示比例。

(3)可插入图片、截屏,可将整个白板保存为位图。

(4)支持课件:上传课件、打开课件、删除课件,课件翻页等。且这些操作会自动同步到连接到了同一白板的各个客户端。

(5)提供观看模式和操作模式两种选择。

(6)激光笔:OMCS会将老师/主讲人的激光笔位置自动同步到各个客户端。

(7)多个Guest可以同时观看或操作同一个Owner的白板。

三.OMCS Demo运行截图

视频/音频连接器 截图:

电子白板连接器 截图  -- 不使用课件:       

 电子白板连接器 截图  -- 使用课件:       

远程桌面连接器 截图:

 

关于OMCS语音视频聊天框架更详细的介绍,请参见 这里

下载免费版本的OMCS 以及 demo源码

 

版权声明:本文为博主原创文章,未经博主允许不得随意转载。

时间: 2024-07-30 02:33:08

OMCS ——卓尔不群的网络语音视频聊天框架(跨平台)的相关文章

网络语音视频技术浅议 Visual Studio 2010(转)

      我们在开发实践中常常会涉及到网络语音视频技术.诸如即时通讯.视频会议.远程医疗.远程教育.网络监控等等,这些网络多媒体应用系统都离不开网络语音视频技术.本人才疏学浅,对于网络语音视频技术也仅仅是略知皮毛,这里只想将自己了解到的一些最基础的知识分享给大家,管中窥豹,略见一斑,更重要的是抛砖引玉,希望更多的朋友们一起来探讨,同时,有讲得不正确的地方也希望大家批评指正.   一.基本流程    无论是即时通讯.视频会议,还是远程医疗.远程教育.网络监控等等系统,都需要获取到远程的语音.视频

飞信(Fetion)语音视频聊天使用技巧

飞信为您提供语音和视频聊天功能,使您可以通过PC客户端与好友进行视频或语音聊天. 如果您想通过飞信与好友进行语音视频聊天,首先需要您与对方的PC都安装了视频和语音设备. 打开与好友的会话窗口,在工具栏内点击 可向好友发出视频对话请求,点击 可向好友发出语音对话请求.好友接受请求之后,您就可以和好友进行语音视频聊天了. 视频对话 在视频对话窗口中,右侧是您和好友的视频图像窗口,窗口右侧显示了通话时长,您还可以调节扬声器和麦克风的音量.音量调节上方,提供了个三个个性化按钮,分别为"浮动视频窗口&qu

用zlchat架设自己的语音视频聊天室

问题描述 www.zlsoftcn.com/forum论坛上有测试地址,只要注册就可以下载,下载后按照说明就可以集成电路到自己的网站上了

app-C++语音,视频聊天,,,

问题描述 C++语音,视频聊天,,, Linux下用QT写一个语音,视频聊天软件app,请问需要掌握哪些知识点,有没有例子或者是代码? 解决方案 http://sourceforge.net/projects/evaq/ 解决方案二: Silverlight视频语音聊天项目语音聊天聊聊语音视频聊天 bt 解决方案三: http://download.csdn.net/detail/little_rui/8012569

谷歌Chrome浏览器将集成类Skype视频聊天软件

新浪科技讯 北京时间6月22日早间消息,谷歌近期推出了开源的语音视频聊天软件WebRTC.谷歌将把这款功能类似Skype的软件集成到Chrome浏览器中. WebRTC源于谷歌2010年收购的互联网电话和视频会议公司Global IP Solutions(以下简称"GIPS").当Chrome浏览器集成WebRTC之后,Gmail的受益最明显.目前,Gmail拥有语音视频聊天功能,但用户需要安装谷歌私有的插件.随着谷歌VoIP业务的成熟,以及Gmail对谷歌语音的集成,Gmail聊天已

请停止对视频聊天系统 视频聊天程序的曲解

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 今年8月起,国家开始严打网络色情视频聊天,然后很多从事开发或则项目运作的人就认为,那些研发和出售视频聊天系统或出售视频聊天程序的公司或个人,肯定压力大,搞不好玩完了,因为,他们认为视频聊天系统或视频聊天程序特别是聊天室程序就是为色情视频网站服务的,没有那些站长,他们就没有饭吃.确实,自从国家公布严打命令以来,很多视频聊天网站站长感觉自危,选择

环信语音聊天和视频聊天没反应

问题描述 RT点击按钮,键盘就收起来,然后没反应了,现在就这两个不行了,其他没问题了,有人知道怎么回事吗 解决方案 那是您还没有集成实时通话的功能,所以点击实时通话的按钮没有反应,看下这个集成实时通话的链接吧,参考一下http://www.imgeek.org/question/5576解决方案二:如果你直接用的是环信demo源码直接引用,并且即时聊天其他模块都正常只有语音.视频聊天以及视频选择点击没有反应的话,很有可能是你的AndroidManifest.xml中相关的服务前缀包名你没有替换为

浅谈网络语音技术

当我们使用像Skype.QQ这样的工具和朋友流畅地进行语音视频聊天时,我们可曾想过其背后有哪些强大的技术在支撑?本文将对网络语音通话所使用到的技术做一些简单的介绍,算是管中窥豹吧. 一.概念模型       网络语音通话通常是双向的,就模型层面来说,这个双向是对称的.为了简单起见,我们讨论一个方向的通道就可以了.一方说话,另一方则听到声音.看似简单而迅捷,但是其背后的流程却是相当复杂的.我们将其经过的各个主要环节简化成下图所示的概念模型:             这是一个最基础的模型,由五个重要

实现语音视频录制(demo源码)

      在很多语音视频软件系统中,经常有将实时的音频或视频录制为文件保存到磁盘的需求,比如,视频监控系统中录制监控到的视频.视频会议系统中录制整个会议的过程.语音通话系统中录制完整的对话内容.等等. 一.缘起       最近正在做的一个网络招聘平台的项目,其中有一个模块是这样的,应聘者可以通过该系统的客户端录制自己的视频(自我介绍)上传到服务器,而后,招聘者会在合适的时候浏览这些应聘者的视频.该模块涉及到的主要技术就是语音视频录制技术,它需要把从麦克风采集到的语音数据和从摄像头采集到的视频