2021/06/08

実験計測屋の考えるヘッドフォンの原音再現性に関するうんたらかんたら

 本題は「さて、」以降です。初老者の独り語りなんか読みたくない人は「さて、」まで飛んでね。

 私はサラリーマン実験屋で、一時期水中の圧力変化測定を良くやっていた。背圧は大気圧から100気圧近く、取得しないといけない圧力振動の周波数範囲は数Hz~10kHzと広かった。ちなみに高圧用の検出器の価格は私の年収並みに高い・・・つまり実験も測定も失敗できない。敢えて測定結果に値段をつけようとするとかなりの額になるが、他社が持たないデータの取得は自社の競争力の源泉ともなるので一種の投資と見做される。許認可が絡む事項ならば、ワクチンの治験データに相当すると思ってもらって良い。データが無ければ認可が必要な市場には参入すらできない。

 私の属する企業の風土のひとつに「一人一芸」がある。これは予算の流れから見た場合の企業構造、「自分が一番働く社長+社員1名の中小企業の集まりみたいな組織」において自分が喰いっぱぐれない、干されないための差別戦略だ。信号処理に関わる知識の取得や実践、実装と実績や技術レベルのアピールは、文字通り「生活のため」な訳だ。このような文化下において、技術上の嘘、誤魔化し、実際を超えるアピールが発覚した際のダメージは深刻だ。厳しい文化とも言えるが、個人的には極めて公正な文化でもある点を強調したい。そして、ここは日本的としか言いようがないのだが、上記のダメージに対して浪花節がセーフティネット的に作動するため、当人が状況を正しく認識して適切に振る舞う限りにおいては職場の雰囲気は全く悪くならない。

 この文化、30年単位で見ると様々な制度変更を経て壊れかけては再興するを繰り返してきたが、そろそろ限界かもしれないとも思う。それは職場に百花繚乱の如く存在する「一芸」の源泉に「詰め込み教育」を見るからだ。新しい体験にあたって「あ~昔なんか聞いたことがある、やったことがある」といったフックは、それらを与えられたり、自ら得るような行動をしてきた人間の中にしか存在しない。実感としてあるのは、この種のフックの少なさは「ゆとり世代」に顕著であることだ。更に踏み込むと、フックをほぼ持たない者とそれでも従来世代並みにフックを持つ者とからそれぞれ構成されるクラス(階級)が実は形成されていて、両クラス間でのコミュニケーションは成立しないので完全に隔絶状態にある、と見ゆる。100%近い与えられたフックが使われないことの方が多かろうから確かに効率は悪いだろうが、「詰め込み教育」は「子供の将来の可能性を狭める方向には作用しない」までは言って良いと思う・・・って何の話してんのか。

 さて、

