一人工程 · solus opus

← 全部作品

essay一人工程MIDItiming量化

每四分音符 24 步

simedw 的 timing 量化选择:每四分音符 24 步。看自己训练数据集 timing 分布后选了这个分辨率。够 8 分 / 三连音 / "almost but not quite on the beat"。

每四分音符 24 步

simedw 的 timing 量化选择: 24 steps per quarter note。 看自己训练数据集 timing 分布后选了这个分辨率。

timing 量化是 MIDI 表征的核心选择:

  • 太粗:丢失节奏细节
  • 太细:vocabulary 太大

simedw 的选择:24 steps per quarter note。

为什么是 24

24 = 8 分音符 × 3 = 三连音 4 分音符 × 2

具体:

  • 8 分音符 = 12 步
  • 16 分音符 = 6 步
  • 三连音 8 分 = 8 步
  • 三连音 16 分 = 4 步
  • 「差不多但不在 beat 上」= 任意步数

12 步的 8 分音符能精确表达。 三连音 8 分的 8 步也能精确表达。 这就是 24 选的「刚刚够」。

一人工程的视角

simedw 不是从教科书选的。 他看自己训练数据集的 timing 分布后选的:

「也看了一下训练数据集里的 timing 分布才决定。」

不是 480 PPQ(MIDI 标准)。 不是 96 PPQ。 是 24 steps per quarter note。

24 vs 96 vs 480

MIDI 标准:

  • 480 PPQ(pro tools 默认)
  • 96 PPQ(很多 MIDI 编辑器)
  • 24 PPQ(simedw 的选择)

vocabulary 大小:

  • 96 PPQ:delta 词汇量 ~96
  • 24 PPQ:delta 词汇量 ~24 + 几个特殊值

simedw 的 vocabulary:

delta : 0...48 steps, plus 72, 96, 144, 192

实际使用 0-48 步,加几个常用特殊值。 总共 ~55 个 delta 词汇。

比 96 PPQ 小一半。 vocabulary 小 = 训练快 + 部署轻 + 推理快。

一人工程的细节

不是「用 MIDI 标准」。 是「看自己数据集后选适合自己的」。

simedw 的 24:

  • 不来自教科书
  • 不来自 Pro Tools
  • 来自自己训练数据集的 timing 分布

这是「一人工程」的姿态:

自己看自己数据。 自己选自己表征。 不被标准绑架。

签名:solus opus。