Класс 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(javax.sound.midi.Track).- Параметры:
-
divisionType- тип временного деления (PPQ или один из типов SMPTE) -
resolution- разрешение временной привязки - Исключения:
-
InvalidMidiDataException- еслиdivisionTypeне является допустимым - См. также:
Sequence
public Sequence(float divisionType, int resolution, int numTracks) throws InvalidMidiDataException
divisionType это PPQ (импульсы на четверть ноту), и разрешение указывается в тиках на удар. Для временной привязки SMPTE, divisionType указывает количество кадров в секунду, а разрешение указывается в тиках на кадр. Последовательность будет инициализирована с количеством дорожек, указанным numTracks. Эти дорожки изначально пусты (т.е. содержат только мета-событие Конец дорожки). Дорожки могут быть получены для редактирования с помощью метода getTracks(). Дополнительные дорожки могут быть добавлены, или существующие дорожки удалены, с помощью createTrack() и deleteTrack(javax.sound.midi.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(javax.sound.midi.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://download.java.net/java/early_access/jdk24/docs/api/java.desktop/javax/sound/midi/Sequence.html