スクリーンショット_2019-06-03_12

【低遅延・高画質】scrcpy+adbでOculusQuestのプレイ画面をMacにミラーリングする方法


はじめに

この記事ではOculusQuestの画面をadbコマンドを使用してscrcpyでMacにミラーリングする方法を解説しています。

先日あげた記事ではVLCを使用したミラーリングをする方法書いたのですが、スローになってしまうことや遅延が問題として上がっていました。今回は前回より遅延が少なくできるだけ画質が良い状態でミラーリングする方法になっているはずです!

環境

・MacBook Air (13-inch, Early 2015)

・macOS Mojave 10.14.3

・intel corei5, メモリ8GB

・Oculus Quest 128GB

・USB-C to A 変換プラグ(Amazonで安かったやつ...)


1. scrcpyのinstall

まずはscrcpyというAndoroid端末をPCにキャスティングできるツールをMacで使えるように設定していきましょう。

1-1. 上記のGitHubページの『README.md』の『Mac OS』の欄を参考に、以下のコマンドをたたいてscrcpyをインストールします。ここではHomebrew🍺を使用するため、もしお手持ちのMacにインストールされてない場合はこちらのサイトからインストールしましょう。

brew install scrcpy

ここでながーい処理が走るのでゆっくり待ちましょう。

1-2. 処理が終わるとこのような説明文が出てくるはずです。

You can install adb from Homebrew Cask:
 brew cask install android-platform-tools

1-3. もしここでandroid-platform-toolsのPATHを通していない方は以下のコマンドを実行します。こちらの記事などを参考にadbコマンドが使える方はこの工程はスキップして大丈夫です。

brew cask install android-platform-tools

これで環境構築は終了です。早速adbコマンドを叩いてミラーリングができるか試してみましょう。


2. adb通信の確立

2-1. OculusQuestを開発者モードにしましょう。Oculus公式アプリからお手持ちのデバイスを開発者モードにしましょう。右下の設定ボタンから、Questを選択し、「開発者モード」をオンにします。

2-2. ターミナル.appを開いて、以下のコマンドをコピペして[Enter]を押します

adb

2-3. OculusQuestとPCをUSBで繋げた状態で以下のコマンドをコピペして実行(QuestをPCが認識できているか確認する工程です)

adb devices

成功している場合は以下のような実行結果が出力されます。

xxxYourPCxxx:~ xxxYourPCxxx$ adb devices 
List of devices attached 
xxxxxxxx device

失敗している場合は下記実行結果が出力されるので、こちらの記事を参考にQuest側でUSBデバッグをオンにして再度『adb devices』コマンドを入力します。(USB-Cの裏表も確認し、Oculusのロゴが手前になるように差し込みましょう)

adb devices
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
1KWPH810X28171 unauthorized

2-4. USBを接続しながら、以下のコマンドを入力してTCPモードへ切り替えます。

adb tcpip 5555

2-5. 次に以下のコマンドを入力してQuestのIPアドレスを調べます。

adb shell ip addr show wlan0

2-6. うまく通っていると、以下のような結果が出てくるのでinet以下のIPアドレス(v4)をステッキーズなどでメモしておきましょう!

5: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 3000
link/ether xx:xx:xx:xx:xx:xx brd xx:xx:xx:xx:xx:xx
inet 192.168.xx.xx/24 brd 192.168.xx.xxx scope global wlan0
valid_lft forever preferred_lft forever
…

2-7. 先ほど調べたQuestのIPアドレスと設定したポート番号(今回はtcip5555)を指定して接続します。

adb connect 192.168.xx.xx:5555

2-8. このような結果が出力されたらネットワーク通信成功です。

connected to 192.168.xx.xx:5555


3.scrcpyでミラーリング 

3-1. USBを外して、以下のscrcpyコマンドをたたくとミラーリング画面が表示されてキャストが開始されるはずです!

scrcpy

もしこちらでエラーがでるのであれば以下のコマンドを試してみてください!

scrcpy -s<device ID>


BeatSaberなど公式appでは対応していないアプリケーションでも、

低遅延・高画質でミラーリングすることができました!



単眼表示と二眼表示を切り替えたい場合はこちらのコマンドで切り替えが可能になるようです!

scrcpy -c 1440:1550:0:0 //単眼表示
scrcpy -c 1210:1100:140:180 //魚眼部分のクロップ


余談

公式appに対応しているコンテンツであれば、iphoneからFireTVstickにミラーリングできるアプリを使うのがオススメです。



この記事が参加している募集

買ってよかったもの

サポートして頂いたお金は,3Dプリンタのフィラメント代や生きていくための食費に利用させていただきます!