javax.sound.midi

接口
异常
java.lang.Object
  继承者 javax.sound.midi.Patch

public class Patch
     
extends Object

一个 Patch 对象,用于表示 MIDI 合成器上的某个位置,其中存储(加载)了单个乐器。每个 Instrument 对象都有其自己的 Patch 对象,它指定了乐器应加载到的内存位置。该位置由一个库索引和一个程序号抽象指定(而不是通过任何直接引用 RAM 的具体地址或偏移量的机制指定)。这是一种层次化索引机制:MIDI 提供多达 16384 个库,每个库包含多达 128 个程序位置。例如,最小类型的合成器可能只有一个乐器库,该库中只有 32 种乐器(程序)。

要选择演奏特定 MIDI 通道上的音符所使用的乐器,可使用两种指定包位置 MIDI 消息:一个是库选择命令,一个是程序更改通道命令。等效的 Java Sound 为 MidiChannelprogramChange(int, int) 方法。

另请参见:
Instrument, Instrument.getPatch(), MidiChannel.programChange(int, int), Synthesizer.loadInstruments(Soundbank, Patch[]), Soundbank, Sequence.getPatchList()

构造方法摘要
Patch(int bank, int program)
          从指定的库和程序号构造一个新的 patch 对象。
 
方法摘要
 int getBank()
          返回包含该 Patch 指定其位置乐器的库的号码。
 int getProgram()
          返回该 Patch 指定其位置的乐器在库中的索引号。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

Patch

public Patch(int bank,
             int program)
从指定的库和程序号构造一个新的 patch 对象。

参数:
bank - 库索引(范围从 0 到 16383)
program - 程序索引(范围从 0 到 127)
方法详细信息

getBank

public int getBank()
返回包含该 Patch 指定其位置乐器的库的号码。

返回:
库号,范围从 0 到 16383
另请参见:
MidiChannel.programChange(int, int)

getProgram

public int getProgram()
返回该 Patch 指定其位置的乐器在库中的索引号。

返回:
乐器的程序号,范围从 0 到 127
另请参见:
MidiChannel.getProgram(), MidiChannel.programChange(int), MidiChannel.programChange(int, int)