Flutter Sound

pub version

This plugin provides simple recorder and player functionalities for both Android and iOS platforms.

<br/><br/>

Demo

Features

  • Play and Record sounds or music with various codecs. (See the supported codecs here)
  • Play local or remote files specified by their URL.
  • The App playback can be controled from the device lock screen or from an Apple watch
  • Handle playback stream from native (To sync exact time with bridging). *Not sure to understand what it means!*

Flutter Sound branches

We actually maintain two branches for Flutter Sound :

  • The V4 branch (the version ^4.0.0)
  • The master branch (actually the version ^5.0.0)

We do not expect that everybody will switch today from 4.x.x to 5.x.x.

V4 is our stable branch, and will be maintained as long as everybody will not have switch to V5 : in other words V4 is our LTS version (Long Term Support).

Migration Guides

Free Read

Medium Blog. *This link is probably obsolete!*

SDK requirements

  • Flutter Sound requires an iOS 9.3 SDK (or later)
  • Flutter Sound requires an Android 24 (or later)

Installation

Here is a guide for Flutter Sound installation

Flutter Sound API

Flutter Sound is composed with 4 modules :

To use Flutter Sound you just do :

import 'package:flutter_sound/flutter_sound.dart';

This will export all the necessaries dart interfaces.

Examples (Demo Apps)

Flutter Sound comes with two Demo/Examples :

  • Demo1 app is a small demonstration of what we can do with Flutter Sound. This Demo App is a kind of exerciser which try to implement the major Flutter Sound features. This Demo does not use the Flutter Sound UI Widgets
  • Demo2 app is an example of what can be done using the Flutter Sound UI Widgets

License

Flutter Sound is copyrighted by Dooboolab (2018, 2019, 2020) Flutter Sound is released under a license with a copyleft clause: the LGPL-V3 license. This means that if you modify some of Flutter Sound code you must be publish your modifications under the LGPL license too.

Contributions

Flutter Sound is a free and Open Source project. Several contributors have already contributed to Flutter Sound. Specially :

  • @hyochan who is the Flutter Sound father
  • @salvatore373 who wrote the Track Player
  • @bsutton who wrote the UI Widgets
  • @larpoux who add several codec supports

We really need your contributions. Pull Requests are welcome and will be considered very carefully.

Bugs, Features Requests, documentation inaccurate, help needed, ...

We use Github actively.

When you fill an issue, we try to answer something in less than 48h. Of course, this will not mean that your issue will be fixed in 48h. But you will know that we confirm (or not) your issue and what answer you can expect. Maintenance is our priority. We try to make it perfect.

TODO

  • Record and playback raw PCM both on Android and iOS
  • Record OPUS on Android
  • Record MP3 both on Android and iOS
  • Record raw PCM to a Dart Stream instead of a file
  • Playback raw PCM from a Dart Stream instead of a file
  • Streaming records to Speech to Text
  • More support for the Apple Watch
  • Tests unit to avoid any regression
  • Flutter Web App support
  • Flutter Sound port to React Native
  • Better UI Widget
  • Lock screen control between two sounds.

Help Maintenance

My friend Hyo has been maintaining quite many repos these days and he is burning out slowly. If you could help him cheer up, buy him a cup of coffee will make his life really happy and get much energy out of it. As a side effect, we will know that Flutter Sound is important for you, that you appreciate our job and that you can show it with a little money. <br/> Buy Me A Coffee Paypal

Libraries

flutter_sound