Swing 时序 · MIDI 迁移 · DAW 与鼓机 · 双音审计

Swing 参数能跨软件和鼓机照抄吗?一套双音时序审计

面板上的 58、60 或 +12 本身不是可移植的 Groove 配方。先保留直拍原件,再把处理后的音符位置固化为可检查的副本;迁移一个实测时序关系之后,才判断声音和律动。

范围说明:本文适用于能显示、Commit、导出、录回或以其他方式检查音符起点的 DAW、音序器或鼓机;下文外部产品控件仅用于对比,FingerDrum 自身当前 Swing 范围在 FAQ 单独说明。练习使用 4/4 中成对的十六分音符,也可先声明其他成对基准再使用同一测量法。本文不规定“最佳”Swing,不把完整 Groove 简化为时序,也不保证两个产品的音符位置相同就一定听感相同。各产品的刻度、网格、Strength、事件范围、随机、力度处理、播放状态与取整均可能不同。S0/SX/E/T0/T1 副本、A–B–C 坐标、八组账本、两条迁移路径、接缝检查、决策表与停止规则,是 FingerDrum 编辑团队基于文末官方资料所做的原创综合。

简短答案:复制处理后的音符关系,不要只复制面板上的 Swing 数字。

保留未经处理的直拍副本 S0。在 SX 中只改变来源产品的 Swing,再制作一个能读取真实音符起点的检查副本 E。每组记录首击 A、发生位移的第二击 B、下一组首击 C 的音乐位置,以及跨度 C − A;再计算 p = (B − A) / (C − A) × 100。但 p 只描述相对形状,不能单独证明绝对时序。精确匹配必须同时满足:A/C 位于声明的网格位置、双音组跨度相同、p 相同。迁移时只选“导入已写入位置的音符”或“从目标端直拍副本重建”其中一条路径。除非明确命名为新效果,否则不要把 Swing 烘进音符后再叠一次目标端 Swing。

控制名称相似,不等于存在跨产品通用换算表

官方手册已经说明为什么单独一个数字不够。Logic 记录了 50、54、58、62、66、71 六个 1/16 Swing 量化值,并说明它会延后每第二个网格点。MPC 3.9 的 Swing 范围是 50–75,但 Time Division、Shift Timing、Window、Strength 与事件范围另有控制。Yamaha SEQTRAK 不用这一百分比语义,而是把偶数 step 的时序写成 −58 至 +58 ticks,并说明一个 step 是 120 ticks。Roland P-6 的 Shuffle 范围是 −90 至 90,0 表示无 Shuffle。Ableton Groove Pool 又把 Base、直拍 Quantize、Timing、Random、Velocity 与 Global Amount 分开。

记录完整时序上下文,不根据这些标签自行制作通用换算表。
产品示例手册定义会话记录必须一起保存不安全的捷径
Logic Pro1/16 Swing A–F 对应 50/54/58/62/66/71%,延后每第二个网格点Quantize 网格、Swing,以及是否仍是非破坏播放认定其他音序器里的 “Swing C” 含义相同
MPC 3.9Timing Correct 中 Swing 为 50–75Time Division、Strength、Window、Shift Timing 与 Events 范围只抄 Swing,忽略哪些事件有资格被处理
SEQTRAK偶数 step 偏移 −58 至 +58 ticks;每 step 120 ticksstep/base、正负方向、实际偏移与 Launch Quantize 上下文把 tick 数直接读成百分比
P-6Shuffle −90 至 90;0 表示无 ShufflePattern、受影响 upbeat 的实际定义与处理后位置把 P-6 的本机建议范围外推到其他产品
Ableton LiveBase、Quantize、Timing、Random、Velocity 与 Global Amount 分开Groove 文件、Base、全部 amount,以及是否已经 Commit把 Timing、Random 与 Velocity 当成一个“律动旋钮”

这些手册并没有证明两个同名百分比一定不同。它们支持的是更窄的结论:只看显示值,证据不足以确认等效。必须在已声明条件下检查实际事件。

打开 Swing 前,先建立可回归的直拍探针

