3

次のコードを使用して、JFugue で MIDI ファイルを読み込んで再生します。

import java.io.File;

import org.jfugue.Pattern;
import org.jfugue.Player;

public class PlayMidiFromFile {

    public static void main(final String[] args) {
        try {
            final Player player = new Player();
            final Pattern pattern = player.loadMidi(new File("sample.mid"));
            player.play(pattern);
        } catch (final Exception e) {
            e.printStackTrace();
        }
    }
}

このファイルは ChordPulse で生成されたもので、他のプログラムでの再生は正常に機能します。

それぞれに異なる楽器を持つ複数のトラックが含まれていますが、プレーヤーはすべてピアノのみを使用しており、一部のトラックが欠落しているようです。

これを修正する方法は?パーサーによって認識されない特定の MIDI メッセージはありますか? 曲がどのようにトラックやチャンネルを使用しているか、またはその他の既知の制限や必要な初期化手順について、前提条件はありますか?

4

1 に答える 1