Spec-Zone .ru
спецификации, руководства, описания, API
|
|
JavaTM 2 Platform Std. Ed. v1.3.1 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--javax.sound.midi.MidiMessage | +--javax.sound.midi.MetaMessage
A MetaMessage
is a
that is not meaningful to synthesizers, but
that can be stored in a MIDI file and interpreted by a sequencer program.
(See the discussion in the MidiMessage
MidiMessage
class description.) The Standard MIDI Files specification defines
various types of meta-events, such as sequence number, lyric, cue point,
and set tempo. There are also meta-events
for such information as lyrics, copyrights, tempo indications, time and key
signatures, markers, etc. For more information, see the Standard MIDI Files 1.0
specification, which is part of the Complete MIDI 1.0 Detailed Specification
published by the MIDI Manufacturer's Association
(
When data is being transported using MIDI wire protocol,
a
with the status value ShortMessage
0xFF
represents
a system reset message. In MIDI files, this same status value denotes a MetaMessage
.
The types of meta-message are distinguished from each other by the first byte
that follows the status byte 0xFF
. The subsequent bytes are data
bytes. As with system exclusive messages, there are an arbitrary number of
data bytes, depending on the type of MetaMessage
.
MetaEventListener
Field Summary | |
static int |
META
Status byte for MetaMessage (0xFF, or 255), which is used
in MIDI files. |
Fields inherited from class javax.sound.midi.MidiMessage |
data, length |
Constructor Summary | |
|
MetaMessage()
Constructs a new MetaMessage . |
protected |
MetaMessage(byte[] data)
Constructs a new MetaMessage . |
Method Summary | |
Object |
clone()
Creates a new object of the same class and with the same contents as this object. |
byte[] |
getData()
Obtains a copy of the data for the meta message. |
int |
getType()
Obtains the type of the MetaMessage |
void |
setMessage(int type,
byte[] data,
int length)
Sets the message parameters for a MetaMessage . |
Methods inherited from class javax.sound.midi.MidiMessage |
getLength, getMessage, getStatus, setMessage |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final int META
MetaMessage
(0xFF, or 255), which is used
in MIDI files. It has the same value as SYSTEM_RESET, which
is used in the real-time "MIDI wire" protocol.MidiMessage.getStatus()
Constructor Detail |
public MetaMessage()
MetaMessage
. The contents of
the message are not set here; use
setMessage
to set them subsequently.protected MetaMessage(byte[] data)
MetaMessage
.data
- an array of bytes containing the complete message.
The message data may be changed using the setMessage
method.setMessage(int, byte[], int)
Method Detail |
public void setMessage(int type, byte[] data, int length) throws InvalidMidiDataException
MetaMessage
.
Since only one status byte value, 0xFF
, is allowed for meta-messages,
it does not need to be specified here. Calls to getStatus
return
0xFF
for all meta-messages.
The type
argument should be a valid value for the byte that
follows the status byte in the MetaMessage
. The
data
argument
should contain all the subsequent bytes of the MetaMessage
. In other words,
the byte that specifies the type of
MetaMessage
is not considered a data byte.
type
- meta-message type (must be less than 128)data
- the data bytes in the MIDI messagelength
- the number of bytes in the data
byte array
- if the
parameter values do not specify a valid MIDI meta messageInvalidMidiDataException
public int getType()
MetaMessage.
- Returns:
- an integer representing the
MetaMessage type
public byte[] getData()
MidiMessage.getLength()
public Object clone()
clone
in class MidiMessage
|
JavaTM 2 Platform Std. Ed. v1.3.1 |
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Java, Java 2D, and JDBC are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries.
Copyright 1993-2001 Sun Microsystems, Inc. 901 San Antonio Road
Palo Alto, California, 94303, U.S.A. All Rights Reserved.