Required Privileges
The API requires specific privileges for certain operations:Constructors
new AudioRecordStreamBuilder()
new AudioRecordStreamBuilder(): AudioRecordStreamBuilder
Returns
AudioRecordStreamBuilderProperties
args
args:Object={}
Methods
buildAsync()
buildAsync():Creates a new AudioRecordStream using the current builder configuration. Must callPromise<AudioRecordStream>
setAudioConfig and setAudioSource before building.
Returns
Promise<AudioRecordStream>
Promise<AudioRecordStream> A promise that resolves to:
- New AudioRecordStream instance if successful
- STATUS_BAD_VALUE (-2): Missing required configuration
- STATUS_NO_INIT (-3): Audio system not initialized
- STATUS_PERMISSION_DENIED (-9): Missing microphone privilege
- STATUS_NO_MEMORY (-1): Failed to allocate resources
- STATUS_DEAD_OBJECT (-5): Server communication error
destroyAsync()
Destroys an existing AudioRecordStream. This releases all resources associated with the stream. The stream object must not be used after calling this method.staticdestroyAsync(recordStream: AudioRecordStream):Promise<AudioStatus>
Parameters
recordStream
AudioRecordStream The stream to destroyReturns
Promise<AudioStatus>
Promise<AudioStatus> A promise that resolves to:
- STATUS_NO_ERROR (0): Stream destroyed successfully
- STATUS_BAD_VALUE (-2): Invalid stream object
- STATUS_NO_INIT (-3): Audio system not initialized
- STATUS_INVALID_OPERATION (-8): Stream already destroyed
reset()
reset(): void
Resets all builder configuration to default values.
Use this to reuse the builder for creating a different stream configuration.
setAudioConfig()
setAudioConfig(config: AudioConfig): void
Sets the audio configuration for the stream to be built.
This must be called before buildAsync.
Parameters
config
AudioConfig Audio configuration object containing:sampleRate: Sample rate in Hz from AudioSampleRate enumchannelMask: Channel configuration from AudioChannelMask enumformat: Sample format from AudioSampleFormat enum
setAudioFlags()
setAudioFlags(flags: AudioFlags): void
Sets optional audio flags for the stream to be built.
These flags modify the behavior of the audio recording.
Parameters
flags
AudioFlags Bit flags from AudioFlags enum:- FLAG_NONE (0x0): Default behavior
- FLAG_LOW_LATENCY (
1 << 2): Minimize recording delay - FLAG_HW_AV_SYNC (
1 << 1): Hardware A/V synchronization And others as defined in AudioFlags enum Flags can be combined using bitwise OR
setAudioSource()
setAudioSource(source: AudioSource): void
Sets the audio source type for the stream to be built.
This must be called before buildAsync.
Different sources may have different routing and processing applied.
Parameters
source
AudioSource The type of audio input from AudioSource enum:- VOICE_RECOGNITION: Optimized for speech recognition
- VOICE_COMMUNICATION: Optimized for VoIP
- CAMCORDER: Video recording audio
- RAW: Unprocessed audio input
- WAKEWORD: Wake word detection optimized
- ULTRASOUND: High-frequency capture And others as defined in AudioSource enum

