GitHub - Genymobile - Scrcpy - Display and Control Your Android Device
GitHub - Genymobile - Scrcpy - Display and Control Your Android Device
Genymobile / scrcpy
Dismiss
Join GitHub today
GitHub is home to over 40 million developers working together to host and
review code, manage projects, and build software together.
Sign up
Stamoulohta and rom1v Documentation rectifications … Latest commit f903cd3 15 days ago
FAQ.ko.md Add Korean translation for README and FAQ 3 months ago
gradle.properties Enable video output file, with pts set by server 16 months ago
https://github.com/Genymobile/scrcpy 1/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
README.md
scrcpy (v1.12.1)
This application provides display and control of Android devices connected on USB (or over TCP/IP). It does not require any
root access. It works on GNU/Linux, Windows and macOS.
It focuses on:
Requirements
The Android device requires at least API 21 (Android 5.0).
https://github.com/Genymobile/scrcpy 2/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
On some devices, you also need to enable an additional option to control it using keyboard and mouse.
Linux
In Debian (testing and sid for now):
You could also build the app manually (don't worry, it's not that hard).
Windows
For Windows, for simplicity, prebuilt archives with all the dependencies (including adb ) are available:
scrcpy-win32-v1.12.1.zip
(SHA-256: 0f4b3b063536b50a2df05dc42c760f9cc0093a9a26dbdf02d8232c74dab43480)
scrcpy-win64-v1.12.1.zip
(SHA-256: 57d34b6d16cfd9fe169bc37c4df58ebd256d05c1ea3febc63d9cb0a027ab47c9)
You need adb , accessible from your PATH . If you don't have it yet:
macOS
The application is available in Homebrew. Just install it:
You need adb , accessible from your PATH . If you don't have it yet:
Run
Plug an Android device, and execute:
https://github.com/Genymobile/scrcpy 3/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
scrcpy
scrcpy --help
Features
Capture configuration
Reduce size
To limit both the width and height to some value (e.g. 1024):
The other dimension is computed to that the device aspect ratio is preserved. That way, a device in 1920×1080 will be
mirrored at 1024×576.
Change bit-rate
The default bit-rate is 8 Mbps. To change the video bitrate (e.g. to 2 Mbps):
scrcpy --bit-rate 2M
scrcpy -b 2M # short version
On devices with Android >= 10, the capture frame rate can be limited:
scrcpy --max-fps 15
Crop
The device screen may be cropped to mirror only part of the screen.
This is useful for example to mirror only one eye of the Oculus Go:
Recording
It is possible to record the screen while mirroring:
https://github.com/Genymobile/scrcpy 4/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
"Skipped frames" are recorded, even if they are not displayed in real time (for performance reasons). Frames are timestamped
on the device, so packet delay variation does not impact the recorded file.
Connection
Wireless
Scrcpy uses adb to communicate with the device, and adb can connect to a device over TCP/IP:
Multi-devices
If several devices are listed in adb devices , you must specify the serial:
SSH tunnel
To connect to a remote device, it is possible to connect a local adb client to a remote adb server (provided they use the
same version of the adb protocol):
scrcpy
https://github.com/Genymobile/scrcpy 5/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
Window configuration
Title
Borderless
scrcpy --window-borderless
Always on top
scrcpy --always-on-top
Fullscreen
scrcpy --fullscreen
scrcpy -f # short version
Read-only
To disable controls (everything which can interact with the device: input keys, mouse events, drag&drop files):
scrcpy --no-control
scrcpy -n
It is possible to turn the device screen off while mirroring on start with a command-line option:
scrcpy --turn-screen-off
scrcpy -S
https://github.com/Genymobile/scrcpy 6/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
By default, to minimize latency, scrcpy always renders the last decoded frame available, and drops any previous one.
To force the rendering of all frames (at a cost of a possible increased latency), use:
scrcpy --render-expired-frames
Show touches
For presentations, it may be useful to show physical touches (on the physical device).
Scrcpy provides an option to enable this feature on start and disable on exit:
scrcpy --show-touches
scrcpy -t
Note that it only shows physical touches (with the finger on the device).
Input control
Note that it rotates only if the application in foreground supports the requested orientation.
Copy-paste
It is possible to synchronize clipboards between the computer and the device, in both directions:
Ctrl + v pastes the computer clipboard as a sequence of text events (but breaks non-ASCII characters).
By default, letters are injected using key events, so that the keyboard behaves as expected in games (typically for WASD
keys).
But this may cause issues. If you encounter such a problem, you can avoid it by:
scrcpy --prefer-text
File drop
https://github.com/Genymobile/scrcpy 7/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
Install APK
To install an APK, drag & drop an APK file (ending with .apk ) to the scrcpy window.
To push a file to /sdcard/ on the device, drag & drop a (non-APK) file to the scrcpy window.
Audio forwarding
Audio is not forwarded by scrcpy. Use USBaudio (Linux-only).
Shortcuts
https://github.com/Genymobile/scrcpy 8/9
3/2/2020 GitHub - Genymobile/scrcpy: Display and control your Android device
Custom paths
To use a specific adb binary, configure its path in the environment variable ADB :
ADB=/path/to/adb scrcpy
To override the path of the scrcpy-server file, configure its path in SCRCPY_SERVER_PATH .
Why scrcpy?
A colleague challenged me to find a name as unpronounceable as gnirehtet.
How to build?
See BUILD.
Common issues
See the FAQ.
Developers
Read the developers page.
Licence
http://www.apache.org/licenses/LICENSE-2.0
Articles
Introducing scrcpy
Scrcpy now works wirelessly
https://github.com/Genymobile/scrcpy 9/9