public/ui/recorder_playback_controller library UI_Widgets

The Flutter Sound UI controller

The RecorderPlaybackController is a specialised Widget which is used to co-ordinate a paired SoundPlayerUI and a SoundRecorderUI widgets.

Often when providing an interface to record audio you will want to allow the user to playback the audio after recording it. However you don't want the user to try and start the playback before the recording is complete.

The RecorderPlaybackController widget does not have a UI (its actually an InheritedWidget) but rather is used to as a bridge to allow the paired SoundPlayerUI and SoundRecorderUI to communicate with each other.

The RecorderPlaybackController co-ordinates the UI state between the two components so that playback and recording cannot happen at the same time.


This class is a Provider style widget designed to co-ordinate a SoundRecorderUI and a SoundPlayerUI so that a user can record and playback in a co-ordinated manner.


connectPlayerToRecorderStream(SoundPlayerUIState playerState, Stream<PlaybackDisposition>? recorderStream) → void
Functions used to hide internal implementation details
onPlaybackEnd(BuildContext context) → void
onPlaybackStart(BuildContext context) → void
onRecordingNew(BuildContext context, SoundRecorderUIState recorder) → void
onRecordingPaused(BuildContext context) → void
onRecordingResume(BuildContext context) → void
onRecordingStopped(BuildContext context, Duration duration) → void
registerPlayer(BuildContext context, SoundPlayerUIState player) → void
registerRecorder(BuildContext context, SoundRecorderUIState recorder) → void