跨平台音视频方案

下面介绍这个跨平台的即时通讯解决方案,基于先进的H.264视频编码标准、AAC音频编码标准与P2P技术,整合了佰锐科技在音视频编码、多媒体通讯领域领先的开发技术和丰富的产品经验而设计的高质量、宽适应性、分布式、模块化的网络音视频互动平台,是我进入公司完成的第一个项目。 
 

方案:开发语言、开发时间、服务器端、音频、视频的采集、编码、传输、解码的封装效果

视频采集和编码能否分开使用、采集到的视频不编码,能否得到数据、客户端用vc或vb封装activex,服务器端用java、服务器端SDK能兼容java、服务器部署、如何快速开发。

解决方案:AnyChat Platform Core SDK用 C++语言开发的,提供了VC++、Delphi、VB.Net、C#的开发例程

源代码, 服务器端我们也提供了SDK接口的,参考SDK包里面doc\server\目录下的《AnyChat Server SDK 开发指南》传附件)。包含客户端、服务器端的SDK、开发文档、Demo程序源代码等。

投入的开发人员数量与业务需求是密切相关的,如果用佰锐的SDK包,只是想开发到一定demo程序的程度,则只需要一名VC++开发人员就足够了,2年相关开发经验,预计7-15。天左右可以完成。

SDK封装了底层的音频、视频的采集、编码、传输、解码、显示等,用户只需要关注应用层业务的实现就行了,开发人员不需要懂音频、视频相关的开发。而且文字消息、文件传输等功能,我们的SDK里面也实现了。

音频、视频的采集、编码、传输、解码、显示全部封装在一起提供了不同的API接口,如上层只希望打开视频,不想打开音频,则不调用音频相关的API接口就行了。SDK可以实现1对1、1对多,或是多对多的语音、视频、文字的交互。视频采集和编码可以分开使用,语音、视频数据,上层应用都可以获取到,由回调函数来通知上层应用的。视频采集后,通过回调来反馈给上层的应用,那上层的应用就可以把视频显示在任何位置了。用户使用SDK来开发,前台的界面是由您那边自己来定义。

服务器为用户开放了一些接口,用户可以写一个DLL来实现这些接口,这样服务器就可以调用用户的DLL了。服务器开放了一个接口:onuser_login(username,password,xx)
用户就需要写一个DLL,来实现这个onuser_login的接口,当有客户登录时,用户的服务器就调用DLL的onuser_login方法,至于如何来验证客户,用户可以在dll中连接数据库,也可以在dll中使用soap调用访问webservice,……,只要将验证的结果返回服务器就OK了。

服务器部署非常简单,执行一个批处理,将服务器程序安装为“Service”就行了。

用户评估:
1、熟悉AnyChat的API调用、技术体系;
2、软件界面部分,主要是客户端SDK部分的开发;
3、业务逻辑部分,主要是服务器SDK部分的开发;

技术评估标准:

 

系统承载能力测试

测试方法

客户端综合测试

测试方法

A.单服务器最大连接数测试

B.单服务器最大并发链接数测试

1.启动服务器程序。

2使用Anychat SDK,初始化SDK,链接服务器。

3.重复2的过程。

4.新的链接无法链接到服务器时停止测试。

5.测试对此,去平均值。

不同类型摄像头

兼容性测试

1.启动服务器程序。

2.使用Anychat SDK,初始化SDK,进入房间,打开视频.。

3换其它类型的摄像头进行测试。

单服务器

最大房间数测试

1.在数据库配置房间数据,启动服务器程序。

2. 使用Anychat SDK,初始化SDK,链接服务器,进入房间。

3.修改房间编号,重复2的过程。

4.知道能进入所有的房间,或是有房间无法进入时停止测试。

单服务器

语音负载测试

1.启动服务器程序。

2.链接服务器,每两个用户进入同一个房间开启双向语音。

3. 重复2的过程。多个用户并发测试

4.直到语音质量明显下降时停止测试

5.测试多次,取平均值。

不同类型声卡

兼容性测试

1.启动服务器程序。

2.使用Anychat SDK,初始化SDK,进入房间,打开语音。

3.换其他类型的声卡进行测试

 

单服务器

文字负载测试

1.启动服务器程序。

2.连接服务器,每两个用户进入同个房间,每秒发送100字节文字数据。

3. 重复2的过程。多个用户并发测试

4.直到文字消息失败或是用户链接被服务器断开时停止测试。

5. 测试多次,取平均值。

单服务器视频负载测试

1.启动服务器程序。

2.链接服务器,每两个用户进入同一个房间,开启双向视频。

3. 重复2的过程。多个用户并发测试

4.直到视频质量明显下降或有用户链接被服务器断开时停止测试。

5.测试多次,取平均值。

不同类型操作系统

兼容性测试

1.启动服务器程序。

2.使用Anychat SDK,初始化SDK,进入房间。

3.判断系统的语音、视频、文字功能是否正常。

4.换其他类型的操作系统进行测试。

单服务器

综合负载测试

1.启动服务器程序。

2.链接服务器,每两个用户进入同一个房间,开启视频、语音、文字。

3. 重复2的过程。多个用户并发测试

4.直到视频质量明显下降或有用户链接被服务器断开时停止测试。

5.测试多次,取平均值。

 

 

测试结果记录

 

1.单服务器最大连接数测试

结果:A.单台服务器至少支持5000连接

B.服务器CPU占用率小于5%

2.单服务器最大并发连接数测试

结果:A.单台服务器至少支持100并发连数

B.服务器CPU占用率小于5%

3.单服务器最大房间数测试

结果: A.单台服务器至少支持10000个房间

B.服务器CPU占用率小于5%

4. 单服务器语音负载测试

结果:A. 单台服务器至少支持2500对用同时进行语音B. 服务器CPU占用率小于25%

5.单服务器文字负载测试

结果:A.单台服务器至少支持2500对用户同时进行视频B.服务器CPU占用率小于50% 

6. 单服务器文字负载测试

结果:A.单台服务器至少支持2500对用户同时进行文字B.服务器CPU占用率小于8%

7.单服务器综合负载测试

结果:A单台服务器至少支持2500对用户同时进行综合负载测试B.满负荷运行时服务器CPU占用率小于70%

8. 不同类型摄像头兼容性测试

结果:A.支持所有USB 摄像头 B.支持所有USB电视采集卡 C.支持所有PCI视频采集卡

9.不同类型声卡兼容性试

结果:支持所有声卡,并能自动选择Mic为输入音频源

10.不同类型操作系统兼容性测试

结果:A.Windows2000、WindowsXP、Windows2003操作系统B.支持Windows Vista、Windows 2008操作系统(注册组件时需要管理员权限,否则UAC会阻止组件注册)

 

 

至此,从对音视频一无所知到完成了一套解决方案的研究,耗时两个月。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值