You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
Go to file
Romain Vimont cc8e6133b0 Upgrade default versions in bug report template 1 week ago
.github/ISSUE_TEMPLATE Upgrade default versions in bug report template 1 week ago
app Bump version to 2.5 2 weeks ago
assets Update README 6 years ago
config Upgrade Android checkstyle to 10.12.5 8 months ago
doc Update links to 2.5 2 weeks ago
gradle/wrapper Upgrade AGP (8.1.3) and Gradle to 8.4 8 months ago
server Bump version to 2.5 2 weeks ago
.gitignore Add scrcpy-server to .gitignore 9 months ago
FAQ.md Document UHID 5 months ago
LICENSE Happy new year 2024! 4 months ago
README.md Update links to 2.5 2 weeks ago
build.gradle Upgrade AGP from 8.1.3 to 8.3.0 3 weeks ago
bump_version Add script to bump version 3 years ago
cross_win32.txt Improve crossbuild 8 months ago
cross_win64.txt Improve crossbuild 8 months ago
gradle.properties Enable video output file, with pts set by server 6 years ago
gradlew Update to Gradle 6.3 4 years ago
gradlew.bat Update to Gradle 6.3 4 years ago
install_release.sh Update links to 2.5 2 weeks ago
meson.build Bump version to 2.5 2 weeks ago
meson_options.txt Add compilation flag for USB features 2 years ago
release.mk Build dependencies from sources 4 months ago
release.sh Rename release.make to release.mk 4 years ago
run Fix icon path in ./run 2 years ago
settings.gradle Convert server to an Android project 7 years ago

README.md

This GitHub repo (https://github.com/Genymobile/scrcpy) is the only official source for the project. Do not download releases from random websites, even if their name contains scrcpy.

scrcpy (v2.5)

scrcpy

pronounced "screen copy"

This application mirrors Android devices (video and audio) connected via USB or over TCP/IP, and allows to control the device with the keyboard and the mouse of the computer. It does not require any root access. 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
  • 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

Its features include:

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 on your device(s).

On some devices, you also need to enable an additional option 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.

Note that USB debugging is not required to run scrcpy in OTG mode.

Get the app

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:

    scrcpy --video-codec=h265 --max-size=1920 --max-fps=60 --no-audio --keyboard=uhid
    scrcpy --video-codec=h265 -m1920 --max-fps=60 --no-audio -K  # short version
    
  • Record the device camera in H.265 at 1920x1080 (and microphone) to an MP4 file:

    scrcpy --video-source=camera --video-codec=h265 --camera-size=1920x1080 --record=file.mp4
    
  • Capture the device front camera and expose it as a webcam on the computer (on Linux):

    scrcpy --video-source=camera --camera-size=1920x1080 --camera-facing=front --v4l2-sink=/dev/video2 --no-playback
    
  • Control the device without mirroring by simulating a physical keyboard and mouse (USB debugging not required):

    scrcpy --otg
    

User documentation

The application provides a lot of features and configuration options. They are documented in the following pages:

Resources

Articles

Contact

If you encounter a bug, please read the FAQ first, then open an issue.

For general questions or discussions, you can also use:

Donate

I'm @rom1v, the author and maintainer of scrcpy.

If you appreciate this application, you can support my open source work:

Licence

Copyright (C) 2018 Genymobile
Copyright (C) 2018-2024 Romain Vimont

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.