-
Notifications
You must be signed in to change notification settings - Fork 29.7k
Description
There needs to be a standard way to play and record audio in Flutter apps. Not being able to do that is a show stopper for many types of apps.
Background
I've read a number of related issues regarding this:
- Would like an example of playing music with background execution in Flutter Would like an example of playing music with background execution in Flutter website#9250
- Missing Feature: Streaming and Playing Audio Missing Feature: Streaming and Playing Audio #32399
- [video_player ] Ability to play local mp3 audio files. [video_player ] Ability to play local mp3 audio files. #38480
However, these are more specific than what I am requesting here. The following article has good background on the situation of third party plugins:
Here are a number of current plugins, each with their own limitations:
- https://pub.dev/packages/assets_audio_player
- https://pub.dev/packages/audioplayers
- https://pub.dev/packages/flute_music_player
- https://pub.dev/packages/stereo
- https://pub.dev/packages/music_player
- https://pub.dev/packages/audio_service
Proposal
I'd like to see an official Flutter plugin that includes the following functionality:
- Play local audio from device
- Play local audio from Flutter asset bundle
- Stream remote audio
- Play audio in the foreground or background
- Record audio on device
- Support for Android
- Support for iOS
- Support for Web
- Support for MacOS
- Support for Windows
- Support for Linux
The plugin should not have any specific skin or widget. Rather, the audio functionality could be incorporated into developers' own widget designs or third-party widget plugins.
Native platforms (Android, iOS, Web, Desktop) already have options for handling audio. Flutter can't be the best way to develop for these platforms unless it can also handle audio.