getUserMedia 在 Android Chrome 的第一帧冻结

getUserMedia frozen at first frame on Android Chrome

我在支持 getUserMedia Api 的桌面浏览器上有一个工作代码,我可以在 div videoPreview 中正确看到我的网络摄像头的视频预览。但是,当 Android 设备上的 运行 时,当我接受在 Chrome 浏览器中共享时,同样的代码用我的前置摄像头拍照,然后预览在第一帧上保持冻结。

navigator.getMedia = (navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia);

    navigator.getMedia(
        // constraints
        {video:true, audio:false},

        // success callback
        function (mediaStream) {
            var video = document.getElementById('videoPreview');
            video.src = window.URL.createObjectURL(mediaStream);
            video.play();
        },   
        //handle error
        function (error) {
            console.log(error);
        }
    )  

我和我的一位同事今天遇到了同样的问题:工作代码不再工作并且相机被冻结。令人惊讶的是(或没有),重启解决了这个问题。

对于那些遇到同样问题的人:我通过将 autoplay 属性添加到我的 <video> 标签来修复它。

被困了一段时间,我希望这能帮助别人。