新建一小节 4/4 clip,并保留下一小节的第一击。来源与目标使用相同 BPM;只用一个短声音、一个 note number、一个固定 velocity 与一个固定音长。在十六分网格的 16 格中每格放一击。关闭 Groove、Swing、Random/Humanize、力度变化、Note Chance、Delay、琶音与实时输入,把这份未处理版本保存为 S0。

Step01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 | 17
角色A B A B A B A B A B A B A B A B | C
击打x x x x x x x x x x x x x x x x | x
双音组1----- 2----- 3----- 4----- 5----- 6----- 7----- 8----- | 接缝

这里每个 A–B–C 单元包含两个十六分音符,因此 A 与 C 是相邻的八分网格点,S0 中的 B 正好位于二者中间。若要测试八分 Swing,应先声明八分 base,让每组跨一个四分音符。不能因为面板数字相同,就拿来源端十六分 Swing 去对比目标端八分 Swing。

  1. 冻结来源:把 S0 复制为 SX;记录产品/版本、BPM、拍号、Grid 或 Base、Swing/Shuffle、Strength 或 Amount、Window/Range、事件范围、轨道/Clip 范围与 Global Amount。
  2. 移除无关变化:本次 timing 审计把 Random/Humanize 与 Groove 的 velocity 影响设为零;保持同一声音和固定监听路径。
  3. 把播放位置变成可检查事件:只在副本上使用有文档、且保留事件的 Commit 或破坏性应用、MIDI 导出、MIDI 录回,或仍能显示 MIDI 起点的等效方式,结果命名为 E。保留 S0 与 SX:Logic 的 Region Quantize 是非破坏播放,而 Ableton 的 Commit 会实际移动 MIDI 音符。音频渲染需要另行声明瞬态测量方法,不属于本次 MIDI 事件审计。
  4. 先确认控制生效:比较 S0 与 E。预期的第二击若一个都没动,立即停止;效果可能未开启、指向另一分辨率/范围、被 Window 排除,或仍藏在播放状态里。

A–B–C 是中性坐标,不是另造一个厂商标准

逐组读取事件编辑器的音乐位置,或该工具能提供的最细、已记录时序显示。所有减法必须在同一组、同一单位内完成:

p = (B − A) / (C − A) × 100

A 是双音组起点,B 是第二击,C 是下一组起点。直拍的 p = 50%;p < 50% 表示 B 比中点更早,p > 50% 表示更晚。第二击落在整组的三分之二处时约为 66.7%,是长短 2:1 的三连音数学地标。它们只是位置坐标,不是质量分数,也不代表任何厂商面板必然这样解释数值。

这个归一化可以比较不同 tick 分辨率,却不假装旋钮刻度相同;它也有意不包含全部绝对信息:A/B/C 一起平移,或整个 A–C 跨度一起缩放,p 都不会改变。先把三个事件换算到同一个音乐坐标,再把 A、C 的绝对位置和 C − A 跨度与 p 一起比较。若有意允许统一相位偏移,必须在测试前声明,从每个目标位置扣除同一个偏移量,并把相位迁移另行报告。

迁移前先声明目标端最小事件步进,以及恰好半个步进时统一向哪边取整。带符号误差定义为目标位置 − 换算后的来源位置,使用换算后的目标单位:正值表示更晚,负值表示更早。只有 A/B/C 全部一致才记为精确通过;若 A、C 与跨度一致,B 是目标端最近的可表示位置,且绝对误差不超过半个最小步进,则记为最近可表示近似;其他情况都记为失败。每组都要记录带正负号误差,近似不得写成精确。例如 A = 0 ticks、C = 24 ticks、换算后的来源 B = 15.6 ticks 时,来源 p = 65%。目标端若只能放整 tick,B 取 16,目标 p = 66.7%、误差 +0.4 tick;这是近似,不是精确迁移。

八组都要测,不能只测第一组。Groove template 可能逐组不同,Window 也可能排除一部分事件。Ableton 还明确说明 Random 会让每个声部得到不同随机时移;要做确定性 timing 迁移,必须先把它关掉,之后若需要再作为独立版本测试。

两条迁移路径只选一条,避免无意叠加

