Author Topic: Subsonic Client  (Read 147855 times)

MiDWaN

  • Jr. Member
  • **
  • Posts: 78
I've compiled what I consider a "pre-release" version, ideal for people wanting to test and report any issues before we consider it stable enough.

If anyone is willing to help test it, it's currently here: https://github.com/midwan/MB_SubSonic/releases

I'm using it daily now and haven't seen any problems yet, both in MusicBee 2.5 and 3.0.x beta. But more people testing it is always better.
If we don't find anything in a few days, we can release the first version as "stable" and continue working on the next version after that.

thanks for any assistance! :)

hiccup

  • Sr. Member
  • ****
  • Posts: 7912
Could you perhaps briefly explain real-world scenarios what you could use this plugin for?
Also, I saw there is a free version of Subsonic and a paid one.
How do the differences between these two affect the possibilities of this plugin for MusicBee?

tia!


MiDWaN

  • Jr. Member
  • **
  • Posts: 78
Of course, I assumed that most people interested in this would already know that bit...

With this plugin MusicBee acts as a Subsonic player. In simple terms, that means that you can use MusicBee to stream your music from a Subsonic server you have access to (for example, a home server you setup or a friend's server you have access to, etc). You will need to have a Subsonic server somewhere of course, for this to work. :)

Subsonic (www.subsonic.org) is a free streaming media server that you can install on your own server and have it manage your collection. You can access that collection using multiple "players", including a web front-end (which comes with Subsonic), smartphone players (e.g. Android, iPhone), and desktop ones. With this plugin, MusicBee also gets this functionality added.

There is a paid Premium option for Subsonic, which costs $1 per month, that enables some extra features as mentioned here: http://www.subsonic.org/pages/premium.jsp including access to your collection from external apps (such as this plugin). As far as I know, you will need that - but I haven't personally tested it on an installation without a Premium option to be 100% (maybe it works, maybe it doesn't). You get 30 days of free Premium with a new installation anyway, if someone wants to try it out.

If you have any more questions, I'd be happy to help further.

hiccup

  • Sr. Member
  • ****
  • Posts: 7912
Of course, I assumed that most people interested in this would already know that bit...

Thnx MiDWaN
Maybe most people do, but I didn't  ;-)

I was especially wondering if there might be some kind of integration between the databases of MB and Subsonic.
That might be interesting for sharing the MB database between more than 1 computer.

But if I understand it correctly, with this plugin, MB will function as a 'dumb' client, and the Subsonic database will have to be maintained and scanned separately from MB's database.

Anyway, it has made me curious, so I will see if I can experiment a bit with it on my NAS4Free server.
In advance: thnx for your work on this!

MiDWaN

  • Jr. Member
  • **
  • Posts: 78
The subsonic api provides many interesting functions, including uploading, editing, downloading and even sharing your media. Most of that is not currently covered by the plugin, at this stage. I'm not sure what you have in mind when you mention integrating the databases,  but if you can describe  it in more detail we can see how feasible it is.


hiccup

  • Sr. Member
  • ****
  • Posts: 7912
Well, just throwing up ideas and wishes without any experience with Subsonic, or hindered by too much technological insight in the matter;
For me it would be ideal if:

My precious music library would be maintained by using MusicBee only.
So all my interactions concerning tagging and scanning my music library would only be with MB.
Such editing and scanning operations would only need to be possible to be done from one (main) pc.
I don't need (or want) to be able to do editing or scanning of the files on other systems.

My phone, tablet, upnp mediaplayers, other pc's having MB installed, etc. would just need to be playback clients, being able to play everything from my library, and always picking up all changes and edits that have been made to my main library from my main pc.

I was hoping that maybe Subsonic might be some intermediate tool to accomplish something like this.
But if I understand correctly, Subsonic would be the master of the (a) database, and MB will just be a 'slave'.

MiDWaN

  • Jr. Member
  • **
  • Posts: 78
Maybe you aren't 100% clear on what Subsonic is/offers... :)

It is, in essence, a streaming service. It allows you to make your collection available over the internet to any client/player that is able to connect to it. Think of the following real-life scenario (my own):

- I have a huge collection of music I have amassed over the years. It's located in my home NAS.
- When I'm home, I use MusicBee to manage that collection. I listen to music, edit tags, organize etc.
- When I'm not at home, I want to be able to access that collection as well - that's where Subsonic comes in.

I have installed Subsonic on a spare machine which is always-on. I have configured Subsonic to use my collection located in my home NAS, the same way I did for MusicBee (just point it to the right folders, and Rescan).
Now when I'm on the road, I can use a mobile App to access my Subsonic server and stream any song from my collection directly to my phone. I can use "D-Sub" (an Android app) for that.

When I'm at work, I wanted to be able to do the same with a desktop client (e.g. MusicBee). I could just use the web interface that Subsonic provides, but I found that it's not ideal if you're also using the browser doing other things - the stream can chop up sometimes due to the browser doing heavy work on another tab for example.

And that brings us to the plugin - it allows a MusicBee installation to tap into a Subsonic server. In my case, my home server with my collection.
Using the plugin, MusicBee "sees" an extra library with content which it can manipulate in the same way as a local one - i.e. search, playback, etc.

Subsonic itself allows more functionality than what the plugin has implemented so far, such as editing the Tags, downloading media locally, uploading media to the server/collection, even Chatting with other users currently connected on your Subsonic server. Some of that functionality I'm planning to add to the plugin in the future. Feedback and suggestions would also dictate what parts will be done first.

For example, my first item in the to-do list is to change the way the plugin connects to the Subsonic server: it currently sends your password as plaintext, I will change that to use a one-time token instead for better security.

I hope this makes things a bit more clear... :)
Let me know if you have any more questions.

