getmusicbee.com

Support => Questions => Topic started by: Phaedrus on December 16, 2017, 10:43:22 AM

Title: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 10:43:22 AM
My specific goal is to create an auto playlist that will show me albums that I have more than one copy of. For example, I buy a CD I forgot I already had, re-rip it, tag it (tags are slightly different because it's a different version) and import it. MusicBee will happily import it, and copy it to the location, but not find that it is a duplicate because the titles are slightly different.

In order to do this, I would like to create an Auto Playlist that contains albums which have two "Disc-Track# 1-01," and I can't figure out how to do this. If it's even possible. I'm approaching this like a SQL query, and that might be my problem. What I really want is to use the "Having" part of a query.

Any thoughts on the matter will only help my auto playlists get better and I really appreciate that.
Title: Re: Advanced Auto Playlist assistance
Post by: redwing on December 16, 2017, 12:07:34 PM
For that purpose, I'd rather use column browser than auto-playlist.
First I'd create a virtual tag "<Album Track Count> - <Album Duration>" and then add the field to column browser as first column. Second column is <Album> and third column is <Album Artist>.
Then sort first column by track count, and check items one by one from the top. If an item has multiple albums, second and third column will tell you.
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 01:49:58 PM
Thanks, I really appreciate the suggestion. I spent some time with this because I was so intrigued. In the end, I don't see how this helps. It seems like it only catches identical imports, and misses a lot of potential scenarios;
1. Same album with an extra second on one of the tracks wouldn't register in any of the other columns
2. Same album with "part one/part two" of a track split differently wouldn't register as the same in the other columns.


My brute force method was to use the standard three columns, and sort the tracklist by "Disc-Track#." This let me scroll through the albums quickly, and watch for a second "1-01." The display takes less than a second to update, and all I had to do was stop hitting the down arrow when I found one, and analyze the entries.

This method seems to take a bit longer to update the columns and on the multiple albums with identical times and total tracks, (I was surprised at how many there are.) I need to spend extra seconds to determine if I need to go further. With 6,752 albums, every second counts.

Assuming 1 second per entry.... either of these methods would take hours to complete.
Title: Re: Advanced Auto Playlist assistance
Post by: hiccup on December 16, 2017, 02:14:43 PM
Another approach might be to batch run all your albums through MusicBrainz's Picard.
All your albums (if present in musicBrainz's database of course) will get elaborately tagged, including a release-id.
That release id will make it easy as pie to find all duplicate albums.

But if you have no interests in MusicBrainz data other then for this specific purpose, it would be like shooting at a mouse with an elephant gun.
Else you might be catching two bees with one stone...
Title: Re: Advanced Auto Playlist assistance
Post by: redwing on December 16, 2017, 02:53:25 PM
In the end, I don't see how this helps. It seems like it only catches identical imports, and misses a lot of potential scenarios;
1. Same album with an extra second on one of the tracks wouldn't register in any of the other columns
2. Same album with "part one/part two" of a track split differently wouldn't register as the same in the other columns.

Of course you should adjust the suggestion to your particular setup and purpose. I am also doing the same thing with my collection and it helps me. That virtual tag is independent of any tag values working like an unique album ID, which I'm finding useful. Also you can find albums with 1-2 seconds difference in album duration just above and below the item if you sort by the field.
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 03:19:56 PM
Another approach might be to batch run all your albums through MusicBrainz's Picard. All your albums (if present in musicBrainz's database of course) will get elaborately tagged, including a release-id.

This is a good idea, and has given me a couple of new directions to think about.

Sadly, part of my problem is my fetish for tags. I run all my albums through Media Monkey, and the Discogs plugin. I confess I haven't looked at MusicBrainz in the past couple of years, but I recall having many albums not found, and less information when it was in the database. With Discogs, I end up with all kinds of neat, (although admittedly ultimately useless) information. I do get an ISRC number though.

From the fuzzy corners of my memory, I had a couple of albums which were distinct releases, with the same MusicBrainz ID.
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 03:26:57 PM
I like the idea of combining both of these tag ideas to form a "super album ID." If I combine track, total time and ISRC into one Meta-meta-tag, I can come close enough to a guarantee that I should only have one result.

This would find the double-imported albums. Now, I just need to find the ones that are just slightly different.
Title: Re: Advanced Auto Playlist assistance
Post by: hiccup on December 16, 2017, 03:28:21 PM
Another approach might be to batch run all your albums through MusicBrainz's Picard. All your albums (if present in musicBrainz's database of course) will get elaborately tagged, including a release-id.

