Is there, or why isn't there, a player / organizer completely backed by MusicBrainz?

Hi all,
as someone who loves to listen to classical music, I have despaired for almost 20 years that there is no player that could answer typical requests to my (somewhat large) music collection in a user-friendly way.

  • which recordings of Beethoven’s 7th Symphony do I have?
  • show me all works for violin
  • show me all my CDs on which Lorin Maazel conducts
  • list my Radiohead albums by release date (or course, there’s not only classical!)

My first attempt to develop such a player myself ended after some time in metadata hell. Then I found MusicBrainz and realized that this database contains everything (and much more) a typical classical music nerd needs. So I started to develop a player, which is basically just a player-oriented GUI for a subset of the MusicBrainz DB (namely the part that has something to do with the files in my collection).

Having been carrying this idea around for a few years now, it seems so obvious to me that I find it hard to believe that no one has done this before. Does such a player already exist and I just haven’t found it? If not, why? There really is a need for good players that can handle classical music!

7 Likes

Just my 2 cents:
The player itself is not really the problem. The bigger challenge is to code an easy search for your questions and display the result in a playable view. (Imagine, you want to use it on your PC, your phone, your tablet…)
First you need the MusicBrainz metadata (you can download all the metadata for this purpose) and then you need to link your own files from your collection to the metadata.

This is not an easy task, because there is no perfect way to match your own collection with the metadata from MusicBrainz automatically. In a perfect world, you have the identifying MBID’s already stored in every song in your collection. With this MBIDs you can find the recording, the release, the composer, conductor and all the other data.

Unfortunately, we don’t live in a perfect world and the part “match my local data with the metadata from MB” is the most time consuming part. For some of your local songs you will not find metadata at all but you want to find and play your songs, albums, persons anyway…

1 Like

If we imagine that supermihi has accurately and completely tagged their music collection and has MBIDs for every Release then what player will give supermihi what they (and more than a few other people) are seeking?

2 Likes

For these (except the one I have striked-through), and even more use cases, I use the MB website itself, with the COLLECTION HIGHLIGHTER.

The player is the last link in the chain. In my description above, you separate the search (and the database) part from the player. Therefore you can use whatever player you want, like VLC or any other player available for your operating sytem. Even the HTML5-player would do the job. The player will be started with the complete search result from “all works for violin” or the manually selected songs “pieces 1-3, 7 & 8”.

It is nearly the same as with the MusicBrainz website search. You need an additional “Play this song” functionality and the already mentioned matching magic.

Sounds good.

So is there a player that has nice GUI, positive UX for marginally IT-skilled users* that facilitates easy searching, filtering and playing of local music files that are tagged with MBIDs?

Can the Coding Olympians here knock one together quickly?

Have you tried using beets? It’s an organiser that uses MusicBrainz as its primary (and by default only) data source. It’s not a 1:1 thing, but certainly a lot more flexible than anything else I’ve personally worked with… and if you’re able/willing to dig into some (Python) coding, you can get it to do pretty much anything.

4 Likes

Thank you all for your valuable comments, and sorry for me not responding earlier.

InvisibleMan78: yes, an easy yet powerful search appears to be among the biggest challenges. But I am optimistic that it’s doable, and one could start with somewhat lower goals than what I implied in my initial post – as a start, I’d be perfectly happy for a search that lists all works or releases related to the entered search terms. And yes, the actual playback is the least of problems, I’d go for a simple MPD interface as a start.

Matching ones collection to MBIDs is something that definitely requires (potentially lots of) manual effort by the user. I am totally aware that such a software wouldn’t be acceptable for (or required by) a majority of users, still the (open source) world is full of extremely powerful software targeted at a small audience willing to invest something (tiling window managers, ASCII-art adventure games, the Z shell …). In fact, there are people using Picard and similar software to do exactly that. I’d say that, again with a helpful UI, a few minutes per release should suffice on average, and I would be willing to invest that.

jesus2099 Thanks for the hint, this looks very interesting and certainly goes in a similar direction!

Freso I looked at beets a few years ago and forgot it afterwards. Really looks like a good place to start playing around!

mmirG
»Knocking one together quickly« might be a bit optimistic, but if someone is interested in joining me for an implementation, I’d be more than happy!

1 Like

I’ve always thought it would be interesting to integrate a local player with the website. Put ‘play’ buttons next to items in the database if you have them in your library. Go to the data rather than pulling it into another program/app :thinking:

3 Likes

That is a nice idea. Unfortunately, the most player in a webbrowser
(including the HTML5 audio controls

can not access an existing local audio or video file. Supposedly, this would be a security risk.
It is not completely impossible, but requires some hacky code.

2 Likes

Relevant.

MB has the information necessary to replicate a lot of Roon features - LB for recommendations, CAA images could replicate the gatefold thing, we have detailed track relationships for more than just mainstream releases, genres, moods are coming in the future, Wikidata and CritiqueBrainz for blurbs…

1 Like

@InvisibleMan78 that “hacky code” could be a simple browser extension, forwarding the play request to whatever local player you want. Definitely possible!

1 Like

Do you know an existing example for such a forward?

Would this part also be possible with one of the magical (Tampermonkey?) scripts from @jesus2099?

So we need a local player that can take a recording MBID and find the file and play it.
Or better, it takes a release MBID and recording MBID or track number, and find the release, add it to the playlist and then play starting from the clicked track.
I don’t know a player doing that.
But I don’t really need that, either. :wink:
My CD are still played the regular way.

1 Like

Just an idea:

For an easy start: Add a play button for every found recording on the MB search result and then - if clicked - search (IF file EXISTS) for a local music file named similar or according to a simple search filemask like %artist%\%album%\%year%\%title% in one ore more local folders. :wink:
IF it exists, send the local file to a local player like VLC (into it’s queue or whatever is available).

Update: This is a Mockup with “injected” HTML5 audio controls:

4 Likes

Two extensions I use myself do something like that:

I have no idea how much effort it is to write such an extension – probably not as “simple” as I, full of optimism, implied in my original post – but well possible. However it does not save you from somehow perform the mapping between files in your collection and MBIDs, which we already identified as one of the crucial steps.

I don’t think this is an issue tbh. Tying people into the MB ecosystem has benefits for the DB as well as for the user (unless they hate good tags!)

1 Like

I agree with the basic idea. I want a musicplayer that is free and leverages the information in MB.

There was another thread about why do you contribute to MusicBrainz… for me it’s so that I have a richer listening experience which includes things like being able to look at all the artwork - including the liner notes and see who played which instrument and who wrote the song… obviously the data has to be there, so that’s my contribution…but there’s got to be a decent player or at least a recipe for setting one up… that gives me a motivation for getting the info on my collection to be really good. Note that I will have used picard to store lots of info into the flac files that are my music.

3 Likes

I’m searching the forum, trying to figure out what are the play buttons in your artist page mock-up.

What is your library?
CD rips?
How can MB play your music?

1 Like

The functionality mentioned in my mockup would be 1:1 with what the ListenBrainz player does on LB at the moment - plays the song on Spotify or YouTube (without leaving the window). No local music files being accessed :+1:

It’s definitely not 100% accurate, but surprisingly good. Even for quite obscure stuff. I was sceptical at first!

Try it on my LB page, hit play next to a song (I don’t think you have to be logged in)

1 Like