| Package | Description | 
|---|---|
| javax.sound.midi | Provides interfaces and classes for I/O, sequencing, and synthesis of MIDI 
(Musical Instrument Digital Interface) data. | 
| javax.sound.midi.spi | Supplies interfaces for service providers to implement when
offering new MIDI devices, MIDI file readers and writers, or sound bank readers. | 
| Class and Description | 
|---|
| ControllerEventListener The  ControllerEventListenerinterface should be implemented
 by classes whose instances need to be notified when aSequencerhas processed a requested type of MIDI control-change event. | 
| Instrument 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. | 
| InvalidMidiDataException An  InvalidMidiDataExceptionindicates that inappropriate MIDI
 data was encountered. | 
| MetaEventListener The  MetaEventListenerinterface should be implemented
 by classes whose instances need to be notified when ahas processed a. | 
| MetaMessage A  MetaMessageis athat is not meaningful to synthesizers, but
 that can be stored in a MIDI file and interpreted by a sequencer program. | 
| MidiChannel A  MidiChannelobject represents a single MIDI channel. | 
| MidiDevice MidiDeviceis the base interface for all MIDI devices. | 
| MidiDevice.Info A  MidiDevice.Infoobject contains assorted
 data about a, including its
 name, the company who created it, and descriptive text. | 
| MidiEvent MIDI events contain a MIDI message and a corresponding time-stamp
 expressed in ticks, and can represent the MIDI event information
 stored in a MIDI file or a  object. | 
| MidiFileFormat A  MidiFileFormatobject encapsulates a MIDI file's
 type, as well as its length and timing information. | 
| MidiMessage MidiMessageis the base class for MIDI messages. | 
| MidiUnavailableException A  MidiUnavailableExceptionis thrown when a requested MIDI
 component cannot be opened or created because it is unavailable. | 
| Patch A  Patchobject represents a location, on a MIDI
 synthesizer, into which a single instrument is stored (loaded). | 
| Receiver A  Receiverreceivesobjects and
 typically does something useful in response, such as interpreting them to
 generate sound or raw MIDI output. | 
| Sequence A  Sequenceis a data structure containing musical
 information (often an entire song or composition) that can be played
 back by aobject. | 
| Sequencer A hardware or software device that plays back a MIDI
  is known as a sequencer. | 
| Sequencer.SyncMode A  SyncModeobject represents one of the ways in which
 a MIDI sequencer's notion of time can be synchronized with a master
 or slave device. | 
| ShortMessage A  ShortMessagecontains a MIDI message that has at most
 two data bytes following its status byte. | 
| Soundbank A  Soundbankcontains a set ofInstrumentsthat can be loaded into aSynthesizer. | 
| SoundbankResource A  SoundbankResourcerepresents any audio resource stored
 in a. | 
| Synthesizer A  Synthesizergenerates sound. | 
| Track A MIDI track is an independent stream of MIDI events (time-stamped MIDI
 data) that can be stored along with other tracks in a standard MIDI file. | 
| Transmitter | 
| VoiceStatus A  VoiceStatusobject contains information about the current
 status of one of the voices produced by aSynthesizer. | 
| Class and Description | 
|---|
| InvalidMidiDataException An  InvalidMidiDataExceptionindicates that inappropriate MIDI
 data was encountered. | 
| MidiDevice MidiDeviceis the base interface for all MIDI devices. | 
| MidiDevice.Info A  MidiDevice.Infoobject contains assorted
 data about a, including its
 name, the company who created it, and descriptive text. | 
| MidiFileFormat A  MidiFileFormatobject encapsulates a MIDI file's
 type, as well as its length and timing information. | 
| Sequence A  Sequenceis a data structure containing musical
 information (often an entire song or composition) that can be played
 back by aobject. | 
| Soundbank A  Soundbankcontains a set ofInstrumentsthat can be loaded into aSynthesizer. | 
 Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2015, Oracle and/or its affiliates.  All rights reserved.