音源距離と DRR
1 本の録音から、音源がマイクからどれだけ遠かったかを推定できます。ただしどの方向かは分かりません。そこへ至る流れは、直接音/残響音比から部屋の臨界距離を経て、メートル単位の距離へとつながります。libsonare が提供するのは最初の 1 段である DRR で、その先は Spatial Room Scanner が担います。
DRR — 直接音/残響音比
直接音/残響音比(DRR)は、音源からまっすぐマイクに届く最初の波面である直接音のレベルを、それに続く残響エネルギーに対して表したもので、単位はデシベルです。
DRR = 10·log₁₀( 直接音エネルギー / 残響エネルギー )
DRR は距離の最も強い手がかりです。マイクを近づけると直接音が大きくなる一方、部屋の残響音場はおおむね一定のままなので DRR は上がります。離れると直接音が一定の残響レベルへ近づくため DRR は下がります。
- 高い DRR — 近く、乾いて、存在感がある。音源が「目の前」にある。
- 低い DRR — 遠く、にじむ。部屋が音を支配する。
これはまさに、慣れた部屋であなたの耳が距離を判断するときの手がかりです。だからこそ近接マイクのボーカルは親密に、遠いボーカルは「部屋の向こう」のように聞こえます。
DRR が意味を持つのはインパルス的な入力だけです
libsonare は渡された波形そのものの上で DRR を測ります。最も大きい 1 サンプルを中心とする ±2.5 ms の窓に入るエネルギーを直接音、それ以外をすべて残響として数えます。手拍子・破裂音・スイープ由来の IR であれば、そのピークは実際に直接音です。しかし通常の音楽では、それは単に演奏中で最も大きい過渡音にすぎず、drrDb は直接音/残響音比としての意味を失います。confidence を確認し、入力が本当にインパルス応答でない限り、DRR とそこから導かれる距離は大まかな目安として扱ってください。
臨界距離
臨界距離は、音源からの距離のうち、直接音と残響音場が「同じ大きさ」になる地点 — DRR が 0 dB になる距離です。
臨界距離より近ければ直接音が勝ち、音源は明瞭で定位します。遠ければ残響音場が勝ち、音は拡散して部屋に支配されます。臨界距離は部屋によって変わります。デッドな部屋(高い吸音、短い RT60)では遠くへ押し出され、かなり下がっても直接音が聞こえます。ライブな部屋では近くに引き寄せられ、数歩下がるだけで音源が残響に埋もれます。
- 直接音 — 距離が倍になるごとに 6 dB
- 残響音場 — ライブな部屋
- 残響音場 — 処理された部屋
- その距離での DRR
おおまかに言えば、部屋の吸音が大きいほど残響音場は弱くなり、直接音はより遠くまで支配的なままになります。臨界距離は部屋の総吸音力(サビーンの式の A。各面の吸音の度合いで重み付けした面積)の平方根に比例して大きくなります。これが、同じ話者が処理されたスタジオでは聞き取りやすく、大聖堂では同じ距離でもこもる理由です。
音源距離
これらを合わせると、測定した DRR を部屋の臨界距離を基準に参照することで、音源をリスナー/マイクからメートル単位の推定距離に置けます。DRR が 0 dB なら音源はちょうど臨界距離に、それより高ければ近くに、低ければ遠くになります。
限界は幾何にあります。1 チャンネルが運ぶのはエネルギー対時間という 1 つの数なので、等価な距離を 1 つ解けても方向の情報は一切ありません。そのためスキャナーは推定音源を点ではなく、推定半径でリスナーを囲む完全なシェル(球)として描きます。1 本のマイクが聞いた内容に対しては、その距離のあらゆる方向が等しく整合するからです。方向を求めるには少なくとも 2 チャンネルと、その間の時間差・レベル差が必要です。
さらなる帰結として、複数の実音源 — 複数の話者やバンド全体 — は 1 つの等価距離へまとめられます。1 チャンネルではそれらを分離できないためです。
libsonare が距離をどう推定するか
ライブラリ側の処理は意図的に単純です。estimateRoom(...) は録音中で最も大きいサンプルを探し、その ±2.5 ms 以内のエネルギーを直接音、残りのエネルギー — 後ろの尾だけでなく手前の立ち上がりも含む — を残響として数え、その比を drrDb として報告します。この数値の背後で改めてインパルス応答が復元されているわけではなく、与えられた波形そのものの上で測られています。
臨界距離と音源距離は、そもそもライブラリの機能ではありません。これらを導くのは Spatial Room Scanner のほうで、推定された部屋から臨界距離を容積と RT60 で求め(rc ≈ 0.057·√(V / RT60)、無指向性音源を仮定)、そこから測定した DRR で半径を r = rc · 10−DRR/20 として求めます。モデルは単一チャンネルなので、結果は位置ではなく半径であり、可視化ではリスナーを囲む距離シェルとして描かれます。その確からしさは、直接音を尾からどれだけきれいに分離できたかに追従します。臨界距離をはるかに超えた音源は直接音が弱く本質的に位置を求めにくく、そもそもインパルス的でない録音でも同じことが起こります。