【问题标题】:tone.js - why are there 192 ticks (ppq) in 1 second at 60 bpm?tone.js - 为什么在 60 bpm 时 1 秒内有 192 个滴答声 (ppq)?
【发布时间】:2021-01-06 03:52:25
【问题描述】:
“Tone.js是一个Web Audio框架,用于在浏览器中创建交互式音乐。”
在tone的传输对象中,当bpm值为60时,默认滴答数(细分,或ppq)为192。它与bpm成正比,因此在120 bpm时,滴答数(细分,ppq)为384 .
为什么选择这个数字(192 或 384),而不是 200(120 bpm 时选择 400)?它是否有任何特殊属性,使其更适合作为默认 bpm 的默认刻度数?
【问题讨论】:
标签:
javascript
web-audio-api
tone.js
【解决方案1】:
PPQ(每四分之一节点的脉冲数)的值通常可以被 2 和 3 整除,这使得它可以准确地表示三连音节奏(3 的除法)和双连音节奏(2 的除法),这是非常常见的节奏细分。
例如,PPQ 为 6,四分音符可以按三种方式除以:2、3 和 6。这些除法将产生一个八分音符(将四分之二除)、一个三连音八分音符(除3) 和一个三连音 16 分音符(分成 6 个相等的部分)。
PPQ 数字越高,除数越多(因此它可以用整数刻度表示的节奏越多)。 200 或 400 的 PPQ 可以很好地表示五胞胎(5 的除法)和双胞胎,因为它可以多次被 5 和 2 整除,但不能被 3 整除。