|
|||||||||
摘要: 嵌套 | 字段 | 构造方法 | 方法 | 详细信息: 字段 | 构造方法 | 方法 |
javax.sound.sampled
类 ReverbType
java.lang.Object javax.sound.sampled.ReverbType
-
public class ReverbType
- extends Object
ReverbType
类提供用于访问应用于音频信号的各种回响设置的方法。
回响模拟从一个房间的墙壁、天花板和地板发出的声音反射。根据房间的大小和房间表面材料吸收和反射度,声音可能回响很长时间才消失。
ReverbType
提供的回响参数由早期反射的延迟时间和强度、晚期反射的延迟时间和强度以及总衰减时间组成。早期反射是房间表面发出的直接信号的单独初始低级反射。晚期反射是以房间回响为特征的密集型高级返射。启动这两种反射类型的延迟时间使侦听器认识到房间形状和容量的总体大小和复杂性。房间越大,反射延迟时间越长。早期和晚期的反射强度定义了反射信号与直接信号相比的音量(以分贝为单位)。这些强度使侦听器记住房间表面和其中物体的吸收特性。衰减时间定义回响在不再被察觉之前(“有效 0”)呈指数级衰减所用的时间。表面的吸收力越大或越小,衰减时间都会变得越长。
这里定义的参数集合可能不包括回响的所有方面,正如有些系统指定的一样。例如,Midi 制造商联盟 (MMA) 有一个交互式专业组 (IASIG),该组有一个已定义 Level 2 Spec 的 3-D 工作组 (I3DL2)。I3DL2 支持回响过滤和对回响密度的控制。JavaSound 1.0 回响控件的定义中不包括这些属性。在此情况下,实现系统应该要么扩展定义的回响控件以包括附加的参数,要么以适合这里所描述模型的方式解释系统的其他功能。
如果在 I3DL2 兼容的设备上实现 JavaSound,则:
- 禁用过滤(将高频衰减设置为 0.0 dB)
- 将密度参数设置为最小密度和最大密度之间的中间值
下表显示了实现可用于有代表性的一组回响设置的参数值。
回响类型和参数
类型 | 衰减时间 (ms) | 晚期密度 (dB) | 晚期延迟 (ms) | 早期密度 (dB) | 早期延迟 (ms) |
---|---|---|---|---|---|
山洞 | 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 |
ReverbType(String name, int earlyReflectionDelay, float earlyReflectionIntensity, int lateReflectionDelay, float lateReflectionIntensity, int decayTime) 构造具有指定回响参数值的新回响类型。 |
方法摘要 | |
---|---|
boolean |
equals(Object obj) 指示指定对象是否等于此回响类型,如果对象相同,则返回 true 。 |
int |
getDecayTime() 获得衰减时间,该时间是晚期反射削弱到有效 0 的总时间差。 |
int |
getEarlyReflectionDelay() 返回早期反射延迟时间,以微秒为单位。 |
float |
getEarlyReflectionIntensity() 返回早期反射密度,以分贝为单位。 |
int |
getLateReflectionDelay() 返回晚期反射延迟时间,以微秒为单位。 |
float |
getLateReflectionIntensity() 返回晚期反射密度,以分贝为单位。 |
String |
getName() 获得此回响类型的名称。 |
int |
hashCode() 终止 hashcode 方法。 |
String |
toString() 提供回响类型的 String 表示形式,包括其名称和其参数设置。 |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
ReverbType
protected ReverbType(String name, int earlyReflectionDelay, float earlyReflectionIntensity, int lateReflectionDelay, float lateReflectionIntensity, int decayTime)
-
构造具有指定回响参数值的新回响类型。
- 参数:
-
name
- 新回响类型的名称,或长度为 0 的String
-
earlyReflectionDelay
- 新类型的早期反射延迟时间,以微秒为单位 -
earlyReflectionIntensity
- 新类型的早期反射密度,以 dB 为单位 -
lateReflectionDelay
- 新类型的晚期反射延迟时间,以微秒为单位 -
lateReflectionIntensity
- 新类型的晚期反射密度,以 dB 为单位 -
decayTime
- 新类型的衰减时间,以微秒为单位
方法详细信息 |
---|
getName
public String getName()
- 获得此回响类型的名称。
-
- 返回:
- 此回响类型的名称
- 从以下版本开始:
- 1.5
getEarlyReflectionDelay
public final int getEarlyReflectionDelay()
- 返回早期反射延迟时间,以微秒为单位。该时间是听到直接信号时和听到前几个早期反射时之间的时间差。
-
- 返回:
- 此回响类型的早期反射延迟时间,以微秒为单位
getEarlyReflectionIntensity
public final float getEarlyReflectionIntensity()
- 返回早期反射密度,以分贝为单位。这是相对于直接信号的头几个早期反射的振幅衰减。
-
- 返回:
- 此回响类型的早期反射密度,以 dB 为单位
getLateReflectionDelay
public final int getLateReflectionDelay()
- 返回晚期反射延迟时间,以微秒为单位。这是听到头几个早期反射时和听到头几个早期反射时之间的时间量。
-
- 返回:
- 此回响类型的晚期反射延迟时间,以微秒为单位
getLateReflectionIntensity
public final float getLateReflectionIntensity()
- 返回晚期反射密度,以分贝为单位。这是相对于直接信号的头几个晚期反射的振幅衰减。
-
- 返回:
- 此回响类型的晚期反射密度,以 dB 为单位
getDecayTime
public final int getDecayTime()
- 获得衰减时间,该时间是晚期反射削弱到有效 0 的总时间差。该有效 0 值与实现有关。
-
- 返回:
- 晚期反射的衰减时间,以微秒为单位
equals
public final boolean equals(Object obj)
-
指示指定对象是否等于此回响类型,如果对象相同,则返回
true
。 -
- 参数:
-
obj
- 要与之进行比较的引用对象 - 返回:
-
如果此回响类型与
obj
相同,则返回true
;否则返回false
- 另请参见:
-
Object.hashCode()
,Hashtable