2

是否可以使用 JFugue 制作自定义音符和休息时间?我一直试图通过使用 MusicString 中的 / 符号来实现这一点,但没有成功。使用的代码是:

 Player player = new Player();

player.play("V0 I[Flute] A/3");

这使得 A 音符播放 6 秒。在这种情况下,我可以只除以 2 并得到想要的结果,但我不确定这是否是正确的方法。第二个问题是当使用符号@milliseconds 时,它指示应该播放以下标记的时间(以毫秒为单位)。出于某种原因,我无法在我声明的毫秒后播放下一个音符。在以下示例中,B 音符在 34 秒而不是 2 秒后播放。
player.play("V0 I[Flute] A @2000 B");

任何帮助,将不胜感激。

4

1 回答 1

0

您似乎要求以秒为单位的自定义笔记持续时间。您在 JFugue 中为音符提供的持续时间以节拍为单位。要计算一个音符的持续时间(以秒为单位),您需要将节拍乘以以每分钟节拍或 bpm 为单位测量的节拍(然后将分钟转换为秒)。默认速度为 120 bpm。您可以使用 JFugue 中的 T 指令更改持续时间,例如“T120”或“T60” - “T60”将具有将持续时间分成两半的效果。

如果您还没有这样做,我建议您使用 JFugue 5;JFugue 5 中的时间管理比 JFugue 4 有了很大改进。特别是,JFugue 5 以节拍而不是毫秒为单位测量给予 @ 的值。(披露:我是 JFugue 的作者)

于 2014-10-19T14:22:53.797 回答