# 节奏与律动

位置用小节内的拍来表示（`1`，`1&` = 它后面那个八分音符，`1e&a` = 十六分音符）。在 6/8 和 12/8 里，一拍是一个附点四分音符。`craft` 在 **rhythm** 那一行检测本页的内容。

## 1. 节拍层级

拍子嵌套成不同的层级，越强的层级听起来越重要（Lerdahl & Jackendoff 1983；London 2012）。`craft` 按如下方式给各个位置加权：

| 位置 | 4/4 | 3/4 | 6/8、12/8 | 权重 |
|---|---|---|---|---|
| 小节首拍（downbeat） | 1 | 1 | 1 | 4 |
| 小节中点 | 3 | - | 7（12/8） | 3 |
| 拍 | 2、4 | 2、3 | 各个附点四分音符 | 2 |
| 八分音符 | 各个 `&` | 各个 `&` | 每个八分音符 | 1 |
| 十六分音符 | `e`、`a` | `e`、`a` | 各个十六分音符 | 0 |

由此得出的规则：

- 抵达（终止式、段落开头、高潮）放在小节首拍上。
- 换和弦放在强拍上。
- 落在弱位置上的东西是运动。

## 2. 切分

切分（syncopation）是落在弱位置上的起音，后面跟着静默，或者用延音线越过一个更强的位置：预期中的重音被移开了（Longuet-Higgins & Lee 1984）。`craft` 按层报告切分指数：旋律、低音，以及底鼓+军鼓。

- **倒 U 形。** 中等程度的切分最让人想跟着动，也最让人享受。太少显得僵硬，太多会丢掉拍子（Witek et al. 2014）。
- 在以律动为主的语汇里（lo-fi、hip-hop、house、放克、流行、爵士），如果什么都没有切分，`craft` 会发出警告。把低音或某个旋律音提前一个八分音符，或者用延音线跨过第 3 拍。
- 让**底鼓和反拍（backbeat）保持锚定**，在它们之上做切分。如果所有东西都切分，那就等于什么都没切分。

## 3. 反拍与核心节奏型

| 风格语汇 | 底鼓 | 军鼓 / 拍手 | 踩镲 |
|---|---|---|---|
| 摇滚 / 流行 | 1、3（外加在 `2&` 或 `3&` 上的推动） | 2、4 | 八分音符 |
| 四踩（four on the floor；house、disco） | 每一拍 | 2、4 | 反拍 `&` 上的开镲 |
| hip-hop / boom bap | 1、`2&`、`3&`（会有变化） | 2、4，懒散（靠后） | 摇摆的八分或十六分音符 |
| 半速（trap、电影感） | 1、`3a` | 3 | 快速的十六分音符和三连音滚奏 |
| lo-fi | 松散的 1 和 `3&` | 2、4，轻且靠后 | 摇摆、安静 |
| 圆舞曲 3/4 | 1 | 2、3（或用鼓刷） | - |
| 6/8 疾驰 | 1、4 | 4（或 2 和 5） | 八分音符 |

写你自己的节奏型，让风格家族体现在语汇上，而不是体现在具体的音符上。`craft` 的**律动一致性**（groove consistency）会把每小节的底鼓和军鼓与该段落里最常见的那个小节比较。低于 0.45 说明律动始终没有稳定下来。保持底鼓和反拍不变，去变化踩镲和加花小节。

## 4. 摇摆与律动感

- **摇摆比**（swing ratio）= 长八分音符 : 短八分音符。1:1 是平直，2:1 是三连音，3:1 是附点。
- 爵士鼓手**在慢速时摇摆得更重，在快速时更平直**：慢速时可达约 3.5:1，快速时降到约 1:1。短音保持在 100 ms 左右（Friberg & Sundström 2002）。
- 引擎的 `swing` 是长音所占的比例：0.5 是平直，0.58 大约是 1.4:1，0.67 是三连音。典型设置：
    - lo-fi 和 hip-hop 0.54-0.62（十六分音符摇摆）；
    - 爵士 0.6-0.67（八分音符，快速时少一些）；
    - house 0.5-0.56；
    - 摇滚和管弦乐 0.5。
