私はMIDIシーケンサーを作成しており、私が知る限りシーケンサーを初期化するには、次を使用する必要があります:
Sequencer sequencer = MidiSystem.getSequencer();
しかし、これにより、この1つのメソッド呼び出しでプログラムの開始が非常に遅くなり、最大2分かかります!
これを修正する方法はありますか?ありがとうございました
MidiSystem.getSequencer() のコードを見ると、前のものが失敗した場合に次のものを接続しようとして、さまざまなものを接続しようとしているようです。これは、すべての接続試行が最後まで失敗した場合、多くの時間がかかる可能性があることを意味します。
この理論をテストするには、次を使用してみてください
シーケンサー シーケンサー = MidiSystem.getSequencer(false);
その行がより速く実行されるかどうかを確認します。実行される場合、問題はデフォルトのシンセサイザーへの接続にかかる時間です。
getSequencer() を呼び出すと、一連のイベントは
このテキストは Javadoc にあるものとほとんど同じですが、ご覧のとおり、呼び出しを少し遅くするために接続を作成しようとする試みが十分にあります。