CaptureSession class abstract interface

An active microphone capture.

The audio thread reduces each hop to a CaptureFrame and publishes it through a lock-free ring. This session drains that ring on a timer. No PCM crosses into Dart, and no step in the path allocates on the audio thread.

Implementers

Properties

config → CaptureConfig
no setter
dropped → int
Hops that the consumer was too slow to collect.
no setter
frames → Stream<CaptureFrame>
Reduced frames, in order.
no setter
hashCode → int
The hash code for this object.
no setterinherited
isPaused → bool
Whether the device is stopped but the take is intact.
no setter
isRecording → bool
no setter
pcmDropped → int
Samples that the audio ring dropped because the file writer was too slow.
no setter
produced → int
Hops that the audio thread produced.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
scope → CaptureScope
A rolling window of recent frames, for a painter to draw.
no setter
truncated → bool
Whether the history is more than CaptureConfig.maxDuration.
no setter

Methods

dispose() → Future<void>
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
pause() → Future<void>
Stops the device and keeps the take.
resume() → Future<void>
start() → Future<void>
stop() → Future<WaveformPeaks>
Stops the device and returns peaks for all the audio that it captured.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited