Device
Some command line arguments perform actions on the device itself while scrcpy is running.
Stay awake
Section titled “Stay awake”To prevent the device from sleeping after a delay when the device is plugged in:
scrcpy --stay-awakescrcpy -wThe initial state is restored when scrcpy is closed.
If the device is not plugged in (i.e. only connected over TCP/IP),
--stay-awake has no effect (this is the Android behavior).
This changes the value of stay_on_while_plugged_in, setting which can be
changed manually:
# get the current show_touches valueadb shell settings get global stay_on_while_plugged_in# enable for AC/USB/wireless chargersadb shell settings put global stay_on_while_plugged_in 7# disableadb shell settings put global stay_on_while_plugged_in 0Screen off timeout
Section titled “Screen off timeout”The Android screen automatically turns off after some delay.
To change this delay while scrcpy is running:
scrcpy --screen-off-timeout=300 # 300 seconds (5 minutes)The initial value is restored on exit.
It is possible to change this setting manually:
# get the current screen_off_timeout valueadb shell settings get system screen_off_timeout# set a new value (in milliseconds)adb shell settings put system screen_off_timeout 30000Note that the Android value is in milliseconds, but the scrcpy command line argument is in seconds.
Turn screen off
Section titled “Turn screen off”It is possible to turn the device screen off while mirroring on start with a command-line option:
scrcpy --turn-screen-offscrcpy -S # short versionOr by pressing MOD+o at any time (see shortcuts).
To turn it back on, press MOD+Shift+o.
On Android, the POWER button always turns the screen on. For convenience, if
POWER is sent via scrcpy (via right-click or MOD+p),
it will force to turn the screen off after a small delay (on a best effort
basis). The physical POWER button will still cause the screen to be turned on.
It can also be useful to prevent the device from sleeping:
scrcpy --turn-screen-off --stay-awakescrcpy -Sw # short versionSince Android 15, it is possible to change this setting manually:
# turn screen off (0 for main display)adb shell cmd display power-off 0# turn screen onadb shell cmd display power-on 0Show touches
Section titled “Show touches”For presentations, it may be useful to show physical touches (on the physical device). Android exposes this feature in Developers options.
Scrcpy provides an option to enable this feature on start and restore the initial value on exit:
scrcpy --show-touchesscrcpy -t # short versionNote that it only shows physical touches (by a finger on the device).
It is possible to change this setting manually:
# get the current show_touches valueadb shell settings get system show_touches# enable show_touchesadb shell settings put system show_touches 1# disable show_touchesadb shell settings put system show_touches 0Power off on close
Section titled “Power off on close”To turn the device screen off when closing scrcpy:
scrcpy --power-off-on-closePower on on start
Section titled “Power on on start”By default, on start, the device is powered on. To prevent this behavior:
scrcpy --no-power-onStart Android app
Section titled “Start Android app”To list the Android apps installed on the device:
scrcpy --list-appsAn app, selected by its package name, can be launched on start:
scrcpy --start-app=org.mozilla.firefoxThis feature can be used to run an app in a virtual display:
scrcpy --new-display=1920x1080 --start-app=org.videolan.vlcThe app can be optionally forced-stop before being started, by adding a +
prefix:
scrcpy --start-app=+org.mozilla.firefoxFor convenience, it is also possible to select an app by its name, by adding a
? prefix:
scrcpy --start-app=?firefoxBut retrieving app names may take some time (sometimes several seconds), so passing the package name is recommended.
The + and ? prefixes can be combined (in that order):
scrcpy --start-app=+?firefox