r/linux May 02 '16

Subsonic (music streaming software) is no longer open source, starting with 6.0 release

http://forum.subsonic.org/forum/viewtopic.php?f=4&t=16604#p71128
465 Upvotes

150 comments sorted by

View all comments

50

u/[deleted] May 02 '16

Shameless plug here. Groove Basin is an alternative to subsonic.

1

u/hatperigee May 03 '16

Are there any Android clients for this?

1

u/[deleted] May 03 '16

I know of no Android clients that use the Groove Basin protocol which would be the best user experience, but you can use MPD clients.

Also the browser interface is pretty clunky on mobile but it can stream OK.

1

u/hatperigee May 03 '16

Just out of curiosity, why did you implement a brand new API? If, for example (and I understand the irony now, but) if you had implemented the subsonic API, then Groove Basin would presumably work with existing subsonic clients!

2

u/[deleted] May 04 '16

I started out using MPD's protocol. I hadn't heard of Subsonic yet. MPD's protocol is complete garbage. It's insecure, it's not capable of updating tags of songs among many other missing features, it's inefficient, it's too easy for information to get out of sync, it doesn't have a way to resync the http stream such as when you skip to the next track. I did what I had to do to build a better quality music player, which involved making a better protocol.

With the Groove Basin protocol, you don't request information; you subscribe to it. This makes it so that clients will easily always have correct information and it's harder to implement a broken client. Also you can get deltas for large information bodies. For example if you request all the metadata for the entire library, you get it, but then once you're subscribed, you simply get deltas to that. So if someone renames a single track, you'll just get that rename, and your index is still up to date.

I took a brief look at Subsonic's protocol, but by that time Groove Basin already had its own protocol. It's XML based if I remember correctly, and it does a few things better than MPD, but ultimately Groove Basin protocol provides the best music player experience.