phred

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 9370
I've been using SubSonic just about as long as I've been using MB.  They each use its own database and never the twain shall meet.  I do my tag editing and file manipulation only in MB.  I export my playlists from MB to a directory on the computer where the SubSonic server lives.  All my music files are on a NAS I have SubSonic scan for new files and playlists once a day.  As far as I know, you cannot set it to continuously monitor.  I can use the SubSonic client from anywhere with an Internet connection.  Since I like MB's GUI better than SubSonic's, I installed a barebones version of MB on my laptop.  It doesn't have a real library as I didn't want to put 17,000+ tracks on the laptop.  But I have the SubSonic plugin on the laptop and that gives me access to all my tracks in a GUI that I like.  I can also access it via my Android device.  There seem to be quite a few apps available for Android and iDevices.  Some are free and some are not.  Some work better than others.

And while no developer is as responsive as Steven, SubSonic's developer, Sindre Mehus, is good.  And there is a good forum crowd also.  Very willing to help users new or old.
Download the latest MusicBee v3.5 or 3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Posting screenshots is here
Searching the forum with Google is  here

hiccup

  • Sr. Member
  • ****
  • Posts: 7912
Maybe you aren't 100% clear on what Subsonic is/offers... :)

No doubt about that ;-)

But your explanation certainly helps a lot.
To get it all a bit clearer in my head before I dive into this myself:

So you have your music collection on a NAS, and any edits or maintenance you do with MusicBee are directly done to the files on your NAS?
Two questions for now:

- why don't you have Subsonic installed on your NAS, but on a separate computer?

If I understand correctly, you have Subsonic pointed to the files on your NAS.
 - can you automate Subsonic to automatically scan that music library for changes, and will it also read and understand MusicBee's custom tags? So that a client MusicBee installation can pick up on all that?


edit:
I just missed phred's input. More info to digest!

phred

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 9370
- why don't you have Subsonic installed on your NAS, but on a separate computer?
The SS server needs an OS in order to serve.  If you NAS has one of these, it might be able to run:


Quote
If I understand correctly, you have Subsonic pointed to the files on your NAS.
 - can you automate Subsonic to automatically scan that music library for changes, and will it also read and understand MusicBee's custom tags? So that a client MusicBee installation can pick up on all that?
Yes, but only once a day.  Continuous monitoring has been asked for in the past, but it's not currently available.  Mine updates at 0630 every day.
Download the latest MusicBee v3.5 or 3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Posting screenshots is here
Searching the forum with Google is  here

hiccup

  • Sr. Member
  • ****
  • Posts: 7912
I saw that. My NAS (NAS4Free) is based on FreeBSD, and I couldn't just now find much recent info on people running Subsonic on that successfully.
There seems to be a fork of Subsonic, called Madsonic, which might run on NAS4free. So it's time for some experimenting...

MiDWaN

  • Jr. Member
  • **
  • Posts: 78
Regarding running Subsonic on my NAS:
- I've built a silent (fanless) but rather low-powered machine for this role, which is also responsible for a few other tasks. Although the OS supports it (I use FreeNAS), I don't want to stress it further by running Subsonic on it, as it can't handle some cpu-intensive stuff easily (e.g. transcoding a FLAC stream to low bitrate mp3).
- I already had the secondary machine always-on for other tasks, so adding Subsonic on it was no heavy burden (it has a relatively modern 4-core CPU).

hiccup

  • Sr. Member
  • ****
  • Posts: 7912
Interesting stuff.

I am guessing custom tags are lost in the process, right?

phred

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 9370
Please let us know your findings.

I'm checking into your question about Custom Tags and the MB SS client doesn't seem to show them.  Most of my custom tags are for use in generating auto-playlists.

But right now, this new plugin doesn't seem to work any better than the previous one.  Only some (a very small number) of my album art is showing up.  Most show as "No Cover Art." And while it appears that my music library exists if I click on each artist, my playlists are un-populated.

I checked MB v3 with the old plugin and it has the same behavior regarding album art and playlists.  The playlist name shows, but its un-populated.  And MB 2.5 has the same behavior with both versions of the plugin.
Last Edit: February 16, 2016, 07:46:50 PM by phred
Download the latest MusicBee v3.5 or 3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Posting screenshots is here
Searching the forum with Google is  here

phred

  • Global Moderator
  • Sr. Member
  • *****
  • Posts: 9370
@MiDWaN-

It would be helpful if you could add a version number or the release date to the ZIP filename.  That would make it easier to keep track of versions.

Thanks.
Download the latest MusicBee v3.5 or 3.6 patch from here.
Unzip into your MusicBee directory and overwrite existing files.

----------
The FAQ
The Wiki
Posting screenshots is here
Searching the forum with Google is  here