基于Webrtc的多人视频会议的简单实现

通过重写WEBRTC传输模块来实现一个简单的视频会议,效果如下图:

说明:

1、画面1、2、3都是其他手机传过来的图像,局域网内有点点卡顿,同时软解3路数据你懂的。

2、声音比较清晰,服务端没有做混音处理。

 

实现原理:

1、服务端是小伙伴用C++配合实现的,主要作用就是信令控制与转发,所以原理没有太多好讲的。

2、因为有在WEBRTC里面注册自己的传输模块,所以在这个基础上实现多人就很容易了,主要就是让服务端转发的时候知道往哪里转发。

3、WEBRTC里面有channel机制,每个会话对应一个channel,如果要实现多个会话,就注册多个channel,关键代码如下:

下面是收到RTP包后通过channel找到对应的transport进行处理

 

总结:

1、通过上面这个demo可以做很多扩展,比如视频直播、在线教学、安防监控。

2、很多开源框架都是基于这种架构模式,如Licode,jitsi。

3、这种模式以后结合VP9,H265和SVC会有很好的发展空间,不过需要时间,所以我们会继续关注。

 

思考:

这种模式下怎么处理NACK和RTCP?

随着移动互联网和智能硬件的快速发展,音视频变得越来越重要,加上WEBRTC的出现,让开发这些高大上的功能变得越来越容易,

实际上是这样吗?让我们先来看看WEBRTC应用中的一些现象吧!

 

一、项目开始前都是这样的:

1、代码都开源了,找个开发人员2个月内将他集成进来,到时候就是中国特色的完全自主研发。

2、Google在搞的东西,不说效果比QQ和微信好多少,至少不会差到哪里去。

3、我们开发人员里面精通C++,安卓,iOS,Web前端的好几个,搞定这套东西还不是收到擒拿。

4、手机端不需要用Native开发,用WebView即可,这样可省下好多人力成本。

5、如果用这套东西做成视频会议或直播秀,是不是可以跟现有厂家有得一拼,我们有线下资源啊。

6、直接招个熟悉这个东西的人进来做这个项目算了,工资可以稍微高点。

7、等等等等。

 

二、开发过程中很多都是这样的:

1、到底从哪里入手呢?资料少不说,很多资料还是有问题的。

2、服务端客户端到底怎么搭建的,要不要编译整套代码呢?

3、下载和编译了2个星期了,还是啥都没搞定,郁闷。

4、怎么有时候没有视频,有时候没有声音,延迟怎么那么大呢?

5、搞了1个多月了,问题好多,没一点思路,不知道咋搞,放弃算了。

6、原定1个月集成进来的,现在都搞了快3个月了,还有好多没搞定。

7、东西是弄的差不多了,但是后续还是得有人来优化和维护,包括部分安卓机型的适配。

8、招聘了大半年,都没找到合适的人,在我们公司待遇不是问题,有合适的人就行。

9、webrtc没有支持多人视频,开源的用哪个好呢?或者有没有其他成熟第三方平台呢?

10、如果要支持全球部署,还得考虑服务端架设成本啊,这块费用也很高。

11、等等等等,不搞不知道,一搞下去问题好多。

...... ......

曾经或现在正在弄WEBRTC的朋友们,有没有同感?

其实上面这些现象我们都见过,只不过不同企业因为能力和实力不一样,所碰到的状况不一样,比如:

专业做音视频的可能对WEBRTC里面很多思想都清楚,甚至某些方面他们做得比WEBRTC更好,可能只需要应用里面的部分模块。大公司高手多,研究和突破起来速度比较快,比如华为,但是他们也会碰到很多问题。所以下面的这些建议要结合自己的实际:


  • 8
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
基于WebRTC的多人视频会议系统是一种通过Web浏览器实现的即时通讯系统。该系统允许多个用户通过互联网同时进行视频会议和实时交流,无需安装额外的软件或插件。 WebRTC基于一组实时通信协议,包括音视频传输、网络连接和通信控制等。通过利用WebRTC技术,系统可以实现低延迟的音视频传输和高质量的音视频通信,为用户提供更加沉浸式和真实的会议体验。 在多人视频会议系统中,用户可以通过浏览器访问系统网站,并通过输入会议号或邀请链接加入到会议中。系统会自动检测用户设备的音视频设备并进行配置,以确保用户在会议中能够正常进行音视频通信。 在会议中,用户可以选择开启或关闭自己的摄像头和麦克风,实现视频和音频的双向交流。系统会将用户的视频流实时传输给其他与会者,并显示其他与会者的视频流。此外,系统也提供文本聊天功能,方便用户进行实时的文字交流。 多人视频会议系统还允许用户共享屏幕,以便在会议中展示自己的电脑桌面、文档或应用程序。此外,系统还支持会议录制和回放功能,方便用户进行会议内容的保存和回顾。 基于WebRTC的多人视频会议系统提供了一个高效便捷的方式,让用户能够方便地进行远程会议和协作。无论是商业会议、在线培训还是团队协作,该系统都能满足用户的实时通信需求,并提供良好的用户体验。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值