音ズレが発生する場合
このページでは、映像と音声が同期されていない音ズレの状態が発生した場合の解決策を紹介します。
実機での動作
Unity Editorでは音ズレが発生しなくとも、MiRZA実機では負荷の高い状況などでは音ズレが発生する可能性があります。
このページで紹介する解決策は、あくまで音ズレが発生しにくい設定であり、音ズレが一切発生しなくなる訳ではありません。
解決策「プロジェクト設定の変更」
オーディオ設定について
音声の遅延を回避するために以下の設定を変更します。
Edit > Project Settings > Audio
を開きます。DSP Buffer Size
をBest latency
に変更します。
解決策「Video Playerを使用する場合」
Video Player
コンポーネントの以下の設定を変更します。
Play On Awake
:無効Wait For First Frame
:有効Skip On Drop
:無効

動画の再生タイミングについて
アプリ起動直後はグラスへの描画処理が安定していないため、すぐに動画を再生すると音ズレが発生しやすいです。
アプリ起動後は、グラスの描画が安定する約5〜10秒後以降に、スクリプトからVideoPlayer.Play()
で再生開始すると、映像と音声が同期されやすいです。
アプリの復帰時について
一度スマホ側をホーム画面に戻した後に、動画を再生するUnityアプリを再開する際は音ズレが高確率で発生します。
音ズレが発生した場合は、動画をVideoPlayer.Stop()
してからVideoPlayer.Play()
すると同期されます。
解決策「負荷を軽減させる」
スマートフォンへの負荷を軽減させることで、音ズレが発生しにくくなります。
Foveated Renderingの有効化
- Foveated Rendering(中心窩レンダリング)を有効にします。
必要のないオブジェクトを削除する
- シーン内で使用していないオブジェクトを削除、もしくは非アクティブにします。
使用していないアプリを閉じる
- バックグラウンドで動作しているアプリが重い処理を行っている場合、負荷がかかり音ズレが発生しやすくなります。
- 動作させる必要のないアプリであれば、終了/強制停止を行います。