A graphical desktop GUI for scrcpy that mirrors and controls Android devices on Windows, macOS and Linux.
- Stars
- 32,469
- Forks
- 3,827
- Open issues
- 632
- Last commit
- 5 days ago
What is it?
QtScrcpy shows an Android device's screen on a Windows, macOS, or Linux computer and lets you control it with mouse and keyboard. It connects over USB or over the network and does not require root privileges. Nothing is installed on the device itself.
The project is a C++ and Qt rewrite of the scrcpy project, using FFmpeg for video encoding and OpenGL for rendering. It supports features such as screen recording, screenshots, drag-and-drop APK installation and file transfer, bidirectional clipboard sync, and controlling multiple devices at once. Custom keyboard-to-touch mapping scripts let you play touch-based games with a keyboard and mouse.
The requirement is Android 5.0 (API 21) or later, with ADB debugging enabled on the device. Prebuilt packages are available for Windows and macOS, and the project can be built from source with qmake or CMake.
Key features
- 01Displays and controls Android screens over USB or Wi-Fi without root.
- 02Supports Windows, macOS, and GNU/Linux.
- 03Records screen and takes screenshots.
- 04Supports drag-and-drop APK installation and file transfer.
- 05Synchronizes clipboards between computer and device.
- 06Maps keyboard and mouse input to touch events with custom scripts.
- 07Controls multiple connected devices at once.
Use cases
- Mirroring a phone to a larger monitor for presentations or demos.
- Playing touch-only mobile games with a keyboard and mouse.
- Testing or debugging Android apps while viewing the device screen on a desktop.
- Managing several Android devices from one computer.
Quick start
- 1
Download prebuilt archive from Releases
- 2
Connect Android device via USB, run the program and click USB connect
- 3
Clone the project with submodules
git clone --recurse-submodules git@github.com:barry-ran/QtScrcpy.git
Things to know
- Requires ADB debugging enabled on the Android device (Android 5.0 or later).
- Building from source needs Qt 5.12 or later, which adds setup effort.
- Some features such as device audio sync only work on Android 10 and later.
Topics
FAQ
- What is QtScrcpy?
- Qt-based desktop client for displaying and controlling Android devices over USB or Wi-Fi, without root or installing anything on the device. QtScrcpy shows an Android device's screen on a Windows, macOS, or Linux computer and lets you control it with mouse and keyboard. It connects over USB or over the network and does not require root privileges. Nothing is installed on the device itself.
- Is QtScrcpy free to use? What license does it have?
- QtScrcpy is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is QtScrcpy still maintained?
- Actively maintained. The last commit to QtScrcpy was on Oct 15, 2026.
- What can I use QtScrcpy for?
- Mirroring a phone to a larger monitor for presentations or demos. Playing touch-only mobile games with a keyboard and mouse. Testing or debugging Android apps while viewing the device screen on a desktop. Managing several Android devices from one computer.
- How do I install QtScrcpy?
- Download prebuilt archive from Releases Connect Android device via USB, run the program and click USB connect Clone the project with submodules: git clone --recurse-submodules git@github.com:barry-ran/QtScrcpy.git
- Where can I get QtScrcpy?
- The source code and installation instructions are on GitHub: https://github.com/barry-ran/QtScrcpy
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A TypeScript re-implementation of the ADB client that runs in Chromium browsers, Node.js and Electron, connecting to Android devices over WebUSB.
Natural-language driven Android automation for AI coding assistants and test suites, running on real phones or emulators.
A desktop GUI for Android app testing with ADB, supporting Windows and macOS, with device listing, shell commands, text input, screenshots and virtual displays.
Lets an iPhone's built-in Apple TV Remote in Control Center control Android TV / Google TV devices and Macs over the local network.
Native C++20 desktop terminal for financial research, with Qt6 UI, embedded Python analytics, AI agents and 100+ market data connectors.