date
Mar 21, 2022
slug
android-remote-control-scrcpy-sndcpy
status
Published
tags
Android
安卓
adb
遠端控制
螢幕投影
scrcpy
summary
本篇介紹如何低成本低延遲高品質,在電腦上遠端操控 Android 手機。
遠端控制 = 遠端畫面 + 遠端音訊
type
Post
category
技術分享
icon
fa-brands fa-android
🍅 of writing
前言
我是因為遊戲而接觸程式設計,這輩子也離不開遊戲了大概。
在這個速食手遊的年代,想當然爾一支手機無法滿足遊戲需求……
雖然有 Android 模擬器的存在,但由於硬體限制,
有些程式總還是在實機運行才能得到較好效能體驗。
但我又想要能在電腦上操作遊戲阿?
這時候遠端控制就派上用場啦!
懶人包
scrcpy
/ qtscrcpy
擇一,可以取得低延遲的遠端畫面;
sndcpy
可以取得低延遲的音訊。
往下看先讀個 README ,照著做接著就能快樂使用。遠端畫面
不論是
scrcpy
qtscrcpy
還是 guiscrcpy
,不需要裝置有 root 權限,
都是透過 adb
的方式來取得裝置畫面;adb
可以 usb 有線或 WiFi 無線Scrcpy
It focuses on:
- lightness: native, displays only the device screen
- performance: 30~120fps, depending on the device
- quality: 1920×1080 or above
- low latency: 35~70ms
- low startup time: ~1 second to display the first image
- non-intrusiveness: nothing is left installed on the device
- user benefits: no account, no ads, no internet required
- freedom: free and open source software
有趣的是,這個東西是由 Genymobile 開發,
一間在很早以前就推出 Android 模擬器 Genymotion 的公司 🎉
真是安卓體系的福音 😊
QtScrcpy
遠端音訊
方法 | 優點 | 缺點 |
傳統有線方式
直接手機上插 AUX/3.5mm | 簡單粗暴 | 並非真的遠端
需要裝置支援音訊輸出 |
傳統無線方式
透過藍芽 | 簡單粗暴 | 並非真的遠端
播放裝置需要支援藍芽配對 |
adb 方式: sndcpy
透過 usb 線或 WiFi | 真的遠端
音訊版的 Screen Copy
電腦上可獨立調整音量 | ≥ Android 10
侵入式,會在手機安裝一個小 app 以取得音訊
若有其他 app 有使用無線投影功能,會有衝突
電腦上需要裝 VLC 來播放音訊 |
安裝
個人使用
qtscrcpy
+ sndcpy
Windows
閱讀對應的 README,從 GIT Repo releases 下載對應的 zip 版本
⇒ 解壓到自己的安裝目錄,偷懶的話可以把
qtscrcpy
與 sndcpy
放在一起
⇒ 透過 cmd 啟動程式cd /d P:\ath\to\QtScrcpy
./QtScrcpy.exe
# 如果要取得音訊
./sndcpy.exe
Arch Linux with AUR
yay scrcpy
# 從AUR庫挑一個裝
yay sndcpy
由於 sndcpy 是透過 forwarding 把音訊輸出到外部裝置上,
Linux 下
adb —serial
不支援 forward 指令,
所以我只能把裝置拔到剩一個再跑 sndcpy
... 😭小結
夠低成本吧!只要有 USB 線或 WiFi......
當然遠端操控的用途不一定是像我一樣打 game,可能有這些情境
- 開發人員實機調試 如 Genymotion Free 並沒有支援 arm64 (i.e ARMv8);Genymotion Cloud 有但收費
- 習慣手機閱讀,有許多電子檔,想到大螢幕上使用
- 喜歡看電視則能透過商店裝 Netflix 後投影播放,也就是 AndroidTV