Xubuntu:Pavucontrol 不显示模拟输出,但应用程序可以在其上播放音频

Xubuntu:Pavucontrol 不显示模拟输出,但应用程序可以在其上播放音频

以前,一切都按预期运行,所有应用程序都可以播放音频,所有设备都列出,可以通过pavucontrolXubuntu 的“音量控制”应用程序进行选择。

在尝试(未成功)安装更好的混音器 GUI 后,我的 Xubuntu 18.04 盒子上出现了奇怪的音频问题。最初音频无法正常工作,但在尝试了不同的方法(见下文)后,我的情况有所好转 - 但绝不理想:

  1. 当我第一次登录机器时,Pulseaudio 没有启动:“音量控制”在托盘中的扬声器图标上显示一个小 x,打开时显示“正在建立与 PulseAudio 的连接。请稍候...”。这并没有真正困扰我,因为我认为我可以很容易解决这个问题
  2. 即使在这种状态下,aplay -l也显示了我的所有音频设备,但无法播放任何内容。Firefox 也是如此,没有音频。
  3. 通过 启动 Pulseaudio 后pulseaudio --start,使用 播放文件aplay就可以了,甚至 Firefox(启动 Pulseaudio 后我必须重新启动它)和 VLC 也可以播放音频(分别使用 WAV 文件、YouTube 和 MP3 进行了测试)。但如果我通过Tor 浏览器,视频播放了,但我听不到任何声音。
  4. 在这种状态下,音量控制的配置选项卡在播放下拉菜单中只有数字、HDMI 音频设备,实际上即使音频播放正常,它也设置为“关闭”。
  5. 我尝试了以下操作:
    1. 重新启动机器后rm -r ~/.config/pulse/* ; rm -r ~/.pulse*(如发现这里
    2. sudo apt-get -y --reinstall install linux-sound-base alsa-base alsa-utils linux-image-$(uname -r) libasound2在同一页上,我不想(重新)安装那些我认为与问题或系统无关的软件包)
    3. 使用控制台应用程序中的设置后alsamixer,我怀疑切换到那里的模拟音频输出最终会让一些应用程序再次播放音频。

作为参考,这是机器的ALSA 配置,但由于有些应用程序实际上可以正常播放音频,我怀疑这是 pulseaudio 的问题。请注意,我没有测试过许多 HDMI 输出选项中的任何一个,因为我在这台机器上根本不使用 HDMI。

有一些类似的问题,但没有一个能为我解决问题:

  1. “声音设置”中未显示模拟声音输出:修复涉及使用音量控制,在我看来,它根本没有列出模拟输出。
  2. 我的声音今天停止工作了,我该如何解决?:问题出在包的安装上randomsound,而我还没有安装该包。
  3. ALSA 可以识别模拟音频,但 PulseAudio 无法识别:目前唯一的答案建议编辑/etc/pulse/default.pa,但该文件中有一条评论建议“最好不要手动加载这些驱动程序,而是使用 module-udev-detect [...] 自动执行此操作”。不确定这是否是我系统中损坏的部分?

如何让音量控制在所有应用程序中显示(和设置)模拟输出? 我怎样才能让损坏的应用程序中的声音再次运行?

更新 1:Tor 浏览器解决方法

由于唯一受影响的应用程序是 Tor 浏览器,我做了一些研究,并找到了 Tor 浏览器错误报告#29360

弄乱 Pulseaudio 设置会使我在最初安装系统后拥有的原始脉冲 cookie 无效,但我实际上并没有找到 Tor 浏览器保存其自己的脉冲配置的位置:该<installfolder>/Browser/.config/pulse/文件夹仅包含一个符号链接fd54e00ba87640399a53c282574d152c-runtime -> /tmp/pulse-eeOG1j3w9rzO,而目标文件夹/tmp/pulse-eeOG1j3w9rzO是空的。

通过以下方式进行调试

Browser/start-tor-browser --verbose

从安装文件夹中,我可以通过以下方式解决问题评论 11

最初我尝试创建一个像这样的符号链接

cd Browser/.config
mv pulse pulse.orig
ln -s ~/.config/pulse

但导致了错误

Failed to create secure directory (.../Browser/.config/pulse): Too many levels of symbolic links)
[Child 5912, MediaPlayback #2] WARNING: 7f85ab585a10 OpenCubeb() failed to init cubeb: file /var/tmp/build/firefox-869854aeea80/dom/media/AudioStream.cpp, line 382
[Child 5912, MediaPlayback #2] WARNING: Decoder=7f85a79d5000 [OnMediaSinkAudioError]: file /var/tmp/build/firefox-869854aeea80/dom/media/MediaDecoderStateMachine.cpp, line 3639
[Child 5912, MediaPlayback #2] WARNING: Decoder=7f85a79d5000 Decode error: NS_ERROR_DOM_MEDIA_MEDIASINK_ERR (0x806e000b) - OnMediaSinkAudioError: file /var/tmp/build/firefox-869854aeea80/dom/media/MediaDecoderStateMachine

解决方案是创建副本而不是链接:

mv pulse pulse.old
cp -a ~/.config/pulse ./

我希望这种做法不会给 Tor 浏览器带来任何安全/隐私问题。

请注意,我也在https://trac.torproject.org/projects/tor/ticket/33443

我最初的问题是如何让音量控制显示模拟输出仍然开放。

相关内容