【问题标题】:How can I change the instrument when writing a MIDI file?编写 MIDI 文件时如何更改乐器?
【发布时间】:2012-05-28 20:26:47
【问题描述】:

我用this模板写了一个写MIDI文件的程序,现在唯一的问题就是换乐器

此代码段被注释为将乐器设置为钢琴,但我想知道是否有其他乐器可以通过不同的消息输入设置。

//****  set instrument to Piano  ****
    mm = new ShortMessage();
    mm.setMessage(0xC0, 0x00, 0x00);
    me = new MidiEvent(mm,(long)0);
    t.add(me);

【问题讨论】:

    标签: java midi


    【解决方案1】:

    general MIDI standard 中指定了其他乐器,但并非所有合成器都保证支持这些声音。

    另外,MIDI 程序更改消息只有 2 个字节,而不是 3 个字节。查看您链接到的示例模板代码,setMessage() 方法似乎为此提供了适当的覆盖。如果您向此消息写入 3 个字节,则第 3 个字节将被错误地解释为下一条消息的第一个字节。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多