/audioplayers

A Flutter package to play multiple audio files simultaneously (Android/iOS/web/Linux/Windows/macOS)

Primary LanguageDartMIT LicenseMIT

AudioPlayers

A Flutter plugin to play multiple simultaneously audio files, works for Android, iOS, Linux, macOS, Windows, and web.


Check out the live example app.

Note: all the docs are kept up to date to reflect the content of the current newest release. If you are looking for older information and guidance, please checkout the tag related to the version that you are looking for.

If you are interest in migrating major versions, please check the changelog and our migration guide.

Getting Started

We tried to make audioplayers as simple to use as possible:

import 'package:audioplayers/audioplayers.dart';
// ...
final player = AudioPlayer();
await player.play(UrlSource('https://example.com/my-audio.wav'));

Please follow our Getting Started tutorial for all high-level information you need to know.

Then, if you want to dig deeper, our code is very well documented with dartdocs, so check our API reference or the codebase itself on your IDE (or on GitHub).

If something is not clear on our docs, please send a PR to help us improve.

Help

If you have any problems, please follow these steps before opening an issue.

  1. Carefully read the Getting Started tutorial before anything else. Re-read if necessary.
  2. Check our Troubleshooting Guide for solutions for most problems.
  3. If you have a missing feature report or feature request, please first check the Feature Parity Table to understand our roadmap and what we know is missing. We love contributions!
  4. Join Blue Fire's Discord server and ask for directions. Maybe it's not a bug, or it's a known issue.
  5. If you are more comfortable with StackOverflow, you can also create a question there. Add the flutter-audioplayers tag, so that anyone following the tag can help out.
  6. If the issue still persists, go to the create an issue page and follow the step-by-step there before submitting.
  7. If the step-by-step there doesn't give you any help, then proceed to create the issue following the template. Do not skip mandatory sections. Do not include the literal text of the template, rather replace the sections with what they should contain.

Any issues created not following the list above can be flagged or closed by our team.

Feature Parity Table

Not all features are available on all platforms. Click here to see a table relating what features can be used on each target.

Feel free to use it for ideas for possible PRs and contributions you can help with on our roadmap! If you are submitting a PR, don't forget to update the table.

Support

The simplest way to show us your support is by giving the project a star! ⭐

You can also support us monetarily by donating through OpenCollective:

Through GitHub Sponsors:

Or by becoming a patron on Patreon:

Note: this software was made by the community, for the community, on our spare time, with no commercial affiliation. It is provided as is and any positive contribution is appreciated. Be kind and mindful of the free time that a battalion of people has gifted on behalf of the community to craft and maintain this.

Contributing

All help is appreciated but if you have questions, bug reports, issues, feature requests, pull requests, etc, please first refer to our Contributing Guide.

Be sure to check the Feature Parity Table to understand if your suggestion is already tracked, on the roadmap, or out of scope for this project.

Also, as always, please give us a star to help!

Credits

This was originally a fork of rxlabz's audioplayer, but since we have diverged and added more features.

Thanks for @rxlabz for the amazing work!