If you encounter a problem with microphone in Chromium on FreeBSD (and other *BSD), this is because it uses sndio
audio backend and probably default microphone is not the one you want to use. In my case /dev/dsp0
is the HDMI input/output thus no audio input. There is no need to start system wide sndiod
. You can use environment variables in ~/.profile
to control audio input/output for the local spawning sndio
client:
export AUDIODEVICE="rsnd/4"
sets default input/output device to/dev/dsp4
.export AUDIORECDEVICE="rsnd/3"
sets default input device to/dev/dsp3
.export AUDIOPLAYDEVICE="rsnd/2"
sets default output device to/dev/dsp2
.
You can simply set AUDIODEVICE="rsnd/4"
to switch default input and output device, and/or AUDIORECDEVICE="rsnd/3"
to change default microphone source. If you want to have choice to switch between several devices on the fly you will need to use sndiod
and provide set of devices with -f
flag. See sndio
[1] and sndiod
[2] man pages for more information.
[1] https://man.openbsd.org/sndio.
[2] https://man.openbsd.org/sndiod