本文主要介绍如何做音量大小的判定。 音量大小的判定主要应用在:
- 检查麦克风的通话质量
- 获取音视频通话中用户的说话音量
实现方法
通过调用 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);