事件迁移与参数配方迁移回答不同问题。
路径目标端设置通过条件常见失败
已写入位置的事件迁移把 E 导入为 T0;关闭目标端 Swing、Groove、Quantize、Random 与力度处理只有全部 A/B/C 位置一致才算精确;符合最近位置规则时必须标记为近似目标端又应用一层时序处理,或导入被更粗网格取整
控制配方迁移从目标端直拍副本开始,命名为 T1;每次只改一个有文档的目标时序控制精确:A/C 位置、每个 C − A 跨度与 p 序列都和 E 一致。近似:A/C 与跨度一致,且包括第 8 组在内的每个 B 都符合已声明的最近位置/半步进规则照抄显示值,却没有对齐 Base、Strength、Window、范围或 Global Amount

事件迁移检查明确写入的音符位置能否通过交接;参数配方迁移检查目标端能否从直拍网格生成同一时序关系。若 E 已经包含发生位移的第二击,再给 T0 加目标端 Swing,就进入第二处理阶段。依目标端 Base、量化行为、Strength 与事件资格而定,位置可能保持不动、重新吸附、替换原偏移或再次移动。必须把这一阶段单独命名、单独测试,不能用它诊断单阶段导入。

A/C 位置、双音组跨度与 p 全部对齐后,再另建音乐性比较。恢复所需采样与力度,但不要移动起点。这组证据只复现本次测量的 onset 关系;它不会复现采样包络、重音、总线处理、播放延迟或 Groove template 的全部变化。

逐一核对八组双音、同击与循环接缝

试听前先复制这张账本。填写准确的显示位置或归一化数值,不要写估计的听感印象。

八组 Swing 迁移账本。
双音组来源 A/B/C来源 p目标 A/B/C目标 p分辨率 / 带符号误差 / 备注
1___ / ___ / _________ / ___ / _________
2___ / ___ / _________ / ___ / _________
3___ / ___ / _________ / ___ / _________
4___ / ___ / _________ / ___ / _________
5___ / ___ / _________ / ___ / _________
6___ / ___ / _________ / ___ / _________
7___ / ___ / _________ / ___ / _________
8 + 接缝___ / ___ / 第 2 小节 A______ / ___ / 第 2 小节 A______

然后只在副本中加两击:一个 Kick 与某个 A 完全同击,一个 Snare 与某个 B 完全同击,再重复迁移。Kick 用来检查锚点是否保持不动;Snare 用来检查同一时刻的不同声部是否仍然同击。若目标端随机功能拆开了原本同起点的两个事件,你同时改变了声部对齐关系与时序。最后连续循环至少四遍并检查第 8 组进入第 2 小节:把 C 记录为不回绕时间轴上的第 2 小节 A(step 17),即使 Loop 显示把它折回 0。导出边界、Clip 裁切或目标端 Loop 设置不能删掉最后一个 B,也不能移动这个 C。

第一处可复现的不匹配,决定下一项单变量测试

Swing 受控迁移决策表。
证据当前可支持的解释下一步
S0 与 E 的 B 位置相同检查副本没有把预期来源时序效果变成可见事件检查启用状态、Base/Time Division、范围、Window/Range、Strength/Amount 与官方 Commit/导出路径
目标处理已关,T0 仍与 E 不同明确事件的交接、分辨率或导入解释发生变化先比较文件/事件列表,不要先动目标端 Swing
只有部分 B 被移动Range、Window、Selected Events、Groove 图样或 Clip 边界改变了处理资格每次只审计一个范围控制;不要把通过与失败双音组取平均
A 锚点也随 B 移动直拍 Quantize、全局 Shift、其他 Groove 组件或错误 Base 仍在作用恢复冻结来源,找出第一个会移动 A 的控制
来源与目标面板数字相同,但 p 不同在当前条件下,显示值不足以构成跨产品配方匹配 A/C 位置、双音组跨度与 p,再保存完整目标状态
重复播放时 p 变化Random、Humanize 或其他随时间变化的组件仍然开启静态审计先归零;之后另开明确命名的变化版本
p 都相同,但 A/C 位置或双音组跨度不同相对形状一致,绝对时序并未一致先恢复声明的 A/C 网格位置与双音组跨度,再判断 B
A/C 位置、双音组跨度与 p 都相同,但听感仍不同本次 onset 关系已迁移;另一听感变量不同分别比较 velocity、声音/包络、效果、延迟与编排
第 1–7 组通过,只有第 8 组失败Loop 或导出边界参与了失败导出时包含第 2 小节 A,再检查尾界、裁切与 Loop 长度
重新打开目标副本后不再匹配参数配方、处理状态或已写入位置的音符没有被保存保存新的命名状态,再跑完整账本才用于歌曲

