はじめに結論
scrcpyを無線で使うときに便利なスクリプトを組みました。
ここにおいてあるpythonスクリプトをscrcpy.exeが配置されたのと同じディレクトリにおいて、Python3で実行すれば動くはずです。
導入
さて、皆様良きOculus Questライフを送っていますでしょうか?
知り合いに初めて触ってもらうときに困るのがどういう風に指示を出すかですよね。何の画面で詰まっているのか知りたくてもVRの画面を共有するのは簡単じゃありません。ChromeCastを持っていれば話は早いんでしょうが、残念ながらうちにはありません。
そこで有用になるのが、scrcpyというツールです。
github.com
・調べたIPを↓に使う(192.168.X.Xの部分)
— higuchi@jurilog (@jurilog) June 2, 2019
$ adb connect 192.168.X.X:5555
・またQuest側で認証。
$ adb devices
・でWi-Fi経由でのadbを確認して
$ scrcpy -c 1000:1000:110:220
・すると、PC側にQuestの画面が同時表示 :-)
この方法は、CromecastできないGameもPC経由でCastできてステキ
(おしまい)
とはいえ、無線経由でアクセスしようとするとそこそこコマンドを打たなければいけません。ということで、Pythonを使ってそこら辺を自動化してみたよ、というのが今回の主題です(本当はこういうのにはbashを使うのが正当なんだろうけど、僕は書けないのでそのクレームは受け付けません)。
使い方
上の「はじめに結論」セクションでもう書いてるので正直これ以上説明することはないんですが、一応再度説明しておきます。
動作環境はおそらくWindowsのみ(パス関連とファイル名、改行コード、文字コードを差し替えれば動くとは思います)、pythonのバージョンは3.6.5です。unauthorizedな端末には対応していません。
- GitHubのレポジトリからzipファイルをダウンロードし、適当な場所に展開します。
- 中に入っているscrcpy_auto.pyというファイルをscrcpy.exeが置いてあるディレクトリにコピーします。
- コマンドラインからscrcpy_auto.pyをpython3で実行して、表示されるテキストの指示に従っていけばscrcpyが起動します。
一応デフォルトでは"scrcpy -c 1000:1000:110:220 -n"というオプション付きで動くようになっています。オプションを手動で設定したければscrcpy_auto.pyにそのオプションを渡すことで設定可能です。