This is a good idea, and has given me a couple of new directions to think about.

From the fuzzy corners of my memory, I had a couple of albums which were distinct releases, with the same MusicBrainz ID.

The boys and girls at MusicBrainz are very ocd about their database, and the structure is very well thought-through.
One aspect that is clever, and (for as far as I know) Discogs doesn't do is this:

Album releases from different countries, remasters etc. will get different album id's, but they will all get the same releasegroup id.

The same for songs:
Studio and live versions of a song will get different track id's, but the same work id.
That even goes for the same song recorded by a different artist.
So that makes it for example also very easy to find all recordings of a song, irrespective if they are live, studio, radio or album releases, and also cover versions by other artists.


But MusicBrainz's database is populated and maintained by volunteers. So the completeness will depend on their effort and musical interests.
Discogs has it's origins in some alternative commercial market place, and seems a lot less concerned with having a well-structured and dependable database.

It might be worth to give Picard a renewed try.
Title: Re: Advanced Auto Playlist assistance
Post by: frankz on December 16, 2017, 03:28:58 PM
The Picard idea is a pretty good one, actually, because you don't need to wind up writing its tags to your files ultimately after the scan.  

You could have it scan the files to identify them and then it organizes them into its tagging pane.  Then you can visually scan that pane for albums with a result of - for example  - "(24/12)" (meaning that album has 24 files identified and 12 tracks).

Of course, it's not perfect, but even if it doesn't find a number of the albums in its database, it'll knock down the number of albums you'll have to locate using other means.
Title: Re: Advanced Auto Playlist assistance
Post by: frankz on December 16, 2017, 03:40:46 PM
The boys and girls at MusicBrainz are very ocd about their database, and the structure is very well thought-through.
One aspect that is clever, and (for as far as I know) Discogs doesn't do is this:

Album releases from different countries, remasters etc. will get different album id's, but they will all get the same releasegroup id.

The same for songs:
Studio and live versions of a song will get different track id's, but the same work id.
That even goes for the same song recorded by a different artist.
So that makes it for example also very easy to find all recordings of a song, irrespective if they are live, studio, radio or album releases, and also cover versions by other artists.


But MusicBrainz's database is populated and maintained by volunteers. So the completeness will depend on their effort and musical interests.
Discogs has it's origins in some alternative commercial market place, and seems a lot less concerned with having a well-structured and dependable database.

It might be worth to give Picard a renewed try.

Picard is fantastic at what it does and Discogs is fantastic at what it does.  Their intents are different.

You've identified MusicBrainz' strengths well - they cross reference songs and releases and are very focused on those things.

Discogs is a different beast.  Discogs aims to identify and document each pressing of each release.  They do have a unifying identifier for a release like MBrainz, but they go deeper into detail as far as this specific record was cut in Jacksonville VS the West Coast and pressed at this plant, etc.  Etched matrix numbers and run-out grooves and that kind of thing. 

This is why I'm slightly confounded when people use Discogs as their go-to for file tagging.  Their data is good in that respect, but the meat of their data and their focus has no bearing on tagging whatsoever.  Of course, they do have the data for it for the most part, but it's not really what it's built for.

I can verify that their database is also maintained by volunteers and that they are, indeed, quite adamant about data quality.  Quite.  Obsessively so.  Conversely, I've seen some real garbage data in MBrainz that has gone unaddressed for a very long time (certainly not the norm, though).

That said, I prefer MBrainz for our purposes here.  Their data is much better suited for file tagging, and, because they have an house program that does all the work for the end user, you're not relying on third party plugins like you do with Discogs.
Title: Re: Advanced Auto Playlist assistance
Post by: hiccup on December 16, 2017, 03:53:19 PM
Indeed both have specific strengths and weaknesses.
One thing that made me focus more on MusicBrainz than on Discogs is that if you are e.g. interested in artists performing on an album, you would have to go through all releases, because the album credits would differ completely between the different releases (cd/lp/regional etc.)
There doesn't seem to be any syncing of such information put in place?

