Класс ReverbType
public class ReverbType extends Object
ReverbType предоставляет методы для доступа к различным параметрам реверберации, которые применяются к аудиосигналу. Реверберация моделирует отражение звука от стен, потолка и пола комнаты. В зависимости от размера комнаты и того, насколько поглощающие или отражающие материалы используются в её поверхностях, звук может отражаться долгое время, прежде чем затухнет.
Параметры реверберации, предоставляемые ReverbType, включают время задержки и интенсивность ранних отражений, время задержки и интенсивность поздних отражений, а также общее время затухания. Ранние отражения — это первоначальные индивидуальные отражения прямого сигнала от поверхностей в комнате. Поздние отражения — это плотные, многократные отражения, которые характеризуют реверберацию комнаты. Время задержки для начала этих двух типов отражений дают слушателю представление о размерах и сложности формы и содержимого комнаты. Чем больше комната, тем дольше время задержки отражений. Интенсивность ранних и поздних отражений определяет усиление (в децибелах) отражённых сигналов по сравнению с прямым сигналом. Эти интенсивности дают слушателю представление о поглощающих свойствах поверхностей и предметов в комнате. Время затухания определяет, сколько времени требуется реверберации, чтобы экспоненциально затухнуть до того, как она станет больше не воспринимаемой («эффективное нулевое значение»). Чем больше и менее поглощающие поверхности, тем больше время затухания.
Множество параметров, определённых здесь, может не включать все аспекты реверберации, как определено в некоторых системах. Например, у Ассоциации производителей MIDI (MMA) есть рабочая группа по взаимодействующему аудио (IASIG), у которой есть рабочая группа по 3D, которая определила Спецификацию уровня 2 (I3DL2). I3DL2 поддерживает фильтрацию реверберации и управление плотностью реверберации. Эти свойства не включены в определение реверберации JavaSound 1.0. В таком случае реализующая система должна либо расширить определённый контроль реверберации, включив дополнительные параметры, либо интерпретировать дополнительные возможности системы таким образом, чтобы они соответствовали описанной здесь модели.
При реализации JavaSound на устройстве, совместимом с I3DL2:
- Фильтрация отключена (аттенуации высоких частот установлены в 0,0 дБ)
- Параметры плотности установлены посередине между минимальным и максимальным значениями
В следующей таблице показано, какие значения параметров реализация может использовать для представительного набора параметров реверберации.
| Тип | Время затухания (мс) | Интенсивность поздних отражений (дБ) | Задержка поздних отражений (мс) | Интенсивность ранних отражений (дБ) | Задержка ранних отражений (мс) |
|---|---|---|---|---|---|
| Пещера | 2250 | -2,0 | 41,3 | -1,4 | 10,3 |
| Подземелье | 1600 | -1,0 | 10,3 | -0,7 | 2,6 |
| Гараж | 900 | -6,0 | 14,7 | -4,0 | 3,9 |
| Акустическая лаборатория | 280 | -3,0 | 8,0 | -2,0 | 2,0 |
| Шкаф | 150 | -10,0 | 2,5 | -7,0 | 0,6 |
- С момента:
- 1.3
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создаёт новый тип реверберации с указанными параметрами реверберации. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
final boolean |
equals |
Указывает, равен ли указанный объект этому типу реверберации, возвращая true если объекты одинаковые. |
final int |
getDecayTime() |
Получает время затухания, которое является временем, в течение которого поздние отражения затухают до эффективного нуля. |
final int |
getEarlyReflectionDelay() |
Возвращает время задержки ранних отражений в микросекундах. |
final float |
getEarlyReflectionIntensity() |
Возвращает интенсивность ранних отражений в децибелах. |
final int |
getLateReflectionDelay() |
Возвращает время задержки поздних отражений в микросекундах. |
final float |
getLateReflectionIntensity() |
Возвращает интенсивность поздних отражений в децибелах. |
String |
getName() |
Получает имя этого типа реверберации. |
final int |
hashCode() |
Возвращает значение хэш-кода для этого типа реверберации. |
final String |
toString() |
Возвращает строковое представление типа реверберации, включая его имя и параметры. |
Подробное описание конструкторов
ReverbType
protected ReverbType(String name, int earlyReflectionDelay, float earlyReflectionIntensity, int lateReflectionDelay, float lateReflectionIntensity, int decayTime)
- Параметры:
-
name- имя нового типа реверберации или строка нулевой длиныString -
earlyReflectionDelay- время задержки ранних отражений нового типа в микросекундах -
earlyReflectionIntensity- интенсивность ранних отражений нового типа в дБ -
lateReflectionDelay- время задержки поздних отражений нового типа в микросекундах -
lateReflectionIntensity- интенсивность поздних отражений нового типа в дБ -
decayTime- время затухания нового типа в микросекундах
Подробное описание методов
getName
public String getName()
- Возвращает:
- имя этого типа реверберации
- С тех пор:
- 1.5
getEarlyReflectionDelay
public final int getEarlyReflectionDelay()
- Возвращает:
- время задержки ранних отражений для данного типа реверберации в микросекундах
getEarlyReflectionIntensity
public final float getEarlyReflectionIntensity()
- Возвращает:
- интенсивность ранних отражений для данного типа реверберации в дБ
getLateReflectionDelay
public final int getLateReflectionDelay()
- Возвращает:
- время задержки поздних отражений для данного типа реверберации в микросекундах
getLateReflectionIntensity
public final float getLateReflectionIntensity()
- Возвращает:
- интенсивность поздних отражений для данного типа реверберации в дБ
getDecayTime
public final int getDecayTime()
- Возвращает:
- время затухания поздних отражений в микросекундах
equals
public final boolean equals(Object obj)
true если объекты одинаковы.- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- ссылка на сравниваемый объект - Возвращает:
-
trueесли заданный объект равен этому типу реверберации;falseв противном случае - См. также:
hashCode
public final int hashCode()
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для данного типа реверберации
- См. также:
toString
public final String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление типа реверберации
© 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/sampled/ReverbType.html