code wiki / (root) / nx_audio_capture.nx

nx_audio_capture.nx

buildroot/runtime/nx_audio_capture.nx

4555 B132 linesdepth 3pulls 3 transitivereach 3 importersview sourcekind librarytopic audio
docsdependenciesstructsconstsfunctions

about

nx_audio_capture.nx -- abstract audio-capture backend + null impl. Capture backends provide PCM samples to nx_audio_session. Same OOP pattern as nx_codec: typed-fn-ptr vtable in struct, concrete backends embed this struct and wire their own impls. Shipping backends (today): nx_audio_capture_null -- always returns 0 bytes (CI / headless) nx_audio_capture_synth -- sine wave (test fixture, FUTURE file) Queued backends: nx_audio_capture_alsa -- Linux ALSA (Synology / RPi deployment) nx_audio_capture_webaudio -- wasm bridge to browser AudioContext nx_audio_capture_coreaudio -- macOS

dependencies 1 imports · 2 importers

nx_syscalls_x86_64.nx nx_audio_capture.nx nx_audio_session.nx nx_call.nx

imports: nx_syscalls_x86_64.nx

imported by: nx_audio_session.nxnx_call.nx

structs

43struct nx_audio_capture

consts

26const NX_AUDIO_CAPTURE_KIND_UNKNOWN: i64 = 0
27const NX_AUDIO_CAPTURE_KIND_NULL: i64 = 1
28const NX_AUDIO_CAPTURE_KIND_SYNTH: i64 = 2
29const NX_AUDIO_CAPTURE_KIND_ALSA: i64 = 3
30const NX_AUDIO_CAPTURE_KIND_WEBAUDIO: i64 = 4
31const NX_AUDIO_CAPTURE_KIND_COREAUDIO: i64 = 5
32const NX_AUDIO_CAPTURE_KIND_N: i64 = 6
36const NX_AUDIO_CAPTURE_ERR_NOT_OPEN: i64 = -1
37const NX_AUDIO_CAPTURE_ERR_BAD_SIZE: i64 = -2
38const NX_AUDIO_CAPTURE_ERR_BACKEND: i64 = -3
39const NX_AUDIO_CAPTURE_ERR_CLOSED: i64 = -4
56const NX_AUDIO_CAPTURE_BYTES: i64 = 64

functions

60func nx_audio_capture_kind(c: *nx_audio_capture) -> i64 { return c.kind }
61func nx_audio_capture_sample_rate(c: *nx_audio_capture) -> i64 { return c.sample_rate }
62func nx_audio_capture_channels(c: *nx_audio_capture) -> i64 { return c.channels }
63func nx_audio_capture_is_open(c: *nx_audio_capture) -> i64 { return c.state }
67func nx_audio_capture_open(c: *nx_audio_capture) -> i64
71func nx_audio_capture_close(c: *nx_audio_capture) -> i64
75func nx_audio_capture_pull_frame(c: *nx_audio_capture,
84func nx_audio_capture_default_open(c: *nx_audio_capture) -> i64
89func nx_audio_capture_default_close(c: *nx_audio_capture) -> i64
94func nx_audio_capture_default_pull_frame(c: *nx_audio_capture,
101func nx_audio_capture_init(c: *nx_audio_capture,
121func nx_audio_capture_null_pull_frame(c: *nx_audio_capture,
126func nx_audio_capture_null_new(c: *nx_audio_capture,