Skip to content

Equalizer: Refactor Equalizer Presets for 32 Bands

Overview

This merge request updates the equalizer preset definitions from a 10-band configuration to a new 32-band configuration. This significantly enhances the granularity and control over audio equalization.

Motivation

The previous 10-band equalizer offered limited frequency shaping capabilities. By expanding to 32 bands, we provide a much finer control over the audio spectrum, allowing for more precise sound adjustments and better audio quality customization for users. This change also aligns with more modern and professional audio equalization standards.

Key Changes

  • Header File Update:
    equalizer_presets.h, which contains the definitions for 32-band equalizer presets.
  • Band Definition Update:
    • EQZ_BANDS_MAX has been updated to 32.
    • New 32-band frequency tables (f_vlc_frequency_table_32b and f_iso_frequency_table_32b) have been added, providing a comprehensive range from 16 Hz to 22 kHz.
  • Preset Adaptation:
    All existing equalizer presets (e.g., "flat", "classical", "club", "pop", etc.) have been adapted to the 32-band structure within the eqz_preset_32b array. Initial values for the additional bands are set to 0 or derived from the original 10-band values for a smoother transition, with room for further fine-tuning.
  • Structure Consistency:
    The eqz_preset_t structure remains consistent, now accommodating the 32 frequency amplitude values.

Future Considerations

  • Further fine-tuning of the f_amp values for each of the 32-band presets to optimize their sound profiles.
  • Updating any existing UI components or APIs that interact with the equalizer to fully leverage the new 32-band capabilities.

Merge request reports

Loading