Find your next open-source project

Search by name, purpose, or keyword — or paste a GitHub repository URL

Genymobile/scrcpy

Productivity & Utilities

Mirror and control an Android device from a computer over USB or TCP/IP, with keyboard, mouse and audio, without root or an installed app.

141,594
13,068
C
Apache-2.0
8 years old

What it does

scrcpy displays an Android device's screen on a computer and lets you operate it with the computer's keyboard and mouse. It works over USB or TCP/IP and needs neither root access nor an app installed on the device. The project targets Linux, Windows, and macOS, and reports native performance with 30–120fps, low latency, and roughly one second to first frame (project overview).

Beyond basic mirroring, it supports audio forwarding on Android 11+, screen recording, virtual displays, camera mirroring on Android 12+, copy-paste in both directions, physical keyboard and mouse simulation, gamepads, and an OTG mode that controls the device without mirroring and without USB debugging (feature docs).

Quick start

  1. On the Android device, enable USB debugging in developer options (Android instructions); the device must run Android 5.0 (API 21) or later.
  2. Connect the device over USB, or set up a TCP/IP connection (connection guide).
  3. Install scrcpy for your desktop platform: Linux, Windows, or macOS.
  4. Run scrcpy from a terminal. The device screen should appear in a desktop window.

Common options include reducing resolution with scrcpy -m1024 for better performance (video size), toggling fullscreen with <kbd>Alt</kbd>+<kbd>f</kbd>, and right-click for BACK or middle-click for HOME (must-know tips). More examples cover H.265 capture, virtual displays, camera recording, webcam output on Linux, OTG mode, and gamepad control (usage examples).

Constraints

  • Android 5.0+ is required; audio forwarding requires Android 11+, camera mirroring requires Android 12+, and V4L2 webcam output is Linux-only.
  • USB debugging must be enabled for normal mirroring. On some devices, notably Xiaomi, keyboard and mouse control additionally needs "USB debugging (Security Settings)", with a reboot afterward (note).
  • OTG mode works without USB debugging, but it controls the device without mirroring.
  • Keyboard and mouse shortcuts, recording, and other options are documented on separate pages (documentation index).
  • The project is licensed under Apache-2.0 and distributes releases only through its GitHub repository; the README warns against downloading releases from other sites.

HotRepo's take

The repository had a two-day run on the all-language daily list in mid-May 2026, gaining 589 and then 851 stars across those snapshots. That timing lines up with the Scrcpy v4.0 Hacker News thread from 2026-05-12, which drew 373 points and 61 comments. Discussion in that thread includes a user calling it a mind-blowing experience with many useful switches comment, and another highlighting the new flex display option. Earlier threads from 2018 and 2023 show sustained attention across major releases rather than a single spike. The project's value comes from doing one thing—low-latency device mirroring and control—with a wide set of CLI options and no device-side installation.

Written by AI from the project's README, updated . The project's own docs are the source of truth.

Hacker News

Scrcpy: Display and control your Android devices connected over USB or TCP/IP
▲ 681 · 143 comments · April 29, 2023
Scrcpy v4.0
▲ 373 · 61 comments · May 12, 2026
Scrcpy 2.0 mirrors Android devices with audio forwarding
▲ 250 · 60 comments · March 14, 2023