Skip to content

部屋の形状と容積 ​

録音の残響のテールから、libsonare は等価な部屋を推定します。録音と同じように減衰する奥行き・幅・高さと、それらが囲む容積です。

ROOM · IMPULSE RESPONSEIDLE
インパルス応答 — 部屋はどう減衰するか

シューボックス寸法から合成した室内インパルス応答を、dB のエネルギー減衰として表示します。部屋を広げる・吸音を下げると残響が伸び、RT60(60 dB 減衰までの時間)も伸びます。再生でその部屋の手拍子を試聴できます。

部屋の大きさ
7 m
吸音
0.16

等価なシューボックス ​

推定に使うのはシューボックスモデル、つまり 3 つの寸法で表される単純な直方体の部屋です。実際の部屋にはくぼみ、バルコニー、家具、傾いた壁がありますが、減衰のふるまいを支配するのは主に 2 つのまとまった性質、どれだけの空気を囲んでいるかと、面がどれだけ吸音的かです。シューボックスは両方をとらえる最も単純な形なので、libsonare は測定された減衰に最もよく一致する直方体の部屋を解きます。

間取りではなく、等価性
録音された空間吸音する面音源マイク減衰が同じ等価なシューボックス容積 = 奥行き × 幅 × 高さ奥行き幅
逆問題が復元するのは、容積と総吸音力が録音と同じように減衰する直方体の部屋です。くぼみ、傾いた壁、家具の位置は 1 チャンネルの減衰に分離可能な痕跡を残さないので、どれも出力には現れません。

つまり寸法は建物の実寸ではなく、音響上の値です。実際の間取りではなく、測定された減衰を再現します。長く硬い廊下と、正方形で柔らかい部屋が同じように鳴ることもあり、推定はその鳴りを再現するシューボックスを報告します。巻き尺の値とは一致しないことがあります。内蔵のプリセットルームは既知の形状から合成して逆推定したものなので、推定値を正解値と比べて、ブラインド逆問題の解が正解にどれだけ近いかを確認できます。

縦横比は結果ではなく入力です

1 本の減衰だけでは、部屋のスケールも形も決まりません。libsonare は平均吸音率の事前値 referenceAbsorption を適用してからスケールを解き、奥行き : 幅 : 高さの比は aspectHintLw / aspectHintLh の事前値(既定はどちらも 1)をそのまま使います。したがって、これらの形状ヒントを指定せずに estimateRoom(...) を呼ぶと、3 つの寸法は常に等しい値(立方体)で返ってきます。部屋のおおよその比率が分かっているなら事前値を渡してください。分からない場合は容積だけを読み、個々の寸法はその容積を描くための表現として扱ってください。

容積 ​

容積は囲まれた空間の大きさ(立方メートル)で、推定寸法(奥行き × 幅 × 高さ)から直接求めます。残響時間がこれとともに長くなるため、部屋の響きを決める最も大きな要素です。

古典的な関係(Sabineの式)がこれを明示します。

RT60 ≈ 0.161 × V / A

ここで V は容積、A は総吸音(表面積に各面の吸音率を重み付けしたもの)です。この式から 2 つの帰結が出ます。

  • 容積が大きいほどテールが長い。 反射の合間に音が進む距離(平均自由行程は約 4V/S)が長くなるため、1 秒あたりに壁へ当たる回数が減り、エネルギーをゆっくり失っていきます。面がそこそこ吸音的でも大ホールが長く鳴るのはこのためです。
  • 吸音が多いほどテールが短い。 柔らかく多孔質な面は反射ごとにエネルギーを取り除きます。柔らかい家具の多い小さな寝室が、はるかに大きいが何もない部屋よりデッドになりうるのはこのためです。

形状を固定しても、同じ RT60 からスケールと平均吸音率を別々には決められません。Sabineの式が拘束するのは、等価吸音面積 A に対する容積 V の比です。A = S × ᾱ と書くと、スケールによる関係が分かります。同じ形状では、表面積 S は線寸法の 2 乗、容積 V は 3 乗で増えるため、同じ RT60 を保つには大きい部屋ほど平均吸音率 ᾱ を高くする必要があります。スケールと平均吸音率の組み合わせが違っても、同じように鳴ることがあります。ただし形状を固定すれば、大きい部屋ほど高い平均吸音率が必要です。libsonare はこの不定性を、容積のスケールを固定する平均吸音率の事前値(referenceAbsorption、既定 0.15)で補い、その事前値が導く形状のもとで帯域別の吸音を逆算します。つまり推定された吸音は、容積と独立にもう 1 つ得られた測定値ではなく、仮定された容積から導かれた値です。Sabineでは報告される容積が事前値のおおむね 3 乗で変わります。既定のEyringでは対応する -ln(1 − ᾱ) の項を使うため、3 乗の規則はSabineでの近似として扱ってください。この近似では、真の平均吸音率の半分を仮定すると、容積は約 8 分の 1 として返ります。

そもそもなぜ形状を推定するのか ​

形状を推定するから、結果を可視化し比較できます。素の RT60 という数値は抽象的ですが、聴取位置と推定音源シェルを中に置いて 3D で見回せる再構成された部屋は、測定を空間として見せます。さらに臨界距離は容積と吸音の両方に依存するため、音源距離の推定でもこの形状が使われます。

libsonare が部屋をどう再構成するか

libsonare は形状の復元を逆問題として扱いますが、そこで本当に復元されるのは 1 つの数だけです。libsonare は広帯域の残響時間からEyringの関係(preferEyring が false ならSabine)を平均吸音率の事前値のもとで逆に解いて部屋の線寸法スケールを求め、それに与えられた縦横比を掛けて奥行き・幅・高さを作り、得られた容積と表面積のもとで帯域別の吸音を逆算します。モード(部屋の共鳴)の解析は行われず、形も推論されません。比率はあくまで呼び出し側の事前値で、既定は 1 : 1 : 1 です。プリセットルームは既知の寸法から生成し、インパルス応答へレンダーして逆推定するため、デモは推定値を正解の形状と並べて示せます。逆問題は単一チャンネルで、拡散したシューボックス的な音場を仮定するため、寸法は実空間の測量ではなく等価な音響的部屋として読むべきです。

関連: 残響時間(RT60 と EDT)、帯域別の減衰と吸音、音源距離と DRR、ルーム音響解析