停止导航器。GetUserMedia 相机访问权限

问题描述 投票:0回答:1

我正在制作这个相机应用程序,并且我有这个相机代码,可以在此处启动相机。

var video = document.getElementById('video');
 // Get access to the camera
if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
    navigator.mediaDevices.getUserMedia({ video: true }).then(function(stream) {
    video.srcObject = stream;
    video.play();
 });
}

问题是,我无法阻止它。那么如何在 javascript 中阻止 navigator getUserMedia 相机访问呢?

javascript html camera getusermedia
1个回答
2
投票

尝试使用

stream.getTracks()
,然后使用
track.stop()
。例如:

var video = document.getElementById('video');
 // Get access to the camera
if(navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
    navigator.mediaDevices.getUserMedia({ video: true }).then(function(stream) {
    video.srcObject = stream;
    video.play();
    setTimeout(() => {
      stream.getTracks().forEach(track => {
        if (track.readyState == 'live' && track.kind === 'video') {
          track.stop();
        }
      });
    }, 5000);
  });
}

5秒后,我们停止摄像。

参见:停止/关闭由 navigator.mediaDevices.getUserMedia 打开的网络摄像头流

© www.soinside.com 2019 - 2024. All rights reserved.