The Flutter Sound documentation.
The Flutter Sound Project

pub version

Flutter Sound is a set of libraries which deal with audio :

  • A player for audio playback
  • A recorder for recording audio
  • Several utilities to handle audio files

Demo

Overview

Flutter Sound is a library package allowing you to play and record audio for :

  • iOS
  • Android
  • Web

Flutter Sound provides both a high level API and widgets for:

  • play audio
  • record audio

Flutter Sound can be used to play a beep from an asset all the way up to implementing a complete media player.

The API is designed so you can use the supplied widgets or roll your own.

The Flutter Sound package supports playback from:

  • Assets
  • Files
  • URL
  • Streams

SDK requirements

  • Flutter Sound requires an iOS 10.0 SDK (or later)
  • Flutter Sound requires an Android 21 (or later)

Examples (Demo Apps)

Flutter Sound comes with several Demo/Examples :

The examples App is a driver which can call all the various examples.

Features

The Flutter Sound package includes the following features :

  • Play and Record τ or music with various codecs. (See the supported codecs here)
  • Play local or remote files specified by their URL.
  • Play assets.
  • Record to a live stream Stream
  • Playback from a live Stream
  • The App playback can be controlled from the device lock screen or from an Apple watch
  • Play audio using the built in [SoundPlayerUI] Widget.
  • Roll your own UI utilizing the τ api.
  • Record audio using the builtin [SoundRecorderUI] Widget.
  • Roll your own Recording UI utilizing the τ api.
  • Support for releasing/resuming resources when the app pauses/resumes.
  • Record to a Dart Stream
  • Playback from a Dart Stream
  • The App playback can be controlled from the device lock screen or from an Apple watch

Supported platforms

Flutter Sound is actually supported by the Flutter Framework.

If you are interested with other platforms (React Native, Cordova, JS, …) maybe you can have a look to the GPL project Tau Sound Project 9.0 : we actually have several plans to port the τ project to other frameworks.

License

Flutter Sound 8.3 was published under the LGPL License. A Flutter Sound developer noticed recently that this license was incorrect : the LGPL license does not allow static links to the library. The library must be linked dynamically. The problem was that Flutter links-edit the plugins statically. This means that many Flutter Sound users who use our library in private/close sources App was in a copyright infringement.

To solve this issue, we forked Flutter Sound 8.3 to two different branches.

  • Flutter Sound 8.4 (this fork) is published under the Mozilla Public License 2.0.
  • The τ Sound Project 9.0 is published under a pure GPL License.

Flutter Sound is copyrighted by Dooboolab (2018, 2019, 2020, 2021).

  • Flutter Sound is now released under the permissive Mozilla license which has a weak copyleft clause: if you modify some of Flutter Sound code you must publish your modifications under the MPL license too. But you may publish your App with any license you want. Even a Proprietary/Close Sources License (shame on you!).
  • If your App is covered by the GPL license, you probably want to consider using the GPL Tau Sound Project 9.0 : indeed Tau Sound 9.0 offers several enhancement compared to Flutter Sound 8.3.

We need help

Actually, my main project is the GPL Tau Sound Project 9.0 and not anymore Flutter Sound. To be frank, I must say that there is no other main developers on Flutter Sound. This is bad, because Flutter Sound deserves to be maintained.

Thanks

Paypal

Tags: