【VRChat】PICO 4 Ultraでのマイクの音割れを回避する

PICO 4 Ultra使用時において、VRChatのマイク音声が割れたり歪んだりした状態で相手に聞こえてしまうのを回避するための設定です。マイク音質が悪い、こもって聞こえる、声にやたらと圧があるといった状況がいくらか良くなるはずです。

声について何か言われてガッカリしたり、嫌な思いをするようなことがないようにという思いで書きました。この内容が上手く当てはまらない方も居るかもしれませんが、参考となれば幸いです。

注意事項

  • 声質や声量には個人差がありますので、あくまで目安としてご参照ください。
  • 技術的な内容については推測も含まれており、正確でない場合があります。
  • PICO 4 Ultra(PICO OS 5.13.3.U)とPICO Connect 10.5.10での動作を想定しています。
  • 無印のPICO 4では傾向は似ていますがマイクの音量バランスが異なります。

機材とバージョン

  • PICO 4 Ultra(PICO OS 5.13.3.U)
  • PICO Connect 10.5.10
  • VRChat (Build 1585)

VRChatでマイクの音割れが起こりにくい設定

PICO Connectのマイク設定

ヘッドセットのマイク「20~30」

デフォルトは音量50ですが、音量を20~30ぐらいまで下げます。声量のある方は20ぐらいと小さめ、小声の方は30ぐらいが基準です。声が少し小さかった場合の微調整はVRChat側で行いますので、基本的にPICO Connectの音量は下げる方向で弄ってください。

ヘッドセットのマイクのノイズ削減「オン」

デフォルトで有効になっているノイズキャンセリング機能です。マイクブーストが掛かるので、音量20~30というのはこれがオンになっている前提の目安です。ノイズの考慮をしなくていいので、音量設定はPICO Connectのノイズキャンセリングはオンの方がしやすくなります。

ちなみにノイズキャンセリングによる遅延は0.1~0.2秒程度でした。(他のUSBマイクと同時録音をしてズレを確認)

VRChatのマイク設定

マイクの出力音量「50%から調整」

設定しやすいようにひとまず出力音量50%にしておき、ここから上げたり下げたりして調整をします。こうしておくと声が小さかった場合に、PICO ConnectではなくVRChatの方で出力音量を上げるだけで対処できます。

例えばPICO Connectの音量が30の場合でも、VRChat側で「若干のコンプレッサー」と「追加で6dBのブースト」が掛かるようなので、マイク設定内のマイクインジケーターが1/4か1/3ぐらいまで安定して出ていれば十分です。あとはフレンドの方に声を聞いてもらいながら5%刻みぐらいで調整するのが良いかと思います。

PICO Connectの音量30にした場合のマイクインジケーターの振れ具合。

音量30でも、声の出し方や声量によってはこのぐらい出ることも。

インジケーターが微動だにしない時は、マイクデバイスが間違っている可能性があります。「PicoStreamingMicrophone」になっていることを確認してください。

ノイズの抑制「オフ」

PICO Connectの方でノイズキャンセリングが動作しているので、VRChat側のノイズキャンセリングは使用しません。二重で動作させると声が上手く聞こえなくなる可能性があります。但し、あまりにも周辺ノイズが多い場合はあえて有効にしてみると上手くノイズキャンセリングできる場合があります。

マイクが有効になる音量「1~2%」

PICO Connectのノイズキャンセリングでかなり抑えているので、ひとりで居る場合は0%でも割と大丈夫ですが、VRChat側でマイク音を増幅されるので注意が必要です。

設定をしておきたい場合は1~2%ぐらいにしておきましょう。同じ部屋で家族が喋っているといった状況だともう少し上げる必要があるかもしれませんが、ここを上げてしまうと喋り始めが途切れる原因になるので、通常はほぼ設定しないような状態で問題ありません。

設定例

色々と試してみたところ、以下のような感じになりました。

PICO Connectの音量VRChatのマイクの出力音量
パターンA(音圧控えめ)2080前後
パターンB(しっかり)3050前後

音圧控えめのパターンAは、低い声や大きな声の方で上手く機能しそうな感じがありました。パターンBは声が高音寄りの方や、小声の場合に音割れしない程度にしっかりめに聞こえるようになると思います。声質によってはどちらも聞こえ方が全く変わらない可能性もあります。

実際にどう聞こえるかは分からないので、何人かのフレンドに協力してもらってパターンAとパターンBの両方を試し、好評だった方をベースにVRChat側の音量を微調整してみるのが良さそうです。

ちなみにPICO Connectの音量を15まで下げてしまうと、VRChatのコンプレッサー処理で持ち上げるにしても小さすぎるようで、フレンド曰くなんとも言い難い違和感があるとの事でした。これらはあくまでも目安ですので、自分に合った設定を探してみてください。

