开始游戏后音量随机变化

开始游戏后音量随机变化

我遇到这个问题已经有一段时间了,尽管我在某个时候找到了半补丁,但也许有人可以告诉我如何一劳永逸地正确解决它。

本质上,某些游戏和应用程序(Super Meat Boy、Braid、XBMC)会使音量变得异常,或多或少随机地上下移动(尽管通常倾向于“更大”)。关闭应用程序后,如果我切换到控制台,我会看到光标快速闪烁(每秒 5 次左右)一段时间(而音量仍然异常),直到两个问题同时停止(光标恢复正常,音量稳定)。

我一直在使用的补丁本质上是在任何我知道会触发此问题的应用程序之前运行以下脚本:

xmodmap -e "keycode 122 = 0x0000"
xmodmap -e "keycode 123 = 0x0000"

本质上,这一行是将音量增大/减小键重新映射到无,并且可以阻止问题的发生,但是,这也会导致我的音量键停止工作。

有人能帮我理解这是怎么回事吗?这些应用程序之间唯一的共同点似乎是它们都大量使用图形。我在 HP 笔记本电脑上运行 Ubuntu 12.04,尽管这个问题现在发生在 Cinnamon 上,但它曾经在 Gnome 2 上发生过。

答案1

回答我自己的问题,希望它对其他人有用。

我的 HP 笔记本配有一个加速度计,显然是为了在硬盘从某处掉落时关闭硬盘。这个加速度计在 /dev 中注册,所有这些游戏都从这个设备读取数据,就像它是一个操纵杆一样。这就是为什么它只在满足两个条件时才会发生:

  • 我正在玩游戏(XBMC 也发生过这种情况)
  • 笔记本电脑已打开(我发现,如果我插入外接显示器并关闭笔记本电脑,就不会发生此问题 - 我猜测加速度计在笔记本电脑关闭时会关闭)

插入一个真正的操纵杆并告诉每个游戏使用 /dev 中的正确文件已解决问题。

我知道这只是部分答案,因为它没有解释为什么我得到的是音量变化而不是随机移动,但这是我能想到的最好的答案。顺便说一句,这也发生在 Debian 发行版中。

相关内容