VoiceProcessorController class
Controller implementation for voice audio processing
Provides voice enhancement, noise reduction, and effects processing for creator voice recordings in rooms.
- Inheritance
-
- Object
- Listenable
- ListNotifier
- SintController
- VoiceProcessorController
- Implemented types
Constructors
Properties
- currentLevel → double
-
Get current audio level (for metering)
no setteroverride
- currentLevelObs → RxDouble
-
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- initialized → bool
-
Checks whether the controller has already been initialized.
no setterinherited
- isClipping → bool
-
Whether audio is clipping
no setteroverride
- isClosed → bool
-
Checks whether the controller has already been closed.
no setterinherited
- isDisposed → bool
-
no setterinherited
- isInitialized → bool
-
Whether the processor is initialized
no setteroverride
- isInitializedObs → RxBool
-
Observable for UI binding
no setter
- isProcessing → bool
-
Whether processing is currently active
no setteroverride
- isProcessingObs → RxBool
-
no setter
- listenersLength → int
-
no setterinherited
- peakLevel → double
-
Get peak level since last reset
no setteroverride
- peakLevelObs → RxDouble
-
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- settings → VoiceEffectSettings
-
Current processing settings
no setteroverride
-
settingsObs
→ Rxn<
VoiceEffectSettings> -
no setter
Methods
-
addEffect(
VoiceEffect effect, {double intensity = 0.5}) → Future< void> -
Add effect to processing chain
override
-
addListener(
SintStateUpdate listener) → Disposer -
Register a closure to be called when the object notifies its listeners.
inherited
-
addListenerId(
Object? key, SintStateUpdate listener) → Disposer -
inherited
-
applyBroadcastPreset(
) → Future< void> -
Apply broadcast preset (podcast/radio style)
override
-
applyCreatorVoicePreset(
) → Future< void> -
Apply creator voice preset (optimized for room narration)
override
-
applyMinimalPreset(
) → Future< void> -
Apply minimal preset (light processing)
override
-
applySettings(
VoiceEffectSettings newSettings) → Future< void> -
Apply settings configuration
override
-
clearEffects(
) → Future< void> -
Clear all effects from chain
override
-
clearNoiseProfile(
) → Future< void> -
Clear learned noise profile
override
-
configureCompressor(
{double threshold = -20.0, double ratio = 4.0, double attackMs = 10.0, double releaseMs = 100.0}) → Future< void> -
Configure compressor settings
override
-
configureDynamics(
DynamicsSettings dynamicsSettings) → Future< void> -
Configure dynamics settings
override
-
configureNoiseReduction(
NoiseReductionSettings noiseSettings) → Future< void> -
Configure noise reduction settings
override
-
configureVoiceEnhancement(
VoiceEnhancementSettings enhanceSettings) → Future< void> -
Configure voice enhancement settings
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
-
disposeProcessor(
) → Future< void> - Dispose resources
-
ever<
T> (RxInterface< T> rx, void callback(T)) → void -
Calls
callbackevery timerxchanges. Auto-cancels on controller disposal.inherited -
initialize(
) → Future< bool> -
Initialize the voice processor
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 -
learnNoiseProfile(
List< int> audioData) → Future<void> -
Learn noise profile from audio segment
override
-
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.
inherited
-
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
-
processAudioData(
List< int> inputData) → Future<List< int> ?> -
Process audio data in memory
override
-
processFile(
File inputFile, {String? outputPath}) → Future< String?> -
Process an audio file and return processed file path
override
-
processStream(
Stream< List< inputStream) → Stream<int> >List< int> > -
Process audio stream (for real-time)
override
-
refresh(
) → void -
inherited
-
refreshGroup(
Object id) → void -
inherited
-
removeEffect(
VoiceEffect effect) → Future< void> -
Remove effect from processing chain
override
-
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
-
reorderEffects(
List< VoiceEffect> order) → Future<void> -
Reorder effects in chain
override
-
reportAdd(
VoidCallback disposer) → void -
inherited
-
reportRead(
) → void -
inherited
-
reset(
) → Future< void> -
Reset all processing to defaults
override
-
resetPeakLevel(
) → void -
Reset peak level
override
-
setClarity(
double value) → Future< void> -
Set voice clarity (0.0 to 1.0)
override
-
setCompressor(
bool enabled) → Future< void> -
Enable/disable compressor
override
-
setDeBreath(
bool enabled, {double sensitivity = 0.5}) → Future< void> -
Enable/disable de-breath
override
-
setDeEsser(
bool enabled, {double threshold = 0.5}) → Future< void> -
Enable/disable de-esser
override
-
setEnabled(
bool enabled) → Future< void> -
Enable/disable all processing
override
-
setLimiter(
bool enabled, {double threshold = -1.0}) → Future< void> -
Enable/disable limiter
override
-
setNoiseReduction(
bool enabled, {double strength = 0.5}) → Future< void> -
Enable/disable noise reduction
override
-
setPresence(
double value) → Future< void> -
Set voice presence/brightness (0.0 to 1.0)
override
-
setVoiceEnhancement(
bool enabled) → Future< void> -
Enable/disable voice enhancement
override
-
setWarmth(
double value) → Future< void> -
Set voice warmth (0.0 to 1.0)
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
-
updateLevels(
List< int> audioData) → void - Update level meters (call during recording/playback)
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited