equalizer_flutter

A Flutter plugin to open device equalizer. You can also create a custom equalizer for Android.


License
MIT

Documentation

equalizer_flutter

A Flutter plugin to open the device equalizer. You can also create a custom equalizer for Android.

Currently, supported on Android only. Need help for iOS contributions.

Example

Android Setup

Edit your project's AndroidManifest.xml file to declare the permission to modify audio settings when creating a custom equalizer.

<manifest>
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <application...>
    
    ...
    </application...>
</manifest>

Example

// Import package
import 'package:equalizer_flutter/equalizer_flutter.dart';

// Open device equalizer
EqualizerFlutter.open(audioSessionId);

// Set or remove audioSessionId.
EqualizerFlutter.setAudioSessionId(audioSessionId);
EqualizerFlutter.removeAudioSessionId(audioSessionId);

You can retrieve audioSessionId on android from MediaPlayer. Info on how to do this can be found in openEqualizer docs.

Custom Equalizer Example

Initialize the equalizer. Recommended to perform inside initState

EqualizerFlutter.init(audioSessionId);

Enable the equalizer as follows.

EqualizerFlutter.setEnabled(true);

Now you can query the methods.

await EqualizerFlutter.getBandLevelRange(); // provides band level range in dB.

await EqualizerFlutter.getBandLevel(bandId);
EqualizerFlutter.setBandLevel(bandId,bandLevel);

await EqualizerFlutter.getCenterBandFreqs(); // provides the center freqs in milliHertz.

await EqualizerFlutter.getPresetNames(); // returns presets that are available on device
EqualizerFlutter.setPreset(presetName);

Finally, remember to release resources. Recommended to perform inside dispose

EqualizerFlutter.release();

TODO

  • Add iOS support.