使用WebRTC实现多人视频会议

1.初步准备

1.1.使用同事nodejs开发的一个信令服务器。提供Https的WebSocket功能

1.2.准备一个多人视频会议的客户端Web程序client.html

2.遇到问题
2.1.在Tomcat下打开client.html,如果不使用http://127.0.0.1:8081/vedio/client.html,而使用实际IP地址访问如http://192.168.1.136:8081/vedio/client.html

 就会出现如下图的问题,没有权限打开本地摄像头和麦克风:

 

Uncaught TypeError: Cannot read properties of undefined (reading 'getUserMedia')
    at createLocalStream (client.html:26:36)
    at client.html:178:9

2.2.解决chrome同源问题 

been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource

 

扫描二维码关注公众号,回复: 17149763 查看本文章

可以采用的解决方法参考:404-页面还在更新中

 2.3.由于同事开发的信令服务器使用了自签名证书,chrome等浏览器会报如下错误:

 

解决方案1: (chrome测试没有效果)

代码忽略

					const socket = io.connect('https://127.0.0.1:8443', {
					    rejectUnauthorized: false//由于信令服务器使用了自签名证书
					});

解决方案2: (chrome测试没有效果,可能是因为我不会启动解决了同源问题的浏览器2)

将chrome添加到环境变量中(我应该把chome2加到系统环境变量),然后用命令行打开浏览器

 

 解决方案3:(可以,目前触发了信令服务器的崩溃,信令服务器已经收到了请求)

启动 Chrome 浏览器。

在地址栏中输入 chrome://flags 并按下回车键,这将打开 Chrome 的隐藏配置页面。

在搜索框中搜索 "ignore certificate errors"(忽略证书错误)。

在结果中找到 "Allow invalid certificates for resources loaded from localhost"(允许从 localhost 加载的资源使用无效证书)并将其设置为 "Enabled"(已启用)。

重启 Chrome 浏览器。

原文  使用WebRTC实现多人视频会议_webrtc多人会议-CSDN博客 

★文末名片可以免费领取音视频开发学习资料,内容包括(FFmpeg ,webRTC ,rtmp ,hls ,rtsp ,ffplay ,srs)以及音视频学习路线图等等。

见下方!↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

猜你喜欢

转载自blog.csdn.net/yinshipin007/article/details/134930688