JFugue中的自定义笔记/休息时间

时间:2014-10-18 21:48:29

标签: jfugue

是否可以使用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");

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

您似乎要求以秒为单位测量自定义音符持续时间。您在JFugue中为笔记提供的持续时间以节拍来衡量。要弄清楚长音符将如何持续几秒钟,您需要将节拍乘以速度(以每分钟节拍或bpm为单位)(然后在几分钟到几秒内进行一些单位转换)。默认速度为120 bpm。您可以在JFugue中使用T指令更改持续时间,例如" T120"或" T60" - " T60"将持续时间分成两半具有相同的效果。

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