【问题标题】:How to cancel getUserMedia indicator after recording录制后如何取消getUserMedia指示器
【发布时间】:2013-07-22 09:19:06
【问题描述】:

我正在使用recorder.jsgetUserMedia 在浏览器中进行一些录音。开始录制时,用户会收到“允许此站点使用您的麦克风”提示,一旦他们单击允许,Chrome 就会在标签的图标上添加一个指示器以表明它正在录制:


(来源:ubuntuone.com

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

【问题讨论】:

    标签: javascript html google-chrome html5-audio getusermedia


    【解决方案1】:

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

    调用MediaStream.getAudioTracks() 应该返回一个序列,该序列表示流中所有MediaStreamTrack 对象的快照,类型为"audio"。调用MediaStream.getVideoTracks() 检索视频轨道对象时也是如此。

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

    来源:Media Capture and Stream API spec

    【讨论】:

    • 太棒了,谢谢!似乎也只是调用mediaStream.stop() 有效,而没有得到跟踪。
    • 哦,太棒了!很高兴知道!
    • 有趣的是,虽然这会从 favicon 中删除指示符,但实际上可以继续录制...
    • mac 上的 firefox 和 windows 上的 firefox 工作方式不同.. mediaStream.stop() - 适用于 windows mediaStream.getAudioTracks()[0].stop() - 适用于 MacOS 和 ChromeOS
    • 既然是继续录制,那么当用户点击“录制”按钮时,如何再次显示指标?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-11-24
    • 2012-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多