fc2ブログ
 

Meta Questで60fpsの動画を再生した場合について

今回はMeta Quest (Oculus Go、Oculus Quest)で60fpsの動画を再生した場合の話です。

もともと大抵のGoやQuest用メディアプレイヤー系アプリでは秒間50枚程度の映像しか表示することができません。
私が知る限り、初期から完全な形で動画の再生ができていた(リフレッシュレートを60Hzにして、60fpsの動画を再生して1秒間に60枚映像を表示することができる)のはOculus Go版のOculus galleryだけです。


VR動画プレイヤーにおける 60fpsの動画再生について
Oculus Quest 1発売当時 (2019年6月あたり)
アプリ機種備考
 Oculus galleryGo 60Hz 60fps可
 Oculus galleryQuest 72Hz 60fps (恐らく60Hz非対応)
 SkyBoxQuest 50fps程度になってしまう
 2020年10月あたりに60Hz 60fpsへ対応
 AmaRecVRQuest 50fps程度になってしまう
 2021年6月に60Hz 60fpsへ対応


Oculus Quest1発売当時 (2019年6月あたり)のQuest版Oculus galleryはおそらくリフレッシュレートが60Hzにできていないため、完全に滑らかな60fpsの再生とはなっていませんでした。
その後、おそらくQuest2が発売された2020年10月あたりにSkyBoxが60Hz、60fpsの再生に対応し、更に遅れた2021年6月にアマレコVR2が60Hz、60fpsに対応しました。


■ 50fps程度になってしまう原因
Oculus GoやQuestはスマホ用のOSであるAndroidがベースとなって開発されています。
また、動画を再生する際もAndroidの動画再生機能(現在はExoPlayerが主流)を使うのが一般的と思われます。

十分な性能のスマホを所有していないので未確認ではありますが、スマホであれば ExoPlayerとSurfaceViewを使って動画を再生することにより 簡単に良い結果が得られるものと思われます。

スマホではSurfaceViewにより上手くディスプレイ装置の動作に合わせたタイミング調整が行われると思われる



しかし、GoやQuestでは画面を表示する仕組みがAndroid用のスマホと異なり SurfaceViewが使えません。
そのため自動的に上手くやってもらえず、大抵の場合 動画再生機能の動作タイミングとディスプレイ装置のタイミングが合わず 表示されないフレームが発生してしまいます。

QuestではSurfaceViewが使えず 1リフレッシュ期間に2フレーム表示しようとしてしまうことがある



Oculus GoやQuestにおいて60Hz 60fpsで完全な再生をするには SurfaceViewに代わって アプリ側にタイミング調整の仕組みが必要となりますが、有名なassetのAVPro Ver1.11.5やOculus Integrationに含まれるプレイヤーアプリのサンプルではディスプレイ装置に合わせたタイミング調整が実装されていないため50fps程度の表示となってしまいます。

Android用のアプリ開発においてAVProはとても有力なassetと思われますので、Oculus GoやQuest用アプリでも多く使われていると思われます。

60fpsサンプル動画
30fpsサンプル動画
これを60Hz で再生すれば見た目で簡単に評価できると思います。



■ 60Hz 60fps以外にも
・60Hzで30fpsの動画を再生した際に きっちり2フレームずつ表示できるか
・72Hzで60fpsの動画を再生した際に 5フレーム表示した後 1フレーム休む と言った均等なフレーム割り当てができるか
・90Hzで60fpsの動画を150%で再生 早回しでもきれいに再生できるか
・60Hzで90fpsの動画を67%で再生 スロー再生でもきれいに再生できるか
・必ずタイミングはずれてくるので 10~20秒くらいに一度 意図的にフレームを飛ばしたり 重複させる処理が適切に行えているか

と言った評価ポイントがあります。


■ アマレコVRの最大fps
90Hz 90fpsまでは可能ですが、動画再生機能の上限が今のところ100fps弱なので120Hz 120fpsの再生はできません。
120Hz 60fpsでの再生は可能ですが 動いているものがぶれて見える(60Hzで 30fpsの動画を再生した場合と同じ印象)ため 60Hz 60fpsで再生した方が 見やすいです。
関連記事


コメントの投稿

 
 
あまラボへようこそ
このブログでは自作ソフトの最新情報やtips、PC動画に関する話題を掲載していきます。各記事へは下にあるカテゴリからアクセスして下さい。

ファイルのダウンロードはホームページの方でお願い致します。

質問・要望・不具合報告はこちら
アマレコTV
アマミキ!
アマレココ
アマレコ・ライト
ファンタジーリモート
AMVコーデック



ホームページ
カテゴリ
最新コメント
カレンダー
08 | 2023/09 | 10
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最新記事
最新トラックバック
ブログ内タグ

アマレコTV ビデオキャプチャ アマレコVR AMVコーデック Oculus アマレココ Quest アマミキ! コーデック gQuest SC500 動画配信 Pico GO ファンタジーリモート 4K アマレコライト Unity プラグイン G2 AMV4 oculus ライブ機能 SC512 パススルー機能 デスクトップキャプチャ Passthrough AVX2 リモートソフト FAQ 質問コーナー アセット機能 ニコニコ動画 HDキャプチャ DirectShow 背景透過 120Hz Asset レゴ 遅延 解説動画 組み換え 可変再生速度 Meta LEGO MetaQuest VR GV-USB2 XL2420T 2 Pico4 倍速液晶 液晶モニター デインターレース ベンチマーク アマステ Intensity VRonVR AMV2MT MonsterX3A Pro PS4 VideoKeeper2 designs インストール Alternate AVX XCAPTURE-1 RDT233WX-Z GV-USB SD-USB2CAP4 31024 32ZP2 31006 ffmpeg 画像処理 60fps Robust Matting RGBキャプチャ Rift Video Shadow Play WindowsMR RYZEN UtVideo T2 HDMI NVEnc HDCP QSV LameACM OBS 音遅延 MP3 Haswell 電源オプション 音ズレ 録画 オーバーレイ XCapture-1 MonsterXU3.0R フィギュア ハイパースレッディングテクノロジー HT 31021 MPC 液晶テレビ DirectShowFilter プレビュー 擬似NTSCキャプチャ SD-USB2CUP4 Livetube AtomでHDキャプチャ キャプチャーツール シンクライアント イベント IntensityPro DC-HD1 額縁遅延 REGZA ZP3 倍速補完処理 32ZP32 Kabelake リプレイ機能 モノステ 倍速駆動 ゲームスムーズモード LAVFilters SkyBox Hand Tracking 2.0 ファイルマネージャプラス pytorch APIパススルー機能 API python ハンドジェスチャー パカラーススルー機能 アルファ付き動画 アルファ付きVR動画 RVM クロマキー ダウンロード AssetBundle 物理処理 download passthrough 検証 Preferred Filter Tweaker SteamVR GPU使用率 可逆圧縮 SKnet GV-USB3 キャプチャカード VR動画 フレーム間圧縮 新プレイヤー機能 AMPlayer 60Hz 新アマレコVR 90Hz VRコントローラー MR Windows SSE 

ブログ内検索
月別アーカイブ
アマレココに関するリンク
お世話になっているソフトのリンク
RSSリンクの表示
管理画面
  • 管理画面