Spec-Zone.ru › OpenJDK 17

Класс ShortMessage

java.lang.Object
javax.sound.midi.MidiMessage
javax.sound.midi.ShortMessage
Все реализованные интерфейсы:
Cloneable
public class ShortMessage extends MidiMessage
A ShortMessage содержит сообщение MIDI, которое имеет не более двух байтов данных после байта состояния. Типы сообщений MIDI, которые удовлетворяют этому критерию, являются каналами голоса, каналами режима, системными общими и системными сообщениями реального времени — другими словами, все, кроме системных эксклюзивных и мета-событий. Класс ShortMessage предоставляет методы для получения и установки содержимого сообщения MIDI.

Ряд ShortMessage методов имеет целочисленные параметры, с помощью которых вы можете указать байт состояния MIDI или данных. Если вам известно числовое значение, вы можете выразить его напрямую. Для системных общих и системных сообщений реального времени вы часто можете использовать соответствующие поля ShortMessage, такие как SYSTEM_RESET. Для сообщений каналов верхние четыре бита байта состояния задаются значением команды, а нижние четыре бита — номером канала MIDI. Чтобы преобразовать входящие байты данных MIDI, представленные в виде знакомых байтов Java, вы можете использовать код преобразования, приведенный в разделе преобразования в описании класса MidiMessage.

См. также:
  • SysexMessage
  • MetaMessage

Краткое описание полей

Модификатор и тип Поле Описание
static final int ACTIVE_SENSING
Байт состояния сообщения Active Sensing (0xFE или 254).
static final int CHANNEL_PRESSURE
Значение команды сообщения Channel Pressure (Aftertouch) (0xD0 или 208).
static final int CONTINUE
Байт состояния сообщения Continue (0xFB или 251).
static final int CONTROL_CHANGE
Значение команды сообщения Control Change (0xB0 или 176).
static final int END_OF_EXCLUSIVE
Байт состояния сообщения End of System Exclusive (0xF7 или 247).
static final int MIDI_TIME_CODE
Байт состояния сообщения MIDI Time Code Quarter Frame (0xF1 или 241).
static final int NOTE_OFF
Значение команды сообщения Note Off (0x80 или 128).
static final int NOTE_ON
Значение команды сообщения Note On (0x90 или 144).
static final int PITCH_BEND
Значение команды сообщения Pitch Bend (0xE0 или 224).
static final int POLY_PRESSURE
Значение команды сообщения Polyphonic Key Pressure (Aftertouch) (0xA0 или 160).
static final int PROGRAM_CHANGE
Значение команды сообщения Program Change (0xC0 или 192).
static final int SONG_POSITION_POINTER
Байт состояния сообщения Song Position Pointer (0xF2 или 242).
static final int SONG_SELECT
Байт состояния сообщения MIDI Song Select (0xF3 или 243).
static final int START
Байт состояния сообщения Start (0xFA или 250).
static final int STOP
Байт состояния сообщения Stop (0xFC или 252).
static final int SYSTEM_RESET
Байт состояния сообщения System Reset (0xFF или 255).
static final int TIMING_CLOCK
Байт состояния сообщения Timing Clock (0xF8 или 248).
static final int TUNE_REQUEST
Байт состояния сообщения Tune Request (0xF6 или 246).

Поля, объявленные в классе javax.sound.midi.MidiMessage

data, length

Краткое описание конструкторов

ShortMessage()
ShortMessage(byte[] data)
ShortMessage(int status)
ShortMessage(int status, int data1, int data2)
ShortMessage(int command, int channel, int data1, int data2)
Модификатор Конструктор Описание
Создаёт новый ShortMessage.
protected
Создаёт новый ShortMessage.
Создаёт новый ShortMessage, который представляет сообщение MIDI, не требующее байтов данных.
Создаёт новый ShortMessage, который представляет сообщение MIDI, которое может использовать до двух байтов данных.
Создаёт новый ShortMessage, который представляет сообщение MIDI канала, которое может использовать до двух байтов данных.

Краткое описание методов

Модификатор и тип Метод Описание
Object clone()
Создаёт новый объект того же класса с тем же содержимым, что и этот объект.
int getChannel()
Получает MIDI-канал, связанный с этим событием.
int getCommand()
Получает MIDI-команду, связанную с этим событием.
int getData1()
Получает первый байт данных в сообщении.
int getData2()
Получает второй байт данных в сообщении.
protected final int getDataLength(int status)
Получает количество байтов данных, связанных с определенным значением байта состояния.
void setMessage(int status)
Устанавливает параметры для сообщения MIDI, которое не требует байтов данных.
void setMessage(int status, int data1, int data2)
Устанавливает параметры для сообщения MIDI, которое может использовать один или два байта данных.
void setMessage(int command, int channel, int data1, int data2)
Устанавливает параметры краткого сообщения для сообщения канала, которое может использовать до двух байтов данных.

