1

如何使用 JFugue 模式生成无限循环。我尝试了以下

  • while 循环
  • 具有高计数器的 for 循环

在这两种情况下,都会产生重叠的奇怪声音。当我在 for 循环中使用像 10 这样的小计数器运行时,它工作正常。

我需要一个模式来无限运行,直到通过用户操作(比如从 UI)调用 player.close() 来停止播放器。

4

1 回答 1

1

没有一种特定的方法可以让模式永远运行。这部分是因为 JFugue 将音乐字符串编译成 MIDI 代码,因此永远运行的模式将只是一个无限长的 MIDI 文件。当然,如果您使用特定次数来重复模式,则该模式可能会太长或太短而无法满足您的需求。最好的选择可能是查看 JFugue 的 RealtimePlayer 类,并创建一个单独的线程,在线程仍处于活动状态时继续播放节拍器模式的部分。

让我知道这是否有助于您走上正确的道路!

于 2018-06-07T04:11:59.090 回答