Java 如何设置MIDI音箱?

Java 如何设置MIDI音箱?,java,javasound,Java,Javasound,谁能建议我如何设置MIDI声音的平移。我正在使用JavaMIDI合成,并可以使其声音。但是我想让声音从左到右摇摄。我用谷歌搜索,但我似乎不太清楚?下面是我正在处理的代码示例: Synthesizer synthesizer = MidiSystem.getSynthesizer(); synthesizer.open(); MidiChannel channel = synthesizer.getChannels()[0]; Soundbank soundbank = synthesize

谁能建议我如何设置MIDI声音的平移。我正在使用JavaMIDI合成,并可以使其声音。但是我想让声音从左到右摇摄。我用谷歌搜索,但我似乎不太清楚?下面是我正在处理的代码示例:

Synthesizer synthesizer = MidiSystem.getSynthesizer();

synthesizer.open();

MidiChannel channel = synthesizer.getChannels()[0];

Soundbank soundbank = synthesizer.getDefaultSoundbank();

synthesizer.loadAllInstruments(soundbank);

channel.programChange(0,instrument);
channel.noteOn(60,200);`
我非常感谢你的帮助。 多谢

根据,摇摄由编号为10的控制更改消息控制。这是“粗略”值(7位精度),但显然“精细”14位版本(控制更改42)是由实际设备提供的

了解这一点后,您应该能够使用中的
controlChange(int,int)
方法来控制平移:

final int PAN_CONTROLLER = 10; 
// Pan to Center:
channel.controlChange(PAN_CONTROLLER, 64);

// Pan hard left:
channel.controlChange(PAN_CONTROLLER, 0);

// Pan hard right:
channel.controlChange(PAN_CONTROLLER, 127);

// "Active stereo", Jimi-Hendrix-style
// sweep from almost-full left to almost-full right:
for (int position = 8; position < 127; position += 8) {
    channel.controlChange(PAN_CONTROLLER, position);
    try {
        Thread.sleep(500);
    } catch (InterruptedException e) {
    }
}
final int PAN_CONTROLLER=10;
//平移到中心:
信道控制变化(PAN_控制器,64);
//向左平移:
通道控制更改(PAN_控制器,0);
//向右平移:
通道控制变更(PAN_控制器,127);
//“有源立体声”,吉米·亨德里克斯风格
//从几乎完全向左扫掠到几乎完全向右扫掠:
对于(内部位置=8;位置<127;位置+=8){
通道控制变更(盘控制器、位置);
试一试{
睡眠(500);
}捕捉(中断异常e){
}
}