从0开始,快速简单搭建webrtc服务器

WebRTC这几年很火,本篇文章我们就讲讲如何快速搭建一个webrtc服务器。

什么是WebRTC

WebRTC是一个由Google发起的实时通讯解决方案,其中包含视频音频采集,编解码,数据传输,音视频展示等功能,我们可以通过技术快速地构建出一个音视频通讯应用。虽然其名为WebRTC,但是实际上它不光支持Web之间的音视频通讯,还支持Android以及IOS端,此外由于该项目是开源的,我们也可以通过编译C++代码,从而达到全平台的互通。

pion是golang语言开发的一个开源的流媒体框架,本次搭建我们就基于pion这个框架进行展开

首先我们从一个国内的镜像网站下载sfu服务器源码

git clone https://hub.fastgit.org/pion/ion-sfu.git

下载完毕,进入目录

cd ion-sfu/

编译服务程序

go build cmd/signal/json-rpc/main.go

此时本地会产生一个 名称为main.exe 的可执行文件

修改一下配置文件  config.toml

将icelite 设为true

将nat1to1设为本地IP

改完配置文件运行程序,

./main.exe

此时服务器已完成搭建,接下来我们在网页端进行验证。

网页端代码在 examples/pubsubtest/,

cd examples/pubsubtest/

其中 main.js文件需要改一下,将serverurl改为我们sfu服务的地址

我们可以使用nginx做web服务器,也可以自己使用golang写一个,我这里在windows平台自己写一个更方便点,代码我提交到了gitee,大家可以直接下载下来编译

https://gitee.com/zshaobo/webserver.git

go build 

生成一个webserver.exe可执行程序

运行程序

./webserver.exe

打开网页,输入127.0.0.1,此时应该是顺利打开我们的webrtc客户端。

再看sfu服务端,可看到客户端连接服务器的一些信息

进行publish推流

另起一个窗口,打开127.0.0.1,此时可看到那边推流过来的视频

至此,我们就完成整个webrtc的搭建过程。

此外,如果我们系统安装的有docker的话,那么我们可以直接进入ion-sfu\examples\pubsubtest目录,执行命令

docker-compose up

然后执行成功后就算完成了整个WebRTC的搭建,访问8000端口进行验证

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值