diff options
Diffstat (limited to 'content/2023/switching-between-speakers-and-headphones-on-freebsd.md')
-rw-r--r-- | content/2023/switching-between-speakers-and-headphones-on-freebsd.md | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/content/2023/switching-between-speakers-and-headphones-on-freebsd.md b/content/2023/switching-between-speakers-and-headphones-on-freebsd.md deleted file mode 100644 index 82e842b7..00000000 --- a/content/2023/switching-between-speakers-and-headphones-on-freebsd.md +++ /dev/null @@ -1,51 +0,0 @@ ---- -title: "Switching Between Speakers and Headphones on FreeBSD" -category: bsd -abstract: How to change the audio device? -date: 2023-03-16T22:52:01+01:00 -year: 2023 -draft: false -tags: -- FreeBSD -- headphones -- speakers -- ThinkPad -- audio -- tutorial ---- -I want my laptop to switch to wired headphones when I attach them. FreeBSD has its own [Sound System](https://wiki.freebsd.org/Sound), so it's a great learning experience. I have yet to automate it (it is possible, but an attempt to do so forced me to do a complete rollback of the system state), but for now, this is working. - -First, check which audio outputs your device supports: - -``` -$ cat /dev/sndstat -``` - -In the case of my ThinkPad, this returns - -``` -Installed devices: -pcm0: <NVIDIA (0x0094) (HDMI/DP 8ch)> (play) -pcm1: <NVIDIA (0x0094) (HDMI/DP 8ch)> (play) -pcm2: <NVIDIA (0x0094) (HDMI/DP 8ch)> (play) -pcm3: <Conexant (0x1f86) (Analog)> (play/rec) default -pcm4: <Conexant (0x1f86) (Left Analog Headphones)> (play) -No devices installed from userspace. -``` - -The ones I care about are: -pcm3 - the speakers -pcm4 - the headphone jack - -I can now easily switch between them: - -``` -# enable speakers -$ sysctl hw.snd.default_unit=3 -# enable headphones -$ sysctl hw.snd.default_unit=4 -``` - -(replace the value with the correct id from `sndstat` file.) - -This, however, comes with a huge caveat. Some apps (khem khem, Firefox) not native to FreeBSD come configured with PulseAudio instead of FreeBSD's Sound System. This creates a level of indirection, and changing system output may not work instantly. In the case of Firefox, I need to reload the tab. Some apps, as I've heard, require a restart. |