Skip to content

scrcpy v3.1

Latest
Compare
Choose a tag to compare
@rom1v rom1v released this 09 Dec 22:14
· 4 commits to master since this release
v3.1

To receive a notification when a new release is available, click on Watch > Custom > Releases at the top.


scrcpy v3.1

Changes since v3.0.2:


Highlights

Keep virtual display content on close

When a virtual display is closed, the running apps are destroyed.

A new option (--no-vd-destroy-content, #5615) allows moving the apps to the main display instead:

scrcpy --new-display --no-vd-destroy-content

This is particularly useful for avoiding the loss of work due to unexpected disconnections. The running app can be moved back to a new virtual display afterward.

Note that the running apps follow the standard Android lifecycle. Some apps, especially 3D games, may simply restart on the main display when the virtual display is closed.

Gamepad support

Gamepad support was implemented by #5270 in scrcpy 2.7.

While it worked well with gamepad testers, it was partially or totally incompatible with many games.

In this new version, several changes (#5623) allow games to detect and use gamepads correctly:

  • fixing the gamepad HID report descriptor
  • declaring the gamepad to be a well-known Xbox 360 controller

Fix unclickable elements

Since the introduction of virtual displays in scrcpy 3.0, the injection of input events has been slightly modified. While the new behavior resolves issues with virtual displays (#4598, #5137), it caused some UI elements in overlays to become unclickable.

To fix the problem, this new release restores the previous behavior when mirroring the main display (#5614).

Fix "turn screen off" on some devices

On Android 14, scrcpy uses a specific mechanism to turn the screen off (#4456), but this method failed on some devices.

Now, it also works on these devices: #4544 (comment)

AV1 decoder

Recent devices have an AV1 encoder (and it works quite well).

On Linux, when building using system libraries, it was already working. But no AV1 decoder was included in release builds.

This new version adds dav1d support to decode AV1 streams (#5644).

If your device has an AV1 encoder (scrcpy --list-encoders):

scrcpy --video-codec=av1

dav1d_logo450x