![FreeBSD 上的 alsa-utils 似乎不起作用](https://linux22.com/image/127383/FreeBSD%20%E4%B8%8A%E7%9A%84%20alsa-utils%20%E4%BC%BC%E4%B9%8E%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
我有工作声音。我可以通过 chrome 播放 YouTube 视频,并且声音效果很好。但是,我使用 i3 作为窗口管理器,并且尝试设置 fn+声音键来提高和降低音量。我找到了一个使用 alsa-utils 的命令来执行此操作:
bindsym XF86AudioRaiseVolume exec amixer -D pulse sset Master 2%+ unmute
bindsym XF86AudioLowerVolume exec amixer -D pulse sset Master 2%- unmute
但这似乎不起作用。当我从 shell 运行 amixer 命令时,出现以下错误:
ALSA lib control.c:1352:(snd_ctl_open_noupdate) Invalid CTL pulse
amixer: Mixer attach pulse error: No such file or directory
进一步深入研究我尝试:
$ aplay -l
aplay: device_list:273: no soundcards found...
然而正如我所说,我有工作的声音。 FreeBSD 似乎知道我的声卡:
$ cat /dev/sndstat
Installed devices:
pcm0: <NVIDIA (0x0044) (HDMI/DP 8ch)> (play)
pcm1: <NVIDIA (0x0044) (HDMI/DP 8ch)> (play)
pcm2: <NVIDIA (0x0044) (HDMI/DP 8ch)> (play)
pcm3: <NVIDIA (0x0044) (HDMI/DP 8ch)> (play)
pcm4: <Realtek ALC892 (Rear Analog 7.1/2.0)> (play/rec) default
pcm5: <Realtek ALC892 (Front Analog)> (play/rec)
pcm6: <Realtek ALC892 (Rear Digital)> (play)
pcm7: <Realtek ALC892 (Onboard Digital)> (play)
pcm8: <USB audio> (rec)
pcm9: <USB audio> (rec)
No devices installed from userspace.
知道 alsa 混音器发生了什么吗?还是有其他方法可以设置 fn+声音键?
答案1
根据 Ignacio Vazquez-Abrams 的评论,我寻找了一种替代方法来完成映射我的媒体键,并了解到该mixer
命令将执行我想要的操作并且工作得很好。这是我最终得到的结果:
bindsym XF86AudioRaiseVolume exec mixer vol +2
bindsym XF86AudioLowerVolume exec mixer vol -2