Also, there are scripts and plugins for Musicbrainz/Picard that make it easier to retrieve info from Discogs, so that would also help getting best of both worlds.

@Phaedrus:
Drifting a bit off-topic here. Just say stop if it starts bothering you.
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 05:10:57 PM
Suddenly my beard is itchy; I'm scratching my chin pondering these things.

It was several years ago that I settled on Discogs for my tags. I knew at the time that it was imperfect, but it was light-years ahead of MusicBrainz for tagging information. I honestly think it was the plugin available for Media Monkey that made the difference. Once I made the decision, inertia took over, and I stopped looking at any other tagging solution. Now, I have two people with carefully thought out and presented arguments for the same thing. This definitely makes me think twice about my current process.

After re-visiting the MusicBrainz site, I'm reminded of one of the items which kept me out. I don't see where MusicBrainz includes "Involved People," which is one of the fields I really wanted. As I said before, It's neat, and ultimately useless, but here we are. I'd like to say that it would be a no-brainer to just stop getting the information, but it just doesn't feel right to leave data behind. Maybe I need a paradigm shift.

*Edit to add; I'll have to play with the MusicBrainz plugins to get everything together.

In the end, it seems like it's worth it to run one of my old backups from my recent upgrade to 4TB drives through MusicBrainz to see what I get.

@Phaedrus: Drifting a bit off-topic here. Just say stop if it starts bothering you.

Please, carry on. I always enjoy a good discussion. I really would like some help with the playlist at some point, though. I suspect that if I can get this bit sorted out, it would answer many of my other auto-playlist wants. I simply refuse to sort through my entire library Album by Album ever again. I know the relationships I want to make between tracks / Albums; I just don't know how (if?) I can make them happen with an Auto-Playlist.
Title: Re: Advanced Auto Playlist assistance
Post by: hiccup on December 16, 2017, 05:31:50 PM

After re-visiting the MusicBrainz site, I'm reminded of one of the items which kept me out. I don't see where MusicBrainz includes "Involved People," which is one of the fields I really wanted.

You mean like the people/roles such as mentioned here? :

https://musicbrainz.org/release/e9fd5395-94a3-4c0c-8c7e-edb8e131cdfa

I really have no idea if Discogs does a better job on this, or is more complete in a general sense.
This specific album is of course a very popular example that is prone to be very complete in this regard.

Why not just pick 10 albums that represent importance to you, copy them to another drive, and run them through Picard?
I am certainly not advocating MusicBrainz is some golden standard, and I am also interested and curious about your findings, which also might be interesting to others following and considering all this.

Just for my information, how are you retrieving tags from Discogs?
Through MusicBee or by means of a 3d party application?

Title: Re: Advanced Auto Playlist assistance
Post by: frankz on December 16, 2017, 05:32:19 PM
I would urge you to download and install Picard and try it on a few albums rather than picking through the MusicBrainz website for data.  Like I said, you don't ultimately have to tag the files with the data it retrieves, but you can see your old data side by side with its proposed changes and compare the two for anything missing.

I don't think they call them "Involved People" per se, but Brainz does have a list of artists, musicians, producers, arrangers etc for the tracks in its database (the ones that are properly tagged).

Specific to moving forward with your original question, you could tag your files with just the proprietary Brainz tags (their album id or release id or album artist id or some combination) that will help you identify duplicates you have while leaving the Discogs retrieved data in tact. 

If your stuff is already tagged I wouldn't recommend retagging it with MBrainz.  The data isn't that radically different or earth-shatteringly better.  But going forward, especially in the interest of abandoning MediaMonkey and its plug-in if that's your intent, it's something to look at.
Title: Re: Advanced Auto Playlist assistance
Post by: hiccup on December 16, 2017, 05:38:23 PM
To complement frankz good info and tips:

Just for the purpose of your original issue, you could setup Picard to only write the releasegroup tags.
Just be warned that Picards learning curve is a bit steep (or long, or erratic, what should you call it) to accomplish such refinement, and you will need some scripting for it.
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 07:51:19 PM
Quote
You mean like the people/roles such as mentioned here? : https://musicbrainz.org/release/e9fd5395-94a3-4c0c-8c7e-edb8e131cdfa

