QtScrcpy is an Android real-time display control tool designed to mirror your device's screen and enable interactive operations on a computer.
Real-time Mirroring: View your Android device's screen in real-time on your computer.
Touch Input Support: Directly interact with your device using touch inputs from your computer.
File Transfer: Seamlessly transfer files between your computer and connected device.
Ideal for developers, testers, and users needing remote control over their devices, QtScrcpy enhances productivity and streamlines workflows. Installation is straightforward via winget, ensuring a quick setup process.
low startup time (only about 1 second to display the first frame)
non-intrusiveness (nothing will be installed on the device)
The author has developed a more professional screen casting software called QuickMirror
QuickMirror function&features:
Equipment screen casting&control: batch screen casting, individual control, batch control
Group management
WiFi screen mirroring/OTG screen mirroring
Adb shell shortcut command
File transfer, apk installation
Multiple screen mirroring: In OTG mirroring mode, with low resolution and smoothness settings, a single computer can manage 500+phones simultaneously
Low latency: USB screen mirroring 1080p latency is within 30ms, which is lower than all screen mirroring software on the market in terms of latency at the same resolution and smoothness
Low CPU usage: pure C++development, high-performance GPU video rendering
Android Studio is the official Integrated Development Environment (IDE) for Android app development.
Based on the powerful code editor and developer tools from IntelliJ IDEA,
Android Studio offers even more features that enhance your productivity when building Android apps.
Kate is a fast multi-document, multi-view text editor for programmers by KDE. It features stuff like LSP (Language Server Protocol) support, projects, multiple cursors and selections, git integration, folder wide search, horizontal and vertical splits, vi mode, syntax highlighting for 300+ languages, built-in terminal, dynamic word wrap and much more. It is available on Linux, BSD, Windows and MacOS.
Features:
- MDI, window splitting, window tabbing
- Spell checking
- CR, CRLF, LF newline support
- Encoding support (utf-8, utf-16, ascii etc.)
- Encoding conversion
- Regular expression based find & replace
- Syntax highlighting for 300+ languages
- Code and text folding
- Multiple cursors and multiple selections
- Block selection mode
- Auto indentation
- Auto completion support
- Shell integration
- Wide protocol support (http, ftp, ssh, webdav etc.)
- Extensible via plugins
- Integrated terminal
- Scriptable using JavaScript
- Vi mode
- Intellisense support using LSP (Language Server Protocol)
- DAP (Debug Adapter Protocol) support
- Vertical tabs/document list
- Lightweight project support. Kate can open folders as projects
- Code formatting using native formatters such as clang-format, prettier etc
- Built in filesystem browser
- CTags support
- Project wide and folder wide search
- Git integration
KDE Connect is a project that enables all your devices to communicate with each other. Here's a few things KDE Connect can do:
- Receive your phone notifications on your desktop computer and reply to messages
- Control music playing on your desktop from your phone
- Use your phone as a remote control for your desktop
- Run predefined commands on your PC from connected devices. See the list of example commands for more details.
- Check your phone's battery level from the desktop
- Ring your phone to help find it
- Share files and links between devices
- Browse your phone from your desktop
- Control the desktop's volume using your phone
- Send SMS from your desktop
Cross-platform GUI written in Rust using ADB to debloat non-rooted android devices. Improve your privacy, the security and battery life of your device.
Android Studio is the official Integrated Development Environment (IDE) for Android app development.
Based on the powerful code editor and developer tools from IntelliJ IDEA,
Android Studio offers even more features that enhance your productivity when building Android apps.
Kate is a fast multi-document, multi-view text editor for programmers by KDE. It features stuff like LSP (Language Server Protocol) support, projects, multiple cursors and selections, git integration, folder wide search, horizontal and vertical splits, vi mode, syntax highlighting for 300+ languages, built-in terminal, dynamic word wrap and much more. It is available on Linux, BSD, Windows and MacOS.
Features:
- MDI, window splitting, window tabbing
- Spell checking
- CR, CRLF, LF newline support
- Encoding support (utf-8, utf-16, ascii etc.)
- Encoding conversion
- Regular expression based find & replace
- Syntax highlighting for 300+ languages
- Code and text folding
- Multiple cursors and multiple selections
- Block selection mode
- Auto indentation
- Auto completion support
- Shell integration
- Wide protocol support (http, ftp, ssh, webdav etc.)
- Extensible via plugins
- Integrated terminal
- Scriptable using JavaScript
- Vi mode
- Intellisense support using LSP (Language Server Protocol)
- DAP (Debug Adapter Protocol) support
- Vertical tabs/document list
- Lightweight project support. Kate can open folders as projects
- Code formatting using native formatters such as clang-format, prettier etc
- Built in filesystem browser
- CTags support
- Project wide and folder wide search
- Git integration
KDE Connect is a project that enables all your devices to communicate with each other. Here's a few things KDE Connect can do:
- Receive your phone notifications on your desktop computer and reply to messages
- Control music playing on your desktop from your phone
- Use your phone as a remote control for your desktop
- Run predefined commands on your PC from connected devices. See the list of example commands for more details.
- Check your phone's battery level from the desktop
- Ring your phone to help find it
- Share files and links between devices
- Browse your phone from your desktop
- Control the desktop's volume using your phone
- Send SMS from your desktop
Cross-platform GUI written in Rust using ADB to debloat non-rooted android devices. Improve your privacy, the security and battery life of your device.
You can write your script to map keyboard and mouse actions to touches and clicks of the mobile phone according to your needs. Here are the script writing rules.
Script for TikTok and some other games are provided by default. Once enabled, you can play the game with your keyboard and mouse. The default key mapping for PUBG Mobile is as follows:
Instruction for adding new customized mapping files.
Write a customized script and put it in the keymap directory
Click refresh script to show it
Select your script
Connect to your phone, start service and click apply
Press ~ key (the SwitchKey in the key map script) to switch to custom mapping mode
Press the ~ key again to switch back to normal mode
(For games such as PUBG Mobile) If you want to move vehicles with the STEER_WHEEL keys, you need to set the move mode to single rocker mode.
If you don't know how to manually write mapping rules, you can also use the QuickAssistant developed by the author
QuickAssistant Features&Functions:
Play Android mobile games smoothly through keyboard and mouse
Interface based editing of key mapping script
Support pausing the computer screen and using only keyboard and mouse operations
Screenshot&Recording of Mobile Screen
Simple batch control
Android 11+supports playing mobile audio on computers (under development...)
Mobile app installation free
Fast and instant connection
Low latency: USB screen mirroring 1080p latency is within 30ms, which is lower than all screen mirroring software on the market in terms of latency at the same resolution and smoothness
Low CPU usage: pure C++development, high-performance GPU video rendering
High resolution: adjustable, maximum support for native resolution of Android terminals
The difference between QtScrcpy and the original scrcpy is as follows:
key points
scrcpy
QtScrcpy
ui
sdl
qt
video encode
ffmpeg
ffmpeg
video render
sdl
opengl
cross-platform
self implemented
provided by Qt
language
C
C++
style
sync
async
keymap
no custom keymap
support custom keymap
build
meson+gradle
qmake or CMake
It's very easy to customize your GUI with Qt
Asynchronous programming of Qt-based signal slot mechanism improves performance
Easy to learn
Add support for multi-touch
Learn
If you are interested in it and want to learn how it works but do not know how to get started, you can choose to purchase my recorded video lessons.
It details the development architecture and the development process of the entire software and helps you develop QtScrcpy from scratch.
Everyone is welcome to maintain this project and contribute your own code, but please follow these requirements:
Please open PRs to the dev branch instead of the master branch
Please rebase the original project before opening PRs
Please submit PRs on the principle of "small amounts, many times" (one PR for a change is recommended)
Please keep the code style consistent with the existing style.
Why develop QtScrcpy?
There are several reasons listed below according to importance (high to low).
In the process of learning Qt, I need a real project to try.
I have some background skills in audio and video and I am interested in them.
I have some Android development skills. But I have used it for a long time. I want to consolidate it.
I found scrcpy and decided to re-make it with the new technology stack (C++ + Qt + Opengl + FFmpeg).
Build
All the dependencies are provided and it is easy to compile.
QtScrcpy
Non-Arch Linux Users
Set up the Qt development environment with the official Qt installer or third-party tools such as aqt on the target platform.
Qt version bigger than 5.12 is required. (use MSVC 2019 on Windows)
Clone the project with git clone --recurse-submodules git@github.com:barry-ran/QtScrcpy.git
For Windows, open CMakeLists.txt with QtCreator and compile Release
For Linux, directly run ./ci/linux/build_for_linux.sh "Release"
Note: compiled artifacts are located at output/x64/Release
Arch Linux Users
Install packages: base-devel cmake qt5-base qt5-multimedia qt5-x11extras (qtcreator is recommended)
Clone the project with git clone --recurse-submodules git@github.com:barry-ran/QtScrcpy.git
Run ./ci/linux/build_for_linux.sh "Release"
Scrcpy-Server
Set up Android development environment on the target platform
Open server project in project root with Android Studio
The first time you open it, if you do not have the corresponding version of Gradle, you will be prompted to find Gradle, whether to upgrade Gradle or create it. Select Cancel. After cancelling, you will be prompted to select the location of existing Gradle. Cancel it too and it will download automatically.
After compiling the apk, rename it to scrcpy-server and replace QtScrcpy/QtScrcpyCore/src/third_party/scrcpy-server.
Licence
Since it is based on scrcpy, it uses the same license as scrcpy
Copyright (C) 2025 Rankun
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.
An ordinary programmer, working mainly in C++ for desktop client development, graduated from Shandong for more than a year of steel simulation education software, and later moved to Shanghai to work in security, online education-related fields, familiar with audio and video. I have an understanding of audio and video fields such as voice calls, live education, video conferencing and other related solutions. I also have experience in Android, Linux servers and other kinds of development.
Contributors
Code Contributors
This project exists thanks to all the people who contribute. [Contribute].
Financial Contributors
Become a financial contributor and help us sustain our community. [Contribute]
Individuals
Organizations
Support this project with your organization. Your logo will show up here with a link to your website. [Contribute]
LibreCAD is a cross-platform 2D CAD program written in C++11 using the Qt framework. It can read DXF and DWG files and can write DXF, PDF and SVG files. The user interface is highly customizable, and has dozens of translations.
LibreCAD is a cross-platform 2D CAD program written in C++11 using the Qt framework. It can read DXF and DWG files and can write DXF, PDF and SVG files. The user interface is highly customizable, and has dozens of translations.
Get early access to the latest features and improvements in Android Studio.
Android Studio is the official Integrated Development Environment (IDE) for Android app development.
Based on the powerful code editor and developer tools from IntelliJ IDEA,
Android Studio offers even more features that enhance your productivity when building Android apps.
Get early access to the latest features and improvements in Android Studio.
Android Studio is the official Integrated Development Environment (IDE) for Android app development.
Based on the powerful code editor and developer tools from IntelliJ IDEA,
Android Studio offers even more features that enhance your productivity when building Android apps.
Connect your phone via WiFi, cable or bluetooth and you'll be surprised how easy and efficient it will be to manage your phone with our software. Since it's first release MyPhoneExplorer evolved into the most popular freeware tool for smartphones. The software is constantly updated with new features. In contrast to many other solutions MyPhoneExplorer works completely locally without using any third-party server!
Connect your phone via WiFi, cable or bluetooth and you'll be surprised how easy and efficient it will be to manage your phone with our software. Since it's first release MyPhoneExplorer evolved into the most popular freeware tool for smartphones. The software is constantly updated with new features. In contrast to many other solutions MyPhoneExplorer works completely locally without using any third-party server!
Get early access to the latest features and improvements in Android Studio.
Android Studio is the official Integrated Development Environment (IDE) for Android app development.
Based on the powerful code editor and developer tools from IntelliJ IDEA,
Android Studio offers even more features that enhance your productivity when building Android apps.
Get early access to the latest features and improvements in Android Studio.
Android Studio is the official Integrated Development Environment (IDE) for Android app development.
Based on the powerful code editor and developer tools from IntelliJ IDEA,
Android Studio offers even more features that enhance your productivity when building Android apps.
AirServer transforms a simple display or a projector into a universal screen mirroring receiver. It does this by implementing all the major screen mirroring technologies such as AirPlay, Google Cast and Miracast into one screen mirroring receiver. With AirServer enabled on your big screen, users can use their devices such as an iPhone, iPad, Mac, Android, Nexus, Pixel, Chromebook, or a Windows 10 PC to wirelessly mirror their display over to the big screen, instantly turning the room into a collaborative space.
AirServer transforms a simple display or a projector into a universal screen mirroring receiver. It does this by implementing all the major screen mirroring technologies such as AirPlay, Google Cast and Miracast into one screen mirroring receiver. With AirServer enabled on your big screen, users can use their devices such as an iPhone, iPad, Mac, Android, Nexus, Pixel, Chromebook, or a Windows 10 PC to wirelessly mirror their display over to the big screen, instantly turning the room into a collaborative space.