Методы, объявленные в классе javax.sound.midi.MidiMessage

getLength, getMessage, getStatus, setMessage

Методы, объявленные в классе java.lang.Object

equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

MIDI_TIME_CODE

public static final int MIDI_TIME_CODE
Код статуса для сообщения MIDI Time Code Quarter Frame (0xF1, или 241).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

SONG_POSITION_POINTER

public static final int SONG_POSITION_POINTER
Код статуса для сообщения Song Position Pointer (0xF2, или 242).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

SONG_SELECT

public static final int SONG_SELECT
Код статуса для сообщения MIDI Song Select (0xF3, или 243).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

TUNE_REQUEST

public static final int TUNE_REQUEST
Код статуса для сообщения Tune Request (0xF6, или 246).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

END_OF_EXCLUSIVE

public static final int END_OF_EXCLUSIVE
Код статуса для сообщения End of System Exclusive (0xF7, или 247).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

TIMING_CLOCK

public static final int TIMING_CLOCK
Код статуса для сообщения Timing Clock (0xF8, или 248).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

START

public static final int START
Код статуса для сообщения Start (0xFA, или 250).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

CONTINUE

public static final int CONTINUE
Код статуса для сообщения Continue (0xFB, или 251).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

STOP

public static final int STOP
Код статуса для сообщения Stop (0xFC, или 252).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

ACTIVE_SENSING

public static final int ACTIVE_SENSING
Код статуса для сообщения Active Sensing (0xFE, или 254).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

SYSTEM_RESET

public static final int SYSTEM_RESET
Код статуса для сообщения System Reset (0xFF, или 255).
См. также:
  • MidiMessage.getStatus()
  • Значения постоянных полей

NOTE_OFF

public static final int NOTE_OFF
Значение команды для сообщения Note Off (0x80, или 128).
См. также:
  • Значения постоянных полей

NOTE_ON

public static final int NOTE_ON
Значение команды для сообщения Note On (0x90, или 144).
См. также:
  • Значения постоянных полей

POLY_PRESSURE

public static final int POLY_PRESSURE
Значение команды для сообщения Полифоническое давление клавиш (Aftertouch) (0xA0, или 160).
См. также:
  • Значения постоянных полей

CONTROL_CHANGE

public static final int CONTROL_CHANGE
Значение команды для сообщения Control Change (0xB0, или 176).
См. также:
  • Значения постоянных полей

PROGRAM_CHANGE

public static final int PROGRAM_CHANGE
Значение команды для сообщения Program Change (0xC0, или 192).
См. также:
  • Значения постоянных полей

CHANNEL_PRESSURE

public static final int CHANNEL_PRESSURE
Значение команды для сообщения Канал давления (Aftertouch) (0xD0, или 208).
См. также:
  • Значения постоянных полей

PITCH_BEND

public static final int PITCH_BEND
Значение команды для сообщения Pitch Bend (0xE0, или 224).
См. также:
  • Значения постоянных полей

Подробное описание конструкторов

ShortMessage

public ShortMessage()
Создает новый ShortMessage. Содержимое нового сообщения гарантирует указание валидного MIDI сообщения. Впоследствии вы можете установить содержимое сообщения с помощью одного из методов setMessage.
См. также:
  • setMessage(int)

ShortMessage

public ShortMessage(int status) throws InvalidMidiDataException
Создаёт новый ShortMessage, который представляет сообщение MIDI без байтов данных. Содержимое сообщения можно изменить с помощью одного из методов setMessage.
Параметры:
status - байт статуса MIDI
Исключения:
InvalidMidiDataException - если status не указывает допустимый байт статуса MIDI для сообщения, не требующего байтов данных
С:
1.7
См. также:
  • setMessage(int)
  • setMessage(int, int, int)
  • setMessage(int, int, int, int)
  • MidiMessage.getStatus()

ShortMessage

public ShortMessage(int status, int data1, int data2) throws InvalidMidiDataException
Создает новый ShortMessage, представляющий сообщение MIDI, которое может содержать до двух байтов данных. Если сообщение содержит только один байт данных, второй байт игнорируется. Если сообщение не требует байтов данных, оба байта данных игнорируются. Содержимое сообщения можно изменить с помощью одного из методов setMessage.
Параметры:
status - байт статуса MIDI
data1 - первый байт данных
data2 - второй байт данных
Исключения:
InvalidMidiDataException - если байт статуса или все байты данных, относящиеся к сообщению, не задают валидное MIDI сообщение
С:
1.7
См. также:
  • setMessage(int)
  • setMessage(int, int, int)
  • setMessage(int, int, int, int)
  • MidiMessage.getStatus()
  • getData1()
  • getData2()

