如何一步步运行 midi 键盘输入设备?12.04

如何一步步运行 midi 键盘输入设备?12.04

我有一个 Korg Nanokey,我想让它在 ubuntu 中发出声音。我读到这意味着我应该使用 Rosegarden,而 Rosegarden 使用 JACK,但没有安装它。(虽然检查了 Ubuntu 软件中心,显然默认安装了 JACK 的一些组件?)

我知道设置 JACK 需要做很多工作,而且不会与默认声音服务器发生冲突。有人能给我一个分步方法,告诉我如何插入我的 midi 机器,并在按下按键时听到音乐,尽可能简单(不会弄乱 pulseaudio,也就是说,我仍然可以访问 Skype 和普通桌面内容)?我可以很好地安装 JACK,但如果它有可能弄乱常规桌面,我想对它进行一点沙盒处理。

我浏览了一些资源,但我不确定哪些是过时的,但以下内容看起来很有帮助......

答案1

如果你只是想要让键盘播放声音,这很简单,你不需要 JACK 或 Rosegarden。如果你想录制 MIDI 信号、写笔记并在不同的应用程序之间路由音频,这些工具非常有用,但你不需要这些来用键盘播放声音。

我的步骤如下:

  1. 将您的 MIDI 设备插入您的计算机。如果那是 USB MIDI 键盘,只需插入 USB,如果它只有 MIDI 插头,您可能需要使用 MIDI 转 USB 设备。

  2. 下载/安装合成器。Ubuntu 有各种各样的声音合成应用程序。您可能喜欢 ZynAddSubFX(非常强大的应用程序)、FluidSynth 或 QSynth(支持声音字体)、AMSynth、AMS。请务必浏览 Ubuntu 软件中心,寻找您感兴趣的合成器。

  3. 启动合成器。当然,它必须运转才能发出声音。

  4. 告诉系统将数据从键盘传递到合成器。您需要在键盘和合成器之间创建一个链接,以便 MIDI 信号传递给它。您可以使用aconnect工具,也可以使用其中一个图形后端(使用起来更简单),例如aconnectguikaconnect。虽然 aconnect 是默认安装的,但您可以从软件中心获取其他两个。连接键盘和合成器后,请按照最后一步操作...

  5. 按下键盘上的某个键。您会听到一些声音!如果没有,请确保您的系统声音未静音,并且我们的扬声器已连接。此外,有些合成器需要您选择乐器才能发出声音。

  6. 微调您的合成器设置。您很可能不会喜欢合成器的初始声音。对于 ZynAddSubFX,这将是一个简单的正弦波,很无聊!但是,您可以轻松浏览大量音色,并且可以完全自定义它们。所有合成器都为您提供大量自定义功能,值得花一些时间选择您最喜欢的。

  7. 繼續玩。祝好运并玩得开心点!

我也曾经写过一篇关于在 Ubuntu 上使用外接键盘进行音乐制作的一般工作流程的文章,它对你的情况应该很有用。这是链接。

答案2

Linux 上的 MIDI 是高度模块化的,因此一开始会让人不知所措。低复杂度的解决方案在您进行优化之前,您可以先尝试一下,但不幸的是,Ubuntu 没有默认的工作配置。这是我发现的最简单的方法...

sudo apt install qsynth vmpk ## install components
qsynth & vmpk ## launch
  • Qsynth -> Setup -> Sountfonts -> OpenFluidR3_GM.sf2
  • Virtual MIDI Piano Keyboard -> Edit -> Connections->
    • Enable MIDI Thru on MIDI Output:(已勾选)
    • Input MIDI Connection:(您的控制器)
    • Output MIDI ConnectionFLUID Synth

此时,你应该能够从外部 MIDI 控制器或虚拟钢琴 GUI 弹奏音符(即使没有外部控制器,GUI 也能正常工作)。