PICO Connectのノイズキャンセリングを「使用しない」場合は

「ヘッドセットのマイクのノイズ削減」を使用しない場合、環境ノイズがそのまま入り、マイクブーストも掛からなくなります。声の減衰もしなくなるので、歌を歌ったりしたい方や別のノイズキャンセリング機能を利用したい方向けです。

先程と違って具体的な設定例を提示するのは難しいので、こちらは要点だけ説明します。

PICO Connectのマイク設定(ノイキャンなし版)

 ヘッドセットのマイク「40~50程度」

ノイズキャンセリングを使用しない場合はブーストが掛からない分マイク音量が小さくなるので、40~50ぐらいまで上げる感じになりそうです。

ヘッドセットのマイクのノイズ削減「オフ」

ノイズキャンセリングを使用しないので、オフにします。今のところPICO Connectを使用するときに限り、PICO本体側のノイズキャンセリングも同時にオフにできます。ALVRやVirtual DesktopではPICO側のノイズキャンセリングを完全にオフにはできませんので、声を伸ばすと2~3秒でノイズ判定されて大きな減衰が発生します。

VRChatのマイク設定(ノイキャンなし版)

マイクの出力音量

こちらも出力50%ぐらいにしておくと、ここから上げたり下げたりして調整をしやすいと思います。

ノイズの抑制「オン」

自前でノイズキャンセリングを用意しない場合はここをオンにしておきます。VRChat側のノイズキャンセリングを使用しないと、PICOのスピーカーから聞こえる他人の声がマイクに入ってしまう可能性があります。

マイクが有効になる音量

使用するノイズキャンセリングの具合に応じて調整します。具体例を出すのが難しいので上手いこと頑張ってください……。

PCにBluetoothイヤホンを繋いでしまって、PICOのスピーカーからは音を出さないようにするのも手です。

音割れが起こる理由

VRChatにはコンプレッサーなどの音声処理がある

Windows上でマイク音量を確認したときは大丈夫そうなのに、VRChat内で音が割れたり圧のある声になってしまうのは、VRChat側のマイクブーストなどが原因です。

VRChatでは声を聞き取りやすくするために、プレイヤーとの距離に応じて軽いコンプレッサーやブーストの処理が入ります。具体的には小さい声は大きく、大きい声は小さくなる調整が入ります。VRChatのドキュメントには「軽い」と記載がありますが、音量によっては結構ガッツリ掛かる感じがします。

VRC_PlayerAudioOverride
A region in a world where user voice and avatar audio properties can be adjusted.

これらの調整はワールドによって異なり、ゲイン設定は「VRC_PlayerAudioOverride」で行います。そしてプレイヤーの声は他の音と比べて追加で6dBのブーストが掛かるようになっており、この6dBのブーストは「VRC_PlayerAudioOverride」で設定した音に対して追加で適用されます。

All player voice gets an addition 6db boost relative to other sounds. This is on top of any you apply with the .Gain VRC_PlayerAudioOverride

あまり詳しくないのですが、音量が6dB上がると倍率が2倍になるので、体感で音量が倍に感じられると思います。そのため、VRChatのマイクインジケーターが半分を超えないような調整であれば、ブーストが掛かっても音が割れたり潰れたりせずちょうどいいぐらいになると考えられます。

PICOに限らず、マイク設定が大きすぎると声が割れたり歪んだりしていることがあります。特にメガホンなどのワールドギミックは距離の減衰無しでダイレクトに響くので、音が割れていると感じやすいです。

PICOでの音声処理の流れについて

PICO 4 Ultraにおいては、おおよそ以下のような流れでマイクの処理が行われているものと考えられます。

マイク音声の大まかな流れ。検証時の挙動から推測した内容なので、正確ではない可能性があります。

①のPICO OSで動作するノイズキャンセリングについては明確な記載がありませんが、簡易的なノイズキャンセリングが機能しているような挙動を確認できました。声を伸ばすなど同じ音を出し続けると2~3秒でノイズ判定されて音の減衰が入ります。ノイズキャンセリングを設定していないALVRやVirtual Desktopでも同様の減衰が確認されたので、基本的にはオフにできない機能です。(OS内に設定項目が存在しない)

②ではPICO Connect側で強力なノイズキャンセリング処理が入ります。恐らくPC側で処理していると思われますが、こちらも詳細は不明です。ノイズキャンセリングと同時にマイクブーストも掛かるので、デフォルトの音量50でも結構大きな音になります。PICO Connectの設定でノイズキャンセリングをオフにすると、①のPICO OSでのノイズキャンセリングも同時にオフになるようです。今のところこれが完全にノイズキャンセリングをオフにする唯一の方法となります。

