Sincronizzazione delle playlist e tempi di crossfade in Metrolist

Scritto da Alessio il 30/07/2026

Problema

Il tempo del crossfade poteva essere errato quando cambiava la velocità di riproduzione, facendo partire troppo presto la traccia successiva. Separatamente, la sincronizzazione delle playlist poteva duplicarle e consumare molta memoria perché la pulizia avveniva dopo l’avvio del ciclo di sincronizzazione.

Modifiche

Ho adattato il calcolo del ritardo del crossfade alla velocità di riproduzione, passato quella velocità al player secondario e usato un PlayerMessage di ExoPlayer per gestire con precisione il tempo sul main looper. Per la sincronizzazione delle playlist ho spostato la pulizia prima del ciclo, così le voci obsolete vengono rimosse prima di applicare i nuovi dati.

Risultato

Le transizioni in crossfade tengono conto della velocità di riproduzione e la sincronizzazione evita i problemi di duplicazione e memoria corretti dalla modifica.

Commit: tempi del crossfade, sincronizzazione playlist