Right now, as it is just a start, it supports MP3, FLAC & WAV 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.
Mention in your pubspec.yaml requirements:
dependencies:
...
flutter_audio_desktop: ^0.0.7
// 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.
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.
The library is supported on Microsoft Windows & Linux.
Platform | Status |
---|---|
Microsoft Windows | Working |
Linux | Working |
MacOS | Not Working |
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.