是否可以使用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");
任何帮助都将不胜感激。
答案 0 :(得分:0)
您似乎要求以秒为单位测量自定义音符持续时间。您在JFugue中为笔记提供的持续时间以节拍来衡量。要弄清楚长音符将如何持续几秒钟,您需要将节拍乘以速度(以每分钟节拍或bpm为单位)(然后在几分钟到几秒内进行一些单位转换)。默认速度为120 bpm。您可以在JFugue中使用T指令更改持续时间,例如" T120"或" T60" - " T60"将持续时间分成两半具有相同的效果。
我推荐使用JFugue 5,如果你还没有这样做的话; JFugue 5中的时间管理比JFugue 4有了很大的改进。特别是,JFugue 5测量了节拍给@的值,而不是毫秒。 (披露:我是JFugue的作者)