EQ frequency adjustment buggy

Dear Support Team,

I am using the equalizer to fine-tune the frequency response of my car audio system. While analyzing the output with Audiosystem Carma, I have noticed an unusual behavior:

  • When adjusting a high-frequency node, for example at 2000 Hz, the actual adjustment occurs around 1800 Hz. Similarly, setting 16 kHz results in changes around 14 kHz.
  • In the bass range, fine-tuning specific frequencies—such as reducing a peak at 50 Hz—does not seem to target the intended frequency precisely but instead affects the entire bass region.

The EQ is set to 32 bands, but even when increasing the number of bands, the issue persists.

Could you please provide insights into this behavior and suggest possible solutions?

This is not PEQ, this is cutOff frequency. There’s some docs on Internet about DynamicsProcessing.

I thought the EQ worked like a kind of bell filter with an automatically calculated q to approximately match the frequency steps between the filter bands.
That’s roughly how it is displayed. At least that’s how I see it.
I couldn’t find anything in the support forum about how exactly the EQ works in Symfonium.

There’s a couple of references this is Android DynamicsProcessing The New Dynamics Processing Effect in Android Open Source Project

Thanks, now I understand.
That’s a pretty strange way to use an eq.
Also not the way it is visualized.
Nor does it solve the problem in the bass range.
Because it doesn’t work as intended.

Here are 2 measurements from the output of my phone directly into my sound card.
Settings in the second picture.
Thin line is without EQ, thick is with EQ.
Frequency sweep from 20hz to 20khz.

As you can see, the 50hz setting (all nodes with lower frequency) works way too broadband and not as described in the Android library.
It’s buggy. :frowning:


You need to increase block size of your phone can handle it in advanced settings.

It’s at 16384 :slight_smile:
Maximum.

I took a closer look at the frequency response and it seems that there is always a 150hz rolloff present.

This means that if I use a filter at 2 kHz with the next lower band 1.6 kHz, the frequency range from 1450 to 2150 Hz is affected.

This explains why the EQ doesn’t really work in the lower frequencies as the rolloff is larger than the actual bands.

With large blocks it should not, you can check the AOSP source for how it works.

I’ll check if it’s possible to increase further.

Have you checked battery usage with 16k block.

I have seen that there is another way for the EQ.
Parametric. Equalizer  |  API reference  |  Android Developers
Why not use this method?

The battery drain wasn’t noticeably higher at 16k.
I’m using a pixel 9pro. The CPU power is available.

Because std EQ have on 99% of devices is 5 to 10 bands max (often 5) and 0 control over the actual bands and number of bands ?

Would you prefer this on your Pixel 9 ? :wink:

Oh no. This is horrible :laughing: