Author Topic: Sub-grouping header issue  (Read 1012 times)

el_pedrito

  • Newbie
  • *
  • Posts: 5
I am using the Album Cover view and have created a virtual tag to act as a sub-grouping header. It works OK but not completely and I cannot figure out what went wrong.

What I want to do is to group according to one or several of :
- Album release: to separate various reissues and remasters. I have create a Custom tag called RELEASE for that.
- Disc #
- The work: to group together tracks that belong to the same suite or composition. This on is mostly for classical music but it works also for songs that are part of the same suite in Prog Rock albums for instance. I have created a custom tag called COMPOSITION for this one.

Now, what I have done is create a virtual tag called Album_subheader that detects whether each of these tags is non-null and collapses them is necessary. My formula is as follows (it feels clumsy but I haven't figured out a smarter way to do it):
Code
$IsNull(<Release>,$IsNull(<Disc#>,$IsNull(<Composition>,,<Composition>),$IsNull(<Composition>,"Disc "<Disc#>,"Disc "<Disc#>" - "<Composition>))," "$IsNull(<Disc#>,$IsNull(<Composition>,<Release>,<Release>" - "<Composition>),$IsNull(<Composition>,<Release>" - Disc "<Disc#>,<Release>" - Disc "<Disc#>" - "<Composition>)))

It actually works quite well in many instance. Some examples:
- Simply separating discs: https://imgur.com/5UH8P5f
- Separating discs and song suites within each disc: https://imgur.com/FW3mAQB
- Separating the works in classical music: https://imgur.com/cRE2nFZ
- A trickier one, the original album has a single disc, but there is a reissue with two discs: https://imgur.com/3Zu1N86

But, there is this one case that makes me scrtach my head. It is an album for which there has simply been a reissue and in this case the two groups are mixed, like the app is trying absolutely to sort first by track #: https://imgur.com/sUly1Te
I have checked and it doesn't seem that any other tag is different, so I cannot figure out why it doesn't work here and works, for instance, in the fourth example above.

I have the feeling I did something very stupid but I haven't been able to detect it. Sorry if this has already been addressed somewhere, I searched the forum but have not find anything that helped.

Any idea?

hiccup

  • Hero Member
  • *****
  • Posts: 9133
Welcome to the forum el_pedrito

That's an interesting case.
Right now I'll admit that I don't have a full understanding of everything involved here, but allow me to shoot an educated-guess blank at you:

Perhaps have the very first condition of your virtual tag begin with:

$IsNull(<Composition><Release>," ",xxx)
(xxx representing the conditions that follow if either <Composition> or <Release> has a value)

I am guessing that should separate the 'problematic' album from the other one.

edit
So something like this:
Code
$IsNull(<Composition><Release>," ",$IsNull(<Release>,$IsNull(<Disc#>,$IsNull(<Composition>,,<Composition>),$IsNull(<Composition>,"Disc "<Disc#>,"Disc "<Disc#>" - "<Composition>))," "$IsNull(<Disc#>,$IsNull(<Composition>,<Release>,<Release>" - "<Composition>),$IsNull(<Composition>,<Release>" - Disc "<Disc#>,<Release>" - Disc "<Disc#>" - "<Composition>))))
(If that works, the rest of the formula may probably be cleaned up a little bit. But I didn't really look at it)
Last Edit: April 07, 2024, 07:33:07 PM by hiccup

el_pedrito

  • Newbie
  • *
  • Posts: 5
Thanks for the guess hiccup but unfortunately, that didn't work. I also tried to replace the " " you propose by <Disc#> but without success.

Note that the case where both <Release> and <Composition> are NULL is covered in my nested $IsNull (the parts in red below).

Code
$IsNull(<Release>,$IsNull(<Disc#>,$IsNull(<Composition>[color=#FC0003],,[/color]<Composition>),$IsNull(<Composition>,[color=#FC0003]"Disc "<Disc#>[/color],"Disc "<Disc#>" - "<Composition>))," "$IsNull(<Disc#>,$IsNull(<Composition>,<Release>,<Release>" - "<Composition>),$IsNull(<Composition>,<Release>" - Disc "<Disc#>,<Release>" - Disc "<Disc#>" - "<Composition>)))

What I want to do is to have a kind of "switch" function that can cover the 8 possibilities since any of the 3 tags can be null or have a value.

tjinc

  • Sr. Member
  • ****
  • Posts: 834
I don't think that the reported issue (mixing of the two releases) is related to the virtual tag.

By default, the albums view will organise the album tracks based on disc# and then track#.
My guess is that, in your problem album, both releases do not have a disc# tag. Therefore the tracks are all seen as being on one disc and so ordered only by track# resulting in the releases being mixed up.

My next guess is that, with your fourth example (which does work), the original release is not tagged with a disc number whereas the 2021 Reissue release is tagged with disc numbers 1 and 2. This results in all three having different 'disc#' tags and are separated and displayed as required.

If my guesses are right, I think you can correct this by using a 'Custom Sort' and adding Album_subheader to the end of your current sort option - something like: Album Artist/Album/Album_subheader
(Or, if you are already using a custom sort, just try adding Album_subheader at the end)

hiccup

  • Hero Member
  • *****
  • Posts: 9133
Thanks for the guess hiccup but unfortunately, that didn't work. I also tried to replace the " " you propose by <Disc#> but without success.
Perhaps consider to completely remove disc numbers from the whole equation?
(both in tagging and the formulas used)
Disc numbers are nothing more than some forced limitation on some physical media.
The concept didn't even exist before a couple of decades ago (Mozart didn't create his compositions having any restrictions such as amount of discs in mind), and soon people won't even know what 'disc number' means.

It seems to me there may be some 'Catch 22' conflict in your current approach.
That can perhaps be solved by using more complicated IF, but YES but, AND but, NO, but THEN statements, but removing any conflicting elements that don't serve a good purpose to begin with may be a both better and simpler approach.
Last Edit: April 07, 2024, 10:34:25 PM by hiccup

el_pedrito

  • Newbie
  • *
  • Posts: 5
Ah yes, it seems the issue comes from the sorting by Disc# within an album.

Quote
My guess is that, in your problem album, both releases do not have a disc# tag. Therefore the tracks are all seen as being on one disc and so ordered only by track# resulting in the releases being mixed up.

My next guess is that, with your fourth example (which does work), the original release is not tagged with a disc number whereas the 2021 Reissue release is tagged with disc numbers 1 and 2. This results in all three having different 'disc#' tags and are separated and displayed as required.

Your guesses are right, this is exactly what happens, I didn't consider that.

Quote
If my guesses are right, I think you can correct this by using a 'Custom Sort' and adding <Album_subheader> to the end of your current sort option - something like: Album Artist/Album/Album_subheader

Unfortunately, this doesn't fix the issue. I guess it is probably because this sorting is for albums, and <Album_subheader> doesn't define albums but just subset of tracks within the album.

Quote
Disc numbers are nothing more than some forced limitation on some physical media.
The concept didn't even exist before a couple of decades ago (Mozart didn't create his compositions having any restrictions such as amount of discs in mind), and soon people won't even know what 'disc number' means.

I tend to agree in principle, but this is still something that has been prominent for as much as long as we have recorded music, so it would feel weird to completely leave it out. In particular, lots of artists also build their albums with this limit in mind, and I would say it is an integral part of how you organise albums. This is the case in Prog Rock albums typically.

So since this issues comes from the sorting within an album, is it possible to customise this sorting? I checked the preferences and couldn't find it.
The next best thing I could do is add <Release>  to the option the following fields define an album, but this separates various reissues which is what I wanted to avoid. If I can;t find a better solution, this would be acceptable though.

Thanks for your help, this is great!

hiccup

  • Hero Member
  • *****
  • Posts: 9133
I tend to agree in principle, but this is still something that has been prominent for as much as long as we have recorded music, so it would feel weird to completely leave it out. In particular, lots of artists also build their albums with this limit in mind, and I would say it is an integral part of how you organise albums. This is the case in Prog Rock albums typically.
If there is artist intent for dividing his work/album/release into more parts, the tag 'set subtitle' could and should be used.
Disc numbers are irrelevant to that. (in my opinion)

tjinc

  • Sr. Member
  • ****
  • Posts: 834
Quote
If my guesses are right, I think you can correct this by using a 'Custom Sort' and adding <Album_subheader> to the end of your current sort option - something like: Album Artist/Album/Album_subheader

Unfortunately, this doesn't fix the issue. I guess it is probably because this sorting is for albums, and <Album_subheader> doesn't define albums but just subset of tracks within the album.

I am pretty certain that this should work.
Once you configured your custom sort did you remember to go back to the 'Sort By' option and select this new sort order?

Edit:
Actually, I see that you are correct - this does not work in the Album Covers view (it does work in the Album and Tracks view). Looks like you do need to populate the Disc# field in order to separate the releases within an 'album' or, as you say, have the various reissues separated into 'different' albums.
Last Edit: April 08, 2024, 10:13:24 PM by tjinc

el_pedrito

  • Newbie
  • *
  • Posts: 5
If there is artist intent for dividing his work/album/release into more parts, the tag 'set subtitle' could and should be used.
Disc numbers are irrelevant to that. (in my opinion)

It's true that maybe I can consider this, also because I have personally stopped using any CD.
So for multi-disc albums, would you renumber tracks continuously (i.e. for a two disc album with 10 tracks in each, they would be renumbered from 1 to 20)?
Also, I am not aware of this "set subtitle" tag. Is is an ID3v2 tag?

Actually, I see that you are correct - this does not work in the Album Covers view (it does work in the Album and Tracks view). Looks like you do need to populate the Disc# field in order to separate the releases within an 'album' or, as you say, have the various reissues separated into 'different' albums.

Any way you think I can change the default Disc#/Track# sorting within the Album Cover view? Can't find a way to do it.

hiccup

  • Hero Member
  • *****
  • Posts: 9133
So for multi-disc albums, would you renumber tracks continuously (i.e. for a two disc album with 10 tracks in each, they would be renumbered from 1 to 20)?
Yes
Except if the release contains specific titles per disc.
For example if the first disc contains studio versions and the second one live versions of the first.
Then I will probably use 1-10 for both.
Or if only the last 8 songs are live versions I would do 1-12 and 1-8

I usually just do what to me makes the most sense for that release.
E.g. for some older releases that I have known for a long time, but of which I have acquired some 'expanded' version, I will probably use set subtitles such as e.g. 'original album' and 'expanded edition'
But for newer releases that were released in several versions around the same time I will usually not bother with specifying bonus tracks using set subtitles.


Quote
Also, I am not aware of this "set subtitle" tag. Is is an ID3v2 tag?
Set Subtitle was introduced some 24 years ago with ID3v2.4
(it's sometimes also referred to as disc subtitle)

MusicBee doesn't have it available by default, so you will need to create a custom tag for it.
(There is an outstanding request for it here)

Quote
Any way you think I can change the default Disc#/Track# sorting within the Album Cover view? Can't find a way to do it.
I don't think there is. (but I haven't had a good reason for finding out if it would be possible in some way)
 
Last Edit: April 09, 2024, 04:04:52 PM by hiccup

el_pedrito

  • Newbie
  • *
  • Posts: 5
Thanks for the help!

I dabbled a bit and decided so far to use the Disc# field as a general grouping one, it what is easiest at the moment.