Sha*_*ham 4 html javascript mobile-safari webrtc
我正在尝试从手机摄像头获取视频流并在视频元素上显示该流。这是我的代码的要点:
...
navigator.mediaDevices.getUserMedia(constraints)
.then((stream)=>{
video.srcObject=stream;
video.volume=0;
video.mute=0;
video.play(); //error here on iOS Safari
...
Run Code Online (Sandbox Code Playgroud)
虽然这适用于所有桌面和 Android 浏览器,但这似乎不适用于 iOS,给了我在线错误video.play()。
据我目前了解,这似乎是移动设备上 Safari 的一项安全措施,旨在防止网站消耗过多用户数据。这意味着,除非用户明确启动,否则浏览器将不允许video.play()
我尝试muted在视频元素本身上添加“”属性(除了autoplay),但这似乎没有解决问题。
因此,我想知道是否有任何其他补救措施可以解决此问题,或者我是否应该寻找其他方法来显示视频源。非常感谢任何帮助/建议。