Genymobile /scrcpy
Display and control your Android device
★ 154,470⑂ 14,178👁 1,423⑃ 770● 6,225▤ 54◈ 0
154,470
stars
+86
14,178
forks
1,423
watchers
770
prs
6,225
issues
54
releases
0
discussions
README
[!WARNING]
This GitHub repo () is the only official
source for the project. Do not download releases from random websites, even if
their name contains scrcpy.
scrcpy (v5.0.1)
_pronounced "screen copy"_
This application mirrors Android devices (video and audio) connected via USB or
TCP/IP and allows control using the
computer's keyboard and mouse. It does not require _root_ access or an app
installed on the device. It works on _Linux_, _Windows_, and _macOS_.
!screenshot
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][lowlatency]
- low startup time: ~1 second to display the first image
- non-intrusiveness: nothing is left installed on the Android device
- user benefits: no account, no ads, no internet required
- freedom: free and open source software
[lowlatency]: https://github.com/Genymobile/scrcpy/pull/646
Its features include:
- audio forwarding (Android 11+)
- recording
- virtual display
- mirroring with Android device screen off
- copy-paste in both directions
- configurable quality
- camera mirroring (Android 12+)
- mirroring as a webcam (V4L2) (Linux-only)
- physical [keyboard][hid-keyboard] and [mouse][hid-mouse] simulation (HID)
- gamepad support
- OTG mode
- and more…
[hid-keyboard]: doc/keyboard.mdphysical-keyboard-simulation
[hid-mouse]: doc/mouse.mdphysical-mouse-simulation
Prerequisites
The Android device requires at least API 21 (Android 5.0).
Audio forwarding is supported for API = 30 (Android 11+).
Make sure you [enabled USB debugging][enable-adb] on your device(s).
[enable-adb]: https://developer.android.com/studio/debug/dev-optionsenable
On some devices (especially Xiaomi), you might get the following error:
Injecting input events requires the caller (or the source of the instrumentation, if any) to have the INJECT_EVENTS permission.
In that case, you need to enable [an additional option][control] USB debugging
(Security Settings) (this is an item different from USB debugging) to control
it using a keyboard and mouse. Rebooting the device is necessary once this
option is set.
[control]: https://github.com/Genymobile/scrcpy/issues/70issuecomment-373286323
Note that USB debugging is not required to run scrcpy in OTG mode.
Get the app
- Linux
- Windows (read how to run)
- macOS
Must-know tips
- Reducing resolution may greatly improve performance
(scrcpy -m1024)
- _Right-click_ triggers BACK
- _Middle-click_ triggers HOME
- Alt+f toggles fullscreen
- There are many other shortcuts
Usage examples
There are a lot of options, documented in separate pages.
Here are just some common examples.
- Capture the screen in H.265 (better quality), limit the size to 1920, limit
the frame rate to 60fps, disable audio, and control the device by simulating
a physical keyboard:
bash
scrcpy --video-codec=h265 --max-size=1Top issues
#100Using another android device as client117 comments · 2018-03-27#1518Scrcpy interaction with OPPO Phone is not working71 comments · 2020-06-17#712Request: Custom keyboard mapping56 comments · 2019-08-11#1872Scrcpy run and close on its own in few sec52 comments · 2020-10-31#1868Colors Washed out49 comments · 2020-10-29#1073Is it possible to redirect the stream to another application ? 46 comments · 2020-01-10#3049Optional root (su, Magisk Zygisk module, etc) for mirroring Android 12+ w/FLAG_SECURE45 comments · 2022-02-23#679Features implemented in a fork45 comments · 2019-08-01
Latest release
scrcpy 5.0.1 v5.0.1 2026-10-08_To receive a notification when a new release is available, click on Watch Custom Releases at the top._ --- scrcpy v5.0.1 Changes since v5.0: - Accept DRM_FORMAT_RG88 for NV12 chroma plane (7070, 7073) - Fix H.265 hardware decoding on Windows (7072) - Use the GPU of the renderer for VA-API decoding (7075, 7081) - Force EGL only if VA-API is enabled (7079) --- Highlights Hardware decoding fixes Scrcpy 5.0 introduced hardware decoding. This patch release (5.0.1) fixes several issues: - on Linux with an NVIDIA VA-API driver (7070, 7073) - for H.265 on W
News & coverage (19)
Hacker NewsScrcpy: Display and control your Android devices connected over USB or TCP/IP▲ 681 · 143 comments · 2023-04-29Hacker NewsScrcpy v4.0▲ 373 · 61 comments · 2026-05-12Hacker NewsScrcpy 2.0 mirrors Android devices with audio forwarding▲ 250 · 60 comments · 2023-03-14Hacker NewsScrcpy 2.2 adds Android camera mirroring▲ 138 · 34 comments · 2023-11-04Hacker NewsScrcpy: Display and control of Android devices connected on USB▲ 93 · 13 comments · 2018-04-30Hacker NewsScrcpy v1.20▲ 60 · 15 comments · 2021-11-16Hacker NewsScrcpy v2.0▲ 10 · 1 comments · 2023-03-12Hacker NewsScrcpy: Application mirrors Android devices (A/V) connected via USB or TCP▲ 9 · 0 comments · 2024-12-12noteHow to share Zelda Notes on your PC screen using scrcpy2026-11-02Windows Central on MSN'Scrcpy' is an open-source alternative to Phone Link for Android mirroring that barely uses any RAM2026-10-27