1

我遇到了一些有趣的事情。在播放 mp3 文件时,IMFMediaEngine我注意到音量控制不一致。

这会以 100% 的音量播放 mp3:

float volume_level=1.0f;
m_mediaEngine->SetVolume(volume_level);

这会以 0% 的音量播放 mp3(我在 0.4f 时听不到任何声音,只有在更高的值时):

float volume_level=0.4f;
m_mediaEngine->SetVolume(volume_level);

音量实际上是如何工作的?它似乎不是线性的。我还将 XAudio2 与 DirectX 一起使用,看起来 0.0f-1.0f 缩放在那里工作得很好。

为什么你在 0.4f 什么都听不见,应该是音量的 40%,而不是 0%。就好像音量范围在 0.4f-1.0f

4

0 回答 0