Windows上で簡単に確認できるのはPICO Connectで処理が行われたマイク音量まで(図では②に該当)なので、この時点で音割れせず程よく聞き取りやすい音量に調整してしまうと、③のVRChat側でブーストされたときに音が割れる可能性があります。

試しにローカルテストを行ったところ以下のようになりました。実際のマイク入力音量よりも大きな音が相手に聞こえています。PCでマイクテストしたときは割れていないのに、VRChatでは音割れしていると言われてしまう理由は恐らくこれです。

上はVRChatでブーストされた後の自分の声で、下はPICO Connectから出てすぐのマイクの音量

特にPICO Connect使用時に音が割れやすくなる原因として、PICO Connect側のマイクブーストとVRChat側のマイクブーストが2重に掛かっているからということがありそうです。それを念頭においてマイク音量を小さめに調節すればクリッピングによる音割れを回避できるはずです。

ところで、VRChatによる6dBのブーストについては最後に音声がミックスされる段階で行われるので各クライアント側でやっていると思いますが、マイク入力のコンプレッサー処理は自分側と相手側のどちらで行っているかはよく分かりませんでした。(自分側でやってそうな気もしますが)

VRChat内での聞こえ方を確認する(ローカルテストの方法)

アバターではなくワールド用のプロジェクトを作成してテストビルドするという手段を用いると、VRモードとデスクトップモードのローカルテスト用のVRChatを同時に起動できます。

アバターのアップロードをするときと同じようにUnityを使用します。ワールド用のVRChatプロジェクトを作成して、そのままVRChat SDKのBuilder画面を出します。VRで動かす準備をするために必ずPICO Connectを接続しておいてください。

「Force Non-VR」にチェックが入っているとデスクトップモードで起動します。まずは「Build & Test Your World」に設定してBuild & Testボタンを押してVRChatを起動してみましょう。

VRChatが起動できたのを確認したら、VRChat内でマイクのミュートをしておいてください。今度は「Test Your Last Build」に変更します。

1つ目のVRChatをVRモードで起動している場合はForce Non-VRにチェックを入れてからTest Last Buildボタンを押します。デスクトップモードで起動していた場合はチェックを外してから起動します。(Force Non-VRのチェックの有無は手順が逆でも大丈夫だと思います。)

PICOを装着して、少し後ろに下がるともうひとりの自分がそこに立っているのが分かると思います。(エラーアバターになっている場合もあります)

VRモードとデスクトップモードのどちらもPICOのマイクを使う設定になっている状態ですので、VRChatの設定で片方がミュートになっていれば声が二重に聞こえてくることはないはずです。

ひとりでローカルテスト

アバター同士が重なるほどの至近距離に移動したり、普段フレンドと会話をするぐらいの距離に移動したりしながら、マイク音量の調整を行います。コンプレッサーやブーストのお陰で、設定音量の割に声が大きく聞こえるのが分かると思います。

但し、これは1台のPCで行うローカルテストなので、ネットワークを経由して相手の元に届いたときにテスト時と全く同じ聞こえ方をしているとは限りません。ローカルテスト後は念のため複数のフレンドに声を確認してもらうことをおすすめします。(いくつかのワールドで試した方が良さそう)

QuestとPICOのマイク入力比較

Virtual Desktopの音量を100%に設定した場合、QuestとPICOでどういった差があるかを確認しました。

【追記】Virtual Desktopでのマイク比較は公平ではない可能性があるので、ALVRでも同様の確認を行いました。

Meta Quest 2の場合

Meta Quest 2 Virtual Desktop 音量100

Quest 2の場合は、気持ち大きめの声を出しても半分ちょっとぐらいでした。Questでもマイクインジケーターが半分を超えないような音量調整にしておけば、メガホンなどのギミックを使ってもVRChatのコンプレッサーやブーストで音が潰れたりせずに済むと思います。

ALVRではVirtual Desktopと比べてマイク音量が小さめでした。ちょっと声を張り上げても以下のようなレベルです。

Meta Quest 2 ALVR VB-Cable 音量100%

PICO 4 Ultraの場合

PICO 4 Ultra Virtual Desktop 音量100%

PICO 4 Ultraの場合、Virtual Desktopの音量が100%だと余裕で振り切れました。スクリーンショットではVRChatの出力音量が50%になっていますが、ここを弄ってもすぐ下のインジケーターには反映されないので、一旦無視してください。

ALVRでも試してみたところ、Virtual Desktopよりは小さいのですがQuestと比べてマイク音量が大きい傾向は一緒でした。ALVR(VB Cable)のマイク入力の場合はVirtual Desktopほど簡単に振り切れるというわけではなさそうです。気が向いたら調べてみようと思いますが、Virtual Desktopにも若干のマイクブーストがありそうです。

