switchBandMode method
Switch between 5-band and 10-band mode
Implementation
Future<void> switchBandMode({required bool tenBand}) async {
final currentGains = settings.gains;
final wasEnabled = settings.isEnabled;
final preamp = settings.preampGain;
if (tenBand) {
// Convert 5-band to 10-band (interpolate)
final newGains = _interpolate5To10Bands(currentGains);
_settings.value = EqualizerSettings.tenBand().copyWith(
isEnabled: wasEnabled,
preampGain: preamp,
);
await setAllBandGains(newGains);
} else {
// Convert 10-band to 5-band (average)
final newGains = _interpolate10To5Bands(currentGains);
_settings.value = EqualizerSettings.fiveBand().copyWith(
isEnabled: wasEnabled,
preampGain: preamp,
);
await setAllBandGains(newGains);
}
}