A low-level audio plugin for Flutter.
| Linux | Windows | Android | MacOS | iOS | Web | |
|---|---|---|---|---|---|---|
| Support | ๐ | ๐ | ๐ | ๐ | ๐ | ๐ |
| Minimum Version | Any | Any | 21 | 10.15 | 13.0 | Any |
A high-performance audio plugin designed primarily for games and immersive applications, providing low latency and advanced features.
- โก Low latency, high performance audio
- ๐ฎ 3D positional audio with Doppler effect
- ๐ Gapless looping
- ๐ Stream audio with auto-pause for buffering, support for PCM, MP3, Ogg with Opus, Vorbis and FLAC containers
- ๐ Get audio wave and/or FFT audio data in real-time (useful for visualization)
- ๐๏ธ Rich effects system (reverb, echo, limiter, bassboost, etc.)
- โ๏ธ Faders for attributes (e.g. fade out for 2 seconds, then stop)
- ๐๏ธ Oscillators for attributes
- ๐ Waveform generation and visualization
- ๐ Multiple voices, playing different or even the same sound multiple times
- ๐ต Support for MP3, WAV, OGG, and FLAC
- โฑ๏ธ Read audio data samples from a file with a given time range
- ๐ Generate waveforms in real-time with various types (sine, square, saw, triangle, etc.)
- Watch Flutter Package of the Week video.
- Read CodeLab Add sound and music to your Flutter game.
If you are looking for a package to visualize audio using shaders or CustomPainter, please check out audio_flux. It uses this plugin for output and flutter_recorder for input.
void example() async {
final soloud = SoLoud.instance;
await soloud.init();
final source = await soloud.loadAsset('assets/sound.mp3');
final handle = await soloud.play(source);
// Later...
await soloud.stop(handle);
await soloud.disposeSource(source);
}The Dart plugin is covered by the MIT license. For information about the underlying SoLoud engine license, see the documentation.