Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Group By - Albums of same name (Read 3886 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Group By - Albums of same name

The default user interface shows tracks grouped under a heading which includes artist, year, album name and potentially other fields. This works well most of the time.

How would you deal with albums that have the same name? For example, original and remastered release? Or single releases with the same title and year but containing different mixes? For me they group together as one.

Most of the time only one album editition exists in my collection, and I don't want to extend the title much longer, and potentially cause it not to fit in the window width, or contain cryptic, usually superfluous text such as cat.number. Of course, there is no way for the script to remember previous iterations, and know if another album was already encountered.

It would be neat if the titleformatting script contained a "checksum" function, which would take (%label%,%catalognumber%,%__codec%,%media%), and similar data, and produce a short string of "invisible characters", which would be same for the same input, and different if any of those fields are different. And this difference would be enough to begin a new group.

Re: Group By - Albums of same name

Reply #1
How would you deal with albums that have the same name? For example, original and remastered release? Or single releases with the same title and year but containing different mixes? For me they group together as one.

If you do not want to extend the album title (and if you do, I would use a separator character that you never find in your album titles - the umlaut without letter ¨ comes to mind), then: a custom tag! Say, "Albumversion". ("Version" is, I think, often used for versions of the same song.) Populate with "CDS" if it is a single with the same title as the album, with "2000 remaster" or whatever. Or "1990RM2000", then you do not need to include the standard date field.

Re: Group By - Albums of same name

Reply #2
I use a RELEASETYPE tag for denoting EPs/Albums/Singles, etc.
I use EDITION tag for denoting Deluxe Edition, Japanese Edition, etc. (also RELEASE DATE is sometimes different for this, so I also add ORIGINAL RELEASE DATE where appropriate)
You can also differentiate on %__codec% as well.

Update your group by query to use the combination of those three and it should ensure you never have duplicates.

Re: Group By - Albums of same name

Reply #3
I use those fields too, but do not wish to display them in the main playlist view because I find that the album list looks cleaner with only artist and album, and if all entries have similar, compact length.

I do not find a "query". The only method of customizing the groups is under Playlist View. The display "pattern" is all there is.

Here is what I see after dragging albums into from the media library. Releases get merged under same group, even if they differ by various properties: cat.number, medium, release type, or declipped processing performed. I think these manually split albums look nicer, and it is obvious what the difference is by looking at the tracklist or the selection properties box.

But after posting here, I realized a couple of obvious things. 1) I can use a custom tag field with no contents to split off releases manually. 2) And that the "checksum" is an indirect, awkward method. Forget I mentioned it.

A better way would be to add a "query" value for each custom grouping preset in addition to the "display pattern", kinda like Standard Sort Patterns work. I can specify a long list of fields to sort by. If they are present, they are taken into account during sorting, if not, they do not show up anywhere. Then a script could pick up all differences automatically.

Re: Group By - Albums of same name

Reply #4
but do not wish to display them in the main playlist view because I find that the album list looks cleaner with only artist and album, and if all entries have similar, compact length.
So the issue boils down to: you would have wished for a more complex pattern to group by, but not show as headline more than Artist - [year] Album? Like, in your screenshot, you want the two Vangelis albums to show as two separate albums but each having the same headline Vangelis - [1988] Direct?

But after posting here, I realized a couple of obvious things. 1) I can use a custom tag field with no contents to split off releases manually.

Here is a possible solution using an "invisible" character https://en.wikipedia.org/wiki/Zero-width_space rather than "no contents". The headlines will not be the "same" as textstring, but the difference will be invisible to you:
"Convert" the contents of your uniquely-identifying auxiliary tags (Albumversion, Edition, Catalog #, ...) to a (just as unique) number of zero-with spaces and include that in your grouping pattern at the end of the Artist - [year] Album string.
I did not test this other than throwing a bunch of zero-width spaces at the end of the "Album" of one single track: foobar2000 distinguishes that as a unique album title, and it is "invisible" in the group headline as zero-width spaces are.

And, furthermore: while ordinary spaces at the end are removed by Properties -> right-click -> Clean up, zero-width spaces are not.

Re: Group By - Albums of same name

Reply #5
You should check the ESplaylist plug in: it allows you to set two different titleformatting patterns for grouping and for title display.
I'm late

Re: Group By - Albums of same name

Reply #6
This is exactly what I wanted, Porcus.

However, this zero width space displays as a box on my system in most fonts, including on the Wikipedia page. It works with Lucida Sans Unicode, and Adobe fonts, which I don't want to use.

I have come up with a solution using Thin Space and Hair Space characters next to it, which are 1 pixel wide. And to my surprise, there already is a crc32() function in Foobar.

Code: [Select]
$replace($select($add($mod($crc32([%releaseflags%][%releasedate%][%releasetype%][%label%][%catalognumber%][%media%][%__codec%]),16),1),0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,1010,1011,1100,1101,1110,1111),0,$char(8201),1,$char(8202))

ESplaylist is good. I like the artwork display, and the grouping works as you say. But I cannot replace the normal playlist with it. I currently have about 20 customized columns for the default interface, which I display and hide as needed. There appears to be no way of saving them in ESplaylist. Once I "delete" a column by right-clicking on it, it is gone.

Re: Group By - Albums of same name

Reply #7
You have a few others, https://en.wikipedia.org/wiki/Whitespace_character , maybe there is one in the Related whitespace characters without Unicode character property "WSpace=Y" section that does not show as box.

Yet another alternative: fill up the end with a lot of ordinary spaces, so the horizontal line to the right will be gone, for every entry - making them all "look the same".

Re: Group By - Albums of same name

Reply #8
Thank you for the link. How did we every compose any text in 8-bit encoding if there is need for so many space symbols. lol. Found out that 8201 and 8198 is only pair that works with Tahoma. With 4 of three working symbols, I now have a 1 in 81 chance that albums will merge anyway, which is good enough.

Two s/t anthologies by Zucchero. Split at last.

FontLink on my system pulls special characters out of Lucida Sans Unicode (when Tahoma is selected), letter-like symbols, arrows and so on, but strangely that doesn't apply to these space characters.

Title Formatting is a part I love about foobar the most. It is fun to configure and improve. And I don't need to beg for some display style to be accepted in the official version.