flutter_audio_desktop
A simple yet functional ๐ต audio library for Flutter Desktop.
Right now, as it is just a start, it supports MP3, WAV & FLAC playback. I'll try to increase the domain of support formats with time & plan is to provide metadata of a track aswell.
Feel free to open issue anytime.
โฌ๏ธ Install
Mention in your pubspec.yaml requirements:
dependencies:
...
flutter_audio_desktop: ^0.0.6
๐ Usage
// Start AudioPlayer.
var audioPlayer = new AudioPlayer();
// Load audio file.
audioPlayer.load('/home/alexmercerind/music.mp3');
// Start playing loaded audio file.
audioPlayer.play();
// Get audio duration.
print('Duration Of Track: ${audioPlayer.getDuration()}');
// Change playback volume.
audioPlayer.setVolume(0.5);
print('Changed volume to 50%.');
// Change playback position.
audioPlayer.setPosition(Duration(seconds: 10));
// Get playback position.
print('Position of playback after skipping 10 seconds: ${audioPlayer.getPosition()}');
Timer(Duration(seconds: 10), () {
// Pause the playback.
audioPlayer.pause();
print('Playback of audio stopped after 10 seconds.');
}
You can see this simple example app, if you are confused with the usage.
โค๏ธ Like the library?
Feel free to use in your Flutter Desktop app. Consider โญ starring the repository if you want to show YOUR SUPPORT to the development & appreciate the effort.
โ๏ธ Progress
The library is supported on Microsoft Windows & Linux.
Platform | Status |
---|---|
Microsoft Windows | Working |
Linux | Working |
MacOS | Not Working |
๐ง How It Works ?
One word, C++. It calls native methods using dart's MethodChannel. It uses miniaudio from David Reid.
I wrote this simple wrapper in C++ around his library to get this working.
There is not any audio playback library for Flutter Desktop at the moment, so I decided to write one myself.