为了账号安全,请及时绑定邮箱和手机立即绑定

停止/关闭由navigator.getUserMedia打开的网络摄像头

停止/关闭由navigator.getUserMedia打开的网络摄像头

海绵宝宝撒 2019-10-09 16:14:11
我使用以下JavaScript代码打开了一个网络摄像头: navigator.getUserMedia是否有任何JavaScript代码可停止或关闭网络摄像头?感谢大家。
查看完整描述

3 回答

?
繁花不似锦

TA贡献1851条经验 获得超4个赞

您可以在即将淘汰的MediaStream对象上调用“ stop ” ; 新建议是通过在每个媒体轨道上调用“ stop ” 来释放媒体轨道:


mediaStream.stop();


// or

mediaStream.getTracks()[0].stop();

mediaStream.getTracks()[1].stop();

这是跨浏览器stream.stop黑客:

var MediaStream = window.MediaStream;


if (typeof MediaStream === 'undefined' && typeof webkitMediaStream !== 'undefined') {

    MediaStream = webkitMediaStream;

}


/*global MediaStream:true */

if (typeof MediaStream !== 'undefined' && !('stop' in MediaStream.prototype)) {

    MediaStream.prototype.stop = function() {

        this.getTracks().forEach(function(track) {

            track.stop();

        });

    };

}


查看完整回答
反对 回复 2019-10-09
?
浮云间

TA贡献1829条经验 获得超4个赞

使用其他浏览器启动网络摄像头视频


对于Opera 12


window.navigator.getUserMedia(param, function(stream) {

                            video.src =window.URL.createObjectURL(stream);

                        }, videoError );

对于Firefox Nightly 18.0


window.navigator.mozGetUserMedia(param, function(stream) {

                            video.mozSrcObject = stream;

                        }, videoError );

对于Chrome 22


window.navigator.webkitGetUserMedia(param, function(stream) {

                            video.src =window.webkitURL.createObjectURL(stream);

                        },  videoError );

使用其他浏览器停止网络摄像头视频


对于Opera 12


video.pause();

video.src=null;

对于Firefox Nightly 18.0


video.pause();

video.mozSrcObject=null;

对于Chrome 22


video.pause();

video.src="";

有了这个,网络摄像头灯每次都会熄灭...


查看完整回答
反对 回复 2019-10-09
  • 3 回答
  • 0 关注
  • 4787 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信