我使用 本指南从 Twilio Video 迁移到 Zoom Video for Web。
到目前为止一切顺利,我可以从两个帐户连接到同一个会议,他们可以互相听到对方的声音,静音/取消静音工作正常,我可以打开视频并看到自己,第二个用户收到我打开视频的事件( “peer-video-state-change”和“user-updated”都已更改
user.bVideoOn
属性),并且...没有显示任何内容 - 我的意思是我的参与者在他的计算机上看不到我,他只能听我说。在容器中,我的视频应该在他的计算机上 <video-player-container></video-player-container>
- 那里有一些东西正在渲染(看起来像画布),但它的大小为 0x0 像素。我尝试手动增加宽度和高度 - 只是得到一个黑色矩形,那里没有视频。
不知道是不是canvas的原因?那我该如何切换来使用呢?因为我自己的视频(我看到自己的地方)最终是用 inside 渲染的。
这是因为我在 React Native for Web 中使用它吗?但其他一切都运行良好(包括 Twilio Video 视频会议)。
我注意到的另一件事:当我开始视频时,我看到一个错误:
The play() request was interrupted by a new load request. https://goo. gl/LdLk22
,尽管我可以关闭带有此错误消息的弹出窗口,并且我发现尽管有错误消息,我的视频仍显示正常。会是这个原因吗?
我搜索并发现了很多用户看不到自己的问题,但我有相反的问题。
欢迎任何想法/建议,不知道下一步该调试哪里。
环境:MacBook Pro,芯片 Apple M1 Pro,macOS Sonoma 14.4.1,node v21.7.1(也尝试过 v20),Google Chrome 123.0.6312.107,react-native:0.70.8,react-native-web:0.18。 12
好吧,终于找到解决方案了。
您不必遵循他们的指南并使用
zoomSession.attachVideo
方法,而是必须创建自己的元素并使用 zoomSession.renderVideo
来代替。
我看到了这个解决方案here - 看起来这是React的一个问题,他们修复了它......也许他们只修复了
renderVideo
方法而不是attachVideo
?不知道,但无论如何,现在有有效的解决方案真是太棒了!