Androidデバイス単体で画面録画をしようとすると、負荷が掛かったり、録画用のアプリを入れたりするのが面倒で、PC側にミラーリングして処理を分散したかったのでソフトを探していました。
何か良いツールはないかと探していたら「scrcpy」がありました。
「scrcpy」について
「scrcpy」は、Android5.0以降に搭載された機能を用いてミラーリングが行える、オープンソース開発のソフトウェアです。
主に、画面ミラーリングやAndroidデバイスをPC側から操作できます。
「Windows・Linux・Mac」で利用できます。
有線接続・無線接続に対応していて、有線接続の場合は面倒な手順は不要です。
無線接続の場合はadbコマンドで環境を構築する必要があります。
また、Android10以降であればAudioPlaybackCapture APIが導入されたため、内部音声も取り込めるようになりました。
内部音声をPCに出力するには「sndcpy」が必要になります。(後述)
「ウマウマクルーズ」などの有能ツールを多数作成しているamate氏によって、scrcpyとsndcpyを合体させた「scrsndcpy」が登場しました。(今から利用するならこっちがオススメです)
ダウンロードリンク
「scrcpy」を起動する
ダウンロードした「scrcpy」のzipファイルを任意の場所に解凍します。
adbデバックを有効化したAndroidデバイスを接続し、フォルダ内の「scrcpy」を実行します。


PC上に、接続したAndroidデバイスの画面が表示されます。

大体のAndroidデバイスで「scrcpy」との接続は可能ですが、一部デバイスでは初期設定のまま認識させることはできません。(例:Fire HD10などの1920×1200、1080×2400などのFHD+)
「ERROR:scrcpy -m 1024」とエラーを吐かれて、ミラーリングがうまく行きません。

この場合、コマンド(Power Shell)から「scrcpy.exe -m 1280」など…解像度を指定すると「scrcpy」を起動できます。

面倒な場合はコマンド(シェル)に、scrcpy.exeファイルをぶちこんでから後ろに「-m 12~」を付けてEnterでOK。

「sndcpy」を使用可能にする
「scrcpy」で、画面ミラーリング・PC側からデバイス操作はできますが、「scrcpy」単体では内部音声の出力ができません。
そこで、「sndcpy」を使用してPC側に音声を出力可能にします。
Android 10以降が必須かつテスト扱いで、Windows 10側には、メディアプレーヤー「VLC」のインストールが必要になります。
ちなみに、Android 9以前で試そうとしたところ「sndcpy」のアプリインストールに失敗し、試せませんでした。
ダウンロードリンク
導入手順
上記のダウンロードリンクから、「sndcpy」の配布ページへ移動し「sndcpy」のzipファイルをダウンロード。
「Windows 10」ユーザーは、2番目の「sndcpy-with-adb-windows-v1.0.zip」を選択します。
「sndcpy」のzipファイルを解凍し、フォルダ内の「sndcpy.apk」をAndroidデバイス側にインストールします。

「VLC」がインストールされた「Windows 10」のPC側から、先に「scrcpy」を起動しておきます。
「sndcpy」は「scrcpy」と違い、ソフト起動用のexeファイルがないので、Windowsの「ファイル名を指定して実行」から「sndcpy」のパッチファイルを指定して実行します。(パッチファイルを2回クリック、コマンドからの起動でも可)

Android側にインストールした「sndcpy」が起動するので「今すぐ開始」をタップ。
Android側での操作後に、コマンド側に切り替え、Enterキーを押します。
「playnig…」の後に「Playing audio…」となりPC側のオーディオ出力に、Android側の音声が再生されます。
Android側とPC側のオーディオ出力でボリュームが異なっており、Android側をミュートにしてもPC側で再生可能でした。(何かしらに使えそうです)

使ってみる
「scrcpy」は、FPS計測ツールなどでAndroidでのゲームプレイ中の”大まかな”FPSの表示ができます。
大まかと言っても、十中八九実際に近い値が計測可能なので、フレームレートの計測に割と使えます。

PC側から操作ができるので、エミュレーター感覚でAndroidを使用したりもできます。
頑張れば「動画再生や調べ物+PCゲーム+Androidゲーム」みたいな使い方で、自動プレイに任せて周回…なんてことも。

「scrcpy」&「sndcpy」で出力した画面と音声
「scrcpy」&「sndcpy」で出力した画面と音声を、OBSで録画してみました。
1秒弱音声が遅延してますが、趣味程度の利用であればかなり実用的だと思いました。
まとめ | |
良い | 悪い |
・表示が高速かつ低遅延 ・デバイス側のリフレッシュレートに対応 ・エミュレーター感覚でPC側から操作可能 ・adb環境の構築などの面倒な手順が不要(無線接続の場合は必要) ・Android10以降ではsndcpyを使用して内部音声の録音が可能(βテスト扱い) ・zip形式かつexeファイルを動作させるだけなので、インストールの手間が不要 | ・細かい設定をする場合のコマンド起動が手間 ・sndcpyの音声出力は0.5~1s程度遅延する ・sndcpyの導入や起動が若干手間 |
最近のコメント