Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/461.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 录制后如何取消getUserMedia指示符_Javascript_Html_Google Chrome_Html5 Audio_Getusermedia - Fatal编程技术网

Javascript 录制后如何取消getUserMedia指示符

Javascript 录制后如何取消getUserMedia指示符,javascript,html,google-chrome,html5-audio,getusermedia,Javascript,Html,Google Chrome,Html5 Audio,Getusermedia,我正在使用和getUserMedia在浏览器中进行一些音频录制。开始录制时,用户会收到“允许此站点使用您的麦克风”提示,一旦他们单击“允许”,Chrome会在选项卡的favicon上添加一个指示器,以显示正在录制: 我的问题是,即使在我的应用程序停止录制后,指示器也不会消失。基本上,我想撤销我自己的录制权限。这可能吗?当您从getUserMedia调用生成一个新的MediaStream对象时,它包含一个MediaStreamTrack对象 调用MediaStream.getAudioTrack

我正在使用和
getUserMedia
在浏览器中进行一些音频录制。开始录制时,用户会收到“允许此站点使用您的麦克风”提示,一旦他们单击“允许”,Chrome会在选项卡的favicon上添加一个指示器,以显示正在录制:


我的问题是,即使在我的应用程序停止录制后,指示器也不会消失。基本上,我想撤销我自己的录制权限。这可能吗?

当您从
getUserMedia
调用生成一个新的
MediaStream
对象时,它包含一个
MediaStreamTrack
对象

调用
MediaStream.getAudioTracks()
应返回一个序列,该序列表示流中所有
MediaStreamTrack
对象的快照,其类型为
“audio”
。调用
MediaStream.getVideoTracks()
检索视频曲目对象时,也适用同样的情况

根据规范,您可以通过调用audio track对象上的
MediaStreamTrack.stop()
来撤销应用程序的所有给定权限


来源:

太棒了,谢谢!这也似乎只是调用了
mediaStream.stop()
就可以了,而没有得到曲目。哦,太棒了!很高兴知道!有趣的是,虽然这删除了favicon上的指示器,但录制实际上可以继续…mac上的firefox和windows上的firefox工作方式不同。。mediaStream.stop()-适用于windows mediaStream.getAudioTracks()[0]。stop()-适用于MacOS和ChromeOS因为它会继续录制,当用户单击“录制”按钮时,如何再次显示指示器?