Сокращённое сообщение

public ShortMessage(int command, int channel, int data1, int data2) throws InvalidMidiDataException
Создаёт новое ShortMessage, которое представляет сообщение MIDI канала, занимающее до двух байтов данных. Если сообщение занимает только один байт данных, второй байт данных игнорируется. Если сообщение не занимает никаких байтов данных, оба байта данных игнорируются. Содержимое сообщения может быть изменено с помощью одного из методов setMessage.
Параметры:
command - команда MIDI, представленная этим сообщением
channel - канал, связанный с сообщением
data1 - первый байт данных
data2 - второй байт данных
Исключения:
InvalidMidiDataException - если значение команды, значение канала или все байты данных, принадлежащие сообщению, не определяют допустимое сообщение MIDI
С момента:
1.7
См. также:
  • setMessage(int)
  • setMessage(int, int, int)
  • setMessage(int, int, int, int)
  • getCommand()
  • getChannel()
  • getData1()
  • getData2()

Сокращённое сообщение

protected ShortMessage(byte[] data)
Создаёт новое ShortMessage.
Параметры:
data - массив байтов, содержащий полное сообщение. Данные сообщения могут быть изменены с помощью метода setMessage.
См. также:
  • setMessage(int)

Подробное описание методов

setMessage

public void setMessage(int status) throws InvalidMidiDataException
Устанавливает параметры для сообщения MIDI, не требующего байтов данных.
Параметры:
status - байт состояния MIDI
Исключения:
InvalidMidiDataException - если status не определяет допустимый байт состояния MIDI для сообщения, не требующего байтов данных
См. также:
  • setMessage(int, int, int)
  • setMessage(int, int, int, int)

setMessage

public void setMessage(int status, int data1, int data2) throws InvalidMidiDataException
Устанавливает параметры для сообщения MIDI, требующего один или два байта данных. Если сообщение требует только один байт данных, второй байт данных игнорируется; если сообщение не требует байтов данных, оба байта данных игнорируются.
Параметры:
status - байт состояния MIDI
data1 - первый байт данных
data2 - второй байт данных
Исключения:
InvalidMidiDataException - если байт состояния или все байты данных, принадлежащие сообщению, не определяют допустимое сообщение MIDI
См. также:
  • setMessage(int, int, int, int)
  • setMessage(int)

setMessage

public void setMessage(int command, int channel, int data1, int data2) throws InvalidMidiDataException
Устанавливает параметры короткого сообщения для сообщения канала, которое может занимать до двух байтов данных. Если сообщение занимает только один байт данных, второй байт данных игнорируется; если сообщение не занимает никаких байтов данных, оба байта данных игнорируются.
Параметры:
command - команда MIDI, представленная этим сообщением
channel - канал, связанный с сообщением
data1 - первый байт данных
data2 - второй байт данных
Исключения:
InvalidMidiDataException - если байт состояния или все байты данных, принадлежащие сообщению, не определяют допустимое сообщение MIDI
См. также:
  • setMessage(int, int, int)
  • setMessage(int)
  • getCommand()
  • getChannel()
  • getData1()
  • getData2()

getChannel

public int getChannel()
Получает MIDI-канал, связанный с этим событием. Этот метод предполагает, что событие является сообщением MIDI канала; в противном случае возвращаемое значение не будет иметь смысла.
Возвращает:
MIDI-канал, связанный с сообщением
См. также:
  • setMessage(int, int, int, int)

getCommand

public int getCommand()
Получает команду MIDI, связанную с этим событием. Этот метод предполагает, что событие является сообщением MIDI канала; в противном случае возвращаемое значение не будет иметь смысла.
Возвращает:
команда MIDI, связанная с этим событием
См. также:
  • setMessage(int, int, int, int)

getData1

public int getData1()
Получает первый байт данных в сообщении.
Возвращает:
значение поля data1
См. также:
  • setMessage(int, int, int)

getData2

public int getData2()
Получает второй байт данных в сообщении.
Возвращает:
значение поля data2
См. также:
  • setMessage(int, int, int)

clone

public Object clone()
Создаёт новый объект того же класса и с тем же содержимым, что и этот объект.
Определено в:
clone в классе MidiMessage
Возвращает:
клонированный экземпляр
См. также:
  • Cloneable

getDataLength

protected final int getDataLength(int status) throws InvalidMidiDataException
Возвращает количество байтов данных, связанных со значением определённого байта состояния.
Параметры:
status - значение байта состояния, которое должно представлять короткое сообщение MIDI
Возвращает:
длина данных в байтах (0, 1 или 2)
Исключения:
InvalidMidiDataException - если аргумент status не представляет байт состояния для любого короткого сообщения

© 1993, 2021, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/17/docs/api/java.desktop/javax/sound/midi/ShortMessage.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API