JavaTM 2 Platform
Std. Ed. v1.3.1

javax.sound.midi
Class Instrument

java.lang.Object
  |
  +--javax.sound.midi.SoundbankResource
        |
        +--javax.sound.midi.Instrument

public abstract class Instrument
extends SoundbankResource

An instrument is a sound-synthesis algorithm with certain parameter settings, usually designed to emulate a specific real-world musical instrument or to achieve a specific sort of sound effect. Instruments are typically stored in collections called soundbanks. Before the instrument can be used to play notes, it must first be loaded onto a synthesizer, and then it must be selected for use on one or more channels, via a program-change command. MIDI notes that are subsequently received on those channels will be played using the sound of the selected instrument.

See Also:
Soundbank, Soundbank.getInstruments(), Patch, Synthesizer.loadInstrument(Instrument), MidiChannel.programChange(int, int)

Constructor Summary
protected Instrument(Soundbank soundbank, Patch patch, String name, Class dataClass)
          Constructs a new MIDI instrument from the specified sound bank, bank index, and program index.
 
Method Summary
 Patch getPatch()
          Obtains the Patch object that indicates the bank and program numbers where this instrument is to be stored in the synthesizer.
 
Methods inherited from class javax.sound.midi.SoundbankResource
getData, getDataClass, getName, getSoundbank
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Instrument

protected Instrument(Soundbank soundbank,
                     Patch patch,
                     String name,
                     Class dataClass)
Constructs a new MIDI instrument from the specified sound bank, bank index, and program index. When a subsequent request is made to load the instrument, the sound bank will search its contents using these indices, and the instrument whose Patch matches the indices (namely, the instrument constructed here) will be loaded into the synthesizer at the indicated bank and program location.
Parameters:
soundbank - sound bank containing the instrument
bank - the bank index (0 to 127)
program - program change number (0 to 127)
See Also:
Synthesizer.loadInstrument(Instrument)
Method Detail

getPatch

public Patch getPatch()
Obtains the Patch object that indicates the bank and program numbers where this instrument is to be stored in the synthesizer.
Returns:
this instrument's patch

JavaTM 2 Platform
Std. Ed. v1.3.1

Submit a bug or feature
For further API reference and developer documentation, see Java 2 SDK SE Developer Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.

Java, Java 2D, and JDBC are trademarks or registered trademarks of Oracle and/or its affiliates, in the US and other countries.
Copyright © 1995, 2010 Oracle and/or its affiliates. All rights reserved.