Skip to main content
Two shapes. Pick by where your audio comes from.

Push: openStream

openStream returns a Future here.

Pull: transcribeStream

Signatures

Driving it from a recorder

Cancel the subscription and close the stream in dispose, or the microphone stays live.

AudioCaptureManager

package:runanywhere/runanywhere.dart exports AudioCaptureManager, which wraps the native capture path the voice session uses. Prefer it over wiring a recorder by hand.

Choosing between them

Push suits a live microphone, since a recorder already hands you buffers in a callback. Pull suits a source you can express as a Stream<AudioInput>.