您可以从键盘 GUI 中选择不同的乐器(见Program)。您可以从 Qsynth GUI 中操控音量(见Gain)以及混响/合唱效果。还有一个Panic按钮,以防混响失控。

这是在 Ubuntu Studio 18.04 的全新安装上专门测试的,但类似的步骤也适用于 Ubuntu MATE 16.04,显着的自动配置差异是在 Ubuntu Studio 中Qsynth -> Setup -> Audio -> Audio Driver默认,但在 Ubuntu MATE 上默认。jackalsa


ALSA 出现故障静态问题 [已解决]

在 16.04 和 18.04 上,当 Qsynth 首次开始使用 alsa 时,我都遇到了奇怪的静电干扰。这种静电干扰似乎影响了所有音频源,但它会在一两分钟内自行解决(至少是部分解决)。

后来,我在一个性能较弱的 CPU 上尝试了此设置,并注意到类似的静电似乎并没有随着时间的推移而消失。[顺便说一句,我注意到这个静电与ALSA plug-in [qsynth]应用程序选项卡中的线路故障有关Sound Preferences]。

这让我尝试了一些 Qsynth 设置,我发现了一些似乎可以解决静态/故障问题的东西(也许会以轻微的延迟增加为代价):

  • Qsynth-> Setup-> Audio-> Buffer Size128
  • Qsynth-> Setup-> Audio-> Buffer Count8

显然,CPU 无法始终满足所需的突发速率,因此需要一些额外的缓冲来防止欠载。 推测其他设置也可能会影响这一点。


vmpk当设置更改时,会断开连接Qsynth。尝试更改设置的最快方法是关闭并重新启动vmpk以强制重新连接。


替代方案:“Polyphone”应用程序(不在 Ubuntu 存储库中)

我关注的是多音字作为 (几乎) 一体化解决方案 (本质上是 qsynth+vmpk 的超集)。虽然它目前不在 Ubuntu 存储库中 (截至 19.04 Disco),但从 18.04 上的源代码构建它很容易 (此外,还提供了预构建的 Ubuntu .deb)。

该软件包不包含默认的声音字体(它是一个声音字体创建器/编辑器),但您可以使用sudo apt install fluid-soundfont-gm(在/usr/share/sounds/sf2/)获取一个 - 或者尝试从应用程序的“在线存储库”下载(但这可能需要一个帐户)。

转到Settings->General->Input/Output并确保音频/MIDI 设置合理,然后打开一个声音字体并选择下面的乐器Presets,它应该准备好从您的 MIDI 控制器或内置虚拟键盘播放音乐。

答案3

我不知道 Rosegarden,但你可以从包管理器运行 qjackctl。Amsynth 是一种制作 midi->jack 声音的简单方法。

我不知道如何同时运行 jack 和 pulseaudio - 即通过 jack 运行 chrome(实际上现在正在研究它)。到目前为止,我在 12.04 中的经验是很容易发出声音。

  • 从包管理器安装 qjackctl 和 amsynth
  • 关闭所有可能占用音频硬件的网络浏览器或其他 pulseaudio 设备
  • 启动 qjackctl(您可能需要在设置中摆弄参数,但这次我没有)
  • 启动 Amsynth
  • 在 qjackctl 的 ALSA 选项卡中(为什么它不是 midi 选项卡?!?!)将您的 usb midi 设备(希望自动检测到)连接到 Amsynth...
  • 确保 amsynth 已连接到音频输出...
  • 玩!

答案4

扩展已接受的答案第 4 点“告诉系统将数据从你的键盘传递到合成器”我仅引用Arch 维基它给了我很大帮助,给出了简单易懂的指导:

使用 查找你的 Midi 键盘的 ID aconnect --input,例如:

client 28: 'MPK mini' [type=kernel,card=3]

使用 查找合成器的 ID 或其他任何内容aconnect --output,例如:

client 128: 'amsynth' [type=user,pid=51421]

使用以下方式将输入路由到输出aconnect 28 128

相关内容