Oculus Quest で映している画面を他の人に見せたり、ゲーム実況などで使いたいと思った事は無いだろうか。Oculus Quest には他のディスプレイへ映像を投影する「Cast」や Facebook でライブを行う「Go Live」機能が搭載されているが、「Cast」はスマホ以外では Chrome Cast 対応機器を所持していなければならないし、「Go Live」は Facebook 限定というふざけた仕様となっており利用者はかなり少ないだろう。やはり誰もが持っている PC へ映像を出力するのが使いやすい。
このページでは Oculus Quest 2 の画面を PC へ表示する方法をいくつか紹介しよう。
Oculus Quest の画面を PC へ表示する前準備
このページで解説する方法は全て Oculus Quest の開発者モードを利用する。そのため、以下のページにある方法で開発者モードを取得しておこう。
Oculus Quest 2 の開発者モードを有効にする | SideQuest で Oculus Quest2 に非公式アプリをインストールする方法 | Lonely Mobiler
Oculus Developer HUB を利用して Quest の画面を PC へ表示する方法
最も簡単な方法は Oculus Developer HUB を利用する方法だろう。Oculus シリーズを利用したアプリの開発などに利用されるソフトウェアだが、画面共有やスクリーンショットの撮影などを行うこともできる。
公式のページより Oculus Developer HUB をダウンロード・インストールしよう。
Oculus Developer Hub for Windows | Developer Center | Oculus
インストールについてはガイドに沿って行くだけで特に迷うようなところは無いだろう。
インストールしたら Oculus Quest HUB を起動し、画面左側の「My Device」を選択しよう。
Oculus Quest を USB で接続できていればこのように Connected and Active と表示さるはずだ。この画面にある「Cast Device」をクリックすると、Oculus Quest の画面を PC で表示できるようになる。
Oculus Developer HUB を利用して無線接続で Quest の画面を PC へ表示する方法
上記の方法で映像を出力することはできるが、そのままでは USB ケーブルを挿しっぱなしにしないと利用できず、ケーブルが邪魔だ。スタンドアロン型の VR 機器である Oculus Quest でケーブルをつけたままというのはその良さをスポイルしてしまっている。
Oculus Developer HUB であれば簡単に無線経由で Oculus Quest の画面を表示することができる。
Oculus Quest を USB で PC に接続した状態で Oculus Developer HUB にある「ADB over Wi-Fi」機能を有効にしよう。
有効にした状態で USB ケーブルを外してみよう。USB ケーブルを外しても Oculus Developer HUB の画面が変わらなければ Wi-Fi 経由で Quest に接続した状態になっている。その状態で「Cast」ボタンをクリックしよう。
そうするとこのようにケーブル接続していない状態でも Cast を利用できるはずだ。
SideQuest を利用して Quest の画面を PC へ表示する方法
Oculus Developer HUB 以外にも SideQuest を利用して Quest の画面を PC へ表示することもできる。こちらも ADB と scrcpy を利用しているようだ。
SideQuest を実行するとメニューバー上に再生マークのようなアイコンが表示されていると思う。これをクリックすると Quest の画面を表示するためのウインドウが表れる。
「Crop」欄にある「QUEST 2 CROP(初代 QUEST の場合は QUEST 1 CROP)」を押して「START STREAMING」ボタンを押そう。
そうするとこのように Quest 2 の画面が表示されるはずだ。Oculus Developer HUB のものと比べると横長の画面が表示されるので、そのまま YouTube などで公開する際に便利そうだ。
SideQuest を利用して無線接続で Quest の画面を PC へ表示する方法
SideQuest でも USB 接続であれば簡単に映像を転送できるが、やはり無線接続のほうが使い勝手は良い。SideQuest は Quest と無線接続する adb over wifi に対応しているので画面共有も無線経由で実行できる、はず。
「はず」というのは俺が SideQuest 経由で無線で画面共有に成功していないから曖昧な書き方になっている。ADB と scrcpy の仕組み的には無線経由でできておかしくはないと思うんだけど。やり方としては以下のような感じでできると思う。
SideQuest と Quest 本体を起動し、どちらもネットワークに接続しよう。そうすると SideQuest のメニューバーに Wi-Fi のアイコンが表れる。
Wi-Fi アイコンをクリックすると無線で接続するウインドウが現れる。
「CONNECT」をクリックすると Quest と無線経由で接続を行う。接続に成功したら USB ケーブルを外し、SideQuest の画面共有を実行してみよう。
scrcpy を利用して Oculus Quest の映像を無線経由で PC へ表示する方法
SideQuest で無線が上手く動かなかったので scrcpy コマンドを直接利用する事にした。scrcpy に関しては以下の記事を参照してほしい。
Android の画面を PC で表示・操作するソフト scrcpy | Lonely Mobiler
adb コマンドが必要なのだが、scrcpy のインストールフォルダについてくる。ただ自分は既に Android のコマンドラインツールをインストール済みなので、そちらの adb コマンドを利用した。もし付属の adb.exe で上手く動かない場合には以下からインストールしよう。
Download Android Studio and SDK tools | Android Developers
まずは adb を tcp モードで接続する。
PS C:\apps\scrcpy> adb tcpip 5555
* daemon not running; starting now at tcp:5037
* daemon started successfully
restarting in TCP mode port: 5555
ポート番号は 5555 がデフォルトっぽい。
adb connect で Oculus Quest の IP アドレスとポート番号を入力する
PS C:\apps\scrcpy> adb connect 192.168.43.115:5555
connected to 192.168.43.115:5555
connected と出たら成功。USB ケーブルを外そう。
PS C:\apps\scrcpy> adb devices
List of devices attached
192.168.43.115:5555 device
USB ケーブルを外しても db devices で端末が接続されていたら OK。
最後に scrcpy コマンドを実行して画面を表示させよう。
PS C:\apps\scrcpy> .\scrcpy.exe
INFO: scrcpy 1.13
C:\apps\scrcpy\scrcpy-server: 1 file pushed, 0 skipped. 30.1 MB/s (27694 bytes in 0.001s)
[server] INFO: Device: Oculus Quest 2 (Android 10)
INFO: Renderer: direct3d
WARN: Trilinear filtering disabled (not an OpenGL renderer)
INFO: Initial texture: 3664x1920
そうするとこのように Quest の画面が表示されるはずだ。
ただまぁデフォルトだと両眼表示なのでちょっと見にくい。なので Quest 2 であれば以下のように --crop オプションを指定してやると上手い具合に横長のディスプレイとして表示される。
PS C:\apps\scrcpy> .\scrcpy.exe --crop 1600:900:2017:510
これを実行すると以下のように横長になる。
これなら OK だ。
コメント