record

suspend fun record(duration: Duration, quality: AudioQuality = AudioQuality.Default, device: AudioDevice.Input? = null): AudioRecording

Records audio for a specified duration.

This is a convenience method that handles session lifecycle automatically.

Return

The recorded audio

Parameters

duration

How long to record

quality

The audio quality preset

device

Optional specific input device

Throws

if recording fails


suspend fun <T> record(quality: AudioQuality = AudioQuality.Default, device: AudioDevice.Input? = null, block: suspend (Recorder) -> T): T

Records audio with manual control via a lambda.

The recorder is automatically cleaned up when the block exits.

Return

The result from the block

Parameters

quality

The audio quality preset

device

Optional specific input device

block

The recording logic

Throws

if recording fails