Gear VR(Galaxy S6版)でスクリーンミラーリングをする方法(2016年2月版)
Gear VR(Galaxy S6版)の受託開発でスクリーンミラーリングをしたい、という要望あり。というかこのミラーリング機能、仕事でOculusなどVRヘッドマウントのイベント・アトラクション開発を請け負うと、主催者から絶対にやりたいと言われる。ヘッドマウントは見ている人しか割らかないので、どんなことやってるのか周りの人にも知らせたい、ということなのだ。
PC+Oculusの場合は普通のダイレクトモードでPC画面を出力すればいいだけなのだが、PC部分がスマホになるGear VRで画面出力するにはどうすればいいのか、ということで調査。当初簡単だと思われたが、以外に苦戦した。
失敗1)サムソン純正の無線HDMIアダプターを使用するパターン
EAD-T10 | その他 | IODATA アイ・オー・データ機器
純正なんだからこれが一番だろう!と何も調べずに買ってみた。「オールシェアキャスト」とも呼ばれる。セッティングは一番簡単で、無線LANで認識させてAndroidの「Screen Mirroring」を呼び出すだけ。
ただ通常のAndroidの画面はミラーリングはされるものの、Gear VRアプリになるといきなり重くなり、秒間1フレームも出なくなる。この現象は海外の掲示板でも書かれていたのでうちだけではないハズ。通常のAndroidアプリは問題なし、かつNote4時代のGear VRでは問題ないとのことで、S6特有の不具合みたいだ。
失敗2)Chromecastを使用するパターン
このYoutube動画でうまくいっていたのでイケルと思ってChormecastを注文。
駄菓子菓子、うまくいかなかった。
これもS6純正のWifiドングルと同じくカクカクで話にならんのだ!
ザバイオーネさんが試した時はそこそこうまくいったらしいので、
無線環境にもよるのかもしれない。(うちの職場はWifi電波が錯綜していてつながりにくいことがある)
@tomsawyer100 動画をよく見た上で再確認してみたらミラーリングできました。
— ザバ(ザバイオーネ) (@z_zabaglione) 2016, 2月 15
・GUNJACKをプレイ。Gear VR側はフレームの低下はほんと感じない
・音声はTV側で出る(途切れ途切れ)
・TV側のfpsはアプリに依存(アプリが重たいと1fpsの時も)
[せいかい](2016年2月時点)MirrorOPというミラーリングソフトを使う。
海外の掲示板でS6と純正ドングルでうまくいかん!というスレッドの中で紹介されていた。これは送り側と受け側の複数PF間で無線経由で映像を送るソフトウェア群。
S6=「MirrorOp Sender for Galaxy」というアプリをGoogle Playでインストール
MirrorOp Sender for Galaxy - Google Play の Android アプリ
受け側のPC=「Windows Receiver (beta)」を下記からダウンロードしてインストール
これで同じサブネットの無線ネットワークに接続し、アプリ側からレシーバーを選んで接続。正直言ってこれもスムーズとは言いがたいが、まあギリギリいけるっしょという感じ。
ちなみにSender側のアプリとしてはGalaxy専用の「MirrorOp Sender for Galaxy」と通常のAndroid用の「MirrorOp Sender」と2種類あり、どちらも動作するのだが、「MirrorOp Sender for Galaxy」を選ぶこと。なんでかしらないがこっちのほうがよりスムーズだ。
ちなみに「MirrorOp Sender for Galaxy」は画質設定ができるらしいのだが、「Menuキー」を押すという今更な仕様。ちなみにS6では戻るボタン長押しでMenuキーの代用ができるのだが、画質設定の画面ではメニューキーがきかないので結局設定できず。「MirrorOp Sender」の方はよりバージョンが新しく設定ボタンが設置されているので設定できるが、結局「MirrorOp Sender for Galaxy」の方が画質がいいのでこちらを使っている。ちなみに「MirrorOp Sender for Galaxy」は有料(1000円ちょっと)だが、制限時間以内なら試用できる。
ここで親切な人ならどのくらいのFPSで動いているのか動画をアップしたりするんだろうけど、オレはしない!めんどくさいから。皆自分で試せ!