MIDI Pitch:移调一段乐句,或限制它的输入范围

移调一个 MIDI 声部改变的是发给乐器的音符,不是录制音频的音高。Pitch 还能移除输入窗口之外的音符——这与移动整段乐句是两个不同的决策。

换音区,不重写节奏

这段原创 MIDI 贝斯乐句从音符 36 开始。Pitch 设为 +12 st,所以乐器收到的是音符 48。十二个半音是一个八度:音符上移,而它们的起点、长度和力度保持不变。简单的正弦音色让音区变化容易与滤波明亮度的变化区分开。

同一段贝斯乐句,高一个八度

Interactive MIDI example

播放乐句,然后启用 Bypass 并用 Rewind 从头对比。Bypass 禁用的是 Pitch,不是它之后的 Synth。较低的源音符应该原样回来,不会出现静音。禁用 Bypass,对比前后的音符块:整段乐句是被移走的,不是在八度上叠了一份。

现在把 Pitch 从 +12 改为 +7 st。纯五度移调保留相邻音符之间的距离,但改变它们的音级。它可以把乐句放进不同的和声语境;它并不知道你编曲的其他部分用什么调。回到 +12,或者当原音区更合适时试试 0。

抬高贝斯可以帮它在另一个低音声部上方被听清,但也可能失去让这条线有用的重量。压低它可以制造深度,也可能把它推到音箱有效频段之下。请放进上下文里对比,而不要把八度变化当作自动的改善。即使 Pitch 保留了力度值,乐器对不同的音符也可能有不同的响应。

Lowest 和 Range 决定哪些音符被放进来

第二个示例有意留出空洞。Lowest 是 MIDI 60,Range 为 +4 st,放行 60 到 64(含)的音符。Pitch 再把幸存的音符下移十二个半音。旋律原本有八个音符;只有四个通过这个输入窗口。

只放行旋律中较低的部分

Interactive MIDI example

去听开头的三个音、一段空隙,以及第三个音高稍后的再现。幸存的输入是 60、62、64 和 64;输出是 48、50、52 和 52。它们原来的位置保持不动。阻断音符不会把幸存者挤到一起变成更快的乐句。

  1. 保持 Lowest 不动,把 Range 从 +4 提到 +12 st。八个源音符现在都放得进来。缺失的高音回来了,仍然被下移一个八度。
  2. 把 Range 调回 +4,把 Pitch 设为 0。同样的四个事件幸存,但保持原音高。这把"门的决策"和"移调的决策"分开了。
  3. 用 Reset parameters 恢复示例,包括它的乐器设置。另外用 Rewind 对比乐句的同一段。

输入限制不是输出限制

窗口检查发生在移调之前。这就是为什么本例中被接受的输出可以落到 Lowest 之下。Range 衡量的是半音跨度,不是同时发声声部的上限。范围为零时只放行恰好等于 Lowest 的音符;它不表示不设限的输入。

Lowest 以音名显示,这块面板把 MIDI 0 标为 C−2。因此 MIDI 60 在这里显示为 C3;其他软件的八度标注可能不同。事件详情里的数字音高才是无歧义的参照。

Pitch 提供 −48 到 +48 个半音。被移出 MIDI 0–127 的音符会被钳制到边界,而不是回绕到另一个八度。因此几个极端的音符可能汇合在同一个音高上。可见的设备阻断窗口之外的输入;它没有折叠模式开关,也没有自动调性修正。想做音级映射用 Scale;想要额外的音符而不是替换音高时用 Chord。

写一段乐句,选好它的乐器,然后在你自己的 TuttiDAW 项目里试试这些 MIDI 效果器。

探索 TuttiDAW — 免费的浏览器 DAW