Класс Sequence
public class Sequence extends Object
Sequence — это структура данных, содержащая музыкальную информацию (часто целую песню или музыкальное произведение), которую можно воспроизвести с помощью объекта Sequencer. В частности, Sequence содержит информацию о времени и одну или несколько дорожек. Каждая track состоит из последовательности событий MIDI (например, включения и выключения нот, смены программы и метасобытий). Информация о времени в последовательности определяет тип единицы измерения, используемой для присвоения временных меток событиям последовательности. Sequence можно создать из MIDI-файла, прочитав файл во входной поток и вызвав один из методов getSequence класса MidiSystem. Последовательность также можно создать с нуля, добавив новые Tracks в пустую Sequence, а затем добавив объекты MidiEvent в эти Tracks.
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected float |
divisionType |
Тип временного деления последовательности. |
static final float |
PPQ |
Тип синхронизации на основе темпа, для которого разрешение выражается в импульсах (тиках) на четвертную ноту. |
protected int |
resolution |
Разрешение времени последовательности. |
static final float |
SMPTE_24 |
Тип синхронизации на основе SMPTE с частотой 24 кадра в секунду (разрешение выражается в тиках на кадр). |
static final float |
SMPTE_25 |
Тип синхронизации на основе SMPTE с частотой 25 кадров в секунду (разрешение выражается в тиках на кадр). |
static final float |
SMPTE_30 |
Тип синхронизации на основе SMPTE с частотой 30 кадров в секунду (разрешение выражается в тиках на кадр). |
static final float |
SMPTE_30DROP |
Тип синхронизации на основе SMPTE с частотой 29,97 кадра в секунду (разрешение выражается в тиках на кадр). |
protected Vector |
tracks |
Дорожки MIDI в этой последовательности. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Sequence |
Создает новую последовательность MIDI с указанными типом временного деления и разрешением времени. |
Sequence |
Создает новую последовательность MIDI с указанными типом временного деления, разрешением времени и количеством дорожек. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
Track |
createTrack() |
Создает новую, изначально пустую дорожку в составе этой последовательности. |
boolean |
deleteTrack |
Удаляет указанную дорожку из последовательности. |
float |
getDivisionType() |
Возвращает тип временного деления этой последовательности. |
long |
getMicrosecondLength() |
Возвращает длительность этой последовательности в микросекундах. |
Patch[] |
getPatchList() |
Возвращает список патчей, на которые ссылается эта последовательность. |
int |
getResolution() |
Возвращает разрешение времени этой последовательности. |
long |
getTickLength() |
Возвращает длительность этой последовательности в MIDI-тиках. |
Track[] |
getTracks() |
Возвращает массив, содержащий все дорожки этой последовательности. |
Подробное описание полей
PPQ
public static final float PPQ
- См. также:
SMPTE_24
public static final float SMPTE_24
- См. также:
SMPTE_25
public static final float SMPTE_25
- См. также:
SMPTE_30DROP
public static final float SMPTE_30DROP
- См. также:
SMPTE_30
public static final float SMPTE_30
- См. также:
divisionType
protected float divisionType
- См. также:
resolution
protected int resolution
- См. также:
tracks
protected Vector<Track> tracks
- См. также:
Подробное описание конструкторов
Sequence
public Sequence(float divisionType, int resolution) throws InvalidMidiDataException
divisionType — это PPQ (импульсы на четвертную ноту), а разрешение задается в тиках на долю. Для синхронизации SMPTE divisionType задает количество кадров в секунду, а разрешение задается в тиках на кадр. Изначально последовательность не содержит дорожек. Дорожки можно добавлять в последовательность и удалять из нее с помощью методов createTrack() и deleteTrack(Track).- Параметры:
-
divisionType— тип временного деления (PPQ или один из типов SMPTE) -
resolution— разрешение времени - Вызывает исключение:
-
InvalidMidiDataException— еслиdivisionTypeнедопустим - См. также:
Sequence
public Sequence(float divisionType, int resolution, int numTracks) throws InvalidMidiDataException
divisionType — это PPQ (импульсы на четвертную ноту), а разрешение задается в тиках на долю. Для синхронизации SMPTE divisionType задает количество кадров в секунду, а разрешение задается в тиках на кадр. Последовательность будет инициализирована количеством дорожек, указанным в numTracks. Изначально эти дорожки пусты (то есть содержат только метасобытие End of Track). Дорожки можно получить для редактирования с помощью метода getTracks(). Дополнительные дорожки можно добавлять, а существующие удалять с помощью методов createTrack() и deleteTrack(Track).- Параметры:
-
divisionType— тип временного деления (PPQ или один из типов SMPTE) -
resolution— разрешение времени -
numTracks— начальное количество дорожек в последовательности - Вызывает исключение:
-
InvalidMidiDataException— еслиdivisionTypeнедопустим - См. также:
Подробное описание методов
getDivisionType
public float getDivisionType()
- Возвращает:
- тип деления (PPQ или один из типов SMPTE)
- См. также:
getResolution
public int getResolution()
- Возвращает:
- количество тиков на долю (PPQ) или на кадр (SMPTE)
- См. также:
createTrack
public Track createTrack()
getTracks(). Дорожки можно удалять из последовательности с помощью метода deleteTrack(Track).- Возвращает:
- созданную дорожку
deleteTrack
public boolean deleteTrack(Track track)
- Параметры:
-
track— дорожка, которую требуется удалить - Возвращает:
-
true, если дорожка присутствовала в последовательности и была удалена, иначеfalse - См. также:
getTracks
public Track[] getTracks()
- Возвращает:
- массив дорожек
- См. также:
getMicrosecondLength
public long getMicrosecondLength()
- Возвращает:
- длительность этой последовательности в микросекундах
getTickLength
public long getTickLength()
- Возвращает:
- длина этой последовательности в тиках
- См. также:
getPatchList
public Patch[] getPatchList()
Instrument в Synthesizer.- Возвращает:
- массив объектов
Patch, используемых в этой последовательности - См. также:
© 1993, 2025, 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/25/docs/api/java.desktop/javax/sound/midi/Sequence.html