README.jp - Genymobile/scrcpy GitHub Wiki
Only the original README is guaranteed to be up-to-date.
ãã®ã¢ããªã±ãŒã·ã§ã³ã¯USB(ãããã¯TCP/IPçµç±)ã§æ¥ç¶ãããAndroidããã€ã¹ã®è¡šç€ºãšå¶åŸ¡ãæäŸããŸãããã®ã¢ããªã±ãŒã·ã§ã³ã¯ root ã§ã®ã¢ã¯ã»ã¹ãå¿ èŠãšããŸããããã®ã¢ããªã±ãŒã·ã§ã³ã¯ GNU/Linux ã Windows ãã㊠macOS äžã§åäœããŸãã
以äžã«çŠç¹ãåœãŠãŠããŸã:
- 軜é (ãã€ãã£ããããã€ã¹ç»é¢è¡šç€ºã®ã¿)
- ããã©ãŒãã³ã¹ã(30~60fps)
- ã¯ãªãªãã£ã(1920x1080以äž)
- äœé 延ã(35~70ms)
- çãèµ·åæéã(ååç»åã1ç§ä»¥å ã«è¡šç€º)
- éäŸµå ¥åã(ããã€ã¹ã«äœãã€ã³ã¹ããŒã«ãããŠããªãç¶æ ã«ãªã)
Androidããã€ã¹ã¯API21(Android 5.0)以äžã
Androidããã€ã¹ã§adbãããã°ãæå¹ã§ããããšã
äžéšã®Androidããã€ã¹ã§ã¯ãããŒããŒããšããŠã¹ã䜿çšããŠå¶åŸ¡ããè¿œå ãªãã·ã§ã³ãæå¹ã«ããå¿ èŠãããã
Debian (testing ãš sid) ãšUbuntu(20.04):
apt install scrcpy
Snapããã±ãŒãžãå©çšå¯èœ: scrcpy
FedoraçšCOPRããã±ãŒãžãå©çšå¯èœ: scrcpy
Arch LinuxçšAURããã±ãŒãžãå©çšå¯èœ: scrcpy
GentooçšEbuildãå©çšå¯èœ: scrcpy
èªåã§ãã«ããå¯èœïŒå¿é ããªãã§ãã ãããããã»ã©é£ããã¯ãããŸãããïŒ
Windowsã§ã¯ç°¡åã«ãïŒadb
ãå«ãïŒãã¹ãŠã®äŸåé¢ä¿ãæ§ç¯æžã¿ã®ã¢ãŒã«ã€ããå©çšå¯èœã§ãã
Chocolateyã§ãå©çšå¯èœã§ã:
choco install scrcpy
choco install adb # ãŸã å
¥æããŠããªãå Žå
Scoopã§ãå©çšå¯èœã§ã:
scoop install scrcpy
scoop install adb # ãŸã å
¥æããŠããªãå Žå
ãŸããã¢ããªã±ãŒã·ã§ã³ããã«ãããããšãå¯èœã§ãã
ã¢ããªã±ãŒã·ã§ã³ã¯Homebrewã§å©çšå¯èœã§ãããã ã€ã³ã¹ããŒã«ããã ãã§ãã
brew install scrcpy
PATH
ããã¢ã¯ã»ã¹å¯èœãªadb
ãå¿
èŠã§ããããæã£ãŠããªãå Žåã¯ã€ã³ã¹ããŒã«ããŠãã ããã
brew install android-platform-tools
adb
ã¯MacPortsããã§ãã€ã³ã¹ããŒã«ã§ããŸãã
sudo port install scrcpy
ãŸããã¢ããªã±ãŒã·ã§ã³ããã«ãããããšãå¯èœã§ãã
Androidããã€ã¹ãæ¥ç¶ããå®è¡:
scrcpy
次ã®ã³ãã³ãã§ãªã¹ããããã³ãã³ãã©ã€ã³åŒæ°ãåãä»ããŸã:
scrcpy --help
Androidããã€ã¹ãäœè§£å床ã§ãã©ãŒãªã³ã°ããå Žåãããã©ãŒãã³ã¹åäžã«äŸ¿å©ãªå ŽåããããŸãã
å¹ ãšé«ããããå€(äŸïŒ1024)ã«å¶éããã«ã¯:
scrcpy --max-size 1024
scrcpy -m 1024 # ççž®ç
äžæ¹ã®ãµã€ãºã¯ããã€ã¹ã®ã¢ã¹ãã¯ãæ¯ãç¶æãããããã«èšç®ãããŸãããã®æ¹æ³ã§ã¯ã1920x1080ã®ããã€ã¹ã§ã¯1024x576ã«ãã©ãŒãªã³ã°ãããŸãã
ãããã¬ãŒãã®åæå€ã¯8Mbpsã§ãããããã¬ãŒããå€æŽããã«ã¯(äŸ:2Mbpsã«å€æŽ):
scrcpy --bit-rate 2M
scrcpy -b 2M # ççž®ç
ãã£ããã£ãããã¬ãŒã ã¬ãŒããå¶éã§ããŸã:
scrcpy --max-fps 15
ãã®æ©èœã¯Android 10ãããªãã£ã·ã£ã«ãµããŒããšãªã£ãŠããŸããã以åã®ããŒãžã§ã³ã§ãåäœããå¯èœæ§ããããŸãã
ããã€ã¹ã®ç»é¢ã¯ãç»é¢ã®äžéšã®ã¿ããã©ãŒãªã³ã°ããããã«ããªãã³ã°ã§ããŸãã
ããã¯ãäŸãã°Oculus Goã®çæ¹ã®ç®ããã©ãŒãªã³ã°ããå Žåã«äŸ¿å©ã§ãã:
scrcpy --crop 1224:1440:0:0 # ãªãã»ããäœçœ®(0,0)ã§1224x1440
ãã--max-size
ãæå®ãããŠããå Žåãããªãã³ã°åŸã«ãµã€ãºå€æŽãé©çšãããŸãã
ãã©ãŒãªã³ã°ã®åããããã¯ããã«ã¯:
scrcpy --lock-video-orientation # çŸåšã®åã
scrcpy --lock-video-orientation=0 # èªç¶ãªåã
scrcpy --lock-video-orientation=1 # 90°åæèšåã
scrcpy --lock-video-orientation=2 # 180°
scrcpy --lock-video-orientation=3 # 90°æèšåã
ãã®èšå®ã¯é²ç»ã®åãã«åœ±é¿ããŸãã
ãŠã£ã³ããŠã¯ç¬ç«ããŠå転ããããšãã§ããŸãã
ããã€ãã®ããã€ã¹ã§ã¯äžã€ä»¥äžã®ãšã³ã³ãŒããæã¡ãŸãããããã®ããã€ãã¯ãåé¡ãã¯ã©ãã·ã¥ãåŒãèµ·ãããŸããå¥ã®ãšã³ã³ãŒããéžæããããšãå¯èœã§ã:
scrcpy --encoder OMX.qcom.video.encoder.avc
å©çšå¯èœãªãšã³ã³ãŒãããªã¹ãããããã«ãç¡å¹ãªãšã³ã³ãŒãåãæž¡ãããšãã§ããŸãããšã©ãŒè¡šç€ºã§å©çšå¯èœãªãšã³ã³ãŒããæäŸããŸãã
scrcpy --encoder _
ãã©ãŒãªã³ã°äžã«ç»é¢ã®é²ç»ãããããšãå¯èœã§ã:
scrcpy --record file.mp4
scrcpy -r file.mkv
é²ç»äžã«ãã©ãŒãªã³ã°ãç¡å¹ã«ããã«ã¯:
scrcpy --no-display --record file.mp4
scrcpy -Nr file.mkv
# Ctrl+Cã§é²ç»ãäžæãã
"ã¹ãããããããã¬ãŒã "ã¯(ããã©ãŒãã³ã¹äžã®çç±ã§)ãªã¢ã«ã¿ã€ã ã§è¡šç€ºãããªããŠãé²ç»ãããŸãã
ãã¬ãŒã ã¯ããã€ã¹äžã§ ã¿ã€ã ã¹ã¿ã³ãããã ãã ãã±ããé 延ã®ããªãšãŒã·ã§ã³ ã¯é²ç»ããããã¡ã€ã«ã«åœ±é¿ãäžããŸããã
Linuxã§ã¯ããããªã¹ããªãŒã ãv4l2ã«ãŒãããã¯ããã€ã¹ã«éä¿¡ããããšãã§ããŸãã v4l2loopbackã®ããã€ã¹ã«ãããªã¹ããªãŒã ãéä¿¡ããããšã§ãAndroidããã€ã¹ããŠã§ãã«ã¡ã©ã®ããã«v4l2察å¿ããŒã«ã§éãããšãã§ããŸãã
v4l2loopback
ã¢ãžã¥ãŒã«ã®ã€ã³ã¹ããŒã«ãå¿
èŠã§ãã
sudo apt install v4l2loopback-dkms
v4l2ããã€ã¹ãäœæããã
sudo modprobe v4l2loopback
ããã«ãããæ°ãããããªããã€ã¹ã /dev/videoN
ã«äœæãããŸããïŒN
ã¯æŽæ°ïŒ
(è€æ°ã®ããã€ã¹ãç¹å®ã®IDã®ããã€ã¹ãäœæããããã«ãããå€ãã®ãªãã·ã§ã³ãå©çšå¯èœã§ãã
å€ãã®ãªãã·ã§ã³ãå©çšå¯èœã§è€æ°ã®ããã€ã¹ãç¹å®ã®IDã®ããã€ã¹ãäœæã§ããŸãã
æå¹ãªããã€ã¹ãäžèŠ§è¡šç€ºãã:
# v4l-utilsããã±ãŒãžãå¿
èŠ
v4l2-ctl --list-devices
# ã·ã³ãã«ã§ããååããã§ç¢ºèªã§ããŸã
ls /dev/video*
v4l2ã·ã³ã¯ã䜿çšããŠscrcpyãèµ·åããã
scrcpy --v4l2-sink=/dev/videoN
scrcpy --v4l2-sink=/dev/videoN --no-display # ãã©ãŒãªã³ã°ãŠã£ã³ããŠãç¡å¹åãã
scrcpy --v4l2-sink=/dev/videoN -N # ççž®ç
(N
ãããã€ã¹ ID ã«çœ®ãæããŠãls /dev/video*
ã§ç¢ºèªããŠãã ãã)
æå¹ã«ãããšãv4l2察å¿ã®ããŒã«ã§ãããªã¹ããªãŒã ãéããŸãã
ffplay -i /dev/videoN
vlc v4l2:///dev/videoN # VLCã§ã¯ãããã¡ãªã³ã°ã®é
延ãçºçããå ŽåããããŸã
äŸãã°ã§ãã OBSã®äžã«ãã®æ åãåã蟌ãããšãã§ããŸãã
ãããã¡ãªã³ã°ãè¿œå ããããšãå¯èœã§ããããã«ããã¬ã€ãã³ã·ãŒã¯å¢å ããŸããããžãã¿ãŒã¯æžå°ããŸããïŒåç § #2464)
ãã®ãªãã·ã§ã³ã§ãã£ã¹ãã¬ã€ãããã¡ãªã³ã°ãèšå®ã§ããŸãã
scrcpy --display-buffer=50 # ãã£ã¹ãã¬ã€ã«50msã®ãããã¡ãªã³ã°ãè¿œå ãã
V4L2ã®å Žåã¯ãã¡ãã®ãªãã·ã§ã³ã§èšå®ã§ããŸãã
scrcpy --v4l2-buffer=500 # add 500 ms buffering for v4l2 sink
Scrcpy ã¯ããã€ã¹ãšã®éä¿¡ã«adb
ã䜿çšããŸãããããŠadb
ã¯TCP/IPãä»ãããã€ã¹ã«æ¥ç¶ããããšãã§ããŸã:
-
ããªãã®ã³ã³ãã¥ãŒã¿ãšåãWi-Fiã«æ¥ç¶ããŸãã
-
ããªãã®IPã¢ãã¬ã¹ãååŸããŸããèšå® â 端æ«æ å ± â ã¹ããŒã¿ã¹æ å ±ããããã¯ããã®ã³ãã³ããå®è¡ããŸã:
adb shell ip route | awk '{print $9}'
-
ããªãã®ããã€ã¹ã§TCP/IPãä»ããadbãæå¹ã«ããŸã:
adb tcpip 5555
-
ããªãã®ããã€ã¹ã®æ¥ç¶ãå€ããŸãã
-
ããªãã®ããã€ã¹ã«æ¥ç¶ããŸã:
adb connect DEVICE_IP:5555
(DEVICE_IP
ã¯çœ®ãæãã) -
éåžžéã
scrcpy
ãå®è¡ããŸãã
ãã®æ¹æ³ã¯ãããã¬ãŒããšè§£å床ãæžããã®ã«ããããæçšã§ã:
scrcpy --bit-rate 2M --max-size 800
scrcpy -b2M -m800 # ççž®ç
ããadb devices
ã§ããã€ãã®ããã€ã¹ããªã¹ããããå Žåã ã·ãªã¢ã«ãã³ã㌠ãæå®ããå¿
èŠããããŸã:
scrcpy --serial 0123456789abcdef
scrcpy -s 0123456789abcdef # ççž®ç
ããã€ã¹ãTCP/IPãä»ããŠæ¥ç¶ãããŠããå Žå:
scrcpy --serial 192.168.0.1:5555
scrcpy -s 192.168.0.1:5555 # ççž®ç
è€æ°ã®ããã€ã¹ã«å¯ŸããŠãè€æ°ã® scrcpy ã€ã³ã¹ã¿ã³ã¹ãéå§ããããšãã§ããŸãã
AutoAdbã䜿çšå¯èœã§ã:
autoadb scrcpy -s '{}'
ãªã¢ãŒãããã€ã¹ã«æ¥ç¶ãããããããŒã«ã«adb
ã¯ã©ã€ã¢ã³ããããªã¢ãŒãadb
ãµãŒããŒãžæ¥ç¶ããããšãå¯èœã§ã(åãããŒãžã§ã³ã® adb ãããã³ã«ã䜿çšããŠããå Žå):
adb kill-server # 5037ããŒãã®ããŒã«ã«adbãµãŒããŒãçµäºãã
ssh -CN -L5037:localhost:5037 -R27183:localhost:27183 your_remote_computer
# ãªãŒãã³ãããŸãŸã«ãã
ä»ã®ç«¯æ«ãã:
scrcpy
ãªã¢ãŒãããŒã転éã®æå¹åãåé¿ããããã«ã¯ã代ããã«è»¢éæ¥ç¶ã匷å¶ããããšãã§ããŸã(-R
ã®ä»£ããã«-L
ã䜿çšããããšã«æ³šæ):
adb kill-server # 5037ããŒãã®ããŒã«ã«adbãµãŒããŒãçµäºãã
ssh -CN -L5037:localhost:5037 -L27183:localhost:27183 your_remote_computer
# ãªãŒãã³ãããŸãŸã«ãã
ä»ã®ç«¯æ«ãã:
scrcpy --force-adb-forward
ã¯ã€ã€ã¬ã¹æ¥ç¶ãšåæ§ã«ãã¯ãªãªãã£ãäžãããšäŸ¿å©ãªå ŽåããããŸã:
scrcpy -b2M -m800 --max-fps 15
ãŠã£ã³ããŠã®ã¿ã€ãã«ã¯ããã€ã¹ã¢ãã«ãåæå€ã§ããããã¯å€æŽã§ããŸã:
scrcpy --window-title 'My device'
ãŠã£ã³ããŠã®äœçœ®ãšãµã€ãºã®åæå€ãæå®ã§ããŸã:
scrcpy --window-x 100 --window-y 100 --window-width 800 --window-height 600
ãŠã£ã³ããŠã®è£ 食ãç¡å¹åããã«ã¯:
scrcpy --window-borderless
scrcpyã®ç»é¢ãåžžã«ãããã«ããã«ã¯:
scrcpy --always-on-top
ã¢ããªã±ãŒã·ã§ã³ãçŽæ¥ãã«ã¹ã¯ãªãŒã³ã§éå§ã§ããŸã:
scrcpy --fullscreen
scrcpy -f # ççž®ç
ãã«ã¹ã¯ãªãŒã³ã¯ã次ã®ã³ãã³ãã§åçã«åãæ¿ããããšãã§ããŸã MOD+f
ãŠã£ã³ããŠã¯å転ããããšãã§ããŸã:
scrcpy --rotation 1
èšå®å¯èœãªå€:
-
0
: å転ãªã -
1
: 90° åæèšåã -
2
: 180° -
3
: 90° æèšåã
å転ã¯æ¬¡ã®ã³ãã³ãã§åçã«å€æŽããããšãã§ããŸãã MOD+â(å·Š) ã MOD+â(å³)
scrcpy ã¯3ã€ã®å転ã管çããããšã«æ³šæ:
- MOD+rã¯ããã€ã¹ã«çžŠåããšæšªåãã®åãæ¿ããèŠæ±ãã(çŸåšå®è¡äžã®ã¢ããªã§èŠæ±ããŠããåãããµããŒãããŠããªãå ŽåãæåŠããããšããã)
-
--lock-video-orientation
ã¯ããã©ãŒãªã³ã°ããåããå€æŽãã(ããã€ã¹ããPCãžéä¿¡ãããåã)ãé²ç»ã«åœ±é¿ããŸãã -
--rotation
(ãããã¯MOD+â/MOD+â)ã¯ããŠã£ã³ããŠã®ã³ã³ãã³ãã®ã¿ãå転ããŸããããã¯è¡šç€ºã«ã®ã¿ã«åœ±é¿ããé²ç»ã«ã¯åœ±é¿ããŸããã
å¶åŸ¡ãç¡å¹ã«ããã«ã¯(ããã€ã¹ãšå¯Ÿè©±ããå šãŠã®ãã®:å ¥åããŒãããŠã¹ã€ãã³ãããã¡ã€ã«ã®ãã©ãã°&ãããã):
scrcpy --no-control
scrcpy -n
ããã€ãå©çšå¯èœãªãã£ã¹ãã¬ã€ãããå Žåããã©ãŒãªã³ã°ãããã£ã¹ãã¬ã€ãéžæã§ããŸã:
scrcpy --display 1
ãã£ã¹ãã¬ã€IDã®ãªã¹ãã¯æ¬¡ã®æ¹æ³ã§ååŸã§ããŸã:
adb shell dumpsys display # search "mDisplayId=" in the output
ã»ã«ã³ããªãã£ã¹ãã¬ã€ã¯ãããã€ã¹ãå°ãªããšãAndroid 10ã®å Žåã«ã³ã³ãããŒã«å¯èœã§ãã(ãã以å€ã§ã¯ãªãŒããªã³ãªãŒã§ãã©ãŒãªã³ã°ãããŸã)
ããã€ã¹æ¥ç¶æãå°ãé ããŠããããã€ã¹ã®ã¹ãªãŒããé²ãã«ã¯:
scrcpy --stay-awake
scrcpy -w
scrcpyãéããããæãåæç¶æ ã«åŸ©å ãããŸãã
ã³ãã³ãã©ã€ã³ãªãã·ã§ã³ã䜿çšããããšã§ããã©ãŒãªã³ã°ã®éå§æã«ããã€ã¹ã®ç»é¢ãOFFã«ããããšãã§ããŸã:
scrcpy --turn-screen-off
scrcpy -S
ãããã¯ãMOD+oãæŒãããšã§ãã€ã§ãã§ããŸãã
å ã«æ»ãã«ã¯ãMOD+Shift+oãæŒããŸãã
Androidã§ã¯ãPOWER
ãã¿ã³ã¯ãã€ã§ãç»é¢ã衚瀺ããŸãã䟿å®äžãPOWER
ãscrcpyãä»ããŠ(å³ã¯ãªãã¯ãããã¯MOD+pãä»ããŠ)éä¿¡ãããå Žåã(ãã¹ããšãã©ãŒãããŒã¹ã§)å°ãé
ããŠã匷å¶çã«ç»é¢ãé衚瀺ã«ããŸãããã ããç©ççãªPOWER
ãã¿ã³ãæŒããå Žåã¯ãç»é¢ã¯è¡šç€ºãããŸãã
ãã®ãªãã·ã§ã³ã¯ããã€ã¹ãã¹ãªãŒãããªãããã«ããããšã«ã圹ç«ã¡ãŸã:
scrcpy --turn-screen-off --stay-awake
scrcpy -Sw
ãã¬ãŒã³ããŒã·ã§ã³ã®å Žå(ç©çããã€ã¹äžã§)ç©ççãªã¿ããã衚瀺ãããšäŸ¿å©ãªå ŽåããããŸãã
Androidã¯ãã®æ©èœã éçºè ãªãã·ã§ã³ ã§æäŸããŸãã
Scrcpyãã¯éå§æã«ãã®æ©èœãæå¹ã«ããçµäºæã«åæå€ã埩å ãããªãã·ã§ã³ãæäŸããŸã:
scrcpy --show-touches
scrcpy -t
(ããã€ã¹äžã§æã䜿ã£ã) ç©çç㪠ã¿ããã®ã¿è¡šç€ºãããããšã«æ³šæããŠãã ããã
åæç¶æ ã§ã¯ãscrcpyã¯ã³ã³ãã¥ãŒã¿äžã§ã¹ã¯ãªãŒã³ã»ãŒããŒãå®è¡ãããäºã劚ããŸããã
ãããç¡å¹ã«ããã«ã¯:
scrcpy --disable-screensaver
MOD+rãæŒãããšã§ã瞊åããšæšªåããåãæ¿ããŸãã
ãã©ã¢ã°ã©ãŠã³ãã®ã¢ããªã±ãŒã·ã§ã³ãèŠæ±ãããåãããµããŒãããŠããå Žåã®ã¿å転ããããšã«æ³šæããŠãã ããã
Androidã®ã¯ãªããããŒããå€æŽããã床ã«ãã³ã³ãã¥ãŒã¿ã®ã¯ãªããããŒãã«èªåçã«åæãããŸãã
Ctrlã®ã·ã§ãŒãã«ããã¯å šãŠããã€ã¹ã«è»¢éãããŸããç¹ã«:
- Ctrl+c éåžžã¯ã³ããŒããŸã
- Ctrl+x éåžžã¯ã«ããããŸã
- Ctrl+v éåžžã¯ããŒã¹ãããŸã(ã³ã³ãã¥ãŒã¿ãšããã€ã¹ã®ã¯ãªããããŒããåæãããåŸ)
éåžžã¯æåŸ éãã«åäœããŸãã
ããããªãããå®éã®åäœã¯ã¢ã¯ãã£ããªã¢ããªã±ãŒã·ã§ã³ã«äŸåããŸããäŸãã°ãTermux ã¯ä»£ããã«Ctrl+cã§SIGINTãéä¿¡ããŸãããããŠãK-9 Mail ã¯æ°ããã¡ãã»ãŒãžãäœæããŸãã
ãã®ãããªã±ãŒã¹ã§ã³ããŒãã«ãããããŠããŒã¹ããããã«ã¯(Android 7以äžã§ã®ãµããŒãã®ã¿ã§ãã):
-
MOD+c
COPY
ãæ¿å ¥ -
MOD+x
CUT
ãæ¿å ¥ -
MOD+v
PASTE
ãæ¿å ¥(ã³ã³ãã¥ãŒã¿ãšããã€ã¹ã®ã¯ãªããããŒããåæãããåŸ)
å ããŠãMOD+Shift+vã¯ã³ã³ãã¥ãŒã¿ã®ã¯ãªããããŒãããã¹ãã«ããŒã€ãã³ãã®ã·ãŒã±ã³ã¹ãšããŠæ¿å ¥ããããšãèš±å¯ããŸããããã¯ã³ã³ããŒãã³ããããã¹ãã®ããŒã¹ããèš±å¯ããªãå Žå(äŸãã° Termux)ã«æçšã§ãããéASCIIã³ã³ãã³ããå£ãå¯èœæ§ããããŸãã
èŠå: ããã€ã¹ã«ã³ã³ãã¥ãŒã¿ã®ã¯ãªããããŒãã(Ctrl+vãŸãã¯MOD+vãä»ããŠ)ããŒã¹ãããããšã¯ãããã€ã¹ã®ã¯ãªããããŒãã«ã³ã³ãã³ããã³ããŒããŸããçµæãšããŠã©ã®Andoridã¢ããªã±ãŒã·ã§ã³ããã®ã³ã³ãã³ããèªã¿åãããšãã§ããŸããæ©å¯æ§ã®é«ãã³ã³ãã³ã(äŸãã°ãã¹ã¯ãŒããªã©)ããã®æ¹æ³ã§ããŒã¹ãããããšã¯é¿ããŠãã ããã
ããã°ã©ã ã§ããã€ã¹ã®ã¯ãªããããŒããèšå®ããå Žåãäžéšã®ããã€ã¹ã¯æåŸ
ã©ããã«åäœããŸããã--legacy-paste
ãªãã·ã§ã³ã¯ãã³ã³ãã¥ãŒã¿ã®ã¯ãªããããŒãããã¹ããããŒã€ãã³ãã®ã·ãŒã±ã³ã¹ãšããŠæ¿å
¥ãããã(MOD+Shift+vãšåãæ¹æ³)ãCtrl+vãšMOD+vã®åäœã®å€æŽãæäŸããŸãã
"ãã³ãããŠãºãŒã ãã"ãã·ãã¥ã¬ãŒãããã«ã¯: Ctrl+ã¯ãªãã¯&移å
ããæ£ç¢ºã«ããã«ã¯ãå·Šã¯ãªãã¯ãã¿ã³ãæŒããŠããéãCtrlãæŒãããŸãŸã«ããŸããå·Šã¯ãªãã¯ãã¿ã³ãé¢ããŸã§ãå šãŠã®ããŠã¹ã®åãã¯ã(ã¢ããªã§ãµããŒããããŠããå Žå)ç»é¢ã®äžå¿ãåºæºãšããŠãã³ã³ãã³ããæ¡å€§çž®å°ããã³å転ããŸãã
å ·äœçã«ã¯ãscrcpyã¯ç»é¢ã®äžå€®ãå転ããäœçœ®ã«ãã"ããŒãã£ã«ãã£ã³ã¬ãŒ"ããè¿œå ã®ã¿ããã€ãã³ããçæããŸãã
ããã¹ããã¿ã€ãããæã«çæããã2çš®é¡ã®ã€ãã³ãããããŸã:
- key eventsãã¯ããŒãæŒãããšããšé¢ããããšãéç¥ããŸãã
- text eventsãã¯ããã¹ããå ¥åãããããšãéç¥ããŸãã
åæç¶æ ã§ãæåã¯ããŒã€ãã³ãã§æ¿å ¥ããããããããŒããŒãã¯ã²ãŒã ã§æåŸ éãã«åäœããŸã(éåžžã¯WASDããŒ)ã
ããããããã¯åé¡ãåŒãèµ·ãããããããŸããããããã®ãããªåé¡ãçºçããå Žåã¯ããã®æ¹æ³ã§åé¿ã§ããŸã:
scrcpy --prefer-text
(ããããã®æ¹æ³ã¯ã²ãŒã ã®ããŒããŒãã®åäœãå£ããŸã)
åæç¶æ ã§ã¯ãããŒã®æŒãã£ã±ãªãã¯ç¹°ãè¿ãã®ããŒã€ãã³ããçæããŸãããããã®ã€ãã³ãã䜿ãããªãå Žåã§ãããã®æ¹æ³ã¯äžéšã®ã²ãŒã ã§ããã©ãŒãã³ã¹ã®åé¡ãåŒãèµ·ãå¯èœæ§ããããŸãã
ç¹°ãè¿ãã®ããŒã€ãã³ãã®è»¢éãåé¿ããããã«ã¯:
scrcpy --no-key-repeat
åæç¶æ ã§ã¯ãå³ã¯ãªãã¯ã¯ããã¯ã®åäœ(ãããã¯ãã¯ãŒãªã³)ãèµ·ãããçãäžã¯ãªãã¯ã§ã¯ããŒã ç»é¢ãžæ»ããŸãããã®ã·ã§ãŒãã«ãããç¡å¹ã«ãã代ããã«ããã€ã¹ãžã¯ãªãã¯ã転éããã«ã¯:
scrcpy --forward-all-clicks
APKãã€ã³ã¹ããŒã«ããã«ã¯ã(.apk
ã§çµãã)APKãã¡ã€ã«ã scrcpy ã®ç»é¢ã«ãã©ãã°&ããããããŸãã
èŠãç®ã®ãã£ãŒãããã¯ã¯ãããŸãããã³ã³ãœãŒã«ã«ãã°ãåºåãããŸãã
ããã€ã¹ã®/sdcard/Download
ãã£ã¬ã¯ããªã«ãã¡ã€ã«ãéãã«ã¯ã(APKã§ã¯ãªã)ãã¡ã€ã«ã scrcpy ã®ç»é¢ã«ãã©ãã°&ããããããŸãã
èŠãç®ã®ãã£ãŒãããã¯ã¯ãããŸãããã³ã³ãœãŒã«ã«ãã°ãåºåãããŸãã
転éå ãã£ã¬ã¯ããªãèµ·åæã«å€æŽããããšãã§ããŸã:
scrcpy --push-target=/sdcard/Movies/
é³å£°ã¯ scrcpy ã§ã¯è»¢éãããŸãããsndcpyã䜿çšããŸãã
issue #14ãåç §ãã ããã
次ã®ãªã¹ãã§ã¯ãMODã§ã·ã§ãŒãã«ããå€æŽããŸããåæç¶æ ã§ã¯ã(left)AltãŸãã¯(left)Superã§ãã
ããã¯--shortcut-mod
ã§å€æŽããããšãã§ããŸããå¯èœãªããŒã¯lctrl
ãrctrl
ãlalt
ã ralt
ã lsuper
ãããŠrsuper
ã§ããäŸãã°:
# RCtrlãã·ã§ãŒãã«ãããšããŠäœ¿çšããŸã
scrcpy --shortcut-mod=rctrl
# ã·ã§ãŒãã«ããã«LCtrl+LAltãŸãã¯LSuperã®ããããã䜿çšããŸã
scrcpy --shortcut-mod=lctrl+lalt,lsuper
Superã¯éåžžWindowsãããã¯CmdããŒã§ãã
ã¢ã¯ã·ã§ã³ | ã·ã§ãŒãã«ãã |
---|---|
ãã«ã¹ã¯ãªãŒã³ã¢ãŒããžã®åãæ¿ã | MOD+f |
ãã£ã¹ãã¬ã€ãå·Šã«å転 | MOD+â (å·Š) |
ãã£ã¹ãã¬ã€ãå³ã«å転 | MOD+â (å³) |
ãŠã£ã³ããŠãµã€ãºãå€æŽããŠ1:1ã«å€æŽ(ãã¯ã»ã«ããŒãã§ã¯ã) | MOD+g |
ãŠã£ã³ããŠãµã€ãºãå€æŽããŠé»ãå¢çç·ãåé€ | MOD+w | ããã«ã¯ãªãã¯Â¹ |
HOME ãã¯ãªã㯠|
MOD+h | çãäžã¯ãªã㯠|
BACK ãã¯ãªã㯠|
MOD+b | å³ã¯ãªãã¯Â² |
APP_SWITCH ãã¯ãªã㯠|
MOD+s | 4ã¯ãªãã¯Â³ |
MENU (ç»é¢ã®ã¢ã³ããã¯)ãã¯ãªã㯠|
MOD+m |
VOLUME_UP ãã¯ãªã㯠|
MOD+â (äž) |
VOLUME_DOWN ãã¯ãªã㯠|
MOD+â (äž) |
POWER ãã¯ãªã㯠|
MOD+p |
é»æºãªã³ | å³ã¯ãªãã¯Â² |
ããã€ã¹ç»é¢ããªãã«ãã(ãã©ãŒãªã³ã°ãããŸãŸ) | MOD+o |
ããã€ã¹ç»é¢ããªã³ã«ãã | MOD+Shift+o |
ããã€ã¹ç»é¢ãå転ãã | MOD+r |
éç¥ããã«ãå±éãã | MOD+n | 5ãã¿ã³ã¯ãªãã¯Â³ |
èšå®ããã«ãå±éãã | MOD+n+n | 5ããã«ã¯ãªãã¯Â³ |
éç¥ããã«ãæãããã | MOD+Shift+n |
ã¯ãªããããŒããžã®ã³ããŒÂ³ | MOD+c |
ã¯ãªããããŒããžã®ã«ãã³ | MOD+x |
ã¯ãªããããŒãã®åæãšããŒã¹ã³ | MOD+v |
ã³ã³ãã¥ãŒã¿ã®ã¯ãªããããŒãããã¹ãã®æ¿å ¥ | MOD+Shift+v |
FPSã«ãŠã³ã¿æå¹/ç¡å¹(æšæºå ¥åºåäž) | MOD+i |
ãã³ãããŠãºãŒã ãã | Ctrl+ã¯ãªãã¯&移å |
¹é»ãå¢çç·ãåé€ãããããå¢çç·äžã§ããã«ã¯ãªãã¯
²ããã¹ã¯ãªãŒã³ããªãã®å Žåãå³ã¯ãªãã¯ã§ã¹ã¯ãªãŒã³ããªã³ããããã以å€ã®å Žåã¯BackãæŒããŸã.
³4ãš5ã¯ããŠã¹ã®ãã¿ã³ã§ããããããªãã®ããŠã¹ã«ãã¿ã³ãããã°äœ¿ããŸã.
âŽAndroid 7以äžã®ã¿.
ããŒãç¹°ãè¿ãã·ã§ãŒãã«ããã¯ããŒãé¢ããŠ2åç®ãæŒãããå®è¡ãããŸããäŸãã°ãèšå®ããã«ãå±éããããå®è¡ããå Žåã¯ä»¥äžã®ããã«æäœããã
- MOD ããŒãæŒããæŒãããŸãŸã«ãã.
- ãã®åŸã« nããŒã2åæŒã.
- æåŸã« MODããŒãé¢ã.
å šãŠã®Ctrl+ã㌠ã·ã§ãŒãã«ããã¯ããã€ã¹ã«è»¢éãããŸãããã®ããã¢ã¯ãã£ããªã¢ããªã±ãŒã·ã§ã³ã«ãã£ãŠåŠçãããŸãã
ç¹å®ã® adb ãã€ããªã䜿çšããå Žåããã®ãã¹ãç°å¢å€æ°ADB
ã§æ§æããŸã:
ADB=/path/to/adb scrcpy
scrcpy-server
ãã¡ã€ã«ã®ãã¹ãäžæžãããã«ã¯ãSCRCPY_SERVER_PATH
ã§ãã®ãã¹ãæ§æããŸãã
ååãç§ã«ãgnirehtetã®ããã«çºé³ã§ããªãååãèŠã€ããããã«èŠæ±ããŸããã
strcpy
ã¯stringãã³ããŒããŸããscrcpy
ã¯screenãã³ããŒããŸãã
BUILDãåç §ããŠãã ããã
FAQãåç §ããŠãã ããã
éçºè ã®ããŒãžãèªãã§ãã ããã
Copyright (C) 2018 Genymobile
Copyright (C) 2018-2022 Romain Vimont
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.