为什么 YouTube、Audacity、Tartini 和 PulseAudio 不能兼容?

为什么 YouTube、Audacity、Tartini 和 PulseAudio 不能兼容?

(这是在 Ubuntu 12.04 LTS 上应用的所有最新更新。)

我经常使用的音频应用程序是大胆,既可以作为音频播放器,又可以作为录音机,通常搭配我能找到的最便宜的耳机。

我也经常使用 YouTube(即 Firefox 中的 Flash)。

两者协同工作得很好:例如,我可以同时播放两者的音频。

最近我开始使用另一个音频应用程序:塔尔蒂尼。 谢谢Jeremy Salwen 的Jevon Longdell 的努力,编译时没有任何问题,在使 OpenGL 工作后,它也可以运行。所以我希望它能与其他两个混合:

YouTube、Tartini 和 Audacity 并驾齐驱

但事实并非如此。最初,它不会播放任何音频根本

不知怎么的,我发现在 Ubuntu 的“声音设置”中

Ubuntu 声音设置

我必须选择“数字输出 (S/PDIF)”,才能听到用 Tartini 播放的音频 - 但这会使 YouTube 和 Audacity 静音。我不想根据我碰巧使用的应用程序在“数字”和非“数字”输出之间切换。我不关心“输出”(无论它们是什么)是否是“数字”(无论这意味着什么);我只希望应用程序发出的声音在我要求时播放,无论当时是否有其他应用程序正在播放或录制声音。

不知何故,我发现有一个名为“paprefs”的应用程序,它有一个选项可以启用“在所有本地声卡上同时输出”,不管这意味着什么,所以我安装了它并启用了该选项:

paprefs 同时输出选项

这给了我“声音设置”中的一个新选项:

Ubuntu 声音设置新增选项

在我选择该选项后,Audacity 和 Tartini 都会播放音频,不是同时播放,而是先启动的那个。至少,这种情况持续了一小会儿;然后又恢复了之前的行为。

重启后,新的行为恢复了:我现在可以同时播放 Audacity 和/或 YouTube 的声音(如果我愿意的话);或者播放 Tartini 的声音;但永远不能同时播放 Audacity 和 Tartini 的声音,或者 YouTube 和 Tartini 的声音。但是,Ubuntu 声音设置和 pavucontrol 不再可用:pavucontrol 声称它无法连接到 PulseAudio:

pavucontrol 无法连接到 PulseAudio

确实,我的系统上没有运行任何与脉冲相关的程序。

问题:

  1. 到底发生了什么事?我该如何查明?
  2. YouTube 和 Tartini 可以同时播放声音吗?
  3. ... 当 PulseAudio 运行时?
  4. 怎么办?/ 为什么不呢?
  5. 我的音频处理硬件是如何发挥作用的?

lspci说我有一个00:1f.5 Multimedia audio controller: Intel Corporation 82801EB/ER (ICH5/ICH5R) AC'97 Audio Controller (rev 02)

答案1

也许这对你没用,但我也遇到过类似的问题 - Youtube 打开时我的 Tuxguitar 没有发出任何声音。我通过安装 Fluidsynth 和 Qsynth,然后在 Qsynth(然后是 Tuxgutar)设置中进行一些随机更改解决了这个问题。

我在这里的页面底部找到了它(也附有说明)。

http://ubuntuforums.org/showthread.php?t=2132761

答案2

我刚刚找到了 Jan Schmidt 的部分答案这里

它已有十年历史,采用进口实时音频仅支持 ALSA 的音频库,这意味着使用 PulseAudio 系统,它无法访问声音设备。

所以我认为答案是:使用 RtAudio 学习 C++ 音频编程并自行升级库。

相关内容