音量大小检测

音量大小检测

本文主要介绍如何做音量大小的判定。 音量大小的判定主要应用在:

  • 检查麦克风的通话质量
  • 获取音视频通话中用户的说话音量

实现方法

通过调用 getAudioLevel() 方法获取当前音量大小。

const volume = stream.getAudioLevel();
if (volume > 0.1) {
  console.log(`${stream.getUserId()} is speaking`);
}

最佳实践

如果您需要在通话过程中全程监听音量的大小,您可以监听 'audio-volume' 事件,然后调用 enableAudioVolumeEvaluation()

client.on('audio-volume', event => {
  event.result.forEach(({ userId, audioVolume, stream }) => {
    console.log(`userId: ${userId}, audioVolume: ${audioVolume}`);
  })
})
// 开启音量回调,并设置每 1000ms 触发一次事件
client.enableAudioVolumeEvaluation(1000);
// 如需关闭音量回调,传入 interval 值小于等于0即可
client.enableAudioVolumeEvaluation(-1);