I went to the Guidelines and only found "Special Purpose Artist." Maybe I should have looked up an album. This looks like it will work a treat.

Quote
I would urge you to download and install Picard and try it on a few albums rather than picking through the MusicBrainz website for data. Like I said, you don't ultimately have to tag the files with the data it retrieves, but you can see your old data side by side with its proposed changes and compare the two for anything missing.

Point taken, and I will be doing this.

Quote
If your stuff is already tagged I wouldn't recommend retagging it with MBrainz. The data isn't that radically different or earth-shatteringly better. But going forward, especially in the interest of abandoning MediaMonkey and its plug-in if that's your intent, it's something to look at.

Quite the contrary. I looked at "The Girl is Mine" to compare to my tags. All I have is "Co-Producer," "Mixed By," and "Vocals" for Involved people. My tagging completeness fetish keeps getting me into so much trouble.

Quote
To complement frankz good info and tips: Just for the purpose of your original issue, you could setup Picard to only write the releasegroup tags. Just be warned that Picards learning curve is a bit steep (or long, or erratic, what should you call it) to accomplish such refinement, and you will need some scripting for it.

This is definitely a solution to my original query. It works, and I can shoe-horn it into my workflow.
I fear no learning curve. (Except the ones that can result in death or dismemberment if you fail.)

I would still rather find a way to use my Auto-Playlist for this. My desire is to have a folder of Auto-Playlists that I can cycle through to check for issues that have happened when I import files (If everything is good, they should be empty.)

To get a bit "meta," and explain my thought process; I am a Database / Network Administrator. I have a couple of databases that pull from an external flat file. Since I have no control over the input, I have no way of knowing if there was a dropped comma, or if the source has changed their field order, or name. To combat this, I have fields that will only accept the type of data I expect. If something like the above happens, the import will fail, and I will know to look at the incoming file. My data integrity is preserved.

I don't see any way to maintain my data integrity using MusicBee/MediaMonkey, or MusicBee/MusicBrainz. Since I can't check the input, I need to check the output. Auto-Playlists give me the ability to target the issues I've had in the past, so that I can at least check for those in the future. If I can get a couple more concepts down with the Auto-Playlist, I can find other things to look for as well.

As long as I'm on this, I also want to avoid application lock-in. My end goal is to be able to drop my file structure into any media manager, and have all of the information available. It looks like MusicBrainz is going to help me to this end.

TL;DR; I'm concerned about data integrity, and want a way to verify that the incoming tags are at least reasonable. Auto-playlists are my perfect solution. Ya'll suck, because now you've convinced me to dive down the MusicBrainz/Picard rabbit hole. :)
Title: Re: Advanced Auto Playlist assistance
Post by: hiccup on December 16, 2017, 08:22:43 PM
TL;DR; I'm concerned about data integrity, and want a way to verify that the incoming tags are at least reasonable. Auto-playlists are my perfect solution.


After your albums would have the album-id and releasegroup-id tags populated by MusicBrainz, the next step for MusicBee would be to be able to find duplicate albums using these tags.

But the challenges for that as I see it now:

- If you would be able to have MusicBee strictly looking for duplicate album-id's, you would not find duplicate albums which duplicates were released on a different label, in a different year, a different country etc.
It would only show duplicates that have the same ASIN/barcode/catalogue nr.

- If you would be able to have MusicBee strictly looking for duplicate releasegroup-id's, it would probably display all album tracks in your library.
(all tracks from an album will have the same releasegroup-id)

So that's probably still not a perfect or easy solution.

edit:
Finding duplicate track-id's would probably be very helpful.
That would only need a minor additional effort in looking if they are contained in duplicate albums.


But I was wondering, if you are meticulous in your tagging:
If you would create a virtual tag which has album artist and album title concatenated, wouldn't that be a step forward in achieving what you want?
Then you would only need MusicBee showing duplicates for that tag.
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 09:32:19 PM
But I was wondering, if you are meticulous in your tagging: If you would create a virtual tag which has album artist and album title concatenated, would't that be a step forward in achieving what you want? Then you would only need MusicBee showing duplicates for that tag.

