2016-07-01 12 views
0

これは私が持っているものです。Java Midi:シーケンス内の個々のノートのパンを変更するにはどうすればよいですか?

// Note on message 
ShortMessage noteOnMessage = new ShortMessage(); 
noteOnMessage.setMessage(ShortMessage.NOTE_ON, chanNum, key, velocity); 

// Pan change 
ShortMessage panChangeMessage = new ShortMessage(); 
panChangeMessage.setMessage(ShortMessage.CONTROL_CHANGE, chanNum, SoundManager.PAN_CONTROLLER, pan); 

// Note off message 
ShortMessage noteOffMessage = new ShortMessage(); 
noteOffMessage.setMessage(ShortMessage.NOTE_OFF, chanNum, key, 0); 

問題がトラックに追加panChangeMes​​sageが、そののMidiEventダニだけではなく、現在の個々のノートにすべてのノートのパンを変えるということです。唯一のノートのパンを変更する方法はありますか?

答えて

1

できません。

チャンネルをパンし、ノートオフがトリガーされた後にパンを戻します。どんな腐敗も後退することを覚えておいてください。

代わりに、複数のMIDIチャンネルを使用します。必要なポリフォニーのノートごとに1つずつ使用します。

関連する問題