在从事电力供应协议提供二进制文件索尼克派,PPA 二进制文件的用户一直对 jackd 感到困惑。如何让他们更轻松地使用?
Sonic Pi 是一款教育音乐工具,结合了电子合成器和编程语言。它针对新手用户和学童,通过音乐的乐趣教授编码。该软件的主要安装目标是 Raspbian,它是预安装的。并且代码包含一些内置的 hack,呃,我的意思是,实用的解决方案,可以让 jackd 在 Raspberry Pi 上启动和运行。但这些 hack 是 RPi 特有的,在其他发行版上效果不佳。
情况如下:
- Sonic-Pi 是一个图形 IDE
- 基于 Ruby 的服务器在后台运行,控制音乐
- 播放音乐时,它使用 scsynth(Supercollider 的一部分)作为合成器后端
- scsynth 目前需要使用 jackd 在 Linux 上播放音频
- 基于 ruby 的 Sonic Pi 服务器启动 jackd(如果它尚未运行),然后启动 scsynth
如果你使用的是 Ubuntu(我猜 Debian 也是如此),那么麻烦就开始了:
- Ubuntu 上的 jackd 默认配置似乎并不适用于所有人,因此在某些系统上,它无法启动,用户必须使用 qjackctl 或深入研究日志并更改配置文件
- 当 jackd 启动时,它阻止了 PulseAudio,因此任何正在运行的使用音频的程序都将停止工作
- jackd 更喜欢实时调度,但 Ubuntu 没有预先配置好,需要对用户的改变去做吧
总而言之,一团糟.这不是新手用户安装 Sonic Pi 后想要的体验。
市面上有一些指南教你如何让 jackd 与 Ubuntu 协同工作,但对于新手用户或只想使用该软件的课堂老师来说,按照这些指南来操作要求太高了。
所以我正在寻找一种方法将确保从 .deb 安装 Sonic Pi 后,jackd 的产品开箱即用,无故障,无需手动配置。
愿望清单如下:
- jackd 的开箱即用的配置
- 对于所有非特权用户帐户
- 不会在同一系统上阻止 PulseAudio/ALSA
- 在默认的 Ubuntu 上(如果可能的话,也可以在默认的 Debian 和 Raspbian 上)
- 并且发行版的默认音频混音器和音量控制热键继续工作
这真的存在吗?
是否有一个用于此的 .deb(或者可以制作一个 .deb)供用户安装并按此方式配置?
答案1
我已经阅读了 Takkat 的评论,也许这对你来说没问题:
- 从这里, 安装 ”pulseaudio-module-jack“然后编辑 /etc/pulse/default.pa ( ):在 load-module module-jack-sink load-module module-jack-source
sudo gedit /etc/pulse/default.pa
行下方添加以下几行, 然后在主目录中创建或修改包含以下内容的 .jackrc:#load-module module-alsa-sink
/usr/bin/jackd --no-realtime -dalsa -dhw -r44100 -p1024 -n2
重新启动 pulseaudio 运行killall pulseaudio
(如果正在运行,也停止 jackd killall jackd
):pulseaudio 将自动重新启动,jackd 也将启动,两者都正确连接,因此Jackd 和 Pulseaudio 可以同时使用.
(这在我的 Ubuntu 14.04 电脑上运行)。
- 仅当您希望多轨录音具有较低的延迟时才需要实时。上述 jackd 配置将产生 21ms 的延迟,这对大多数音频程序来说都很好(可以在 .jackrc 中将延迟设置为 2048 而不是 1024,以增加延迟,请查看 jackd --help)
因此你不必向用户提供实时访问权限,
(您可以忽略任何警告(“无法使用实时调度”))。
该-dhw
参数应该适用于大多数电脑,但可以省略以使用默认音频设备,或更改为-d hw:1,0
使用第二个音频设备 - 如果您需要使用“Qjackctl connect manager”手动将 jackd 连接到音频输入/输出,可能还需要一个步骤(大多数程序会自动连接到 jackd,在这种情况下不需要这样做):安装“jack tools”并使用“jack_connect”命令来编写这些连接的脚本(您也可以使用aj-快照 保存和恢复插孔连接)