JACK、PulseAudio 和 Firefox:在不久的将来为 Firefox 启用 JACK

JACK、PulseAudio 和 Firefox:在不久的将来为 Firefox 启用 JACK

Firefox 错误 #1345661 已用“WONTFIX”关闭,这肯定会在不久的将来破坏我当前的设置(我通过alsa_in: loopback->JACK 播放 Firefox 声音)。我读到 Firefox 现在支持 JACK,尽管它还不稳定。问题:

  1. Firefox 中的 JACK 支持会得到官方支持吗?
  2. 在原始 ALSA 支持结束之前,Ubuntu 会在 Firefox 中启用 JACK 支持吗?

我的答案是“否”,我怎样才能在不破坏 JACK 的情况下可靠地恢复功能?可以通过运行 PA alsa_in,但我猜这会带来一些额外的延迟,破坏 AV 同步,或者由于多个重采样器而引入信号失真。

答案1

我使用以下脚本,我称之为“pulsejack”。不带参数调用它,它会将现有内容连接jackd到 PulseAudio。带任何参数调用它,它会使用这些参数启动jackd,然后将其连接到 PulseAudio。然后 Firefox 可以从 PulseAudio 中获取。

#/bin/sh
if [ $# -gt 1 ]
then
    killall jackd 2> /dev/null && sleep 2
    jackd "$@" && sleep 2
fi
pactl load-module module-jack-sink channels=2
pactl load-module module-jack-source channels=2
pacmd set-default-sink jack_out
pacmd set-default-source jack_in

您可能需要运行 sudo apt install pulseaudio-module-jack 才能获得相应的模块。

答案2

我已经编译了 mozilla-central firefox,它带有 jack 支持和输出(源),当您访问带有音频的网站(即 youtube)时会自动创建。

但是 - 输入接收器源没有被创建;我没有看到它们出现在 cadence/jack 接线板中。因此,任何依赖麦克风输入的东西都会失败。即 meet.jit.si / webrtc 测试...


另一个问题是,即使使用 pulseaudio 桥接器;同样的问题输入源即使正确连接到脉冲接收器也无法被 Firefox 识别。然而,在 Chrome 中,麦克风输入正确地使用插入的捕获来接收脉冲。所以我认为这是 Firefox 在检测和报告麦克风存在信息的方式上的一个错误。

我个人的观点是,输入/捕获接收器源应该在 Firefox 启动时创建,而不是像仅有插孔的情况下的输出源那样在每个选项卡/站点上创建。

相关内容