Avatar Audioの仕様 できること

こんばんは。パーティクルライブ等で活躍するアバターオーディオの躓きそうな仕様やできることをまとめました。
一見ワールドに使うオーディオと同じですが、アバターに組み込むにおいて以下のような制限や仕様があります。

再生できるチャンネル数は4

アバターオーディオから同時に流せるのは4
チャンネルまでです。ステレオなら2本、モノラルなら4本を流せます。それ以上は動作が非常に不安定になり、アバターをロードする度に違うチャンネルが再生される、といったことが起こります。

アバターオーディオにはコンプレッサーがかかっている

コンプレッサーです。リミッターじゃないです。コンプレッサーです。
コンプはエフェクターの一種で、一定以上の音量が入力されたときに音量を圧縮します。でけえ音が鳴ったら自動的にボリュームを絞るやつってイメージで大丈夫です。音量調節してくれるならいいじゃん!って思うかもしれませんが、ボーカルやギター1トラックとかならまだしも、マスタリング済みの音源にしっかりコンプがかかると十中八九ポンピングします。
ポンピングとは、音量がうねうねと揺れて気持ちの悪いサウンドになる現象です。実際ポンピングを起こしているケースをそこそこ見ます。
このコンプはunityではなくVRCが独自にかけているものなため、実際にアップロードして出音を確認するしか動作を確認する手段がありません。
なんかうねうねしてるなー、と思ったらaudio source内のボリュームを下げてみてください。

とはいえこのコンプがかかるレベルは高めで、問題が起こるケースは、
・パッツパツの音源をフル音量で流す
・複数の音源を同時に流す
などが考えられます。

パッツパツの音源の例

自分が使う音源がどれくらい音量が詰め込まれているかは確認しておくといいかもしれません。
音源を複数流す場合音量はかなりシビアになります。それについての苦労話は後述します。

VRC Spatial Audio Sourceは必ずつける

音源をそのまま流すにしろ、立体音響で流すにしろ、VRCだとこのスクリプトを必ず通過するので、Audio Sourceにはこいつを追加しておきましょう。バグの原因になるそうです。

コンポーネントのパラメータのアニメーションは無視される

Audio SourceやVRC Spatial Audio Source内のパラメータをアニメーションさせてもVRC上では無視されます。音量を動かしたりしたい場合、事前に加工するしか手段はなさそうです。


やってみたこと

後半は私が実際にやった音源の処理、unity上の設定などを紹介します。興味がなかったら飛ばしてください。

直接音+反射音を再現する

「音を空間に実在させる」といったコンセプトで作りました。現実の音の基本は直接耳に届く直接音と、部屋や物に反射して届く反射音です。私が作ったものだと、前者をVRC Spatial Audio SourceのSpatializationをオンにしたモノラル音源をL,Rの二つ用意して視聴者の前方に配置し、後者を2Dステレオで耳に直接流しています。
モノラルLRはVRC上で左右の耳への到達時間、頭を回り込むときにかかるEQカーブなどを計算して音源がレンダリングされ、空間上に音源があるように感じます。
2Dステレオのほうは頭の向きによっての音の変化はありませんが、音源を事前にバイノーラル加工することで音を頭外に定位させます。
アコースティックな音源だったため、空間はコンサートホールとアリーナの中間くらいを目指しました。

モノラル2つと2Dステレオ1つ

音源の処理

音は周波数が高くなればなるほど指向性が鋭くなる性質があります。逆に低域は音の方向が分かりづらくなります。なので、直接音を担当するモノラルLRには音源の中高音域を、2Dステレオには音源の低域と残響を担当してもらいます。

モノラルLRは低域を削るだけ

残響は、音源の2チャンネルをまとめて、適当なリバーブをかけてダイナミックEQなどで整えたあと、バイノーラルパンナーで左右の若干後方に配置しています。このとき音源のLRをリバーブのLRにどれくらい送るかを調節して若干の差異を出します。LチャンネルをリバーブのLチャンネルだけに送ったりするとかなり不自然になります。

例えばリバーブのLには、音源のLチャンネルを少しだけ大きく送っています

低域は、LRをまとめて完全にモノラルにした後、ディレイで調節して、イメージャーでステレオに広げた後、マキシマイザーで整えています。低域をステレオに広げるのは音楽制作においては少し禁忌なのですが、ヘッドホンやイヤホンでの再生しか想定しない場合、空間を演出するにあたって外せない手法です。

低域は唯一の頭内定位

また、低域のフェーダーを動かしてダイナミックさを演出する、といったこともしています。
ヘッドホンやイヤホンでの再生は、「体に響く低音」がほとんどないので、その分低音を強調してあげると迫力が出ます。

低域に書いたフェーダーオートメーション

音源に合わせた加工をするとこのような感じになります。音楽やパーティクルによって最適な空間は異なります。コンサートホールでEDMを流されても「はあ?」ですよね。
他にも、リバーブ成分の多い楽曲だったらディレイ中心にかけるとか、低音を少し歪ませてみたりとか、いろいろ考えられます。

と、ここまで書きましたが、このような空間的な演出は音量とトレードオフです。残響や豊かな低域を付加すると、データ上の音量が跳ね上がるのに対して聴感上の音量はそれほど上がりません。それにこのような手法は音源を複数流しているため、前述のコンプレッサーとの戦いになります。音量を可能な限り出しつつバランスをとっていくのはかなり大変です。特に低域と残響のバランスは、一緒のステレオ音源にまとめてしまっているので、また書き出し直さないといけません。
無加工の音源を2Dステレオでそのまま流す手法には、音量において逆立ちしても勝てません。音量はそのまま迫力につながるので、視聴者に音量を上げてもらうしかないです。

できそうなこと

パーティクルライブにおいては、パーティクルに合わせて音源の空間的な演出に変化を加えてダイナミクスを出す、といったことができそうです。パーティクルに音源が追従したり、空間が広がるのに合わせて音源の残響も変わったり……
何にせよ、アバターオーディオの制限はつらいです。でもこれを取っ払っちゃうとたぶんポピ横が今まで以上に地獄になりますね。

ではこのあたりで それでは

この記事が気に入ったらサポートをしてみませんか?