- **前推与后靠：** 踩镲稍早一点会带来驱动感，军鼓晚 10-25 ms 会让人放松（hip-hop 和 lo-fi 那种"懒散"的反拍），底鼓保持在网格上。引擎的 `perform` 会给每条轨道施加各自的律动感。风格和摇摆值由你来选。

## 5. 复节奏与赫米奥拉

- **赫米奥拉（hemiola）：** 3 对 2。把两小节 3/4 重新组合成三小节 2/4，是经典的进入终止式的手法，能推动任何一个结尾。
- **3 对 4：** 在连续的十六分音符里放一个三音细胞，每 3 拍重新对齐一次。它在不改变速度的情况下带来运动感，极简主义音乐和紧张场面的 cue 里就是这样用的。
- **奇数拍子：** 7/8 = 2+2+3，5/4 = 3+2。在每组的开头加重音，让耳朵能数得过来。

## 6. 加花与过渡

- 加花（fill）放在**一个段落的最后一小节（或最后半小节）**，绝不放在乐句中间。它**在下一个小节首拍上**以一记镲片或一次抵达结束。
- 推向落地：
    1. 密度上升（从八分音符到十六分音符）；
    2. 军鼓滚奏上行；
    3. 就在 drop 之前，来一拍或一小节的静默（换气）。

    静默让落地更有力（Huron 2006，张力-对比效应）。
- 每 4-8 小节一次加花。再多就成了噪音。

## 7. 密度弧线

- 段落之间的对比主要靠密度：声部层的进出，以及每拍起音数。`craft` 会打印每个段落的每拍起音数和层数。当每一段都一样，或者某一段与前一段逐音相同时（冷场），它会发出警告。
- 一条好的弧线：
    1. 稀疏的前奏；
    2. 中等密度的主歌；
    3. hook 加一层；
    4. breakdown 削薄到一两层；
    5. drop 让所有声部都进来；
    6. 尾奏再次削薄。

## 8. 旋律中的节奏

一条**只有一种反复出现的节奏、外加几处变化**的旋律线容易被记住。同样的音高配上新的节奏，就是一首新的曲调（这就是新颖度指纹最看重节奏的原因）。一次只变一个维度。

## 9. 人性化还是量化

- 机器完全卡在网格上。演奏者的偏差是**相关的**（连续几个音一起漂前或漂后，类似 1/f 噪声），比起随机抖动，听众更喜欢这种偏差（Hennig et al. 2011）。
- 随机抖动不是律动感：听众并不会觉得随机微时值的律动比量化过的更好（Frühauf, Kopiez & Platz 2013；Senn et al. 2016）。
- 引擎方面：`perform` 会加入相关的微时值偏移和每条轨道的律动感。网格型的声部（八音盒、chiptune、drive）有意保持机械。力度（`@0.6`）承载重音：把强-弱模式写出来（鬼音用 0.3-0.5），而不是指望演奏器自己把它们发明出来。

资料来源：Lerdahl & Jackendoff, *A Generative Theory of Tonal Music* (1983)；London, *Hearing in Time*（第 2 版，2012）；Longuet-Higgins & Lee, "The rhythmic interpretation of monophonic music", *Music Perception* 1 (1984)；Witek et al., "Syncopation, body-movement and pleasure in groove music", *PLoS ONE* 9 (2014)；Friberg & Sundström, "Swing ratios and ensemble timing in jazz performance", *Music Perception* 19 (2002)；Hennig et al., "The nature and perception of fluctuations in human musical rhythms", *PLoS ONE* 6 (2011)；Frühauf, Kopiez & Platz, "Music on the timing grid", *Musicae Scientiae* 17 (2013)；Senn et al., "The effect of expert performance microtiming on listeners' experience of groove in swing or funk music", *Frontiers in Psychology* 7 (2016)；Huron, *Sweet Anticipation* (2006)。
