Annotation-attribute framework macros for ra8-firmware.
Transport-neutral, caller-owned audio capture facade.
void(* ra8_audio_frame_callback_t)(void *ctx, const ra8_audio_frame_t *frame)
Complete-frame callback for asynchronous audio sources.
ra8_err_codes_t ra8_err_t
Canonical error-return type used by every ra8-firmware API.
Caller-owned writable byte buffer.
Immutable view of one interleaved PCM frame.
Operations supplied by every audio source backend.
ra8_err_t(* get_info)(void *ctx, ra8_audio_source_info_t *out_info)
Query output.
ra8_err_t(* capture)(void *ctx, const ra8_audio_buffer_t *buffer, ra8_audio_frame_t *out_frame)
Capture PCM.
ra8_err_t(* stream_start)(void *ctx, const ra8_audio_buffer_t *buffer, ra8_audio_frame_callback_t callback, void *callback_ctx)
Start streaming.
ra8_err_t(* stop)(void *ctx)
Stop backend.
Fixed output contract and storage requirement for one source.