scrcpy 5.0 Mirrors Android Phones & Devices with Hardware Decoding

scrcpy 5.0 Mirrors Android Phones & Devices with Hardware Decoding

Tags: scrcpy, Android, Ghost Phone, ODROID, ODROID-H5, ODROID-M1S, ODROID-C5, Linux

scrcpy, pronounced “screen copy,” mirrors an Android screen on a computer and lets you drive it with the keyboard and mouse. No root, no account, and no app to install on the phone. USB or wireless both work. We covered the 3.1 release in Unlock the Power of Your Android Device with scrcpy v3.1. Version 5.0, released October 5, 2026, is the one that changes how hard the host works. The write-up is Scrcpy 5.0 Released with GPU Accelerated Hardware Decoding.

What 5.0 changes

The video stream is now decoded on the computer’s GPU when the hardware can do it. Genymobile’s release notes say decoding is faster, CPU use drops by about 10×, and power draw is lower. Hardware decoding is on by default. If the decoder cannot handle the stream, scrcpy falls back to software.

Force a backend with --hwdec:

  • --hwdec=auto uses hardware decoding if possible. This is the default.
  • --hwdec=disabled forces software decoding.
  • --hwdec=vaapi is VA-API, Linux only. On Debian and Ubuntu, install va-driver-all.
  • --hwdec=d3d11va is D3D11VA, Windows only.
  • --hwdec=videotoolbox is VideoToolbox, macOS only.

Audio playback capture can now take more than media. --audio-dup selects usages such as game, voice-communication, or all, so game audio is no longer left out when you want it. OTG mode honors ANDROID_SERIAL when more than one device is plugged in. Windows on ARM64 has its own build. Packages are on GitHub.

Phones and tablets are the usual target

The device on the far end of the cable is any Android phone or tablet with USB debugging turned on. That includes a stock phone, a tablet, and a Ghost Phone. On GrapheneOS, developer options and USB debugging work the same way: enable them, accept the host key, and scrcpy shows the screen on the computer. A tablet is the same setup with a larger canvas, which is the better choice for a keyboard-driven session.

GrapheneOS Ghost Phone

Ghost Phones are carrier-unlocked Pixels with GrapheneOS, a case, and a charger. Pixel 6a through Pixel 10 Pro XL, depending on stock. Plug the USB-C port into the host, or use wireless debugging if you would rather not keep a cable on the desk. A Ghost Tablet is the same kind of target: Android, debugging on, then scrcpy. Ghost Phones -- from $645

Three ODROID boards for the job

scrcpy has two sides. The host is a Linux, Windows, or macOS computer. The target is the phone, the tablet, or a board running Android. The ODROID-H5 is the host. The ODROID-C5 is the Android board. The ODROID-M1S can sit on the Linux side as a smaller desk machine.

ODROID-H5, the Linux host

ODROID-H5 board

Intel Core i3-N300, eight cores, Intel UHD graphics, DDR5, a native 10GbE port, and four M.2 slots. The iGPU is the VA-API path for --hwdec, which is what drops the CPU load while the mirror runs. One USB 3.0 port is enough for the phone, the tablet, or the Android board. RAM and storage are separate. ODROID-H5 -- $299.95

ODROID-C5, the Android board

ODROID-C5 board

Hardkernel ships Android and Linux for the C5. Amlogic S905X5M, quad Cortex-A55 at 2.5 GHz, Mali-G310, 4GB DDR4, HDMI 2.0, and Gigabit Ethernet. Boot the Android image, turn on USB debugging, and plug the Micro USB OTG port into the H5. scrcpy then shows that screen on the host. USB on the C5 is 2.0, which is fine for a mirror. ODROID-C5 -- $89.95

ODROID-M1S, the compact Linux host

ODROID-M1S with case and heatsink

RK3566, 4GB or 8GB, a soldered 64GB eMMC, and an M.2 NVMe slot. The case, heatsink, and power supply are in the box. Run Linux on it and point scrcpy at a Ghost Phone, a tablet, or the C5. On this Mali GPU, confirm VA-API before you count on hardware decoding. If the driver is missing, --hwdec=auto falls back to software. ODROID-M1S -- from $99.95

A short start

On the phone, tablet, Ghost Phone, or C5, turn on USB debugging and accept the host key. On the H5, install the 5.0 package and va-driver-all, then:

scrcpy

That is enough for the default hardware decoder. Add --audio-dup=game if you want game audio as well as media. Add --hwdec=disabled only if a stream misbehaves and you want the software path.

Back to blog

Leave a comment

Please note, comments need to be approved before they are published.