v3.2

Genymobile/scrcpyv3.2Mar 29, 2025by rom1v

AI Summary

Adds extensive audio source options and fixes compatibility issues with Android 15/16 regarding rotation and audio capture.

Key Highlights

  • Added many new audio sources (mic-unprocessed, voice-call, mic-camcorder, etc.).
  • Fixed rotation after Android 15 upgrade.
  • Fixed audio capture on Android 16.
  • Made static binaries compatible with older Linux and macOS versions.

New Features

  • New audio sources: mic-unprocessed, mic-camcorder, mic-voice-recognition, mic-voice-communication, voice-call, voice-call-uplink, voice-call-downlink, voice-performance
  • Android 15 rotation fix
  • Android 16 audio capture fix
  • Static binary compatibility for older OS versions

Full Release Notes

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

---

**scrcpy v3.2**

Changes since v3.1:
 - Add many audio sources (#5870, #5412, #5670)
 - Improve/fix camera listing (#5669)
 - Add --display-ime-policy (#5703)
 - Allow controls with --no-window (#5803, #5804)
 - Add workaround for Pico 4 Ultra (#5659)
 - Fix rotation after a recent Android 15 upgrade (#5908)
 - Fix audio capture on Android 16 (#5698)
 - Make static Linux binaries compatible with older versions (#5689)
 - Make static macOS binaries compatible with older versions (#5649, #5697)
 - Upgrade FFmpeg to 7.1.1
 - Upgrade libusb to 1.0.28
 - Upgrade SDL to 2.32.2
 - Various technical fixes


---

<a id="highlights-v3.2"></a>

# Highlights

## Audio sources

In addition to the existing audio sources:

 - `output` (default): forwards the whole audio output, and disables playback on the device (mapped to [`REMOTE_SUBMIX`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#REMOTE_SUBMIX)).
 - `playback`: captures the audio playback (Android apps can opt out, so the whole output is not necessarily captured).
 - `mic`: captures the microphone (mapped to [`MIC`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#MIC)).

This version adds:

 - `mic-unprocessed`: captures the microphone unprocessed (raw) sound (mapped to [`UNPROCESSED`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#UNPROCESSED)).
 - `mic-camcorder`: captures the microphone tuned for video recording, with the same orientation as the camera if available (mapped to [`CAMCORDER`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#CAMCORDER)).
 - `mic-voice-recognition`: captures the microphone tuned for voice recognition (mapped to [`VOICE_RECOGNITION`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#VOICE_RECOGNITION)).
 - `mic-voice-communication`: captures the microphone tuned for voice communications (it will for instance take advantage of echo cancellation or automatic gain control if available) (mapped to [`VOICE_COMMUNICATION`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#VOICE_COMMUNICATION)).
 - `voice-call`: captures voice call (mapped to [`VOICE_CALL`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#VOICE_CALL)).
 - `voice-call-uplink`: captures voice call uplink only (mapped to [`VOICE_UPLINK`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#VOICE_UPLINK)).
 - `voice-call-downlink`: captures voice call downlink only (mapped to [`VOICE_DOWNLINK`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#VOICE_DOWNLINK)).
 - `voice-performance`: captures audio meant to be processed for live performance (karaoke), includes both the microphone and the device playback (mapped to [`VOICE_PERFORMANCE`](https://developer.android.com/reference/android/media/MediaRecorder.AudioSource#VOICE_PERFORMANCE)).

See #5870.

_Note: If you record voice calls to a file, audio/video synchronization might be broken during playback. Read [more details](https://github.com/Genymobile/scrcpy/pull/5870#issuecomment-2727304756)._


## Android 15 and 16

This version includes fixes for changes in Android 15 that broke automatic rotation (#5908) and Android 16 that broke audio capture (#5698).


## Static binaries

To ensure maximum compatibility, static binaries are now built for older versions of Linux distributions (#5689) and macOS (#5649, #5697).


---

 - 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)