如今越来越多的公司投身到 WebRTC 的开发和应用之中,同时也有越来越多的开发者对 WebRTC 技术感兴趣。相对於单向传输的直播和播放器,支持「实时+双向」 音视频通话的 WebRTC 项目显然要庞大和复杂很多很多。由于 WebRTC 官方没有提供伺服器的实现,自己从 0 搭建一套开源的 WebRTC 伺服器、跑通并且读懂官方的 AppRTCDemo 代码还是需要很费一些周折的。

基于这些原因,我启动了一个小的开源项目:RTCStartupDemo,致力于提供一套超级简单的信令伺服器,以及配套的完全基于 WebRTC 官方 API 的客户端 demo 示例代码(含:Web/Android/iOS/Windows 全平台),目标是让所有有兴趣学习 WebRTC 的同学,都能快速把项目 run 起来,看到通话效果,理解核心 API,快速入门。

项目地址:Jhuster/RTCStartupDemo

1. 效果图

2. 目录说明

RTCSignalServer:

  • 一个简单的 Go 语言版本的 WebRTC 信令伺服器,供 demo 使用
  • 该信令伺服器的 API 文档:这里

RTCClientDemo:

  • Web
  • Android
  • iOS(coming soon)
  • Windows(coming soon)

3. 使用方法和限制条件

所有端的 demo 只支持 2 个人在区域网内通话,不同端之间也可以互相通话,比如:Android & Web 之间。

需要配合一台信令伺服器,你可以参考项目文档自己编译和部署(推荐),也可以直接使用我部署好的伺服器:

http://rtc-signal.jhuster.com:8080/socket.io

使用我部署的伺服器,需要注意如下事项:

  • 仅限于测试和学习,不保证伺服器的可用性和稳定性
  • 填写房间号的时候,注意填写一个复杂一点,因为可能会跟网上其他人冲突

4. 项目依赖

webrtc:WebRTC Home | WebRTC

Socket.IO:Socket.IO

5. 小结

关于这个项目的情况就介绍到这里了,欢迎大家 fork 并且提 pr 为项目贡献,也欢迎来信 [email protected] 交流,另外,大家可以关注我的新浪微博@卢_俊 或者 微信公众号 @Jhuster 获取最新的文章和资讯。

推荐阅读:

相关文章