PICO 4 Ultra ALVR VB-Cable 音量100%

ちなみにVirtual Desktopの音量を30%にしても、以下のようにそこそこ大きめの音が入っています。10~15%まで下げるとPICO Connectで30まで下げたのと似たような具合になると思われます。

PICO 4 Ultra Virtual Desktop 音量30%

PICOの音が割れやすいのは、そもそもQuestと比べてマイクの入力音量が大きいからという理由があるようです。特にPICO 4 Ultraにおいては、正面のカメラで空間ビデオを撮影するときに周辺の音も記録できるようなマイク構成になってそうな感じがします。どういった理由でそのようなマイク設計になっているかはさておき、VRChatでPICOのマイクを使う場合はしっかりと音量を絞った方が良いということだけ覚えておけばOKだと思います。

声が遅延する場合について

VRChat自体の遅延

まず大前提として、VRChatでの会話の遅延は避けることができません。ワールドを立てるときに海外のサーバーを選んでいると大きく遅延するのはもちろんのこと、日本サーバーを選択していても経路によっては数百msのネットワーク遅延が起こる事があります。(※修正されているかは不明)また、Pingが僅か数十ms程度であっても音声が届くまで0.5秒程度掛かるようです。

例えばの話ですが、QuestやPICOのような無線のHMDを使ってお互いにVRChatをしたとしましょう。適当に見積もってHMDのマイクからPCまで0.1秒、VRChatの処理とネットワークを経由するのに0.5秒、PCからHMDのスピーカーまで0.1秒掛かったと仮定すると、手元のマイクから発した自分の声が相手のスピーカーに届くまでの間に0.7秒掛かるということになります。携帯電話並の違和感のない通話をするには150ms(0.15秒)以内の遅延に抑える必要があると言われていますので、結構厳しいです。

VRChatの2025年3月26日の更新(Build 1606)で声の遅延が受信側が最大で250ms短くはなっていますが、それでも0.5秒ぐらいは掛かるので、Discordのような低遅延ボイスチャットとは程遠いです。まぁ、これでも以前よりは会話がしやすくなっているとは思います。多分これまではトータルで1秒ぐらいは掛かってたんじゃないかなと……。

Reduced player voice latency.
By up to 250ms, on the receiver’s side.

PICOのマイク遅延について

良好な状態で大体0.1秒ぐらい

さて、PICOからPCまでのマイク遅延は接続に問題がなければ0.1秒程度で済むはずです。PICO Connect経由のマイクをUSBマイクと同時に録音を行ったところ、PICO Connectのノイズキャンセリングを有効にしていても0.1秒の遅延となりました。(※自分の声を確認しながらボイスチェンジャーを使いたいという人にとっては0.1秒程度の遅延でも致命的なので、これはボイチェンしない前提での話です。)

もしWindowsのマイク設定などでインジケーターが0.5~1秒ぐらい遅延している場合や、VRChatで自分のアバターのリップシンクが大きく遅れているように見える場合は、トラブルが起こっている可能性があります。SteamVRではなくPICO単体版のVRChatでも同じ問題が起きているのであれば、PICO本体の問題の可能性がありますのでPICOを再起動してみましょう。

ネットワークの問題であることが多い

原因がPICO本体ではなかった場合、よくある原因としてはネットワークの問題が挙げられます。例えばWi-Fi接続が安定せずストリーミングの映像が引っかかるような事が何度か起こると、音声遅延が蓄積されてしまう事が考えられます。関連する情報として、Virtual Desktopのノイズキャンセリング機能は無音の送信を続けてしまうことを避けて、遅延を軽減するという目的もあるようですので、これ自体はWi-Fi接続でVRストリーミングをするときの一般的な問題だと思われます。

しばらく使用していると遅延してくる場合は、一度PICO ConnectやVirtual DesktopからPICO本体を切断してから再接続を行うと改善する可能性があります。PC側のPICO ConnectやVirtual Desktop、SteamVRを終了しないように気をつけておけばちゃんと戻ってこられます。あるいは、「PICO Connectのヘッドセットのマイクのノイズ削減」スイッチを操作するとリセットが掛かるような挙動をするので、何度かオン・オフしてみると良いかもしれません。

ネットワークの問題かどうかは、USB接続での動作を確認することでも判断できます。PICO Connectの設定を見直すという場合は、フレームバッファリングがデフォルトで有効なのでネットワークが不安定な場合はそちらをオフにして様子を見ることもできますが、ネットワーク機器の構成やネットワーク設定の見直しをする必要があるかと思います。

2025/04/27:マイクの遅延についても追記
2025/05/04:ノイズキャンセリングを二重に使用する場合や、マイクが有効になる音量について補足

タイトルとURLをコピーしました