検出器だけでなく測定に関わる全ての機器の入力信号/出力信号の時間変化は相対的であっても一致しない。信号波形は変形する。これはそれぞれの機器が「反応遅れ」を持っているためで、最終的な測定結果は「反応遅れ」を補正したものとなる。補正に必要な計算量は大したことないが、それぞれの機器の「反応遅れ」は個別に自分たちで測定しておくか、他者の測定結果を買うかする必要がある。

 補正はデータ収集後に実施し、フーリエ変換を用いて周波数領域で行う。周波数領域と言うと難しく感じるかもしれないが、横軸が周波数のグラフは周波数領域で表示していることになる。だから大抵のDAWユーザーは、イコライザー操作やスペクトル分布を見たりすることで、周波数空間とは日常的に接している筈だ。計算手順自体はデコンボリューションやコンボリューションなどと呼ばれる周波数領域での掛け算、割り算操作である。リバーブプラグインが使っていたりする計算操作なので、これらの言葉自体はやはりDAWを触っている人なら耳にしたこともあるのではないかと思う。これらの操作は上記したように計算量は少なく、加えてデジタル計算でも丸め誤差の範囲で理論解と一致する結果が得られる精度の高いものだ。

 ただし、信号波形を直接追うような時間領域では、この種の補正は簡単ではない。別の言い方をすると、この種の信号処理のリアルタイム処理を精度良く実行するにはコストがかかる。音響機器の値段と音質にどうしても関係が出てしまう原因の一つは、まさにここにあろう。

 つい最近、ネット上でヘッドフォンの音質や性能に関わるやり取りを人とする機会を得た。私は信号処理の経験からとある個人的な仮定について簡単に述べたが、DAWとか触る割にはオーディオ機器やその周囲の知識が絶望的に無く、かつそもそも興味が全く無いので、文章だけのやり取りだけで正直話が嚙み合ったかははなはだ心もとない結果となった。あらためて書いておこう。ヘッドフォン、スピーカー、アンプなどは音響信号をリアルタイム処理する機器だ。

 以下では、件のやり取り内容のうち、もしそうだったら嫌だなと思うヘッドフォンの再生特性についての内容のみ、模式図を付して簡単に説明しておこうと思う。真面目なところ、ドローソフトを使ったり技術寄りの文章を書いてみたりと、病気休暇からの復帰を睨んだリハビリ作業の意図が強いんだけどね。

 いきなり音が立ち上がる波形(例えば、矩形波の立ち上がり部)の原音信号として、その信号を音響機器で再生する場合を考える。ここで音響機器が原音信号をそのまま再現できれば皆が幸せなだが、リアルタイムで処理しないといけないためにそうは問屋が卸さない。

  一般論として、漠然と組んだ(機能要求だけを満たした)再生用回路(アンプ→スピーカー/ヘッドフォン)では、再生信号に「時間遅れ」が生じる。この状態を模式的に示しているのが図(a)だ。再生信号は原音信号の急激な変化に追従できず、まず立ち上がりで遅れ、水平となるタイミングも遅れるのでオーバーシュートも発生している。すぐに分かる人も多いと思うが、これは勾配がめちゃくちゃ大きいローパスフィルタを適用した状態と等価だ。高周波数が失われ、音の立ち上がりは悪くなる。そこで回路に手を入れる。部品は増え、部品ひとつひとつの質も値段も上がる。コスト制限があるような条件下で頑張って達成したい再生信号と原音信号との関係を図(b)に模式的に示す。立ち上がりでの遅れ、オーバーシュートともに小さくなっている。が、実際のところ、このような結果が得られる機器の実現には、マニアな方々の支払い能力に相当するコストが要求される。

 で、とある技術者は考える、「いや、音の立ち上がりの良い再生機器を安価に実現してみせる!」 と。私でも思いつく方法の一つは、特定の周波数以上の高周波数成分の原因を大きくするような帯域強調フィルタ回路を付加することだ。上述のように立ち上がりの遅れを引き起こす「時間遅れ」は、ローパスフィルタ適用と実質的に等価な結果を与える。だからローパスフィルタで失われたりゲインが減らされる周波数をプリかポストで補ってやれば良い、という寸法だ。結論から言うと、音の立ち上がりの問題は比較的簡単に解決できる。前提は、時間遅れはあるものの遅れ時間自体が安定した(周囲環境などに影響されない)回路が設計・製作できる一定レベル以上の技術力があることだ。対象の特性が不安定で変化しまくるでは補償なんてできる筈も無く、補償回路自体もやはり安定していなければならない。

  しかしコスト制限が厳しい(安い)場合、立ち上がりを良くすることと引き換えに捨てなければならないものがある。上述した「勾配がめちゃくちゃ大きいローパスフィルタ」の「めちゃくちゃ」は文字通りの意味であり、勾配は-∞(db)が理想だ。シンセのローパスフィルタは基本-12~-24(db)なので、コストを考えると-∞が如何に非現実的な勾配であるかが分かる。だが貧乏には変えられず、補正回路の帯域強調フィルタの勾配を-36(db)とかのレベルに抑えるとどうなるか。これは着目しているフィルタ周波数の付近で、ゲインを保たなければならない低周波数側でゲインが下がり、ゲインを0としなければならない高周波数側でゲインが0まで下げられないないことを意味する。結果として、原音信号の立ち上がり時などに高周波数のスパイクが多数現れる。このような再生信号と現信号との比較を図(c)に模式的に示す。スパイクはまさに理想と現実の差が可視化されたものなのだ。

 このようなスパイクはシンセの発振過程でも見られることのあるもので(例えば、本ブログ内手元のソフトシンセ、矩形波対決!)、シンセでkick音を作る際にはアタック成分として利用しない手は無い。

 音の立ち上がりが良いのは素晴らしいのだが、安さ故に図(c)の再生信号の如く明確なスパイクが現れるの音響製品に対しては、やっぱり頭を抱えてしまう。そういうものだ、と分かっている人間以外には何も良いところがない(≒何を期待してそれを買うのか?)からだ。 図(d)に模式的に示すように、所謂スパイク部分は「原音には無い足された音」になる。故に原音再現性の観点からは駄目駄目だ。

 もしこのような特性を与えられた「ヘッドフォン」が有ったとすれば、ここでは「そんなものは嫌い」と言っておこう。「原音に無い音を足して平気な姿勢」が一技術屋として受け入れられないのだ。スパイク音が付加された方が良い用途?があってその用途に使う分には良かろうが、そういうものなら単なる「ヘッドフォン」ではなく「○○専用ヘッドフォン」と区別を明確にすべきだ。「○○専用ヘッドフォン」ならば、専用用途以外の使用で問題が有ったってかまわない、と言うか問題が有って当たり前だ。単なる「ヘッドフォン」を求める客は、「○○専用ヘッドフォン」を購入候補から外すだろう。これで誰か不幸になる?

 実際問題としてスパイク発生は避けられないが程度問題でもあり、音の立ち上がりを多少捨てれば同価格でも低減可能だし、コストを積めば実質的に立ち上がりの良さとも両立できる。昔からある製品ならともかく、昨今の製品はデジタル処理部分も多い筈なので、未だにこの辺りが問題になるのもどうかとは思うのだが、なかなかに解決は難しいのか実装レベルの話は無知ゆえに分からない。ポストでの信号処理の知識だけからでは、考察レベルでもここら辺が限界だ。

 話は逸れるが、Sonarworks ReferenceやSoundID Referenceといったソフトウェアの登場で、少なくともヘッドフォンについては個別製品の周波数応答特性の違いの意味は失われつつある。ヘッドフォンメーカーが苦労して、自身のポリシーなり美学に基づいて実現した周波数応答特性を、例えば私のようなユーザーは、PC画面上を数クリックするだけで何の躊躇も無く別物に変えてしまう。ここで露になったのは、周波数特性を合わせても低価格製品の音は高価格製品のそれとは違うという単純な事実だ。ならば価格差に見合う価値は、周波数特定には宿っていないことなる。これは経験的に知っている人も多かろう。これが、本エントリで対象とした時間領域での信号応答特性が価格差による音の違いを説明できる因子(しかも本丸?)かもしれないと思う所以である。つまり、周波数応答特性、位相特性と既に来た以上、そろそろインパルス応答特性にも踏み込まざるを得ないだろうと考えているということだ。

 インパルス応答を利用したリバーブは既に多くのDAWの標準プラグインに含まれている。コンボリューションリバーブなどと呼ばれているものがそうだ。使える計算能力が上がれば、DAW或いはDAW周辺技術においてインパルス応答の適用範囲の拡大は必至だろう。デコンボリューション(コンボリューションの逆操作)の計算コストがリアルタイム処理で許容されるレベルになればDAWにもそれ以外の分野にも影響は大きいと考えている、と言うか私自身にすらアイディアが複数ある。

 宗教論争は嫌いなのでちょっと触れるだけにするが、PC用のスピーカーとして10年以上にわたり長さ25cm級のタイムドメインスピーカーを使っている。選択理由はインパルス応答特性の良さで、音量による音の変化が無く音の通りも良いし、左右分離も良い。配置に関して距離はちょっとシビアだが、省スペースで向きも自由だ。東日本大震災にも耐えた。ちなみに私は「タイムドメイン**」の**部分は「手法(テクニック、メソッドロジー)」だと考えている。PCモニターもそうだが、「0(ゼロ音量、PCモニターでは「完全な黒」を指す)」がちゃんと出る仕組みとなっているかは大事、インパルス応答特性も大事だ。 もちろん実装も大事で、駄目なタイムドメインスピーカーは本当にすべてが駄目だった。

 低~中価格製品でも「その辺」をいなすなり誤魔化すなりしつつ時にプラスアルファの魅力を製品に与えてきたのが「味付け」なのだが、そもそも押しつけを嫌うタイプの私のような人間が上記のソフトに触れれば、「味付け」の全否定から入ってしまうのは致し方ない。だが、全否定のための操作ノブを逆に回せば途端に「味付け」が露わになることも自明であり、特定の共通の比較対象を持ってヘッドフォン毎の「味付け」を文字通り味わえることも付け加えておく。

 あと、なんでフィルタの勾配でスパイクが出たり出なかったりするのか、という問題の説明は面倒くさいの割愛する。ただ、この問題は「フィルタの作り方」と表裏一帯の関係にあるので、デジタルフィルターの作り方やその考え方が(アナログフィルターよりも相対的に)分かり易くて参考になる。興味があれば「デジタルフィルター 次数」でググってみて欲しい。「窓(窓関数)」まで理解すれば、EQやスペクトル表示といった周波数領域の手法をどうやって時間領域内で取り使っているかも理解できる。「次数」がミソで、アナログオンリーだったかつてのハードウェアでのフィルター回路実装では部品の数を介して価格に直結したはずだ。

 最後におまけだが、 SoundID Reference for HeadphoneとSoundID for Listenerの組み合わせの登場は個人的に一線を越えてきた感がある。向かっている先は「再生機器や場所や時間を問わずに自分好みにカスタマイズした同じ音で聴きましょう」ってことですからね。私はiPodうち1台をSONY WH-1000XM3(Bluetooth接続)で聴いているが、周波数特性は自作のSennheiser HD599に似せたものにしてある。SONY WH-1000XM3の味付け(周波数応答特性)を全否定し、ノイズキャンセリング機能付きSennheiser HD599の感覚で使っている訳だ。レイテンシの発生は問題と言えば問題だが、音楽を聞くだけなら特に気にもならない。例えばワンチップ構成USB接続って感じでハードウェア実装されるようになったら、みんなでハックして特定のヘッドフォンを別のヘッドフォンで直接シミュレートするためのデータベースを構築しようぜ。

0 件のコメント:

コメントを投稿