我希望得到一个WebRTC MediaStream的麦克风活动水平。然而,我需要得到这个信息没有播放麦克风给用户(否则会有环回效果)。
WebRTC MediaStream的麦克风活动级别的答案依赖于正在播放给用户的音频。我怎么能做到这一点,而不回放麦克风?
看看createGain
方法。它允许你设置流的音量。
这是我在我的项目中使用的(简化)示例:
navigator.getUserMedia({audio: true, video: true}, function(stream) {
var audioContext = new AudioContext; //or webkitAudioContext
var source = audioContext.createMediaStreamSource(stream);
var volume = audioContext.createGain();
source.connect(volume);
volume.connect(audioContext.destination);
volume.gain.value = 0; //turn off the speakers
//further manipulations with source
}, function(err) {
console.log('error', err);
});