Visualizzare sul PC lo schermo di uno smartphone Android significa gestire in tempo reale un flusso video continuo: il telefono acquisisce e codifica le immagini, il flusso attraversa l’interfaccia USB o la rete e il computer deve decodificarlo abbastanza velocemente da mantenere bassa la latenza.
Quest’ultimo passaggio può incidere sensibilmente sul carico del processore, soprattutto con risoluzioni elevate, frame rate sostenuti e sessioni prolungate. Con il nuovo scrcpy 5.0, appena rilasciato, la decodifica video può passare ai blocchi hardware della GPU, con una riduzione molto consistente dell’uso della CPU e, di conseguenza, anche del calore prodotto e dei consumi.
scrcpy continua a permettere il mirroring e il controllo di dispositivi Android da Windows, Linux e macOS tramite USB o TCP/IP, senza root e senza installare stabilmente un’app sul telefono. Dietro le quinte, però, scrcpy 5.0 modifica una parte importante del percorso video: è qui che si concentra il vero salto rispetto alle versioni precedenti.

Perché la decodifica video pesa così tanto sulla CPU
scrcpy non trasferisce al computer una sequenza di immagini non compresse: Android genera un flusso video codificato, normalmente H.264, che arriva al client desktop attraverso ADB (Android Debug Bridge). Il computer deve quindi decodificare decine di fotogrammi ogni secondo prima di mostrarli nella finestra del programma.
Finora tale lavoro ricadeva principalmente sulla CPU, tramite FFmpeg: le GPU, comprese quelle integrate nei chip Intel, AMD, Apple e Qualcomm, dispongono di unità dedicate alla decodifica video. Sono circuiti specializzati: consumano meno energia e svolgono quel tipo di elaborazione con un’efficienza molto superiore rispetto ai core general purpose della CPU.
La nuova decodifica hardware di scrcpy non dipende da una singola tecnologia proprietaria: il programma seleziona il backend più adatto al sistema operativo. Su Windows usa D3D11VA, su Linux VA-API, mentre su macOS sfrutta VideoToolbox. Per l’utente l’attivazione è trasparente:
scrcpy --hwdec=auto
scrcpy prova a inizializzare un decoder hardware compatibile con il codec video in uso; se non riesce, torna alla decodifica software. Non serve conoscere il modello esatto della GPU, né scegliere manualmente il decoder nella maggior parte dei casi. Chi vuole verificare la differenza può disattivare l’accelerazione:
scrcpy --hwdec=disabled
È il test più semplice da fare dopo l’aggiornamento. Basta avviare scrcpy una volta con la configurazione normale, osservare l’uso delle risorse CPU dal Task Manager di Windows o da strumenti equivalenti su Linux e macOS, quindi ripetere la prova con il decoder hardware disabilitato. Su alcuni sistemi la differenza è immediatamente evidente.
Quanto può scendere l’uso del processore
I valori pubblicati dagli sviluppatori sono notevoli: su un sistema Windows x86-64 con Ryzen 5 5600G, il carico sulla CPU durante i test è passato da circa 103,2% a 3,6%; su Windows ARM64 da circa il 112% all’8%. Su Linux, con Intel Core Ultra X7 358H, il confronto riportato è tra 48,5% e circa 3%.
I risultati che è possibile attendersi variano ovviamente in base al sistema operativo, al modo in cui lo strumento conteggia i core, al codec, alla risoluzione, al frame rate e naturalmente all’hardware. Genymobile parla comunque di una riduzione del carico quantificabile nell’ordine di 10 volte.
Il vantaggio diventa concreto quando scrcpy resta aperto a lungo: uno sviluppatore Android può tenerlo affiancato ad Android Studio, a un browser con molte schede e agli strumenti di debug; chi registra tutorial può usarlo insieme a OBS Studio; nelle sessioni di assistenza remota può rimanere attivo senza problemi.
Noi abbiamo utilizzato scrcpy anche per recuperare i dati da uno smartphone Android che presentava pixel spenti e “salvare” il proprietario che altrimenti non avrebbe avuto altri strumenti disponibili per trasferire su un nuovo telefono tutte le sue informazioni personali e le identità digitali.
Cosa succede se la GPU non supporta il codec
Il supporto per l’accelerazione hardware non significa che qualsiasi PC possa decodificare qualunque formato: dipende dal decoder integrato nella GPU e dai driver installati.
H.264 offre la compatibilità più ampia ed è anche il codec predefinito di scrcpy; H.265 è comune sulle GPU relativamente recenti; AV1 richiede invece hardware più moderno. Se il dispositivo Android produce un flusso che il decoder hardware del PC non gestisce, scrcpy può continuare a usare FFmpeg sulla CPU.
Per sapere quali encoder mette a disposizione lo smartphone si può eseguire:
scrcpy --list-encoders
Il comando mostra ciò che Android può usare per comprimere il video; il PC deve possedere a sua volta un decoder compatibile. Scegliere AV1, quindi, non garantisce automaticamente un carico inferiore: su una macchina priva di accelerazione AV1 si potrebbe ottenere esattamente l’effetto opposto.
H.265 e AV1 comprimono meglio il video, ma scrcpy non è un servizio di streaming tradizionale: durante il suo utilizzo ha grande importanza la latenza perché si sposta il puntatore con il mouse, si digita sulla tastiera, si apre un’app sul telefono e si vuole vedere il risultato immediatamente. Per questo, H.264 è comunque vantaggioso: è supportato praticamente ovunque, encoder e decoder hardware sono molto diffusi e le implementazioni risultano mature.
Se l’obiettivo è ridurre ulteriormente il consumo di risorse, si può intervenire anche sulla quantità di dati generati. Per esempio, l’impostazione seguente limita la dimensione massima del video mantenendo le proporzioni dello schermo:
scrcpy --max-size=1600
Allo stesso modo, --max-fps permette di limitare il frame rate e --video-bit-rate controlla il bitrate. La decodifica hardware riduce il costo lato PC, ma evitare di elaborare pixel che non servono resta una buona pratica.
Meno CPU vuol dire davvero meno consumi?
In linea generale sì, anche se non esiste un rapporto matematico diretto tra la percentuale CPU risparmiata e i watt consumati dall’intero sistema. Il decoder video della GPU assorbe comunque energia; semplicemente svolge quel lavoro in modo molto più efficiente.
Su un desktop la differenza può manifestarsi soprattutto sotto forma di temperature inferiori e ventole meno attive; su un portatile, invece, il vantaggio può riflettersi anche sull’autonomia, specialmente durante lunghe sessioni di lavoro.
scrcpy 5.0 introduce anche build native per Windows ARM64: la novità interessa soprattutto i PC Windows 11 basati sui più recenti SoC Snapdragon. Il programma non deve infatti più affidarsi alla traduzione del codice x86 o x64 e può sfruttare direttamente la piattaforma ARM.
Perché scrcpy 5.0 è un aggiornamento cruciale
Rispetto alla major release precedenti, scrcpy 5.0 interviene su una parte fondamentale del funzionamento del programma.
La decodifica passa, quando possibile, dai core generici della CPU ai circuiti dedicati della GPU; i frame possono restare nella memoria grafica fino al rendering; la gestione delle code tiene conto dei limiti dei decoder hardware. Il risultato è una soluzione più efficiente senza richiedere configurazioni particolari all’utente.
Per chi usa scrcpy pochi minuti ogni tanto è soprattutto un buon affinamento tecnico. Per chi lo tiene aperto durante sviluppo Android, debugging, registrazioni, presentazioni o assistenza, invece, scrcpy 5.0 può significare concretamente meno CPU occupata, meno calore e meno energia sprecata.