Linux 上的 Google Chrome 不使用 ALSA 来发出声音

Linux 上的 Google Chrome 不使用 ALSA 来发出声音

在我的笔记本电脑上,我有一个 .asoundrc 文件,它可以将声音输出到我的 USB 耳机。这对于 SMplayer 和 Firefox 来说很好用。但是,Google Chrome(至少是基于 Flash 和 HTML5 的视频以及 Chrome 中基于 HTML5 的音频)却通过笔记本电脑扬声器播放。我曾尝试从命令行运行 Chrome,希望能得到一些有用的输出,但没有那么幸运。我曾尝试通过 Google 查找 Chrome 是否使用 ALSA,或者是否使用其他东西,但一直没有成功。

这个问题似乎是同样的问题,但没有提出建议。

有人有什么想法吗?我运行的是 Gentoo,内核是 3.10.17,ALSA 实用程序是 1.0.27,FVWM 是 2.6.5,Chrome 是 36.0.1985.143。如果您需要更多信息,请告诉我。

编辑:

我已将 USB 耳机配置为默认 ALSA 设备。使用 alsamixer 设置和取消静音耳机和板载设备的音量。我的 .asoundrc 文件如下。

ctl.!default {
  type hw
  card Headset
}

pcm.dmixer {
  type dmix
  ipc_key 1024
  slave {
    pcm {
      type hw
      card Headset
    }
    period_size 1024
    buffer_size 4096
  }
  bindings {
    0 0
    1 1
  }
}

pcm.!default {
  type plug
  slave.pcm dmixer
}

编辑2:更多信息

从命令行运行 mplayer 和 google-chrome-stable。一旦 mplayer 播放视频(和音频),我就会启动 Chrome,转到 YouTube,然后播放视频。音频从扬声器中传出。命令行输出如下:

[27649:27688:0820/162104:ERROR:gservices_settings.cc(103)] Setting not found: checkin_interval
[27649:27748:0820/162105:ERROR:get_updates_processor.cc(240)] PostClientToServerMessage() failed during GetUpdates
[27649:27688:0820/162211:ERROR:raw_channel_posix.cc(139)] recvmsg: Connection reset by peer
[27649:27688:0820/162211:ERROR:channel.cc(297)] RawChannel fatal error (type 1)
[27649:27688:0820/162212:ERROR:raw_channel_posix.cc(139)] recvmsg: Connection reset by peer
[27649:27688:0820/162212:ERROR:channel.cc(297)] RawChannel fatal error (type 1)
[WARNING:flash/platform/pepper/pep_module.cpp(63)] SANDBOXED
[27649:27688:0820/162235:ERROR:raw_channel_posix.cc(139)] recvmsg: Connection reset by peer
[27649:27688:0820/162235:ERROR:channel.cc(297)] RawChannel fatal error (type 1)

答案1

我刚刚将内核从 3.10.17 更新到 3.14.14,问题已经解决。Chrome 中的声音又通过我的 USB 耳机发出了。感谢大家的帮助。

答案2

我遇到了不同的问题。在使用 pulseaudio 之前,当我删除它时,crhome/chromium/firefox 甚至 mplayer 都出现了无声问题(没有 -ao alsa:device=hw=8.0 配置)。将 alsamixer 设置为默认使用正确的卡后,尝试导出 XDG_RUNTIME_DIR= && /usr/bin/chromium --alsa-output-device=default 如果有效,您也可以查看 $XDG_RUNTIME_DIR,您可能会看到 pulse 文件夹,我猜这会导致问题。

注意:安装 pulse 后,设置默认 alsa 声卡可能也比较棘手。首先删除 pulseaudio 和 ~/.pulse* 文件夹。我的情况是 /etc/asound.conf 影响 root,但在我删除 pulse 之前对我没影响。

附言:我理解“export XDG_RUNTIME_DIR=”解决方案并不完美,并且表明我的配置中还残留了一些脉冲。

相关内容