Wave

Client Subsonic e Navidrome nativo per Linux e Android

Wave è un client musicale per server Subsonic e Navidrome. Su Linux è un'applicazione GNOME nativa, con GTK4 e libadwaita; su Android è un'app Material 3. Le due versioni condividono lo stesso core scritto in Rust.

La home di Wave, con il carosello «Discover», gli album ascoltati di recente e il player nel pannello laterale

Libreria e scoperta

La libreria è organizzata per artisti, album e playlist. La home mostra gli album ascoltati di recente, i più ascoltati e gli ultimi aggiunti.

La sezione «Discover» propone ogni giorno album di artisti affini a quelli ascoltati, non ancora presenti nella libreria, insieme alle nuove uscite degli artisti già presenti.

La libreria degli album

Riproduzione

L'audio è decodificato nell'applicazione con GStreamer. La riproduzione è gapless e il volume è normalizzato tramite ReplayGain.

L'equalizzatore a dieci bande ha dei preset e una modalità automatica basata su AI locale, che equalizza ogni brano in tempo reale in funzione del suo genere.

La pagina di un album in riproduzione, con la coda nel pannello laterale

Player compatto

Oltre al player nel pannello laterale, Wave ha un player compatto, orizzontale o verticale, che può mostrare la coda o l'equalizzatore.

Il player compatto orizzontale

Il player compatto orizzontale con la coda aperta

Il player compatto verticale Il player compatto verticale con l'equalizzatore aperto

Sincronizzazione tra dispositivi

I dispositivi di uno stesso account condividono l'indirizzo e le credenziali del server musicale, la lista dei desideri e le ricerche recenti. L'account è ripristinabile attraverso una frase BIP39 di 24 parole, da cui si ricava la coppia di chiavi asimmetriche per l'autenticazione sul server di sincronizzazione. Il server conosce solo la chiave pubblica dell'account e conserva dati cifrati che non può leggere.

Un nuovo dispositivo si collega inquadrando il codice QR mostrato da uno già sincronizzato, senza dover inserire i dati del server musicale. Ogni dispositivo può riprodurre su un altro e controllarlo.

Distribuzione

Wave è distribuito come Flatpak, pacchetto .deb e .rpm, AppImage e APK per Android 14 e successivi. L'interfaccia è in italiano e in inglese, e il codice è rilasciato con licenza GPL-3.0 o successiva.

Il repository non è ancora pubblico: lo sviluppo avviene su un'istanza privata di Gitea, quindi per ora Wave non si può scaricare. Su richiesta sono disponibile a condividere sia i pacchetti sia il codice sorgente.