3

プログラムで MIDI シーケンスを生成する Java アプリケーションを構築しています。これは、楽器をLoopBe Internal Midi Port使用Ableton Liveしてサウンドの再生品質を向上させるために送信されます。

間違っている場合は修正してください。私が必要とするのは、時間情報を含むSequenceを生成することTracksです。私が落ちたと思うこと。MidiEventsMIDI messages

本当の問題は、それを LoopBe MIDI ポート経由で送信する方法です。そのためには が必要だと思われますSequencerが、デフォルトのものではなく、それを取得する方法がわかりません。

回避策は、シーケンスを .mid ファイルに書き込んでから、LoopBe ポートでプログラム的に再生することだと思います。

私の質問は次のとおりです。デフォルト以外のシーケンサーを入手するにはどうすればよいですか?

4

2 に答える 2

2

メソッドが必要ですMidiSystem.getSequencer(boolean)falseパラメーターを使用して呼び出すと、接続されていないシーケンサーが提供されます。

ReceiverターゲットMIDIデバイスからインスタンスを取得し、seq.getTransmitter().setReceiver(rec)呼び出しを使用してシーケンサーに設定します。

スニペットの例:

MIDIDevice device = ... // obtain the MIDIDevice instance
Sequencer seq = MidiSystem.getSequencer(false);
Receiver rec = device.getReceiver();
seq.getTransmitter().setReceiver(rec)

シーケンサーの使用例については、http://docs.oracle.com/javase/tutorial/sound/MIDI-seq-methods.htmlのチュートリアルを参照してください

于 2012-10-02T05:59:27.200 に答える