10-band EQ support - #319
Conversation
ad5d4ea to
db33f5f
Compare
|
Will review after my holidays |
|
I'm running into some questionable design on the Android Equalizer API side: you can't pull This means we need to either build a full list of all presets and their settings via a janky workaround that involves cycling through and applying every preset, or forego the built-in presets entirely and hardcode our own equivalent ones to avoid abusing the API in this way. example of the weird helper that would do this fun getAllPresetSettingsListSimple(audioSessionId: Int): List<Equalizer.Settings> {
val equalizer = Equalizer(0, audioSessionId)
return try {
val numPresets = equalizer.numberOfPresets
List(numPresets.toInt()) { i ->
equalizer.usePreset(i.toShort())
equalizer.properties
}
} finally {
equalizer.release()
}
}In both cases, the end result for the user would be roughly the same, with maybe slight deviations in how hardcoded presets sound vs the system ones (because we're remapping bands). What do you think would be more in-line with Chocola's philosophy (or is it up for me to decide)? |
|
I honestly don't use the EQ, it's here cuz people wanted it, so do whatever you think is best |
Changes the EQ to use 10 (or 5 on unsupported hardware) hardcoded bands instead of the system-provided ones.
System presets are still present, but are remapped when applied.
Existing preset handling tbd
Also fixes a the band frequency labels showing kHz instead of Hz.
Closes #318