在Java中更改MIDI乐器

时间:2018-12-10 01:09:44

标签: java midi

我几乎完全不熟悉MIDI。我需要从MIDI应用程序中播放简短的Java文件。那部分正在工作。但是,它的演奏听起来像是电子钢琴。我可以使用其他应用程序选择特定的乐器,并使用该声音渲染MIDI文件。

如果我误解了MIDI中可能出现的情况,请纠正我。

如果没有,我想更改为Instrument 22。我无法弄清楚该怎么做,并且假设在答案中找不到信息,那么我对此处现有问题的答案似乎并不完整。

我将应用程序的这一部分简化为一个最小的示例,以显示我的尝试:

import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;

import javax.sound.midi.MidiSystem;
import javax.sound.midi.Sequencer;

public class TryMidi
{
    public static void main(String[] args)
    {
        try
        {
            Sequencer sequencer = MidiSystem.getSequencer();
            sequencer.open();

            InputStream stream = new BufferedInputStream(new FileInputStream(new File("test.mid")));

            sequencer.setSequence(stream);
            sequencer.start();
        }
        catch (Exception e) {}
    }
}

在调用"sequencer.start()"switch乐器之前我该怎么办?

谢谢。

0 个答案:

没有答案