VMware 15x
ubuntu 16.04
选用较新的nodejs 和npm
1.先安装nodejs和npm
因为git clone太慢了,所以直接下载的包,不用编译直接用
2.下载mediasoup-demo源码
git clone https://github.com/versatica/mediasoup-demo.git
git branch 应该是V3分支 最新
3.cd mediasoup-demo/server
1) npm install (出现node_modules,package.json里查看模块名字)
2)修改config.js
cp config.example.js config.js
vi config.js
把webRtcTransportOptions的listenIps和plainTransportOptions的listenIp,填成服务器的IP,因为我的是本机的 所以直接写ubuntu的ip就行。
注: 这里有个server/certs/ 证书的引用,但是我下的V3 源码里已经不提供证书了,所以我从V2里拿了config.js需要的两个证书,在chrome上可以用。如果有别的问题,可以自己用openssl生成。(证书有问题报错:websocket connection failed)
3)npm start
问题:这里可能启动失败,报模块缺少 ,如果node_modules里没有,使用以下命令安装,可能需要好几个,或者重新npm install
npm install 'xxx' --save
4.cd mediasoup-demo/app
1)npm install
npm install -g gulp-cli
2)gulp live -----启动客户端
等待几秒,浏览器打开,这里最好用chrome,火狐的话 需要调整证书。
因为在ubuntu里面我的摄像头没打开,所以还要连接摄像头。虚拟机上设置
虚拟机- 可移动设备-(找到列表里类似camera字样,然后连接,可能终端上会出现cheese 报错不管他)
打开终端-输入“cheese” -摄像头打开,如果是黑屏,继续设置。
ok 现在摄像头调用有图像了。
之前的浏览器刷新重新进入房间。
如果想在ubuntu外面进入,第一个进入的url是
https://192.168.0.xxx:3000/?info=true
其他人再加入就是 (第一次进入房间会有rommid,浏览器地址栏查看)
https://192.168.0.200:3000/?info=true&roomId=xxxx