Go to file
Esmond Wong c79216c818
implement automaticallyWaitsToMinimizeStalling on iOS (#49)
* implement automaticallyWaitsToMinimizeStalling on iOS

* Allow automaticallyWaitsToMinimizeStalling to be called before setUrl

Co-authored-by: ryanheise <ryan@ryanheise.com>
2020-03-07 11:49:35 +11:00
.idea Rename project to just_audio 2019-11-28 17:55:32 +11:00
android Set buffering to false on dispose 2020-02-05 22:47:10 +11:00
example Remove Flutter.podspec from source control 2020-02-05 13:47:59 +11:00
ios implement automaticallyWaitsToMinimizeStalling on iOS (#49) 2020-03-07 11:49:35 +11:00
lib implement automaticallyWaitsToMinimizeStalling on iOS (#49) 2020-03-07 11:49:35 +11:00
test Rename project to just_audio 2019-11-28 17:55:32 +11:00
.gitignore Project template 2019-11-26 01:50:21 +11:00
.metadata Project template 2019-11-26 01:50:21 +11:00
CHANGELOG.md Version 0.1.0 2020-02-06 16:59:13 +11:00
LICENSE Update Copyright dates 2020-01-02 13:37:22 +11:00
README.md Improve documentation 2020-01-02 00:49:21 +11:00
just_audio.iml Rename project to just_audio 2019-11-28 17:55:32 +11:00
pubspec.lock Version 0.0.5 2020-01-02 01:28:09 +11:00
pubspec.yaml Version 0.1.0 2020-02-06 16:59:13 +11:00

README.md

just_audio

A Flutter plugin to play audio from URLs, files, assets and DASH/HLS streams. This plugin can be used with audio_service to play audio in the background and control playback from the lock screen, Android notifications, the iOS Control Center, and headset buttons.

Features

Feature Android iOS
read from URL
read from file (untested)
read from asset (untested)
DASH (untested)
HLS (untested)
play/pause/stop/seek
set volume (untested)
set speed (untested)
custom actions (untested)
clip audio
dispose

This plugin has been tested on Android, and is being made available for testing on iOS. Please consider reporting any bugs you encounter here or submitting pull requests here.

Example

Initialisation:

final player = AudioPlayer();
var duration = await player.setUrl('https://foo.com/bar.mp3');

Standard controls:

player.play();
await player.seek(Duration(seconds: 10));
await player.pause();
await player.stop();

Clipping audio:

await player.setClip(start: Duration(seconds: 10), end: Duration(seconds: 20));
await player.play(); // Waits for playback to finish

Release resources:

await player.dispose();

Todo

  • FLAC support
  • Web support
  • Gapless playback