mediasoup-demo的安装部署比较简单,直接按照官方的README就可以成功部署运行。
1.Clone工程:
git clone https://github.com/versatica/mediasoup-demo.git
cd mediasoup-demo
git checkout v3
其实clone下来默认就是v3
2.server安装配置:
cd server
npm install
这一步比较慢,会进行下载编译,还可能因为超时失败,
如果server无法启动,则参照下面步骤:
cd node_modules/
rm -fr clang-tools-prebuilt/
rm -fr mediasoup/
cd ../
npm install
成功后,
cp config.example.js config.js
然后以本地ip为例:
webRtcTransportOptions :
{
listenIps :
[
{
ip : process.env.MEDIASOUP_LISTEN_IP || '127.0.0.1',
announcedIp : process.env.MEDIASOUP_ANNOUNCED_IP
}
],
initialAvailableOutgoingBitrate : 1000000,
minimumAvailableOutgoingBitrate : 600000,
maxSctpMessageSize : 262144,
// Additional options that are not part of WebRtcTransportOptions.
maxIncomingBitrate : 1500000
},
// mediasoup PlainTransport options for legacy RTP endpoints (FFmpeg,
// GStreamer).
// See https://mediasoup.org/documentation/v3/mediasoup/api/#PlainTransportOptions
plainTransportOptions :
{
listenIp :
{
ip : process.env.MEDIASOUP_LISTEN_IP || '127.0.0.1',
announcedIp : process.env.MEDIASOUP_ANNOUNCED_IP
},
maxSctpMessageSize : 262144
}
3.app 安装配置
cd app
npm install
现在安装部署基本完成,由于V3版本必须要密钥,现生成密钥:
在server/certs下执行:
openssl genrsa > privkey.pem
openssl req -new -x509 -key privkey.pem > fullchain.pem
在server下执行:
npm start
切换shell到app目录下:
npm start
然后打开浏览器(火狐会报错,websocket connection failed,使用chrome不会):https://127.0.0.1:3000