explaingit

barry-ran/qtscrcpy

Analysis updated 2026-05-18

29,404C++Audience · developerComplexity · 3/5LicenseSetup · hard

TLDR

Desktop app to view and control Android phones from your computer over USB or WiFi, with low latency and keyboard/mouse mapping for games.

Mindmap

mindmap
  root((repo))
    What it does
      Display Android screen
      Control phone remotely
      Multi-device support
    How it works
      USB or WiFi connection
      No phone software needed
      Uses Android Debug Bridge
    Key features
      Keyboard game mapping
      30-60 FPS video
      Low latency control
    Tech stack
      C++ and Qt
      OpenGL rendering
      FFmpeg decoding
    Use cases
      Demo apps on screen
      Test without picking up
      Hands-free presentations
    Platforms
      Windows
      macOS
      Linux
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Demo a mobile app to an audience from your desktop without holding the phone.

USE CASE 2

Test Android apps during development without constantly picking up your device.

USE CASE 3

Play mobile games using a keyboard and mouse instead of touch controls.

USE CASE 4

Control multiple phones at once to send the same actions to all of them simultaneously.

What is it built with?

C++QtOpenGLFFmpegADB

How does it compare?

barry-ran/qtscrcpyariya/phantomjsflameshot-org/flameshot
Stars29,40429,47629,847
LanguageC++C++C++
Setup difficultyhardhardeasy
Complexity3/53/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · hard Time to first run · 1day+

Requires building C++/Qt from source, Android SDK/ADB setup, and platform-specific dependencies (OpenGL, FFmpeg libraries).

Use freely for any purpose including commercial. Keep the notice and disclose changes to the patent grant.

In plain English

QtScrcpy is a desktop application that lets you display and control an Android phone or tablet directly from your computer, over a USB cable or a WiFi connection on the same network. No special software needs to be installed on the phone itself, and root access is not required, it uses ADB (Android Debug Bridge), the standard developer tool Android already exposes for debugging. Once connected, your phone's screen appears in a window on your computer at 30 to 60 frames per second, with latency as low as 35, 70 milliseconds. You can click, type, scroll, and interact with apps as if you were touching the phone. A key mapping feature lets you write scripts that translate keyboard and mouse actions into taps and swipes, which is useful for playing mobile games with a keyboard and mouse. Group control allows the same actions to be sent to multiple connected phones simultaneously. The software works on Windows, macOS, and GNU/Linux. It is built in C++ using the Qt framework for the user interface, OpenGL for video rendering, and FFmpeg for video decoding. It is derived from the open-source scrcpy project but uses Qt instead of SDL for the interface, adds asynchronous programming, and adds the custom key mapping system. You would use it if you want to demo a mobile app from your computer, test an Android app without constantly picking up your phone, or control a phone hands-free during a presentation.

Copy-paste prompts

Prompt 1
How do I set up QtScrcpy to connect my Android phone over USB and start controlling it from my Windows PC?
Prompt 2
Show me how to create a key mapping script in QtScrcpy to play a mobile game with my keyboard and mouse.
Prompt 3
How can I connect multiple Android phones to QtScrcpy and control them all at the same time?
Prompt 4
What are the latency and frame rate I can expect when using QtScrcpy over WiFi versus USB?
Prompt 5
How do I compile QtScrcpy from source on Linux and what dependencies do I need?

Frequently asked questions

What is qtscrcpy?

Desktop app to view and control Android phones from your computer over USB or WiFi, with low latency and keyboard/mouse mapping for games.

What language is qtscrcpy written in?

Mainly C++. The stack also includes C++, Qt, OpenGL.

What license does qtscrcpy use?

Use freely for any purpose including commercial. Keep the notice and disclose changes to the patent grant.

How hard is qtscrcpy to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is qtscrcpy for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Scan in gitsafehub Deploy in gitdeployhub barry-ran on gitmyhub

Verify against the repo before relying on details.