Sonir Remote

iOS 15以降 / Android

Remoteはリスニング位置の音響特性をスマートフォンで測定し、ルーム補正フィルタをBenchへ送信するアプリです。純粋な測定器として動作するため、音楽再生機能はなく、録音データも端末外へ送信・保持しません。

必要なもの

対応OSiOS 15以降。Androidも同じソースから作っています
入手クローズドベータです。限られたテスターにだけ配布していて、App StoreとGoogle Playにはまだ出していません
マイク内蔵マイクでも測れます。測定用の校正マイクを推奨します
校正ファイルUMIK・REW・FRD形式を読み込めます。無くても測定はできます
接続スマートフォンとBenchを同じネットワークに置き、Benchが表示するQRコードを読み取ります
権限マイク
  • 音を再生するのはBenchです。

    スイープ測定音はBenchが接続先のオーディオシステムから再生します。スマートフォン側は録音・解析・送信のみを行い、端末自体からは測定信号を出力しません。

  • 音楽を再生する機能はありません。

    試聴モードは意図的に搭載していません。スマートフォンの再生経路では設計本来の音質を再現できず、誤った判断基準を与えてしまうためです。

測定の進みかた

ステップ行う操作次へ進む条件
接続Benchが表示するQRコードを読み取ります。最後のアドレスは記憶されるため、次回以降は自動で再接続されます接続完了
マイク選択入力を選び、必要に応じて校正ファイルを読み込みます(校正ファイルなしでも測定可能)
レベル調整テスト音を再生し、マイク入力が-12〜-6dBFSに収まるようアンプ音量を調整します
測定Benchからスイープ音を再生し、スマートフォンで録音します。複数箇所を追加すると空間平均されます1箇所以上
送信ターゲット曲線と補正上限周波数を選び、生成された自動PEQをBenchのスロットBへ送信します
Benchがスイープの定義パラメータを送信(音声データではなく数値)
  → 端末側で録音サンプリングレートに合わせたスイープ信号と逆フィルタを生成
  → Benchがスイープ音を再生し、端末が録音
  → クロックドリフト補正を行いインパルス応答を抽出
  → 周波数特性を算出し、300〜3,000Hzを0dB基準に正規化
  → マイク校正データを適用
  → 測定した全ポイントを空間平均
  → 自動PEQを生成  →  Benchへ送信
Benchが送るのは数値パラメータで、受け取るのはフィルタ設定値です。どちらの向きにも録音データそのものは流れません。

数字の出しかた

  • スイープ信号は対数チャープで、逆フィルタによりデコンボリューションします。

    録音したスイープ信号に逆フィルタを畳み込むことでインパルス応答が得られます。この手法ではシステムの高調波歪みが線形応答の手前(負の時間領域)に分離されるため、線形応答に歪み成分が混ざりません。

  • 2つのクロックのずれ(ドリフト)を補正します。

    DACと端末のクロックは独立しているため、録音された信号は再生信号に対してわずかに伸縮します。インパルス応答はこのドリフトを補正した上で抽出されます。50ppm程度のクロック差は平滑化した周波数特性にはほとんど影響しませんが、インパルスの時間波形(位相)を著しく崩すため補正が不可欠です。

  • 絶対音圧の校正ではなく、相対特性の正規化です。

    部屋の音響特性が比較的安定している300〜3,000Hz帯域を0dB基準に揃えます。得られるのは絶対的な音圧レベルではなく周波数特性の形状であり、ルーム補正に必要なのはその形状情報です。

  • 複数箇所の測定結果を平均化します。

    1点のみの測定では、その位置固有の鋭いディップやコムフィルタまで拾ってしまいます。リスニングエリアの複数箇所を測定して空間平均することで、座席周辺全体の真の音響特性を捉えることができます。

error(f) = 測定値(f) - ターゲット(f)

残っている誤差のうち一番大きいところにフィルタを1本置き、
残りに対して同じことを繰り返す(残差に対する貪欲法)

上限(既定で約300Hz)より下   ベルフィルタを定在波(ルームモード)の位置に配置
それより上                    高域シェルフ1本と、少数のベルフィルタ
ブーストよりカットを優先し、ブーストにはQ値の下限を設ける
最大ブースト・最大カットは、各バンド個別ではなく合成EQに対してクランプする
クリップを防ぐため、負のプリアンプゲインを自動適用する
補正は主にシュレーダー周波数(約300Hz)以下の低域に集中させます。この帯域では部屋がモーダル(定在波的)に振る舞うため、PEQフィルタによる補正が有効に機能します。それ以上の高域でマイクが捉えるピークやディップの多くは位置依存のコムフィルタであり、その細かな凹凸を追従して補正すると、測定したその1点以外の場所ではかえって特性を悪化させてしまいます。
  • ターゲット曲線としてフラット・傾斜(Tilt)・Harman・B&Kを用意しています。
  • 端末画面に表示される補正後の予測曲線は、アナログ原型フィルタとして評価しています。これはBenchが内部オーバーサンプリングレートで実行する処理と完全に一致します。もしスマートフォンの録音レート基準で予測してしまうと、高域シェルフが端末のナイキスト周波数へ向かって歪められ、画面表示と実際の再生音の間にズレが生じてしまいます。
  • 各バンドは周波数の低い順に出力されます。直列(カスケード)接続されるため、バンドの順序が音質に影響することはありません。

測定が満たすべき条件

レベルテスト音を再生中、マイク入力が-12〜-6dBFSに収まるよう調整します
入力不足録音ピークが-40dBFSを下回る場合、SN比不足として曲線を生成せずエラーにします
飽和クリップしたサンプルが全体の1%を超過するとエラーにします
失敗の原因表示マイク権限未許可・Bench未起動・別の測定が進行中・Bench側で中止・入力レベル不足・入力飽和・接続切断など、原因ごとに個別のエラーを表示します
  • 実機での検証を進めています。

    Benchに接続して状態を取得するフローまでは動作確認済みです。スイープ音を録音して補正データをBenchへ送り返す一連の処理と、校正ファイルを適用する極性(補正方向)については、実機での検証を継続しています。

端末に残るもの

  • 録音した音声データは端末外へ送信されません。端末内で周波数特性とPEQパラメータへ変換されます。
  • 測定データは保存されません。過去の測定履歴を蓄積するデータベースは保持していません。
  • 端末内に保持されるのは、インポートした校正ファイルと、最後に接続したBenchのアドレスの2点のみです。
  • 録音機能やオーディオ書き出し機能はありません。測定音を音声ファイルとして保存・エクスポートする機能は備えていません。