I am only meticulous to a point. I am confident that as I type this, I have mis-tagged tracks in my database. My meticulousity(?) only goes to rudimentary checking that I have the correct album, and the track names and numbers are "close enough." The rest is up to Discogs. (I'm sure this is the reason I need these checks.) If I didn't do it this way, I'd spend too much time tagging and not enough listening and exploring.

So, I purposely copied an album into MusicBee using Windows to copy the folder to my MusicBee input folder. I then imported it. If I concatenate Album Artist, and Album Title, all 30 tracks have the same value. (15 tracks on the album, times 2) Nothing differentiates it from a 30 track album.

I ran a similar scenario through the duplicate manager, and it came up with some random tracks. So I now have another handful of tracks to verify. (I don't like using the duplicate manager. I can see myself forgetting to click "Send to playlist" and having it delete tracks.) In this duplicate scenario, The duplicate manager will find my test album as a duplicate if I include the ISRC in the list of fields. But that doesn't help if I rip a different version, with a different ISRC.

As I consider this, I think the concatenation would be helpful if I was checking a specific album. I want to either check my whole library, or only albums I've recently imported. I don't know how to create a playlist that will show me all Albums from an Album Artist, where the Album Artist exists in another playlist at least once. (Recently added.) If I could create this playlist, I could run the Duplicate Manager against it, and find my duplicates. But, if I could create this playlist, I believe I could use the same playlist logic to create a playlist that shows me albums that have more than one Disc 1, Track 1.

With all that, I'm confident that MusicBrainz is my answer. So far I have some test files I processed, and I got good results. I just need to figure out how to get more information down to my tags. I fear this will only encourage me to get more music, because it will reduce my processing time to a minute or two an album from raw files to library integration. (I guess right now I'm at about 10 minutes all told right now.) Oh, and once I get it all working well, I will run the rest of my library through it. It's everything I wanted in a tagging program. Once I figure it out.
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 16, 2017, 10:07:16 PM
I'm just giddy. It found information on albums that Discogs never did.

So, if I understand this correctly; I can create scripts and logic in Picard to auto process track information so that all of my artists will be Identical? I can create logic to have secondary artists moved to separate tags? ("<artist 1> Presenting <artist 2> vs. <artist 3> Feat. <artist 4>" to: <Artist>, <Guest Artist>, <Guest Artist>, <Guest Artist>) It will give me all the information about the tracks, no matter what version I have? I don't have to sort through multiple releases to find more information?

If the answer to the first two is yes, I'm ecstatic. If the answer to all four is yes, I'm gonna need a cigarette and a nap.
Title: Re: Advanced Auto Playlist assistance
Post by: frankz on December 16, 2017, 10:34:21 PM
I'm just giddy. It found information on albums that Discogs never did.

So, if I understand this correctly; I can create scripts and logic in Picard to auto process track information so that all of my artists will be Identical? I can create logic to have secondary artists moved to separate tags? ("<artist 1> Presenting <artist 2> vs. <artist 3> Feat. <artist 4>" to: <Artist>, <Guest Artist>, <Guest Artist>, <Guest Artist>) It will give me all the information about the tracks, no matter what version I have? I don't have to sort through multiple releases to find more information?

If the answer to the first two is yes, I'm ecstatic. If the answer to all four is yes, I'm gonna need a cigarette and a nap.
You may also need an adult beverage (go to town, but plug-in Standardise Performers may drive you over the top):
https://picard.musicbrainz.org/plugins/
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 17, 2017, 12:23:52 AM
And so begins another Love / Hate relationship with software.

Thanks all. I guess I won't need that playlist after all.
Title: Re: Advanced Auto Playlist assistance
Post by: hiccup on December 17, 2017, 08:18:46 AM
And so begins another Love / Hate relationship with software.
Thanks all. I guess I won't need that playlist after all.

Enjoy the rabbit hole.
And be sure to share any further amazing discoveries that might be helpful to other rabbits?
Title: Re: Advanced Auto Playlist assistance
Post by: Phaedrus on December 17, 2017, 10:43:16 AM
I believe that this thread is no longer about the original question, so I am abandoning it.

I started a new thread in General to continue the conversation.

The Road to Perdition, or how I Stopped Worrying and Learned to Love MusicBrainz (https://getmusicbee.com/forum/index.php?topic=23600.0)