LinuxSampler
LinuxSampler 是一款软件 音频采样器。它可以加载 gigasampler 格式 (.gig) 的声音库。LS 的一个优点是可以直接从硬盘流式传输采样,从而可以使用巨大的库(几个 GB...)。LS 可以作为独立应用程序或 lv2 或 dssi 插件启动。
安装
安装 linuxsampler 软件包。 它是采样器的“引擎”,执行处理 MIDI 事件、计算音频数据并将最终音频数据发送到您的声卡的所有繁重且时间关键的计算任务。 LinuxSampler 本身通常作为计算机后台的独立进程运行,通常不会在屏幕上显示任何内容,或者最多可以启动以在控制台窗口中显示状态信息和调试消息。 通常您还需要一个前端来控制它。
图形化前端
有几个可用于 LinuxSampler 的图形化前端
您现在可以运行 qsampler,它将自动启动 linuxsampler。 如果您使用 jsampler,则必须先启动 linuxsampler。
使用
编辑器:Gigedit
Gigedit 允许您编辑和创建 Gigasampler 格式的乐器,该格式可与 LinuxSampler 以及 Tascam 的 Gigastudio 一起使用。 您可以将 gigedit 用作独立应用程序,无需 LinuxSampler 运行,或在从任何前端启动的实时模式(“编辑”按钮)下使用。在这种情况下,您的所有修改都可以实时听到。
前端:Qsampler
此前端为用户提供了一组菜单、按钮、滑块、旋钮等,使用户可以方便地控制采样器。 它不执行任何信号处理任务,因此您可以将其视为采样器的“面孔”。 从 Qsampler,您可以将 .gig 文件加载/卸载到 LinuxSampler 中,并设置其 MIDI 通道号、音量、Jack 输出等...最后将所有这些设置存储在一个文件中,以便快速重新打开您的“采样乐团”。
在 qsampler 中构建默认模板
在这里,我将使用 jack-keyboardAUR 作为 MIDI 控制器,但以下所有内容也适用于主键盘或提供 MIDI 输出的 MIDI 接口。
- 启动 jack,然后启动 jack-keyboard,然后启动 qsampler
- 让我们在 qsampler 中定义一些音频输出
- 转到菜单 -> 视图 -> 设备(或
F11
快捷键或工具栏中的绿色 PCI 卡图标)。 - 在左侧面板上,单击“音频设备”。 现在我们可以在右侧面板中看到可用的音频驱动程序。
- 在驱动程序菜单中选择“Jack”。默认配置应为您提供一对音频输出,采样率为 44100。
- 单击窗口下方的“创建”按钮。
注意 : 在某些系统中,如果此窗口关闭甚至在后台,而右下面板仍处于查看状态,则 qsampler 会崩溃。 简单的解决方法 :在离开或取消聚焦窗口之前,单击左侧面板上的“音频设备”或“MIDI 设备”。
- 如果您希望 LS 在您启动模板时自动连接到 Jack 系统输出
- 在左侧面板上,单击“音频 Jack 设备 0”,然后在右侧面板上从“通道”下拉列表中选择“音频 Jack 0”。
- 为 JACK_BINDINGS 参数选择一个输出,例如 “system:playback 1”。
- 从“通道”下拉列表中选择“音频 Jack 1”,并分配 JACK_BINDINGS 参数值,例如 system:playback 2”。
- 现在让我们也创建一个 MIDI 输入
- 在左侧面板上,单击“MIDI 设备”。
- 在右侧面板上,在驱动程序菜单中选择 “jack” (jack-midi)。
- 点击创建按钮。
- 如果您希望 LS 在您启动模板时自动连接到 jack-keyboard MIDI 输出
- 在左侧面板上选择 “Midi jack device port 0”。
- 在右侧面板上,对于 “JACK_BINDINGS” 参数值,选择 “jack-keyboard:midi out”。
请注意,如果 Qjackctl 中未启用 jack-midi,您将不会在下拉列表中找到 MIDI 客户端。 您可以在 Qjackctl 设置中检查 :“MIDI 驱动程序”应设置为 “seq”。 需要重启 jack 和 qsampler。
此外,如果在 qsampler 启动之前未启动 jack-keyboard 或您在此处定义的任何 MIDI 控制器,您很可能会收到来自 qsampler 的错误,提示找不到 MIDI 客户端。 在这种情况下,您仍然可以启动 MIDI 设备并通过 qjackctl 将其连接到 LS。
- 最后,关闭设备配置窗口并保存您的模板。
在 qsampler 中构建性能模板
- 打开 qsampler 并加载您的配置模板。
- 按工具栏中的 “添加通道” 按钮 (Ctrl-A)。 LS 术语中的 “通道” 是一个对象(视觉上是一个条带),它存储给定乐器的设置 :gig 文件的名称和位置、使用的输入和输出、MIDI 通道、音量、独奏/静音状态、应用的 MIDI CC 等...很像音序器中的音轨。
- 通道的 i/o 设置弹出。
- 选择一个 gig 文件
- 选择一个 “乐器”。 一个 gig 文件可以包含不同的 “乐器”。 基本上,一个 gig 文件由声音池和这些名为 “乐器” 的采样的某些配置可能性组成。 例如,一个乐器可以仅加载强音采样并在其上应用一些 adsr,而另一个乐器可以加载池中的每个采样,并将它们组织为由控制器上应用的速度触发的层。 这样,可以从同一个采样池中获得非常不同类型的声音,这在声音设计和磁盘空间方面更有效率...
- 从不同的下拉列表中为通道设置 MIDI 和音频 i/o。 您将在此处找到的所有选项都是先前在设备配置设置中创建的,并存储在您的模板中。 如果您想更改其中的一些设置,您也可以从此处通过 “MIDI 输入设置” 和 “音频输出设置” 按钮进行更改。
- 按确定。
- 通道已添加到主窗口,gig 文件已加载到 RAM 中。 嗯,只有乐器中使用的声音的开头缓存在内存中,LS 的主要任务是将它们的大部分直接从磁盘流式传输。 这就是如何仅用 1 GB 的 RAM 加载 30 GB 采样的方法。
- 您现在应该能够通过 jack-keyboard 或连接到 LS 的任何控制器来演奏您的乐器。
如果您没有声音,请检查通道条和主工具栏上的音量滑块。
- 根据需要重复这些步骤多次,以完成您的 “采样乐团”。
- 以新名称保存您的模板,这样如果您想从头开始另一个乐团,您可以保持默认模板的清洁。
高级主题
在 MIDI 信息到达 LS 之前进行过滤
有时,采样库与作曲家/编曲家期望其 MIDI 软件播放声音的方式不一致。 一个具体的例子是连接到 LS 的乐谱编辑器,在 C3 到 C4 八度音阶中演奏钢琴部分,但听到的实际上高一个八度音阶(C4 到 C5)。 可能是 gig 文件中采样的分层偏移了一个八度音阶。 如果您确定映射不正确(从 qsampler 在实时模式下打开 gig 文件可以帮助您),那么这里有一些解决方案
- 将 MIDI 部分移调低一个八度音阶。 在管弦乐谱中,看到五线谱上的音符听起来低一个八度音阶是非常错误的,尤其是在您已经处理移调乐器时...此外,您还必须在打印前移调回来。
- 重新执行 gig 文件内部的映射。 这将是最佳解决方案,因为它肯定可以解决问题。 但是,如果文件中包含多个乐器,这可能会很麻烦。 此外,一些无声的音符通常保留在发声音符之前以触发一些 CC(键开关),这使得重新映射低一个八度音阶更加复杂甚至不可能。
- 这里的快速且非破坏性的方法是在乐谱编辑器和 LS 之间放置一个 MIDI 过滤器,该过滤器仅将钢琴通道的音符降低一个八度音阶。 qmidiroute 可以做到这一点,并且它还可以监控沿途的所有 MIDI 信息。 例如,您可以检查乐谱发送的 CC 是否真的是它们应该是什么(正确的 MIDI 通道、声像、力度曲线等...)
如果您使用此设置,您将必须更改乐谱编辑器中的钢琴部分 MIDI 输出以转到 qmidiroute 而不是 LS,并将 LS 中的钢琴 “通道” 使用 qmidiroute 输出而不是您的乐谱编辑器。 如果您想监控乐谱中的每个乐器,或者如果您的乐谱编辑器中无法使用多个 MIDI 输出,也可以在乐团级别完成此操作。
故障排除
如果您收到消息 :Engine: WARNING, CONFIG_EG_MIN_RELEASE_TIME too big for current audio fragment size & sampling rate! 并且最终在此之后崩溃,那么是时候重新考虑声卡的延迟了。 提高 qjackctl 中的 samples/period 设置并重试。 作为指示,在 M-audio delta 44 上,samples/period=128、buffer 中的 periods=2 和采样率=44100 的设置为 LS 提供了可用的设置。延迟 = 5.8 毫秒,这已经相当低了。
端口冲突
LinuxSampler 默认使用端口 8888,一些其他程序(例如 BitTorrent Sync)也使用该端口。 如果您尝试在与另一个使用此端口的程序同时运行 linuxsampler,则将显示以下消息:Starting LSCP network server (0.0.0.0:8888)...LSCPServer: Could not bind server socket 为避免此问题,请使用命令 linuxsampler --lscp-port 8889 启动 linuxsapler。 您可能还需要调整 GUI 前端上的服务器端口。