Интерфейс 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. 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[] |
getInstruments() Получает список инструментов, содержащихся в этом звуковом банке. |
String |
getName() Получает имя звукового банка. |
SoundbankResource[] |
getResources() Извлекает список ресурсов, не являющихся инструментами, содержащихся в звуковом банке. |
String |
getVendor() Получает |
String |
getVersion() Получает строку версии звукового банка. |
Методы
getName
String getName()
Получает имя звукового банка.
- Возвращает:
- строку, обозначающую имя звукового банка
getVersion
String getVersion()
Получает строку версии звукового банка.
- Возвращает:
- строку, указывающую версию звукового банка
getVendor
String getVendor()
Получает string имя компании, предоставляющей звуковой банк
- Возвращает:
- строку производителя
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, 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.