v4.1

Genymobile/scrcpyv4.1Jul 12, 2026by rom1v

AI Summary

This release focuses on fixing video encoder constraints introduced in v4.0 and adds support for VP8 and VP9 video codecs. It also includes improvements to terminal titles and file push detection.

Key Highlights

  • Fixed video encoder constraint handling to prevent regressions with flex displays.
  • Added support for VP8 and VP9 video encoders on devices lacking H.264/H.265 support.
  • Terminal title now updates dynamically while scrcpy is running.
  • Media scan is triggered after file push to ensure apps detect new files immediately.
  • Improved the size constraints algorithm for better aspect ratio handling.

New Features

  • VP8 and VP9 video codec support
  • --ignore-video-encoder-constraints option
  • Dynamic terminal title updates
  • Media scan on file push
  • Improved size constraints algorithm

Full Release Notes

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

---

**scrcpy v4.1**

Changes since v4.0:
 - Add support for VP8 and VP9 video encoders (#6763, #6769)
 - Update terminal title while scrcpy is running (#6825)
 - Trigger media scan after file push (#6200, #6852)
 - Add Keywords to desktop entries (#6889)
 - Adapt the camera target size to avoid configuration error (#6919, #6922)
 - Improve the size constraints algorithm (#6829, #6859)
 - Apply encoder size constraints only after the first failure (#6848, #6859)
 - Add --ignore-video-encoder-constraints (#6904)
 - Fix some colorspace conversions (#6830, #6924)
 - Fix initial gamepad detection (#6843, #6853)
 - Fix data race possibly causing a division-by-zero error (#6905, #6911)
 - Upgrade FFmpeg to 8.1.2
 - Upgrade SDL to 3.4.12
 - Upgrade libusb to 1.0.30
 - Various technical fixes


---

<a id="highlights-v4.1"></a>

# Highlights

## Size constraints

The flex display feature introduced in [scrcpy 4.0](https://github.com/Genymobile/scrcpy/releases/tag/v4.0) requires respecting the video encoder constraints. This caused several regressions:
 - sometimes, the reported encoder constraints are incorrect;
 - they were not handled correctly for camera capture;
 - the algorithm used to determine the maximum supported size for a given aspect ratio was too naive.

To fix or work around these issues:
 - encoder size constraints are now initially ignored and enforced only after the first capture failure;
 - the size constraints algorithm has been improved to select the best supported size for a given aspect ratio;
 - a new option, `--ignore-video-encoder-constraints`, has been added to ignore the encoder constraints entirely, including alignment (useful when the reported values are incorrect).
 
 
## Terminal title

The terminal title is now updated while scrcpy is running. See #6825.


## VP8 and VP9

Some devices do not support H.264, H.265, or AV1 encoding, but do support VP8 or VP9.

This release adds support for VP8 and VP9 (if supported by the device):

```
scrcpy --video-codec=vp9
```


## Media scan

When pushing files via drag&drop, some Android apps do not detect the new files immediately. This release now triggers a media scan request to increase the chances that the new files are detected immediately.


---

 - BlueSky: [`@scrcpy.bsky.social`](https://bsky.app/profile/scrcpy.bsky.social)
 - Twitter: [`@scrcpy_app`](https://twitter.com/scrcpy_app)
 - Reddit: [`r/scrcpy`](https://www.reddit.com/r/scrcpy)