Spec-Zone.ru › OpenJDK 8

Класс MetaMessage

  • java.lang.Object
    • javax.sound.midi.MidiMessage
      • javax.sound.midi.MetaMessage
Все реализованные интерфейсы:
Cloneable

public class MetaMessage
extends MidiMessage

A MetaMessage — это MidiMessage, не имеющий смысла для синтезаторов, но который может храниться в файле MIDI и интерпретироваться программой секвенсора. (См. обсуждение в описании класса MidiMessage. Спецификация Standard MIDI Files определяет различные типы мета-событий, такие как номер последовательности, текст, контрольная точка, установка темпа. Также есть мета-события для такой информации, как тексты, авторские права, указания темпа, подписи времени и тональности, метки и т. д. Более подробная информация содержится в спецификации Standard MIDI Files 1.0, которая является частью Полной подробной спецификации MIDI 1.0, опубликованной MIDI Manufacturer's Association (http://www.midi.org).

При передаче данных по протоколу MIDI wire сообщение с кодом состояния 0xFF представляет собой сообщение сброса системы. В файлах MIDI этот же код состояния обозначает MetaMessage. Типы мета-сообщений различаются по первому байту, следующему за байтом состояния 0xFF. Последующие байты являются байтами данных. Как и в сообщениях системного эксклюзива, количество байтов данных произвольное, в зависимости от типа MetaMessage.

См. также:
MetaEventListener

Поля

Модификатор и тип Поле и описание
static int META

Байт состояния для MetaMessage (0xFF, или 255), используемый в файлах MIDI.

Поля, унаследованные от класса javax.sound.midi.MidiMessage

data, length

Конструкторы

Модификатор Конструктор и описание
MetaMessage()

Создает новый MetaMessage.

protected MetaMessage(byte[] data)

Создает новый MetaMessage.

MetaMessage(int type, byte[] data, int length)

Создает новый MetaMessage и устанавливает параметры сообщения.

Методы

Модификатор и тип Метод и описание
Object clone()

Создает новый объект того же класса с теми же данными, что и этот объект.

byte[] getData()

Получает копию данных для мета-сообщения.

int getType()

Получает тип MetaMessage.

void setMessage(int type, byte[] data, int length)

Устанавливает параметры сообщения для MetaMessage.

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

getLength, getMessage, getStatus, setMessage

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

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

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

META

public static final int META

Байт состояния для MetaMessage (0xFF, или 255), используемый в файлах MIDI. Он имеет то же значение, что и SYSTEM_RESET, используемый в реальном протоколе "MIDI wire".

См. также:
MidiMessage.getStatus(), Значения константных полей

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

MetaMessage

public MetaMessage()

Создает новый MetaMessage. Содержимое сообщения здесь не устанавливается; используйте setMessage для его последующей установки.

MetaMessage

public MetaMessage(int type,
                   byte[] data,
                   int length)
            throws InvalidMidiDataException

Создает новый MetaMessage и устанавливает параметры сообщения. Содержимое сообщения можно изменить, используя метод setMessage.

Параметры:
type - тип мета-сообщения (должен быть меньше 128)
data - байты данных в сообщении MIDI
length - количество байтов в массиве байтов data; оно должно быть неотрицательным и меньше или равно data.length
Исключения:
InvalidMidiDataException - если значения параметров не соответствуют допустимому мета-сообщению MIDI
С тех пор:
1.7
См. также:
setMessage(int, byte[], int), getType(), getData()

MetaMessage

protected MetaMessage(byte[] data)

Создает новый MetaMessage.

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

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

setMessage

public void setMessage(int type,
                       byte[] data,
                       int length)
                throws InvalidMidiDataException

Устанавливает параметры сообщения для MetaMessage. Поскольку для мета-сообщений разрешен только один байт статуса, 0xFF, он не должен указываться здесь. Вызовы getStatus возвращают 0xFF для всех мета-сообщений.

Аргумент type должен быть допустимым значением байта, следующего за байтом статуса в MetaMessage. Аргумент data должен содержать все последующие байты MetaMessage. Другими словами, байт, определяющий тип MetaMessage, не считается байтом данных.

Параметры:
type - тип мета-сообщения (должен быть меньше 128)
data - байты данных в сообщении MIDI
length - количество байтов в массиве байтов data
Исключения:
InvalidMidiDataException - если значения параметров не соответствуют допустимому мета-сообщению MIDI

getType

public int getType()

Получает тип MetaMessage.

Возвращает:
целое число, представляющее тип MetaMessage

getData

public byte[] getData()

Получает копию данных для мета-сообщения. Возвращаемый массив байтов не включает байт состояния или данные длины сообщения. Длина данных мета-сообщения — это длина массива. Обратите внимание, что длина всего сообщения включает байт состояния и байт типа мета-сообщения, и, следовательно, может быть больше, чем возвращаемый массив.

Возвращает:
массив, содержащий данные мета-сообщения.
См. также:
MidiMessage.getLength()

clone

public Object clone()

Создает новый объект того же класса с теми же данными, что и этот объект.

Определено в:
clone в классе MidiMessage
Возвращает:
клонированный экземпляр
См. также:
Cloneable

© 1993, 2020, 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.

Spec-Zone.ru

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