WebRTC之Mediasoup服务器安装及部署

官网:mediasoup

GitHub:GitHub - versatica/mediasoup-demo: mediasoup official demo application

操作系统:Ubuntu20.04

Mediasoup-demo版本:v3

一、安装工具

sudo apt install build-essential
curl -sL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install nodejs
sudo npm install -g gulp-cli
pip install launchpadlib

二、下载源码

git clone https://github.com/versatica/mediasoup-demo.git
cd mediasoup-demo
git checkout v3

或者直接从GitHub上下载源码的ZIP压缩包,貌似这种方法更靠谱,git命令下载老是失败

三、安装node插件

cd server
npm install
cd app
npm install

四、服务器配置

先拷贝默认配置文件

cp config.example.js config.js

同配置janus一样,mediasoup也需要支持https服务,所以证书和密钥是少不了的。

在server目录下新建一个certs文件夹,将申请的证书和密钥都拷贝进去,接着我们修改config.js文件。

1、将证书和密钥的名称替换为自己拷贝进去的文件名

如果只是局域网中测试,可以使用自己生成自签名证书:

openssl genrsa > privkey.pem
openssl req -new -x509 -key privkey.pem > fullchain.pem

2、webrtc监听的webRtcTransportOptions和plainTransportOptions的ip地址配置改为本机内网ip,否则连接时会出现error 500的错误(Can not join room),可以修改config.js

也可以不修改config.js,直接用环境变量,更推荐环境变量的做法

export MEDIASOUP_LISTEN_IP='172.25.186.221'

五、启动服务器和客户端

cd server
npm start
cd app
npm start

打开控制台,查询本机ip地址。

然后在浏览器中输入web服务器的地址,比如:https://192.168.0.107:3000/,即可体验Mediasoup-demo。

六、公网部署

webRtcTransportOptions和plainTransportOptions的listenIp.ip为内网IP,listenIp.announcedIp为公网IP,所以需要指定该服务的公网IP:

export MEDIASOUP_ANNOUNCED_IP='114.55.98.33'

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值