首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何设置MIDI音效平移?

如何设置MIDI音效平移?
EN

Stack Overflow用户
提问于 2011-08-05 05:21:41
回答 1查看 1.1K关注 0票数 3

有没有人可以建议我如何设置MIDI音效的摇摄。我正在使用java MIDI合成,可以让它听起来更好。但我想让声音从左向右摇摆。我做了谷歌,但似乎对我来说不是很清楚?下面是我正在编写的代码示例:

代码语言:javascript
复制
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);`

我非常感谢您的帮助。非常感谢!

EN

回答 1

Stack Overflow用户

发布于 2011-10-11 08:22:41

根据MIDI spec,平移由控制更改消息编号10控制。这是“粗略”值(精度为7位),但显然“精细”14位版本(控制更改42)是由实际设备控制的( likely to be ignored )。

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

代码语言:javascript
复制
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) {
    }
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6948675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档