The interface and performance are just so well thought out and refined.
Plus it contains the earliest published code I ever wrote: https://github.com/tsirysndr/rockbox-zig/tree/master/apps/pl... , so that's fun for me.
I've wanted that same experience on my desktop for years. So I'm basically trying to bring Rockbox to macOS and Linux as a daemon I can use every day, with MPD-style control on top.
It was 2 colour, only had 6 or 7 buttons, I could completely operate it without looking at it, and Rockbox gave it the two main features I really wanted: flac support and gapless playback.
The main advantage I have now is I can have my entire (digitised) music collection on my phone - mostly ripped from CD's or purchased from Bandcamp, because it's > 400GB, and I think the Sansa Clip+ only supported 8GB maximum back in the day. Was considering digitising stuff we only have on vinyl as there is a USB output on our turntable, but decided to just leave it in its pure form. Plus recording at 1x speed is almost like going back to the dual cassette tape recorder era and high-speed dubbing was 'special'.
Hardware-wise the clip on the back always broke quickly and then the headphone socket went at some point. Went through about 5 of them before they were obsolete/or on eBay for $100s, but were good enough and cheap enough to keep replacing. One interesting upside of the space constraint was that it made you curate your own music collection, and then opt for a different set (particularly after a few new purchases).
Looks like Rockbox now does a heck of a lot more than it used to back in the day. It's great you've breathed additional life into it.
Technically you could achieve the same with a web frontend, but then you're limited to that UI. A music player daemon is agnostic to the UI, meaning there can be different UIs or you can add music via command line, text interfaces etc.
You can also use multiple clients if you want. Some TUI, some graphical, some utility like mpdscrobble (that just watches what you listen to and scrobbles it to Last.fm).
<del>The server-client model means you can run the server (MPD, Rockbox Zig, whatever) on your homelab, and stream music to multiple clients. So you don't have to copy all your music onto your phone, you can just run an MPD client like M.A.L.P. and it will stream from the files on your server. Then there's just one copy of your music collection, tags, etc.: no more keeping tags up-to-date between the copies on your home server, your laptop, your phone... (Do make sure your files are backed up, of course).<del>
Yes please - Tidal's app is genuinely woeful and doesn't seem to use native API's in MacOS
Rockbox already brings its own decoders (20+ codecs), its own DSP chain (crossfeed, EQ, replaygain, gapless), and its own mixer. I just need the host OS to accept PCM frames. cpal is the minimal portable shim for that; pulling in libmpv would mean discarding Rockbox's audio pipeline and replacing it with FFmpeg's, which would basically defeat the point of building on Rockbox firmware.
What is the point of bulding on Rockbox firmware? I love Rockbox myself too so the answer can be "fun" and that is all right.
https://mpd.readthedocs.io/en/latest/plugins.html#httpd
I note that they call it a plugin and also say the purpose of MPD isn't to stream.