Is it possible to detect a chord using FMOD_DSP_TYPE_FFT?

I never tried the DSP, but reading the manual, it seems like it can only detect a dominant frequency.
I want to detect all the piano notes played by a user including melodies and chords.
Is it possible?

It isn’t possible to detect pitches to identify individual notes or chords with native FMOD. FMOD_DSP_TYPE_FFT is used to get frequency data from the outputted sound, such as bass, mids, and treble, but not pitch. A custom DSP would need to be created in order for something like this to happen.

1 Like

The other day, I saw the pitch detection example source code included within the FMOD API, so was curious if there’s a way to detect multiple notes at the same time too.
But yeah, thanks for the quick reply.
I think I need to find an API for this job to deal with the PCM data obtained by Sound::readData().

Not FMOD question anymore, but do you happen to know any pitch detection API or algorithm?
I have a music game idea but this is the hardest part of the project :frowning:

Unfortunately I’m not familiar enough with pitch detection to offer any suggestions. From a quick web search I can see a few are available but it isn’t a trivial issue to solve.

1 Like

Yeah, I googled after this too and found it’s a very hard and complicated topic.
Many existing algorithms and new algorithms mean there’s no perfect and easy way to solve this :frowning: