【发布时间】:2020-01-09 06:03:42
【问题描述】:
我正在尝试从手机摄像头获取视频流并在视频元素上显示该流。这是我拥有的代码的要点:
...
navigator.mediaDevices.getUserMedia(constraints)
.then((stream)=>{
video.srcObject=stream;
video.volume=0;
video.mute=0;
video.play(); //error here on iOS Safari
...
虽然这适用于所有桌面和安卓浏览器,但这似乎不适用于 iOS,给我video.play() 线上的错误。
据我目前了解,这似乎是一个safety measure by Safari on mobile,以防止网站消耗过多的用户数据。意思是,除非用户特别发起,否则浏览器不会允许video.play()
我尝试在视频元素本身上添加“muted”属性(除了autoplay),但这似乎并没有解决问题。
所以,我想知道这里是否有任何其他补救措施可以解决此问题,或者我是否应该寻找其他方法来显示视频供稿。非常感谢任何帮助/建议。
【问题讨论】:
标签: javascript html webrtc mobile-safari