Spec-Zone.ru › OpenJDK 21

Интерфейс Soundbank

public interface Soundbank
A Soundbank содержит набор Instruments, которые можно загрузить в Synthesizer. Обратите внимание, что Java Sound Soundbank отличается от MIDI-банка. MIDI допускает до 16383 банков, каждый из которых содержит до 128 инструментов (иногда также называемых программами, патчами или тембрами). Однако, Soundbank может содержать 16383 × 128 инструментов, поскольку инструменты внутри Soundbank индексируются и номером MIDI-программы, и номером MIDI-банка (через объект Patch). Таким образом, Soundbank можно рассматривать как коллекцию MIDI-банков.

Soundbank включает методы, возвращающие объекты String, содержащие имя банка звуков, производителя, номер версии и описание. Точное содержимое и формат этих строк оставлены на усмотрение разработчика реализации.

Различные синтезаторы используют различные методы синтеза. Распространённым является синтез волновых таблиц, в котором воспроизводится фрагмент записанного звука, часто с циклическим воспроизведением и изменением высоты тона. Формат Downloadable Sound (DLS) также использует фрагменты записанного звука, как и Headspace Engine. Soundbanks и Instruments, основанные на синтезе волновых таблиц (или других использованиях записанных звуковых записей), обычно должны реализовывать метод getResources() для предоставления доступа к этим записанным фрагментам. Однако это необязательно; метод может вернуть массив нулевой длины, если метод синтеза не использует сэмплированные звуки (например, FM-синтез и физическое моделирование), или если использует, но разработчик реализации не предоставляет доступ к сэмплам.

См. также:
  • Synthesizer.getDefaultSoundbank()
  • Synthesizer.isSoundbankSupported(javax.sound.midi.Soundbank)
  • Synthesizer.loadInstruments(Soundbank, Patch[])
  • Patch
  • Instrument
  • SoundbankResource

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

Модификатор и тип Метод Описание
String getDescription()
Получает текстовое описание банка звуков, подходящее для отображения.
Instrument getInstrument(Patch patch)
Получает Instrument из данного Patch.
Instrument[] getInstruments()
Получает список инструментов, содержащихся в этом банке звуков.
String getName()
Получает имя банка звуков.
SoundbankResource[] getResources()
Извлекает список ресурсов, не являющихся инструментами, содержащихся в банке звуков.
String getVendor()
Получает string, содержащее название компании-производителя банка звуков.
String getVersion()
Получает строку версии банка звуков.

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

getName

String getName()
Получает имя банка звуков.
Возвращает:
строку, содержащую имя банка звуков

getVersion

String getVersion()
Получает строку версии банка звуков.
Возвращает:
строку, обозначающую версию банка звуков

getVendor

String getVendor()
Получает строку, содержащую название компании-производителя банка звуков.
Возвращает:
строку с названием производителя

getDescription

String getDescription()
Получает текстовое описание банка звуков, подходящее для отображения.
Возвращает:
строку, описывающую банк звуков

getResources

SoundbankResource[] getResources()
Извлекает список ресурсов, не являющихся инструментами, содержащихся в банке звуков.
Возвращает:
массив ресурсов, исключая инструменты. Если банк звуков не содержит ресурсов (кроме инструментов), возвращает массив длины 0.

getInstruments

Instrument[] getInstruments()
Получает список инструментов, содержащихся в этом банке звуков.
Возвращает:
массив Instruments в этом SoundBank. Если банк звуков не содержит инструментов, возвращает массив длины 0.
См. также:
  • Synthesizer.getLoadedInstruments()
  • getInstrument(Patch)

getInstrument

Instrument getInstrument(Patch patch)
Получает Instrument из заданного Patch.
Параметры:
patch - объект Patch, определяющий индекс банка и номер изменения программы
Возвращает:
запрашиваемый инструмент или null если инструмент не найден в банке звуков
См. также:
  • getInstruments()
  • Synthesizer.loadInstruments(Soundbank, Patch[])

© 1993, 2023, 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/21/docs/api/java.desktop/javax/sound/midi/Soundbank.html

Spec-Zone.ru

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