Coloured noises drop off in high frequencies

Hello,

We have FMOD running in non-legacy output mode on Android (c++ core integration). FMOD version 2.02.12.

The issue we are running into is that higher frequencies on various sounds played by our app are being rounded when using FMOD and dont sound right, compared to the default android media player.

Regular player (top) vs fmod frequency (bottom)

We initialize FMOD this way on Android:
m_system->init(512, FMOD_INIT_NORMAL, extradriverdata: 0)

I am not aware of any special configurations we are inputting to FMOD. How can I fix this issue of frequency rounding off at the high end? There are no filters applied to the signal as far as I’m aware, but keep in mind I did not write this code, I am trying to debug it.

Thank you for any help provided, we can provide code if need be.

Hi,

This is likely a sample rate issue. If there’s a mismatch between your FMOD System’s sample rate and the sample rate of your host device, FMOD will upscale its output to the device’s sample rate. On Android, if you don’t specify a sample rate for the FMOD System to use, it’ll default to 24000Hz, thereby cutting all frequencies above nyquist (12000Hz). FMOD will then upscale the audio on output, which produces the interpolated frequencies above nyquist that exhibit the high frequency roll-off that you’ve noted.

Try setting your FMOD System’s samplerate to the appropriate level (e.g. 44100Hz, 48000Hz) that matches your audio assets and/or Android device with System::setSoftwareFormat, and seeing if that solves your issue.

1 Like

It works, thanks for your help!