/dev/snd the way a Linux edge host can. Cyberwave mirrors the camera MJPEG bridge pattern: host ffmpeg captures AVFoundation audio and serves raw PCM over HTTP; the microphone driver container reads that URL via AudioBridgeCapture instead of PortAudio.
Architecture
On Linux Docker hosts, skip the bridge: Edge Core bind-mounts
/dev/snd and the driver uses PortAudio/ALSA directly. See Native microphone driver — Linux.
Prerequisites
- Docker Desktop installed and running (daemon up before
cyberwave edge install). ffmpegon the Mac host (the CLI installer expects it onPATH).- A microphone twin linked to this edge (catalog
generic-microphoneasset). - Microphone privacy granted to the terminal or process running
ffmpegwhen macOS prompts.
First-time setup
- Install the CLI and Edge Core (pairing flow):
-
During
cyberwave edge installon macOS, the installer:- Lists AVFoundation input devices and prompts for a microphone (by index; stored in
audio_streams.json). - Installs a LaunchAgent (
com.cyberwave.audio-stream) on port 8101 (additional mic twins use8102, …). - Writes
~/.cyberwave/audio_streams.jsonwithtwin_to_stream_urlentries. - Restarts Edge Core so driver containers receive
CYBERWAVE_METADATA_AUDIO_DEVICE.
- Lists AVFoundation input devices and prompts for a microphone (by index; stored in
- Link your microphone twin to the edge in the Cyberwave UI, then restart if you added the twin after install:
Switch microphone or fix a broken bridge
Re-run selection without a full reinstall:cyberwave edge restart also self-heals silent ffmpeg slots (launchctl kickstart -k on com.cyberwave.audio-stream*) and warns when audio_streams.json references a port with no running service — same pattern as the camera bridge.
Verify
audio_streams.json shape
generic-microphone container. The driver does not enumerate PortAudio devices on macOS Docker when the bridge URL is present.
Local debugging without Docker
Run the driver on the host with direct PortAudio (no HTTP bridge):Related
Native microphone driver
WebRTC, recording, Zenoh, and env var reference.
Edge overview
macOS edge install, camera bridge, and CLI lifecycle.
Native speaker driver
Playback counterpart — macOS uses a host PCM sink on port
8201 (same bridge pattern).