Swing 参数迁移常见问题

66.7% 是“正确”的 Swing 吗?

不是。本文里它只是 B 落在 A–C 单元三分之二处的坐标,也就是长短 2:1 的三连音数学地标。真实音乐可以更直、更早、更晚、逐组变化、按声部变化,或直接来自演奏。由素材与音乐目标做选择;公式只负责记录一种关系。

一个设备的 60% 能直接复制到另一个设备吗?

可以把它当作起始假设,但显示值相同不能证明结果相同。保持相同的音乐细分与事件集合;分别记录并固定各产品本地的 Strength/Amount、Window/Range 与作用范围,不假定显示值等价。再检查每个 A/C 位置、双音组跨度、p 与不回绕的接缝。

应该导入已经 Swing 的音符,还是在目标端重做?

取决于你想保留哪种可编辑性。事件迁移通过时,导入已写入位置的音符能保留明确位置;从直拍重建则保留目标端原生配方。两条路径必须分开,不能把经过两阶段处理的 clip 当成一次迁移失败。

为什么不能只靠耳朵?

听感是最后的音乐门禁,但耳朵不能单独指出差异来自音符位置、力度、采样包络、效果还是延迟。先用账本隔离时序组件,再用试听判断完整结果。

一条踩镲探针能复刻完整 Groove 吗?

不能。它只验证冻结条件下的成对位置。完整 Groove 可能按声部使用不同移动,还包含力度、音长、随机变化或多小节结构。基线通过后,一次只加回一项。

本文这些时序控制中,FingerDrum 实际提供哪些?

FingerDrum 有自己的工程级 Swing amount,范围为 0–75%,作用网格可选 1/16 或 1/8;它会移动符合条件的打击乐与旋律音序事件。单独改变 Swing 不会移动录音层,但录后量化可以把录音层对齐到当时的 Swing 网格。这里不声称 FingerDrum 实现了 Ableton Groove Pool 或 MPC Timing Correct。

停止规则

S0 保持未改;SX 记录完整来源状态;E 把来源处理后的音符位置固化为可检查事件;只启用一条迁移路径;八组 A/B/C 绝对位置、每个 C − A 跨度与不回绕的第 2 小节锚点全部入账;目标分辨率和每个带符号误差都明确;锚点与同击符合预期;四轮 Loop 接缝完整;无关 Random 与 velocity 处理保持关闭;重开目标副本还能复现同一账本。按声明规则报告精确通过、最近可表示近似或失败,非零取整误差绝不能写成精确。结论必须随状态变化:精确通过表示记录的时序关系被精确复现;近似表示只复现了账本中的最近可表示结果;失败表示没有复现。声音、动态或随时间变化的处理,应作为新的命名测试加入。

来源与访问日期

Apple 用于核对 Swing A–F、每第二个网格点与 Region Quantize 的非破坏行为;Akai 用于区分 MPC 的 Swing、Time Division、Shift Timing、Window、Strength 与事件范围;Yamaha 用于核对 SEQTRAK 的偶数 step tick 范围与 step 分辨率;Roland 用于核对 P-6 Shuffle 范围与归零状态;Ableton 用于区分 Base、Quantize、Timing、Random、Velocity、Global Amount 与 MIDI Commit。上述来源都没有规定 S0/SX/E/T0/T1、A–B–C 归一化、八组账本、双路径门禁、同击探针、接缝检查、决策表或停止规则。

  1. Apple Logic Pro 使用手册 — Quantize Parameter Values(访问于 2026 年 10 月 24 日)
  2. Akai Professional — MPC Standalone OS v3.9 User Guide(访问于 2026 年 10 月 24 日)
  3. Yamaha — SEQTRAK User Guide, OS v2.00(访问于 2026 年 10 月 24 日)
  4. Roland P-6 — Shifting the Timing of the Upbeat (Shuffle)(访问于 2026 年 10 月 24 日)
  5. Ableton Live 12 Reference Manual — Using Grooves(访问于 2026 年 10 月 24 日)