检测用户网络摄像头,但稍后再使用

时间:2016-04-28 13:50:44

标签: javascript webcam detect

我的问题是:我只想检测网络摄像头,知道我是否显示按钮"用网络摄像头拍照"但如果用户没有点击此按钮,我不想拍摄用户。 (如果网络摄像头不可用,我也不想显示按钮)

我成功获得网络摄像头流,但我必须使用navigator.getUserMedia来了解网络摄像头是否可用,我必须使用相同的功能来获取网络摄像头的流,因此用户将被问2次是否他想要分享他的摄像头。

这是我检测网络摄像头的代码:

errBack = function (error) {
    //We hide photo button if video is not supported
    document.getElementById("OpenWebcam").style.visibility = 'hidden';
    console.log("Video capture error: ", error.code);
};

// Put video listeners into place
if (navigator.getUserMedia) { // Standard
    navigator.getUserMedia(videoObj, function (stream) {
        // video.src = stream;
        //  video.play();
    }, errBack);
} else if (navigator.webkitGetUserMedia) { // WebKit-prefixed
    navigator.webkitGetUserMedia(videoObj, function (stream) {
        //  video.src = window.webkitURL.createObjectURL(stream);
        //  video.play();
    }, errBack);
} else if (navigator.mozGetUserMedia) { // Firefox-prefixed
    //  navigator.mozGetUserMedia(videoObj, function (stream) {
        //  video.src = window.URL.createObjectURL(stream);
        // video.play();
    }, errBack);
}

我使用相同的代码从网络摄像头获取流(我只是取消注释video.src和video.play行)

对我来说最好的是我发现有一个网络摄像头(但我不会向用户请求许可)所以我显示按钮,当用户点击按钮时,导航器会问他是否要分享他的摄像头。

你知道这是否是这样做的方式?

0 个答案:

没有答案