JavaTM Platform
Standard Ed. 6

javax.sound.sampled
クラス ReverbType

java.lang.Object
  上位を拡張 javax.sound.sampled.ReverbType

public class ReverbType
extends Object

ReverbType クラスは、オーディオ信号に適用されるさまざまなリバーブ設定にアクセスするためのメソッドを提供します。

リバーブは、部屋の壁、天井、および床による音の反射をシミュレーションします。部屋の大きさや、部屋の表面の素材が音を吸収または反射する度合によって、音は消滅するまでに長時間跳ね返ることがあります。

ReverbType によって提供されるリバーブパラメータは、アーリーリフレクションの遅延時間と強度、レイトリフレクションの遅延時間と強度、および全体的な減衰時間から構成されています。アーリーリフレクションは、部屋の表面から離れた直接信号の、最初の個々の下位リフレクションです。レイトリフレクションは密度の高い、上位リフレクションで、部屋のリバーブの特徴となります。これら 2 つのリフレクション型の開始の遅延時間により、部屋の形状や中身の全体的な大きさと複雑さをリスナーに与えます。部屋が大きくなるほど、リフレクション遅延時間も長くなります。アーリーリフレクションおよびレイトリフレクションの強度が直接信号と比較され、反射された信号のゲイン (デシベル単位) が定義されます。これらの強度はリスナーに、部屋の表面と物体がどんな吸収性を持っているかを示します。減衰時間は、リバーブが知覚できなくなる (「事実上のゼロ」になる) まで指数的に減衰するのにかかる時間を定義します。表面が大きくなり吸収性が低くなるほど、遅延時間は長くなります。

ここで定義されるパラメータのセットは、システムが指定するリバーブの側面を全部は含んでいない場合があります。たとえば、Midi Manufacturer's Association (MMA) には Interactive Audio Special Interest Group (IASIG) があり、このグループの 3-D Working Group は Level 2 Spec (I3DL2) を定義しています。I3DL2 はリバーブのフィルタ処理とリバーブ密度のコントロールをサポートします。これらのプロパティーは JavaSound 1.0 のリバーブコントロールの定義には含まれていません。このような場合、実装システムは定義されたリバーブコントロールを拡張してパラメータを追加するか、あるいはシステムの追加機能をここに述べるモデルに適合するように解釈します。

JavaSound を I3DL2 適合デバイスに実装する場合、次のようにします。

次の表は、実装がリバーブ設定の表示セットに使用するパラメータ値を示しています。

リバーブ型とパラメータ

減衰時間 (ms) レイト強度 (dB) レイト遅延 (ms) アーリー強度 (dB) アーリー遅延 (ms)
Cavern 2250 -2.0 41.3 -1.4 10.3
Dungeon 1600 -1.0 10.3 -0.7 2.6
Garage 900 -6.0 14.7 -4.0 3.9
Acoustic Lab 280 -3.0 8.0 -2.0 2.0
Closet 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()
          レイトリフレクション減衰が事実上のゼロになるまでの時間である減衰時間を取得します。
 int getEarlyReflectionDelay()
          アーリーリフレクション遅延時間をマイクロ秒単位で返します。
 float getEarlyReflectionIntensity()
          アーリーリフレクション強度をデシベル単位で返します。
 int getLateReflectionDelay()
          レイトリフレクション遅延時間をマイクロ秒単位で返します。
 float getLateReflectionIntensity()
          レイトリフレクション強度をデシベル単位で返します。
 String getName()
          このリバーブ型の名前を取得します。
 int 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 - 新しいリバーブ型の名前、または長さゼロの 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()
レイトリフレクション減衰が事実上のゼロになるまでの時間である減衰時間を取得します。事実上のゼロの値は実装によって異なります。

戻り値:
レイトリフレクションの減衰時間、マイクロ秒単位

equals

public final boolean equals(Object obj)
指定されたオブジェクトがこのリバーブ型に等しいかどうかを示し、オブジェクトが同一である場合は true を返します。

オーバーライド:
クラス Object 内の equals
パラメータ:
obj - 比較対象の参照オブジェクト
戻り値:
このリバーブ型が obj と等しい場合は true、 そうでない場合は false
関連項目:
Object.hashCode(), Hashtable

hashCode

public final int hashCode()
ハッシュコードメソッドをファイナライズします。

オーバーライド:
クラス Object 内の hashCode
戻り値:
このオブジェクトのハッシュコード値
関連項目:
Object.equals(java.lang.Object), Hashtable

toString

public final String toString()
名前とパラメータの設定を含むリバーブ型の String 表現を提供します。実際の文字列の内容は Java Sound の実装によって異なります。

オーバーライド:
クラス Object 内の toString
戻り値:
リバーブ型の名前と説明

JavaTM Platform
Standard Ed. 6

バグの報告と機能のリクエスト
さらに詳しい API リファレンスおよび開発者ドキュメントについては、Java SE 開発者用ドキュメントを参照してください。開発者向けの詳細な解説、概念の概要、用語の定義、バグの回避策、およびコード実例が含まれています。

Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。