simple_audio 1.6.4 simple_audio: ^1.6.4 copied to clipboard
A simple cross-platform solution for playing audio in Flutter.
1.6.4 #
- Select correct buffer size based on default output config.
- Extract
ios.zip
tosimple_audio.xcframework
directory (thanks @Yesterday17) - Add topics to pubspec.yaml
1.6.3 #
- Fix method channels hanging because a result wasn't returned in native code.
1.6.2 #
- Release assets use
tar.gz
for Linux/Android/Windows - Update README
- Update git/pub ignore
1.6.1 #
- Fixed normalization gain calculation.
- Normalizer has smoother volume changes and don't apply excess positive gain.
- Refactored CD. Built libraries are now release assets instead of files committed to the repo.
- Created a CI.
1.6.0 #
- Opus support (thanks @Yesterday17)
1.5.8 #
- Fix stream playback stopping for a moment when preloading another network stream.
- Fix preloaded output stream breaking the next streams on Windows.
- Fix
playPreload
not auto playing on Windows.
1.5.7 #
- HTTP and HLS streams fallback to downloading the file if
Content-Length
cannot be acquired. - More CD improvements
1.5.6 #
- Update
.pubignore
to exclude the iOS frameworkInfo.plist
file. - Improve CD workflow file.
- Use different context variables
- Add
--rebase
flag togit pull
- Remove OpenSSL dependency to improve CD build times on iOS.
1.5.5 #
- Fix preloaded file not playing after output device is changed.
- MPRIS: Fix error when hot reloading because name is taken.
- Increase downloaded chunk size for network streams.
1.5.4 #
- Fix Android audio crackling with Bluetooth headphones.
- Fix high CPU usage with MPRIS.
- Improve README
- Make
ACTIVE_LOCK
private.
1.5.3 #
- Removed static global variables that controls playback.
- Refactor MPRIS and SMTC media controllers.
- MPRIS and SMTC now update their position.
- Removed loops that wait on a valid duration for media controllers.
- CD works with different branches.
1.5.2 #
- Add default timebase (thanks @Yesterday17)
- Workflow commits use "CD" instead of "CI".
- Code gen is run when
lib.rs
is changed.
1.5.1 #
- Improved preload performance (stream is created in a different thread).
- Fix
stop()
not working during playback. - Fix gapless playback for Android.
1.5.0 #
- Add support for gapless playback.
- Fix panic when a file's timebase is
None
.
1.4.5 #
- BREAKING: These names are more generic since not every OS has a notification as a media controller.
- Renamed
showMediaNotification
touseMediaController
inSimpleAudio.init()
- Renamed
androidCompactPlaybackActions
toandroidCompactActions
inSimpleAudio.init()
- Renamed
NotificationActions
toMediaControlAction
- Renamed
- Update
flutter_rust_bridge
- Enums are generated in camelCase.
- Rust can take a list of
MediaControlAction
instead of ints.
- Refactored decoder
- Prevent multiple playbacks happening after spamming
open()
- Prevent multiple playbacks happening after spamming
- Update example/docs
1.4.4 #
- Handle hot restarts.
1.4.3 #
- Fix method channel being used for incorrect platforms when looping playback.
1.4.2 #
- Add missing Android libs from CI fail.
1.4.1 #
- Fix progress bar on media notifications not changing after loop.
- Fix
simple_audio
blocking whenstop()
is called twice. - Update example.
- Other changes
- Formatting (Rust, Kotlin)
- Refactoring (Rust)
1.4.0 #
- Support changing output devices.
- Remove playback error handling.
- The main cause of this was the output device changing.
1.3.0 #
- Allow user to handle errors. The following errors can be handled in Dart:
- Fail to open a file
- Error in network stream (ex. the URL is no longer valid)
- Error decoding the file (ex. the file isn't formatted correctly)
- Error during playback (ex. the device that was outputting is no longer available)
- Fix the playback state not being updated when calling
open()
1.2.1 #
- Fix Android CMake
- Update Flutter Rust Bridge
1.2.0 #
- Added the option to normalize volume.
- Improve documentation.
1.1.0 #
- Linux: CI builds on older Ubuntu version to support older
glibc
versions. - Linux: MPRIS notification now opens the app when clicked.
- Android: Support Android 13's new media style notification
1.0.7 #
- Remove some Android setup requirements.
- Fix foreground service keeping Android app alive.
- The fix uses
endProcess
which is like force stopping the app. If you have a better solution to this, submit an issue or PR.
- The fix uses
1.0.6 #
- Streaming with HTTP Range header for network files.
- Stream HLS files by downloading the given parts on demand.
1.0.5 #
- Add the ability to loop.
- Update Rust dependencies.
- Improve Rust codebase with clippy suggestions.
1.0.4 #
- Media controllers can take images as bytes.
- Android: Playback not working when reopening app
1.0.3 #
- Improved README
- Added license headers to files that were missing it
- iOS calling play/pause quickly stops playback
1.0.2 #
- Build scripts download binaries (for pub.dev)
1.0.1 #
- Set versions in
pubspec.yaml
- Simplified Linux CMAKE
- Fixed macOS dylib trying to link to a file on GitHub Actions.
1.0.0 #
First version