【问题标题】:How to mute microphone after recording using javascript使用javascript录制后如何使麦克风静音
【发布时间】:2014-05-07 20:04:54
【问题描述】:

我使用了一个应用程序来录制使用 javaScript 代码的音频,但录制后它的麦克风永远不会禁用。

所以请建议我如何使用 JavaScript 静音/禁用麦克风?

【问题讨论】:

标签: javascript html audio-recording microphone mute


【解决方案1】:

previous answer 并不理想,因为在调用track.stop(); 之后,曲目实际上已经结束并且无法恢复,因此您无法取消静音。更好:

静音

stream.getAudioTracks().forEach(function(track) {
    track.enabled = false;
});

取消静音

stream.getAudioTracks().forEach(function(track) {
    track.enabled = true;
});

【讨论】:

    【解决方案2】:

    您可以停止在 MediaRecorder 上创建的流:

    navigator.mediaDevices.getUserMedia({audio:true,video:false}).then(function(stream)
    {
        recorder = new MediaRecorder(stream);
    });
    recorder.stream.getAudioTracks().forEach(function(track){track.stop();});
    

    【讨论】:

    • 我已编辑您的问题以使用多行代码格式。我注意到您在调用new MediaRecorder 之外使用recorder。对吗?
    • 这是一个小例子。您可以在该函数之外设置一个全局变量并将其用于其他方法。
    猜你喜欢
    • 2012-06-03
    • 2023-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多