无法检测到FMOD中的体积

Unable to detect volume in FMOD

本文关键字:FMOD 检测      更新时间:2023-10-16

我正在尝试使用FMOD获取麦克风输入的音量,但是GetVolume始终返回0。是的,我已经测试了,我的麦克风正常工作。

这是在循环中运行的:

float tempvolume = 0.0f;
result = channel->getVolume(&tempvolume);
ERRCHECK(result);
//Set the sound volume
channel->getVolume(&tempvolume);
if (tempvolume < 0.1f){
    do something
}else{
    do something else
}

,但就像我说的那样,tempvolume始终等于0.0

我该怎么办?

编辑:我现在意识到" getVolume"只是返回您为频道设置的卷。因此,整个问题现在更改为"如何从麦克风中检测体积?"

fmod没有为麦克风的硬件或操作系统级别提供任何视图。

如果要测量当前录制信号的音量考虑系统:: recordStart,请播放fmod ::返回返回的声音,然后呼叫频道:: getwavedata。您可以根据需要处理波浪数据。