2022年01月16日
メーカーの説明では、圧縮音源データで欠けている情報を補間する、とあります。
どのように補間するのか、何を補間するのかはどこにも記載されていません。
そこで、ちょっと実験。
・非圧縮でCD音質(しかもってないので)リファレンス音源(Clafi-Fiの動作条件が不明なため、普通の音楽ソース)を投入
・同じ音源をmp3、128bps圧縮して投入
・この2つを比較して、何しているのかを見る
ということで、やってみます。
その前に、予備知識です。
音を圧縮するというのは、どういうことか?これには、いくつかのステップを踏みます。
・音を周波数領域に変換する(フーリエ変換)
要するにイコライザのようにどの周波数がどの程度鳴っているかに変換します
・人間の可聴周波数に満たない音はカット
高い音(高周波)と低い音(低周波)で普通人には聞こえない、聞こえにくい成分を消します。高周波は16kHz程度から、低周波は70Hz程度からおおよそカットされるようですが、これはmp3の圧縮ビットレートやアプリに依存します。
・人間の可聴レベルに満たない音はカット
もう一つ、人間の可聴レベルは周波数ごと異なります。つまり、ある周波数における人間の可聴レベルに満たない場合、その周波数の音は鳴っていない!として消し去ります。
・人間の聴覚はマスキング効果がかかるのでそれを利用
ある周波数で大きな音が鳴ると、その周辺の周波数で鳴っている、より小さな音が「マスキング」され、聞こえなく、というか、識別できなくなります。わからないなら、消してしまえ、ということで消されます。
具体的には、シンバルがジャーンとなると、周辺の周波数の音(例えば周波数が近いトライアングル)が聞こえない、判別できない、ことを利用します。
より詳しくは、ある周波数で大きな音が鳴ると、可聴レベルベクトル(可聴レベルが各周波数でどのように分布しているか?)をダイナミックに(各時刻ごとに)変更して削除する、ということになります。大きな音がなった周波数の近くの周波数は大きく可聴レベルが引き上げられ、そこから離れるほど引き上げ具合が小さくなります。
あとは、得られた情報を普通に可逆圧縮で音というよりデータとして圧縮する、という処理になります。
長々と説明しましたが、ではこれを再現できるのか?無くしたものはわからないはずなのに、どうやって再現するのか?です。
測定は、「ハーマンを定量的に評価しよう」ブログと同じです。
結果は、
・なくなっているはずの周波数が復活している
但し、原音と似ていますが、なんだか違う感じもします。まぁ、当たり前で、消えた情報を補って、ぴったり一致したらエスパーですね。
・復活にそれほど矛盾がない
ここが重要なようです。ここの音が消えている、というのはなんとなくわかります。ですが本当にあったのか、なかったのかはわかりません。どうやら、他の周波数帯域のレベルを見て、大きな音が鳴っていたら、その高調波(2倍、3倍、4倍といった周波数の音、いわゆる倍音がなります)には消された音があるはずだ、と判断するようです。
・時間軸方向で、流周波数成分のレベルの変化が飛んでいるときは補間しているようだ
これは、ちょっと確認が難しいです。ですが、例えば、なにかが、ジャーンとなって唸りがあるとき、可聴レベルに入って、消されたり、現れたりするのは変です。この矛盾を取り除いているような感じです。
音の減衰方向について、より自然な、もしくは他の音の減衰を見ながら調整(よくあるホールかルームかという環境の違いをくみ取るため)しているようなイメージです。
# これが次の特許に関連しているっぽいです。
挙動を理解した上で、harman kardonで関連特許を調べました。
PCT特許の公開番号でWO2008/049587を発見。もちろん、Clari-Fiそのものではないですが、その1要素だと思われます。内容を見ると、これまでの挙動の一部は説明できます。
https://patents.google.com/patent/US20100030563A1/en?oq=US+20100030563+A1
中身を見てみると、要するに、アンビエント信号つまり環境音を補完する技術で、その仕組みは、めちゃくちゃ音響技術でした。
残響などがちゃんと表現できるように、非負非正要素を持つ時間-周波数-分布行列(近似行列)を利用します。この生成には2つの異なるある時刻の音-周波数の時間分布行列と、別の時刻の音-周波数の時間分布行列をみて、似ているところは環境だ!といって判定し、これを再現できる行列を別途構成する、ということらしいです。比較する時刻の違いでいろいろ行列はできますが、コスト関数(MSEとか?)が小さくなるようにする、技術的にはこう書かれています。
特許ではこの評価にKLダイバージェンス(AIなど勉強している人は知っている有名な分布の一致度を見る評価式、でもこれ、JSダイバージェンス使わないとまずいんじゃね?まぁ近いかどうか判定するだけならよいけども)を使うなど、極めて音響工学の基本に従って処理されていました。関心。今ならば、例えば、深層機械学習でも使えばよいですが、計算コストもかかりますし、モデルで学習されていない、想定外の音が来るとヘンテコになることも想定されますからね。
原音には戻らないじゃないか?違う音成分をいれることに意味がないのでは?という意見は当然です。「数字としてのデータの比較」という観点ではそうです。無くしたデータなんて戻らないです。ですが、嘘でも「それっぽく・矛盾なく・逆に鳴ってないとおかしいよねというところを」補ってあげた方が、聴覚上自然でより原音に近い音、「聴いた感じや周波数分布での比較」では意味がある、ということになります。
もう一つ、こういう音質向上技術は、それこそオーバーサンプリングなどいろいろな方法があり、それらを利用するのはべつにClari-Fiだけでありません。上記の特許のようなアンビエント復元そのものも、他でも「特許回避をして」使われている技術だと思います。そういう確認も必要ですね。
Posted at 2022/01/16 12:10:14 | |
トラックバック(0) | 日記