静音媒体键无法切换

静音媒体键无法切换

罗技 K270 有媒体键:

  • 播放/暂停
  • 静音/取消静音
  • 音量减小
  • 提高音量
  • 邮件
  • 力量
  • 计算器

我不知道“家”应该做什么,而“邮件”和“计算器”则不做任何简单的事情(我希望我没有错),因为我还没有安装计算器和邮件客户端。

但是:“静音/取消静音”仅静音。

作为解决方法,我尝试添加以下两行

"pactl set-sink-mute 0 toggle"
  XF86AudioMute

.xbindkeysrc文件中,但按键一直使音频静音,所以我映射了

"playerctl previous"
  XF86AudioMute

它仍然保持静音,就像我正在使用的映射被覆盖或根本不起作用一样。

最后,作为一个肮脏的解决方法,我使用了以下两行

"pactl set-sink-mute 0 toggle"
  shift + XF86AudioMute

这是可行的,但需要再敲一次键。

我尝试过使用其他键,似乎xbindkeys没有修饰符就无法映射媒体键(即使没有修饰符,普通键也可以正常工作)。

编辑1

顺便说一句,我想我对这个论点(音频)很困惑。例如,系统音量是一个想法,播放器中设置的音量是另一个想法。前者如何控制?那么后者呢?如果我将相同的密钥绑定到两者怎么办?

编辑2

当我xbindkeys -n在终端中运行时,我得到

$ xbindkeys -n

*** Warning ***
Please verify that there is not another program running
which captures one of the keys captured by xbindkeys.
It seems that there is a conflict, and xbindkeys can't
grab all the keys defined in its configuration file.

答案1

事实证明,我错误地说播放/暂停和音量增大/减小键从一开始就起作用,我只是忘记了将以下几行放入~/.config/i3/config

bindsym XF86AudioRaiseVolume exec amixer -q set Master 5%+ unmute
bindsym XF86AudioLowerVolume exec amixer -q set Master 5%- unmute
bindsym XF86AudioPlay exec playerctl play-pause
bindsym XF86AudioMute exec amixer -q set Master mute

最后一行是错误的,并且覆盖了.xbindkeysrc设置。

现在我必须决定是否将所有设置放入配置文件或's 文件i3中。xbindkeys

无论哪种情况,上述都解决了我原来的问题。

相关内容