e67e27f047
hw:0,0 is an exclusive ALSA device — darkice holding it caused arecord to fail silently (stderr was /dev/null), leaving all recordings at 0 bytes with no errors in the log. asound.conf: defines a dsnoop virtual device 'shared_mic' that opens hw:0,0 once and lets multiple processes capture simultaneously. docker-compose.yml: mount asound.conf into the container as /etc/asound.conf; add ipc: host so the container shares the host IPC namespace (dsnoop uses System V shared memory which does not cross the container IPC boundary without this). config.example.ini: document the dsnoop setup and shared-device pattern. README, CLAUDE.md: document the full setup procedure.
21 lines
559 B
Plaintext
21 lines
559 B
Plaintext
# Shared ALSA capture device using dsnoop.
|
|
# Allows multiple processes (e.g. darkice and ISR) to read from hw:0,0 simultaneously.
|
|
#
|
|
# Deploy:
|
|
# sudo cp asound.conf /etc/asound.conf (host — for darkice)
|
|
# docker-compose.yml mounts it into the recorder container automatically.
|
|
#
|
|
# Both darkice and ISR must use "shared_mic" as their device name instead of "hw:0,0".
|
|
|
|
pcm.shared_mic {
|
|
type dsnoop
|
|
ipc_key 1024
|
|
ipc_perm 0666
|
|
slave {
|
|
pcm "hw:0,0"
|
|
channels 2
|
|
rate 48000
|
|
format S16_LE
|
|
}
|
|
}
|