JavaTM 2 Platform
Standard Ed. 6

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,則:

下表顯示了實作可用於有代表性的一組迴響設置的參數值。

迴響型別和參數

型別 衰減時間 (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

覆寫:
類別 Object 中的 equals
參數:
obj - 要與之進行比較的參考物件
返回:
如果此迴響型別與 obj 相同,則返回 true;否則返回 false
另請參見:
Object.hashCode(), Hashtable

hashCode

public final int hashCode()
終止 hashcode 方法。

覆寫:
類別 Object 中的 hashCode
返回:
此物件的一個雜湊碼值。
另請參見:
Object.equals(java.lang.Object), Hashtable

toString

public final String toString()
提供迴響型別的 String 表示形式,包括其名稱和其參數設置。字元串的具體內容可以在 Java Sound 的實作之間變化。

覆寫:
類別 Object 中的 toString
返回:
迴響型別名稱和描述

JavaTM 2 Platform
Standard Ed. 6

提交錯誤或意見

版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only