AudioRecorderController class
Implementation of AudioRecorderService using flutter_sound. Provides audio recording capabilities for rooms, inbox, etc.
- Inheritance
-
- Object
- Listenable
- ListNotifier
- SintController
- AudioRecorderController
- Implemented types
Constructors
Properties
- audioLevelObs → RxDouble
-
Observable audio level (decibels normalized to 0.0-1.0)
final
- durationObs → RxInt
-
final
- hasFileObs → RxBool
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- hasRecordedFile → bool
-
Whether a recorded file exists and is ready for use
no setteroverride
- initialized → bool
-
Checks whether the controller has already been initialized.
no setterinherited
- isClosed → bool
-
Checks whether the controller has already been closed.
no setterinherited
- isDisposed → bool
-
no setterinherited
- isPaused → bool
-
no setter
- isPausedObs → RxBool
-
final
- isRecording → bool
-
Whether the recorder is currently recording
no setteroverride
- isRecordingObs → RxBool
-
Observable state for UI binding
final
- listenersLength → int
-
no setterinherited
-
recordedBytes
→ Future<
Uint8List?> -
Raw bytes of the recorded audio — convenience for voice cloning
and TTS reference audio without manual file I/O.
no setteroverride
- recordedFile → File?
-
File object of the recorded audio (if exists)
no setteroverride
- recordedFilePath → String?
-
Path to the recorded audio file (if exists)
no setteroverride
- recordingDurationSeconds → int
-
Duration of the current/last recording in seconds
no setteroverride
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addListener(
SintStateUpdate listener) → Disposer -
Register a closure to be called when the object notifies its listeners.
inherited
-
addListenerId(
Object? key, SintStateUpdate listener) → Disposer -
inherited
-
cancelRecording(
) → Future< void> -
Cancel recording and delete any partial file
override
-
clearRecording(
) → void -
Clear the recorded file after upload/use
override
-
containsListener(
SintStateUpdate listener) → bool -
inherited
-
debounce<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(milliseconds: 400)}) → void -
Calls
callbackafterrxstops changing forduration. Useful for search-as-you-type, form validation, etc.inherited -
dispose(
) → void -
inherited
-
disposeRecorder(
) → Future< void> -
Dispose resources
override
-
ever<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackevery timerxchanges. Auto-cancels on controller disposal.inherited -
formatDuration(
int seconds) → String - Format duration as MM:SS
-
initialize(
) → Future< bool> -
Initialize the recorder (request permissions, open recorder)
override
-
interval<
T> (RxInterface< T> rx, void callback(T), {Duration duration = const Duration(seconds: 1)}) → void -
Calls
callbackat most once perduration, ignoring intermediate changes. Useful for rate-limiting UI updates.inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
once<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackonly the first timerxchanges, then cancels.inherited -
onClose(
) → void -
Called before onDelete method. onClose might be used to
dispose resources used by the controller. Like closing events,
or streams before the controller is destroyed.
Or dispose objects that can potentially create some memory leaks,
like TextEditingControllers, AnimationControllers.
Might be useful as well to persist some data on disk.
override
-
onDelete(
) → void -
inherited
-
onInit(
) → void -
Called immediately after the widget is allocated in memory.
You might use this to initialize something for the controller.
override
-
onReady(
) → void -
Called 1 frame after onInit(). It is the perfect place to enter
navigation events, like snackbar, dialogs, or a new route, or
async request.
inherited
-
onStart(
) → void -
Called at the exact moment the widget is allocated in memory.
It uses an internal "callable" type, to avoid any @overrides in subclasses.
This method should be internal and is required to define the
lifetime cycle of the subclass.
inherited
-
pauseRecording(
) → Future< bool> - Pause recording
-
refresh(
) → void -
inherited
-
refreshGroup(
Object id) → void -
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies.
inherited
-
removeListenerId(
Object id, VoidCallback listener) → void -
inherited
-
reportAdd(
VoidCallback disposer) → void -
inherited
-
reportRead(
) → void -
inherited
-
resumeRecording(
) → Future< bool> - Resume recording
-
startRecording(
) → Future< bool> -
Start recording audio to a temporary file
override
-
stopRecording(
) → Future< bool> -
Stop recording and finalize the file
override
-
toString(
) → String -
A string representation of this object.
inherited
-
update(
[List< Object> ? ids, bool condition = true]) → void -
Notifies listeners to update the UI.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited