getmusicbee.com

General => MusicBee Wishlist => Topic started by: jistme on February 22, 2013, 04:00:31 PM

Title: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 22, 2013, 04:00:31 PM
The larger my music collection is growing, the more I appreciate strolling around it by the use of genre qualifications.
Yet I find the current structure of 'Genre' and 'Genre category' often too rough for this.

My proposal and wish is if it could be possible to have the hierarchy extended with 'Subgenre'.

These are just a few examples were this would work very nicely:

(http://i.imgur.com/iEv4k1wl.jpg) (http://i.imgur.com/iEv4k1w.png)



edit:
Current proposed list:
download Genre-Subgenre sheet (https://bit.ly/Genres_Subgenres)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: beeing good on February 22, 2013, 05:05:36 PM
This would be good but I suspect virtual or custom tags could just be used?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 22, 2013, 05:27:51 PM
It might, but I feel this is something rather essential and universal that MB could be a frontrunner in.

Also the option to manage this through the current Genre Grouping would keep it all in the same place with a good overview, and not needing everybody to invent the wheel on his/her own by creating their own tags and formulas.

Lastly (but I'm getting ahead now) I would hope we on this forum could help creating and maintaining a complete and agreeable as possible base file with most common Genre Category's, Genre's and Subgenre's filled in.
  
 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on February 22, 2013, 05:36:12 PM
+1
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: murve33 on February 22, 2013, 05:55:12 PM
+1
I've been wanting this, but I ask for too much stuff as it is. Glad someone else did.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: ThY on February 23, 2013, 02:37:17 AM
You already are able to do that: (http://i37.servimg.com/u/f37/12/67/24/73/th/musicb10.jpg) (http://www.servimg.com/image_preview.php?i=297&u=12672473)

It's in the Tags (2) panel, in options, a button "categorize genres" or something (i have my app in french).
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: redwing on February 23, 2013, 02:47:15 AM
You already are able to do that:

It's in the Tags (2) panel, in options, a button "categorize genres" or something (i have my app in french).

You're right. But what's proposed here is to ADD sub-genre to that, making it a 3-steps hierarchy.

BTW +1 for the idea. I also like the idea of creating a base file. Probably the discussion itself would be quite helpful.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Bee-liever on February 23, 2013, 05:20:57 AM
+1
already using a custom subgenre tag 'Style' (as used in discogs) so further integration would be good
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 23, 2013, 11:11:49 AM
BTW +1 for the idea. I also like the idea of creating a base file. Probably the discussion itself would be quite helpful.

If this idea is achievable, and our Headbee is willing and able to implement this:

Maybe then it is an idea to have:

- a standard base file which will contain the most common genres and subgenres, which will keep 80% of MB users happy and is integrated in MB.

- an extended subgenre file for 'freaks like us' which be as complete and obscure as possible. This one could be an optional download/install, so not to clutter and overwhelm 'normal users'.

Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Xyzzy on February 23, 2013, 02:00:37 PM
I think it is superflous. Would be good if there would be tens of subgenres for, say, House music, and hundreds for Techno, but given the example it is just adding complexity for the sake of itself.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 23, 2013, 02:41:18 PM
Of course I respect your opinion, but I object to "it is just adding complexity for the sake of itself"

Hierarchies are very useful if implemented correctly, and life would be much harder without them.

Country > City > Street
Animal > Cat > Siamese
Clothing > Underwear > Bra

My proposal is nothing more than factual, and when implemented correctly I can only see advantages.

But to add to the quality of this proposal, of course feel free to present factual drawbacks.
Terms as 'difficult' or 'complicating' would be too vague in my opinion.

Just compare these two examples. Same genres and subgenres.

I think it's hard to argue looking at those?

(http://i.imgur.com/7i5WRQll.jpg) (http://i.imgur.com/7i5WRQl.png)


PS,

I would agree with you if the purpose was solely to play 'archiver' or 'stamp collector' with too much time on hand.
The purpose though is to find, discover and play the music that you want to hear much more easy. 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: VX on February 23, 2013, 04:58:18 PM
+1 for jistme's suggestion
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: HHM on February 23, 2013, 07:14:31 PM
+1, I've been thinking about sth like this for a long time!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Zak on February 24, 2013, 07:46:35 AM
I can see why the hierarchy might be useful to people who want fine-grained genres, but I can't see why it can't already be implemented using a custom tag.  ???

I also can't see why "Britpop" isn't a subcategory of "Pop"? It's in the name!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 24, 2013, 09:38:03 AM
I can see why the hierarchy might be useful to people who want fine-grained genres, but I can't see why it can't already be
implemented using a custom tag.  ???

See reply#2

Quote from: Zak
I also can't see why "Britpop" isn't a subcategory of "Pop"? It's in the name!

Because it isn't.
http://en.wikipedia.org/wiki/Britpop

Same as Jazz-rap is a subgenre of Hip-hop, not of Jazz.
Same as Lovers-rock is a subgenre of Reggae, not of Rock.
Same as Hip-hop soul is a subgenre of Contemporary R&B, not of Soul or Hip-hop.
etc.etc.

Since most reactions are quite positive I anticipated and started assembling a 'base list'.
Very interesting and I'm learning stuff I never new.

Yet it is a lot of work, since I haven't been able to find similar lists that I can easily copy&past from.
Wikipedia is a great source, but takes a lot of reading and researching to translate into a 'simple' list.

If anybody supportive of this idea has some links to sensible genre/subgenre lists please let me now!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: redwing on February 24, 2013, 11:16:18 AM
This looks good. Maybe only need to sift out less popular genres (no pun intended ;)).

http://en.wikipedia.org/wiki/List_of_popular_music_genres

Just like the list, I think it's OK some genres have no sub-genres. We don't have to invent things if that's contrary to the popular standard. But classical stuff in wikipedia looks rubbish. Probably we're gonna have to look elsewhere.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 24, 2013, 11:50:21 AM
Thnx redwing, looks useful.
I'll see what's sensible to add to the list.

I send you a PM with current status of the list I'm working on.
Let me know what you think?

Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: redwing on February 24, 2013, 12:31:07 PM
Thnx redwing, looks useful.
I'll see what's sensible to add to the list.

I send you a PM with current status of the list I'm working on.
Let me know what you think?

Thanks, you have accumulated quite a list!
Well, but not sure that's one for a normal or a freak, to borrow your terms  ;)
Some are too specific, others are too broad. But I won't go into specifics since then we will begin an endless, pointless discussion about what each genre is about. Maybe we can set some principles to handle this base list given that this will be constantly updated.

- We might need a reference point to which everyone can easily access and verify its validity. I think the wiki list could serve as a good one for this since it will be constantly updated too.

- Maybe we could agree that the base file may remove some from the list, but may not add new ones to the list for simplicity and avoiding partiality.

-All genres should have a blank sub-genre, indicating the total of sub-genres does not add up to their mother-genre. Always there's a room for a new, unnamed sub-genre.

-To polish and finish the base file, we're gonna need some volunteers who will work with jistme.

What do you guys think?

Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 24, 2013, 01:26:53 PM
To give an impression, this is current state of my list:

http://bit.ly/MB_subgenres

It is still very much in the rough, and needs a lot more work, but this is so that anybody can shoot easier at the general idea.

Before commenting on specifics be sure to do some investigation yourself, and do not just comment on 'gut feelings'.
I had to correct many of my own assumptions about 'genres', 'styles', 'movements' and 'techniques'.



Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 24, 2013, 08:06:24 PM
Made a lot of progress:

http://bit.ly/MB_subgenres

Two lists now, one with actual genres, and another one with 'other' terms which are often mistaken for genres, but still useful to have.

The terms in this second list could be divided into Style, Tradition, Movement, Technique, Musical Dance, Radio format, Trend, Marketing category, etc. etc. but it's probably most sensible to keep them all together as 'other'.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 25, 2013, 12:41:40 PM
- Removed some duplicates
- Made some switches
- Corrected spelling and capitalization

I think this is the best I can do.
Without new input this is it.

http://bit.ly/MB_subgenres
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: redwing on February 25, 2013, 12:54:18 PM
How come C-pop as genre category, J-pop as genre, no K-pop?

I would propose

Pop / C-pop, J-pop, K-pop.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 25, 2013, 01:15:10 PM
I think I made that choice because of this mention on Wikipedia:
 
"C-pop is sometimes used as an umbrella term covering not only Chinese pop but also R&B, ballads, Chinese rock, Chinese hip hop and Chinese ambient music."

This would put it outside the 'Pop' category.

But until we get angry letters from Chinese Bees I changed it to your suggestion ;-)

And added K-pop.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: redwing on February 25, 2013, 01:30:57 PM
They are not about style but about region. Thus can't expect to be 100% correct unless they are all genre categories.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 25, 2013, 01:41:21 PM
They are not about style but about region. Thus can't expect to be 100% correct unless they are all genre categories.

I already found almost every single item in such a list is debatable. But we've gotta do something, right?

Are you now advocating they should be genre categories? (I don't think you are, but just checking to be sure)


Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: redwing on February 25, 2013, 01:51:20 PM
They are not about style but about region. Thus can't expect to be 100% correct unless they are all genre categories.

I already found almost every single item in such a list is debatable. But we've gotta do something, right?

Are you now advocating they should be genre categories? (I don't think you are, but just checking to be sure)

Not at all. To be 100% precise, they should be bigger than genre categories with all kinds of styles. So just go ahead!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 25, 2013, 01:59:43 PM
I myself have custom tags for both Country and Language. That's already making navigating such genres and styles much easier.
And the use of the already present 'keywords' are also very handy for this.

Of course it's an illusion to think any genre list will cover all.



Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: murve33 on February 25, 2013, 06:08:44 PM
Made a lot of progress:

http://bit.ly/MB_subgenres

Man, that is a great list. Only one I couldn't find is Zolo.
http://rateyourmusic.com/genre/Zolo/
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Xyzzy on February 25, 2013, 06:21:07 PM
Of course I respect your opinion, but I object to "it is just adding complexity for the sake of itself"

Hierarchies are very useful if implemented correctly, and life would be much harder without them.

Let's not generalise. I have like 120 fine-grained genres in my main group and I've never felt a need to subdivide them.

Your example in my eyes proves more my point than yours.

Anyway, as long as this feature can be ignored and does not show up in the ui unrequested, I am totaly indifferent towards it.

Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 25, 2013, 06:31:58 PM
Man, that is a great list. Only one I couldn't find is Zolo.
http://rateyourmusic.com/genre/Zolo/


That's quite an interesting one. Thnx, hadn't heared of it  yet.
Strange there is no Wikipedia on it. (there was, but it is deleted?)

Yet it could be argued if this is an actual genre, reading:
"to describe a cross-section of bands and artists with similar approaches to music."

and

"Zolo itself is a creative thread that runs independently of both of these genres."

So it might also be considered a style, or an attitude.

But in case of doubt, I feel rules are there for the Bees, and not the other way around.

So it's added.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on February 25, 2013, 06:41:24 PM
Hierarchies are very useful if implemented correctly, and life would be much harder without them.

Let's not generalise. I have like 120 fine-grained genres in my main group and I've never felt a need to subdivide them.

I'm just glad you are not in charge of my local supermarket.
Might be fun though if they placed all their products purely on alphabet  ;-)


PS,
Of course I fully agree that if there is chance this could be implemented, it should not affect current usage and users in a negative way.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on March 03, 2013, 02:10:05 PM
Made a few small changes and additions, and refined the 'keywords' file.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on March 08, 2013, 07:50:01 AM
This isn't entirely on point, but I thought you all might find this article interesting: http://tippopotamus.blogspot.com/2009/05/automatic-mp3-genre-tagging-is-it.html

I am trying to set up my genres to match Allmusic.com, and the three-level system would work well with that.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Zak on March 08, 2013, 03:25:37 PM
"This should be a useful lookup tool for anyone wanting to go ahead and manually tag their genres. I may go ahead and adopt this method of genre tagging, but I think it would take me longer than the hour suggested for 20,000 tracks."

Manually tag 20,000 tracks in an hour? Um... no. :/
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on March 08, 2013, 04:04:18 PM
This isn't entirely on point, but I thought you all might find this article interesting: http://tippopotamus.blogspot.com/2009/05/automatic-mp3-genre-tagging-is-it.html
I am trying to set up my genres to match Allmusic.com, and the three-level system would work well with that.

Thnx scampbll, that is very much to the point!

He put most of my motives for requesting this nicely into words.
Indeed one problem is that many genre descriptions are not actually genres at all. It would be a good start to split actual genres from descriptions. (as I tried to do with my listing)
Nice to see his genres list has many similarities with mine. (yet mine is better ;-)

I feel if we would have the possibility or option to use a list like mine in MusicBee there would be some interesting advantages.
Apart from more fine-grained genres and subgenres, maybe MB then could split descriptions often wrongly advertised as 'genre' to appropriate fields, such as mood, form, or description, so to keep the genres fields correct and unified as possible.

Also different spellings or namings for genres could then be changed to an agreed-on name. So that for example "Drum 'n' bass", "D&B", "D+B", "DnB" would all be corrected to "Drum and Bass". (or whatever we agree on)

It would also be convenient when you would for example select "Full on" as a subgenre for a track, MusicBee would automatically fill 'Trance' as genre, and 'Electronica' as genre category.

It would be great if there was an attractive interface for this, with the possibility to easily see and make selections from this complete 'genre category' > 'genre' > 'subgenre' hierarchy.
That would also reduce the amount of typing, thinking about or inventing new genrenames, and also prevent all kinds of different spellings and namings for the same.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on March 22, 2013, 08:53:17 PM
Should I update my list? ;-)
http://getmusicbee.com/forum/index.php?topic=8987.msg52432#msg52432

Hmm.  I can find Industrial Metal, but not straight Industrial or Industrial Rock (whether there's a meaningful difference between Industrial Rock and Industrial is a question I haven't resolved yet).  I can't find EBM, or subgenres such as Aggrotech or Futurepop (though I've taken to lumping everything EBM-related into Industrial Dance, which is the term allmusic uses).  I would consider Darkwave and Synthpop to be subgenres of New Wave.  But I don't consider myself an expert on these things.  It's more like "how can I apply this category in a useful way?"

- For my list I considered Industrial Metal to be an actual genre, but 'industrial' to be a style.
- I want to add EBM. Considering the limit of a 3 tree hierarchy in my proposal, do you think it should fall under 'Pop/Rock' or 'Electronica'?
- I will add Electro-industrial as a genre. (Under the 'Electronica' genre category) Would you consider Aggrotech as a subgenre of Electro-industrial, or should it go beside Electro-industrial?
- I want to add Futurepop also. Wikipedia calls it 'a form', but I think it deserves to be called 'genre'. Should it go directly under 'Electronica', or maybe one level further under 'Dance'?
- Dark wave had origins in, and was influenced by the earlier New wave, but is probably not strictly a subgenre of it. I probably placed it wrongly as a genre category though. Corrected that.
- Synthpop originated from the likes of Kraftwerk and YMO. New wave came later, so it can't be a subgenre of that...

Thanks for the input!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on March 22, 2013, 09:38:45 PM
EBM is more electronica than pop/rock.   Aggrotech and Futurepop are both subgenres of EBM, for my money.  This is the challenge, right?  The genres split off and then merge again such that subgenres across different genres start to sound a lot alike.  But if you're going to separate electro-industrial from "pure" EBM, then Aggrotech is a subgenre of electro-industrial.  Futurepop I suppose would be Electronic > Dance.  It's definitely not quite a standalone genre.

I'm basing my understanding of Synthpop off of this (and also comparing sounds):
According to Wikipedia: "[Synthpop] arose as a distinct genre... as part of the New Wave movement of the late-1970s to the mid-1980s."
According to allmusic.com: "Synth Pop was one of the most distinctive subgenres of new wave."
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on March 22, 2013, 10:12:10 PM
EBM is more electronica than pop/rock.   Aggrotech and Futurepop are both subgenres of EBM, for my money.  This is the challenge, right?  The genres split off and then merge again such that subgenres across different genres start to sound a lot alike.  But if you're going to separate electro-industrial from "pure" EBM, then Aggrotech is a subgenre of electro-industrial.  Futurepop I suppose would be Electronic > Dance.  It's definitely not quite a standalone genre.

I'm basing my understanding of Synthpop off of this (and also comparing sounds):
According to Wikipedia: "[Synthpop] arose as a distinct genre... as part of the New Wave movement of the late-1970s to the mid-1980s."
According to allmusic.com: "Synth Pop was one of the most distinctive subgenres of new wave."

I'll have to digest and 'study' some more on Aggrotech and Futurepop. (not a very familiar territory to me)  A challenge indeed ;-)

I dare to take an opposing stand concerning Synth pop against the sources you mention.
I think it is a valid argument to state that Kraftwerk, YMO, Jean-Michell Jarre etc. were the first artists to create music that can be called 'Synth pop' before New wave even existed?

To prove my wrong, could you name New wave music from the early 70's?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on March 22, 2013, 11:06:54 PM
I'm not familiar enough with early synthpop (or New Wave) to say one way or another.  This is why I'm trying to learn about genre, and the points of contention are both fascinating and make it darn hard to find an easy way to categorize things.  :)  I just know that in my library, things which are commonly described as Synthpop seem loosely related to Depeche Mode, and often Synthpop and New Wave are used for the same artists.

As far as I can tell, as a consumer, Aggrotech and Futurepop are distinguished mainly by whether they have distorted vocals.  Futurepop does have a "cleaner" sound overall, and Aggrotech tends to have darker/more violent themes, and often uses samples from war and horror films (Full Metal Jacket has been sampled so many times it's a cliche). (Editing to add that, as the name suggests, Futurepop often has a sci-fi feel to it.  But it's not required.)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on March 23, 2013, 11:30:39 AM
As far as I can tell, as a consumer, Aggrotech and Futurepop are distinguished mainly by whether they have distorted vocals.  Futurepop does have a "cleaner" sound overall, and Aggrotech tends to have darker/more violent themes, and often uses samples from war and horror films (Full Metal Jacket has been sampled so many times it's a cliche). (Editing to add that, as the name suggests, Futurepop often has a sci-fi feel to it.  But it's not required.)

Thnx, I got a clearer picture now.
Both were added.
I placed Futurepop under 'Dance', since it can be described as "techno-beat-driven, club-oriented music".

latest version: http://bit.ly/MB_subgenres
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Bee-liever on March 24, 2013, 12:17:07 AM
Hey jistme,
I noticed that Traditional Pop (http://en.wikipedia.org/wiki/Traditional_pop_music) and Pub Rock (http://en.wikipedia.org/wiki/Pub_rock_%28Australia%29) are missing from the list
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on March 24, 2013, 12:44:39 AM
Hey jistme,
I noticed that Traditional Pop (http://en.wikipedia.org/wiki/Traditional_pop_music) and Pub Rock (http://en.wikipedia.org/wiki/Pub_rock_%28Australia%29) are missing from the list

Thnx for noticing & notifying ;-)

'Traditional pop' completely escaped from my radar (I never knew what was really meant by it to be quite honest). I will add it.
'Pub rock' is also new to me. Doing a fast search on it, I get the impression it might not be a specific genre, but more a description of mood/setting/location. (drunk Aussies ;-)

You make the call: genre or description/keyword?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Bee-liever on March 24, 2013, 02:40:37 AM
'Pub rock' is also new to me. Doing a fast search on it, I get the impression it might not be a specific genre, but more a description of mood/setting/location. (drunk Aussies ;-)

You make the call: genre or description/keyword?

Wiki, rateyourmusic, discogs, musicbrainz and ILoveMusic all go with genre, so I'll agree with them. Allmusic describe it as a variant of rock'n'roll and roots rock.
I'll think you'll have to do both 'Pub Rock [UK]' and 'Pub Rock [AUS]'. The UK variant was an early 70's, short-lived movement, paving the way for punk, while the Aussie version lasted through until the early 80's.

Some of the UK bands would be:
Dr. Feelgood
Chilli Willi
Kilburn & The Highroads (Ian Dury's original band)

Aussie bands include:
AC/DC (Bon Scott era)
Cold Chisel
Midnight Oil (early stuff, especially 'Head Injuries')

Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on March 24, 2013, 10:50:18 AM
Wiki, rateyourmusic, discogs, musicbrainz and ILoveMusic all go with genre, so I'll agree with them. Allmusic describe it as a variant of rock'n'roll and roots rock.
I'll think you'll have to do both 'Pub Rock [UK]' and 'Pub Rock [AUS]'. The UK variant was an early 70's, short-lived movement, paving the way for punk, while the Aussie version lasted through until the early 80's.

Some of the UK bands would be:
Dr. Feelgood
Chilli Willi
Kilburn & The Highroads (Ian Dury's original band)

Aussie bands include:
AC/DC (Bon Scott era)
Cold Chisel
Midnight Oil (early stuff, especially 'Head Injuries')

Excellent.
Added accordingly.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: TASMANI on September 23, 2013, 04:58:21 PM
i can't download it i think it will be very helpful and i want it please tell me
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on September 23, 2013, 05:38:32 PM
It looks like SpiderOak (where the files are stored) has some problems currently.
All my files there (also my skins) show up empty at this moment.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: TASMANI on September 23, 2013, 06:16:28 PM
i guess you can't send it to me ya?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on September 23, 2013, 07:23:41 PM
Let's just wait a while. I'm sure they'll have it fixed by tomorrow.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: jistme on September 24, 2013, 04:25:27 PM
Fyi, the download link is working again.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: wisdomtooth on April 01, 2014, 10:34:51 AM
Doesn't this defeat the purpose of tagging altogether (i.e. scrapping tree indexing)?

Isn't a more efficient and robust solution, simply to create the tree in the Library Explorer through a custom sort order by permutating the genres in the genre tag? Then you could simply add your genres and subgenres as multiple genres tags, and see them nested in Library Explorer, rather than toying with this endless taxonomical exercise ;)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on January 21, 2017, 12:08:53 AM
+1 for 3rd facet / subgenre for MB mapping.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on January 23, 2017, 10:12:10 AM
Bump

This wish is still alive and getting support.
A recent and related thread on this matter:
http://getmusicbee.com/forum/index.php?topic=20805.0

Before putting more thought and effort in it, it would be good to know if Steven is even in the remotest open to considering implementing something like this?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on January 23, 2017, 01:19:34 PM
Currently you enter a genre tag and based on defined mappings, MB derives the genre category based on the relationship that is mapped. Because the relationship is mapped in the configuration, the user doesn't need to do any more than enter the genre in a file tag.

If a sub-genre field is added, what are you proposing MB does with it?
You now have a sub-genre and a genre that are manually entered. MB could enforce some validation on the relationship between the two fields or derive the genre when the sub-genre is entered.

But in terms of filtering, simply by having genre in one column of the column browser and sub-genre in the next column, MB derives the relationship based on the values actually in the file tags. Selecting a genre shows all the sub-genres in the column browser. Similarly for the library explorer

So unless you are seeing something more, I am not really seeing the value in this. You can already create a sub-genre tag.

If you are proposing the user only enters a sub-genre and genre/ genre category are both derived based on configuration file then I feel that's a step too far for most users ie. they have already entered genre in their files and having the predefined hierarchy may well be too constrictive or not something the user agrees with.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on January 23, 2017, 05:39:21 PM
That's all pretty much true, but it is mainly describing how it can work after you have all this thought well-through, set it up, and have entered all genres and sub-genres for the files in your library.

The main objective of this request is making it easily accessible, easier to manage, and more inviting to use, also for less-savvy users.

One obstruction that makes sub-genres not an easy and welcoming feature at this moment, is already at the stage of entering them.

You might have a list of sub-genres you want to use. (you will definitely need one if you want the slightest chance of some consistency).
Currently for every track or album you would want to enter a sub-genre for, you would need to consult such a list. That is not a fun thing to do every time, and one of the reasons I stopped (paused) pursuing this, and probably one of the most important reasons for many others not to pursue this, even if they would really like to.


The second obstruction is that MusicBee has no understanding of sub-genres. When using a custom tag for it, MB will allow any sub-genre to be entered in relation to any genre without any restriction, warning, or any 'awareness' of relationships.
There would be no indication at all that e.g. it would be strange to enter 'Late baroque' as sub-genre for a Hip-hop track.

All you can do is either enter a sub-genre manually from 'your list', or choose from some entries from a pop-up list that might contain sub-genres that were entered earlier before. But there is no filter, restriction, comprehensive list, or suggestions for sub-genres that have a relation to, and falls under the concerning genre.


The wish/proposal for the above would be:

1.
To be able to insert (paste) a list of genres, sub-genres, and styles¹, or have it integrated in MB to start with.
  ¹ 'Styles' is probably more simple, because it would not depend on relations, since for example 'industrial' or 'avant-garde' may be used across many different genres.

2.
Having it easy to find, select and enter genre, sub-genre and style tags for a track or album.
For that, possibly some dedicated genre/sub-genre/style panel would be very helpful.
To give some rough idea, maybe something like this mock-up. (which I also posted in the other thread) :

(http://i.imgur.com/HB7F8b3.png)

In my imagination this would work something like this:

You have an album or a track that you want to populate with genre and possibly sub-genre and style.

1. You begin selecting a genre category. (that should be easy)
2. Then from the drop-down menu you must select one of the genres that is presented there. Only relevant genres to the selected genre category are displayed.
3. Save and exit, or go to the optional next step.
4. From the sub-genre menu, select one of the displayed (and already filtered) sub-genres of the genre selected in the step before.
5. Save and exit, or go to the optional next step.
4. From the Form/style menu, select one (or more) item(s). The contents of that menu will not depend on earlier selections and has the same items every time.
5. Save and exit.


Since many users will want to keep using the current implementation for genre, it would probably be best to have it optional to activate such an 'advanced sub-genre/style mode'.
At activating it you could then choose the mapping for sub-genre (most likely a custom tag) and 'style' (the 'keywords' tag would be a likely candidate, or else a custom tag)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on January 23, 2017, 06:35:46 PM
i'll answer in a few days time. Anyone else please chip in if you want to add anything
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on January 23, 2017, 09:25:06 PM
Thanks for the write-up hiccup!

My few cents as I would love more granular / better genre cascading / exploration & librarian features (for which MusicBee already is the best I have tried) ;)
I would suggest a more open approach as I do not think we (or anyone...) can define & setup a universally applicable & true genre category/genre/sub-genre map that works for everyone.
Also, I from a subjective stand-point (although I get the argument that it should have a pretty GUI and be pre-setup & accessible for the average user) am not convinced at all that the center piece to set genre values should be a GUI with deterministic options as I do actually prefer MusicBee's current modus operandi to assigne genre values as quick as possible giving more power to the user - which is, in my understanding - you type and it autocompletes based on all genres you already have in your library (i.e. which are important to you...), and have an XML for categorization & cascading (which is possible as is, but not quite fleshed out).

My suggestion would be to streamline the current approach and have everything defined in an xml (preferrably its' own, eg  Configuration_Genres.xml ) but, with clearer cascading syntax. eg:
Instead of hard-to-grasp hierarchy definitions per line, such as:

<Genre Name="Modern" Category="Classical"/>
<Genre Name="Modern (1830-1930)" Category="Modern"/>

Why not structure it slightly differently, so it's easier to cascade things & easily visualize it in a hierarchical / cascading way, and by removing the 'category', enable the user to go as deep as you want to. eg:

<Genre Name="Classical" SubGenres="Baroque", "Classical (1730-1820)", "Modern", "Romantic (1815-1910)"/>
<Genre Name="Modern" SubGenres="Modern (1830-1930)", " 20th Century", "Contemporary", "Minimal"/>


That way one could strap on a few neat things:
- have global genre definitions easily save / changeable - i.e. on MB website, or with the standard distribution, offer genre xmls that follow discogs / musicbrainz / last.fm genre-names/-hierarchies

- once there are cascading/hierarchical genre definitions (no matter if 2 or 10 layers deep), one could do neat visualizations of the users library, eg have click able point clouds similar music genealogy visualizations such as 'SONITUS - The Universe of Electronic Music':
https://vimeo.com/57784514


- have a genre xml GUI editor to allow people who prefer GUIs to edit the xml that way, which could be presented free-form, AND / OR, as hiccup suggested, in a deterministic hierarchy, i.e. you need to define your whole genre hierarchy to get access to a given genre tag.




A few related things:
- it would be great if middle-click filtering would work for multivalue fields such as Genres! THis has been requested elsewhere as well.

- It would also be great if one could alter the metadata field the genre is derived/read from on the fly...
Let me explain - I wouldn't mind, or actually prefer to derive genres from different sources and re-route them to different tags; my use case: I use the official 'genre' field to populate with genres that are valid/important to me personally (one has to strike a balance between being exact enough and set a multitude of tags [for programs that do not have cascading genre definitions...], but one also has to be careful to not to assign too many values either otherwise the song appears everywhere... :/ ). And, since it's easy to derive - I also populate custom fields with Discogs Genre/Style values. Which I would find very interesting to explore via a hierarchical tag clouds/genealogy visualizations. And, given the option, and it's feasibility, I wouldn't mind adding another genre value, i.e. from musicbrainz. So in therory I would/could have 3 separate genre fields for 3 different genre mapping xmls...
So with the data present, I could in theory switch to discogs genre/style definitions if MusicBee would be able to switch its' genre read fields (i.e discogs uses Genre as well as 'Style' in custom fields named "DISCOGS_GENRE" and "DISCOGS_STYLE" thanks too foobars' discogs extension).

- preference option to aucto-complete genre typing from genre_definition.xml instead of index of on-file-data (as is atm - which I prefer btw, but that is subjective)

Once you've collected all the opinions & feedback, would be great to hear what your conclusion is Stephen and what will be implemented.
Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Bee-liever on January 24, 2017, 12:02:15 AM
If this will solve the current problem of not being able to have the genre 'Pop Rock' linked to both genre categories 'Pop' and 'Rock', then it's a +1 from me as well.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on January 24, 2017, 01:34:29 AM
Hah, I thought that at the back of my head... 'what if I were to assign the same string value to multiple 'subgenres' living under different 'genre' groups in that scheme...' and all I could think of is = confusion & clusterf*cks.
Although I was thinking more along the lines of same subgenre string for 2 different meanings (i.e. 'Contemporary' under 'classical', as well as under 'Jazz' for example )... so the opposite of you intentionally wanting to have the same subgenre string live in 2 different parent genre groups... but, good point...!
Unfortunately I don't have an answer for this atm (other than the fact that genre strings should be unique... :D... so iunstead of 'Contemporary' in the above example, have 'Contemporary Classical' and 'Contemporary Jazz').
But hey, that's why we're having a dialogue here, right ?
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on January 24, 2017, 08:51:23 AM
If this will solve the current problem of not being able to have the genre 'Pop Rock' linked to both genre categories 'Pop' and 'Rock', then it's a +1 from me as well.

Not saying this would not be possible after something like this is implemented, but I did not specifically put such in my proposal.
The reason being that I feel that something like that breaks some basic rules in having an tree-like organized hierarchy.

Your pop/rock argument/problem is of course very valid, and I also encountered the issue of how to handle that, and I tried to solve it at the basis.
Since for the vast majority of pop and rock music, it is very difficult to make a sharp distinction between those two, I chose to have "Pop/Rock" as a genre category.
As genres the proposal contains "Pop", "Rock", "Pop/Rock", and they will all fall under the Pop/Rock category.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on January 24, 2017, 02:56:33 PM
I have not had a lot of luck getting my head around genres, so I don't have much to contribute to the main discussion.  I use the genre field for everything, including instruments and keywords, because genre categories are handy for grouping all kinds of things.

A better GUI for maintaining genre/genre category relationships would definitely be welcome.  I've taken to using a spreadsheet for mine, but then I have trouble keeping track of whether I've updated mb with the latest changes.  Improvements could include:
*bigger window
*easily see how many genres/categories there are
*filtering to a specific category (including genre subtotals)
*point and click adding or removal a la the tag inspector
*date of last update

Also, for things like scraping genres from last.fm, I think an exclusion list is more helpful than an inclusion list.

What I would find super helpful would be a way to see and select genres from many different sources at once: last.fm, Wikipedia, all music, discogs, etc.  But I know that's not really feasible.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on May 08, 2017, 11:51:11 PM
i'll answer in a few days time. Anyone else please chip in if you want to add anything
Bump - would be curious to hear what/if some walk-able path popped up in your head about this ?

Also, I would really love to see this realized:
https://getmusicbee.com/forum/index.php?topic=21629.msg126937#msg126937
which ties into this topic of how to deal with genre/subgenre display and how to best visualize cascading/hierarchical genre definitions.

Cheers.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zigzag10 on December 27, 2017, 06:04:57 PM
Bit late, but I'm another one who would love to see subgenres linked to genres - as outlined in this suggestion
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 04, 2020, 10:47:05 AM
Hai.
I still would really really wish for a way to have a 3rd degree genre (or even better free classifications/taxonomy for any/custom tag clouds too...  so one could also set-up musical instrument or other tags taxonomy systems inside of MB [https://en.wikipedia.org/wiki/Musical_instrument_classification (https://en.wikipedia.org/wiki/Musical_instrument_classification)]  :D ).
Probably not likely, seeing how old this request is and since Steven said he doesn't know how much time he can put into MB in the future, but thought I'd ping it again nontheless in case there's a chance in the near or far future ;)  


Also, some more thoughts, while on it - in fake xml syntax below to illustrate the idea: for better manageability, this would be grand too and people could cascade their music world/taxonomy themselves (and even for all metadata categories, if one were to add a mapping table, i.e. where to derive the taxonomy-able tag cloud from... i.e. the fake 'Tag id="DISCOGS_STYLES"' field/source declaration below):

Code
<Genre Categories,  Tag id="Genre">
  <Genre Category Name="Electronic" ChildName=Genre" />
    <Child="House"/>
    <Child="Techno"/>
    <Child="Drum n Bass"/>
<Genre, Tag id="Genre">
  <Genre Name="Drum n Bass" ChildName="SubGenre" />
    <Child="Halftime"/>
    <Child="Jungle"/>
    <Child="Techstep"/>
<SubGenre, Tag id="DISCOGS_STYLES">
<SubGenre Name="Jungle" ChildName="Style" />
    <Child="Atmospheric Jungle"/>
    <Child="Ragga Jungle"/>

The beauty being that a track tagged as "Atmospheric Jungle" as a style, would automatically also appear in the parent categories groups (top to bottom: Jungle -> Drum'n'bass -> Electronic ), with a single tag value.
The olde downside still being that tags have to be unique, and only belong to a single hierarchy per unique string...
Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 04, 2020, 11:09:47 AM
so today, you tag Genre and MB can derive and group those genres into Genre Category
Are you proposing that people instead tag Sub-Genre and MB derives/ groups Genre and Genre Category?

I assume today you tag Genre, so how would the transition from tagging Genre to Sub-Genre work?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 04, 2020, 12:39:28 PM
Hey Steven,
hope you're good wherever you are!

Atm I am using what would classify as genre, subgenre & style values interchangeably inside the same Genre tag field already anyway (out of necessity), which means I am using redundant tags to have them appear across a variety of genre/subgenre/style based playlists/groupings.
So this proposal should work with the existing  'single genre field for everything' paradigm we've had for yonks (and this suggestion shouldn't change anything in terms of end-user behaviour), but adds an additional angle for people who want to use a deeper (than 2 levels) taxonomy system built in XML for their file tag source(s)/clouds.

I'll stick to the Genre tag based example:
Atmospheric Jungle -> Jungle -> Drum'n'bass -> Electronic
level depth for now.
As is - I have all of these as Genre tags on a file: Atmospheric Jungle; Jungle; Drum'n'bass
And the last parent layer, i.e. Genre Category "Electronic" (IF i have '  <Genre Name="Drum'n'bass" Category="Electronic" /> ' set), is done via the xml definition only as is already.
Correct ?

My understanding/idea is that this XML based relationship definition that already exists could be extended, and without forcing anyone needing to 'transition' into using sub-genres or the likes...


So what I am proposing is to:
- add functionality for additional n'th level relational / taxonomy definitions coming from the (or a new dedicated) xml directly, definable by the user, that work with the users' existing, unique tags (without changing the current core system for the any MB user [i.e. the 2 layers Genre Category & Genre way] )
This is what a fake xml syntax, for a 4 level deep taxonomy relation could look like, if all but the last hierarchy level were to do their NameCheck against the 'Genre' field (as long as each levels' returns is unique and each possible value is only "parented" once in the xml... So if I want "Drum n Bass" & "Jungle" to each be allowed to have further children,  in slghtly adjusted fake xml syntax (with generic names & tag ID  defintion in the same row... ):
Code
<HierarchicalName="Electronic" Tag id="Genre"/> 
    <Child="House"/>
    <Child="Techno"/>
    <Child="Drum n Bass"/>
<HierarchicalName="Drum n Bass" Tag id="Genre"/>
    <Child="Halftime"/>
    <Child="Jungle"/>
    <Child="Techstep"/>
<HierarchicalName="Jungle" Tag id="Genre"/>
    <Child="Atmospheric Jungle"/>
    <Child="Ragga Jungle"/>
<HierarchicalName="Atmospheric Jungle" Tag id="MyOwnCustomSubGenreField"/>




- the Genre Category (or a new 'Relationship Browser') browser pane would need to be able to display taxonomy definitions ( i.e. nested/hierarchical structure, IF each value is unique...!). i.e. as long as this is defined in the xml (the nesting functionality we do have in the Navigator panel already, i.e. endlessly nested playlist structures...)
Code
[-] Electronic
   [+] Ambient
   [-] Drum'n'Bass
      [-] Jungle
         [-] Atmospheric Jungle
   [+] House
   [+] Techno
[+] etc
[-] World Music
   [+] Africa
   [+] India
   [-] Latin
      [-] Cumbia
         [-] Chicha
      [+] Samba
         ...
[+] etc


- and finally, if the above is worth considering, if it would even be possible to open such a grouping / taxonomy system to work with other tags/tag-groups as well  - i.e. the '<SubGenre, Tag id="DISCOGS_STYLES">' part or the instrument example in the previous xml code mockup, so one could define per hierachy/nesting level, which source tag is used to retrieve the xml defined tag values. Meaning that I as a user have the option to set any parent/child level relation inside the xml, have these display as parent/child groups in the browser pane, and fill these with tracks base on unique tag cloud values derived from custom field per parenting level...
i.e. the Tag id="MyOwnCustomSubGenreField" hint  above, or the instrument taxonomy use case, along the lines of something like this:
Code
<HierarchicalName="String Instruments" Tag id="Instruments"/>
    <Child="Bowed String Instruments"/>
    <Child="Plugged String Instruments"/>
<HierarchicalName="Bowed String Instruments" Tag id="Instruments"/>
    <Child="Cello"/>
    <Child="Contrabass"/>
    <Child="Viola"/>
    <Child="Violin"/>
<HierarchicalName="Violin" Tag id="Instruments"/>
    <Child="Piccolo Violin"/>
    <Child="Pochette "/>
    <Child="Five String Violin"/>

whereas the above could then look like this in the hierarchical browser pane:
Code
[-] String Instruments
   [-] Bowed String Instruments
      [+] Cello
      [+] Contrabass
      [+] Viola
      [-] Violin
         [-] Piccolo Violin
         [-] Pochette
         [-] Five String Violin
   [+] Plugged String Instruments
[+] etc


Hope that makes sense, as in my head this would not require any transition whatsoever, but each user could decide if they wanted to dive deeper into structuring taxonomies for a tag cloud or even groups of tags (be it genres or instruments just being 2 examples) as they see fit for their musical world, and people craving for a 3rd/4th/5th/n'th level could add this logic to the xml themselves, if the taxonomy definition inside the XML was structured slightly differently (I think :D)  & if we had a browser pane to support this.

Cheers, thanks for considering this again & all the best.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 04, 2020, 03:27:08 PM
In the past I created and shared a sheet that contains genres and their sub-genres.
(obviously a personal and subjective list, and probably in need of some updates by now)

I noticed that the download link I then posted is now obsolete, so just in case it helps in getting some traction and perhaps discussion on the general idea I thought to post a new download link here:

download Genre-Subgenre sheet (https://bit.ly/Genres_Subgenres)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 04, 2020, 03:41:13 PM
Neat!

There's as many ways & permutations of genre/subgenre definitions as there's people (or nearly, imo :D ) as the factor of ones own exposure & appreciation of a given style will always drive how developed each genre/subgenre arm is and how it is categorized in ones own mental map of music definitions (especially the grey areas & newly developing or ultra-niche genres...).
So I don't think this can be done universally...
For me personally the Genre Categories, especially for the World/Folk areas isn't structred enough (i.e. Compas & Flamenco being their own 'Categories' - but - I do love african & latin, and especially carribean sub genres from the last 100 ish years as well, and especially the later is a weak / undeveloped area of many music taxonomy systems unfortunately...)

But, if the more free/user define-able approach outlined above holds value to Steven and could be realistic, we could fairly quickly put that sheet into an xml syntax & it could be a good starting point for people and everyone can customize from there potentially maybe.
;)

Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 07, 2020, 07:24:17 PM
This is an extremely powerful customization option and AFAIK MusicBee would be the first to implement it.

+1
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 11, 2020, 09:39:33 AM
Atm I am using what would classify as genre, subgenre & style values interchangeably inside the same Genre tag field already anyway (out of necessity), which means I am using redundant tags to have them appear across a variety of genre/subgenre/style based playlists/groupings.
...
I see what you mean now and its a clever idea. Although I can see it as a useful addition, the concerns are I think it will end up being something only a very few people who are reading this topic would be aware of it. And secondly I think a a predefined structure packaged with musicbee is something that could be included with MB so its more easily discoverable and up and running with little effort but is there any consensus on the categorisations and would people be using the tagged genres the same way? Probably not, so probably a lot of effort for someone to get this up and running.
I dont want to rule it out as there seems to be some interest in this topic. So I will see what the further responses are and also take time for my own thought on this proposal.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 11, 2020, 10:30:03 AM
Thanks a lot for your thoughts!
And indeed - it probably would be a fair bit of work.

A few more of my thoughts:
- initially it will probably be explored by the ones in this thread here and the core MusicBee audience, true. But, IF it had  the suggested 'hierarchical browser pane' inside Musicbee's Thumbnail Browser (to go with the restructured XML that allows heirachical/taxonomy mapping) and a meaningful / well defined default XML (for Genres, Moods, Instruments - all would be possible to set up as demo/default xml files to help people understand the system and have additional value right away) as a starting point, this would be easily discoverable & usable, as well as tickling curiousity, by/for everyone I would think

- I'm not sure I understand the point here:
"I think a a predefined structure packaged with musicbee is something that could be included with MB so its more easily discoverable and up and running with little effort"
correctly - but as far as I understand it: for sure! - pre packacking a few examples when introducing an (optional) core change like this would be mandatory imo (and I'm happy to help create these demo / default sets (based on what we have in the configuration.xml already, IF there were a new xml or syntax for hierachical relationships) probably with others that are interested in this - i.e. hiccups genre xls table is a great starting point for a 3 layer taxonomy system, that could work really well as an introduction / as broad as possible genre default useful for many). But yes, to be fully valid for ones' music library, this would require customization at some point, but this is also the good point, that people can adjust this easily, if their world-view or genre/metadata adopt & morph over time. And, most MB users do heavy customization already with their metadata, which in turn this suggestion would work with hand in hand.

- also - as zkhcohen pointed out, this will be extremely powerful, and if open to work with any metadata field the users wants it to, I would think this will appeal to a new set of professionally oriented users, i.e. musicians & producers for their sample libraries, as well as music/sound scientists as there simply is no tool to do this yet (I think - at least I have not found one yet...) as it can be used for any music file based metadata relationship mapping.

- additionally - and I'm dreaming here - IF there also were a UI to customize & set up the xml (and manage the pitfals like unique nested name requirements etc in a visual/easy to understand manner ), this could go a long way to make less geeky/tech savy users comfortable to use & customize this as well for their music world

- as for the extra work, you don't seem to be too phased by funding offers, but if there was crowd-funding project organized to make this more viable and this could sway you, let me know and let's chat via PM as I'd be happy to set something up for that

I'll shut up now, and keep my fingers crossed more people show interest in this ;)
All the best.
c.


ps. one least tech note for the suggested panel... :D
As this could become overkill quickly (if a large hierarchical structures get shown per default without any context or meaning), I'd suggest to only spawn a given hierarchy tree IF a tag necessitating that hierarchical tree actually exists in a library.
Meaning, this hierarchical tree:
Code
[-] Electronic
   [-] Drum'n'Bass
      [-] Jungle
         [-] Atmospheric Jungle
would only be shown IF I had a file tagged with "Atmospheric Jungle", and the track tagged with "Atmospheric Jungle"would appear in all of the above 4 hierarchical categories (acting like smart playlists for the specific tags as well as the childrens' content)

If  I only had 1 (or more files) tagged with "Drum'n'Bass" in my whole library though (but no file tagged with "Atmospheric Jungle" or "Jungle"), I would then only see this hierarchy:
Code
[-] Electronic
   [-] Drum'n'Bass
And not the additional empty hierarchical layers as these have no meaning for me or my library and should therefore not be shown...
Meaning, there can be all sorts of hierarchy definitions inside the xml, but the taxonomy/hierarchy shown in MB in this proposed hierarchy view/panel always is in sync with the data actual inside of the MB library.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 12, 2020, 07:13:25 AM
I am leaning towards doing something. But as mentioned I do think there needs to be something that is 'ready to go'
So if a user adds this new "Relationships" panel (or whatever we end up calling it), it needs to have a hierarchy already in place even if its a starting point. So that could be a basic hierarchy of genres for example so at least the user gets the point even if it doesn't work that well to start with for that persons' genre usage.
Although I agree XML is probably the right technical solution for defining the hierarchy, again it might be easier if a simple text file with indenting?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 12, 2020, 08:00:25 AM
This is what a hierarchy could look like:
Code
<Genre>
Blues
  Blues
    African Blues
    British Blues
    Jump Blues
EDM
  House
    Acid House
    Disco House
World
  <Location>
  Africa
    Ghana
  Europe
    Spain
    Portugal
notice at the top level <Genre> is used, but under World, the <Location> tag is used. I would expect the lowest level leaf nodes needs to match whats actually tagged. So some files would need to have tag values of "African Blues", "Jump Blues" etc, and some files would need a genre of "World" and location value of "Ghana", "Spain" etc. The hierarchy values at higher levels wouldn't need to match any tag values. But mixing tags like this would really just be for power users. Just having <Genre> as the default would probably suffice for most
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: vzell on July 12, 2020, 10:36:19 AM
+1
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 12, 2020, 12:55:31 PM
For those interested, I updated my genre hierarchy list.

An important change is that I added 'Roots' as a genre category that now contains: Blues, Country and Gospel.
Also some genres and sub-genres were added.

I find Folk/Ethnic/Region still a bit problematic and difficult to force into this hierarchy in a way that makes sense and is practical.
The way it is now is e.g. breaking my own adage of not mixing genres and locations in the same taxonomy.

This surely needs some more thought and a plan, but I will probably need to make some changes in how regions/locations are used (or even present) in this sheet.

download Genre-Subgenre sheet (https://bit.ly/Genres_Subgenres)
 

 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 12, 2020, 03:56:58 PM
I am leaning towards doing something.
Yay!

But as mentioned I do think there needs to be something that is 'ready to go'
Happy to set that up if that helps, based on the current genre / instrument names in the configuration.xml, or 3d party / hiccup's suggestion. Let me know if that would be helpful @Stephen and I'll set that up once you have decided on a syntax.


Although I agree XML is probably the right technical solution for defining the hierarchy, again it might be easier if a simple text file with indenting?
Syntax wise, I have no preference. What I would recommend is to stay as explicit as possible. i.e. that every parent (and every leaf node where necessary for the hierarchie under that leaf, until the next definition overwrites the previous) should always come with its' own tag/field declaration where to derive from. See example below.


The way it is now is e.g. breaking my own adage of not mixing genres and locations in the same taxonomy.
When you say 'now' do you mean inN Stephen's example ?
As what he is suggesting is valid for all tags, not just genres. So you could have a  "Relationships" panel that only establishes parent/child relationships for genres, and it's up to you how far you want to customize those - name, or branching/depth wise.
But, this goes far beyond just a 3rd layer to manage genres....
If I understand Stephen correctly, and this was my hope, that I could have relationship trees & integrated auto oplaylists generated for every tag there is on my files.
i.e. this is what I would attempt for my library in the  "Relationships" panel:
Code
Genres
<Genre>
Blues
African Blues
British Blues
Jump Blues
EDM
House
Acid House
<DISCOGS_STYLES>
Disco House
<DISCOGS_STYLES>
WhereFrom
<Location>
Africa
Ghana
Europe
Spain
Portugal
InstrumentsInvolved
<Instruments>
Bowed String Instruments
Cello
Contrabass
Viola
Violin
        Piccolo Violin
        Pochette
        Five String Violin
Plugged String Instruments
...

whereas the above would then look like this in the  "Relationships" panel
Code
[+] Genres

[+] WhereFrom

[-] InstrumentsInvolved
      [-] Bowed String Instruments
         [+] Cello
         [+] Contrabass
         [+] Viola
         [-] Violin
            [-] Piccolo Violin
            [-] Pochette
            [-] Five String Violin
   [+] Plugged String Instruments

One worry - with large libraries, this panel, if set up with multiple taxonomy tree definitions, all acting like smart-playlists and also grouping the childrens' content - this could become quite compute intensive, no ?
So maybe it should be possible to use multiple text/xml files one can switch between ? i.e. instead of declaring all in one text file, for the above examples I would have 3 text files, one for the Genre Taxonomy, one for WhereFrom / Location, and a third for InstrumentsInvolved / Instruments.
This approach would also make sharing & swapping/testing these taxonomy definition text files easier if the "Relationships" panel could toggle/switch between multiple files in the same directory for example.

Churs & all the best.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 12, 2020, 04:17:13 PM
The way it is now is e.g. breaking my own adage of not mixing genres and locations in the same taxonomy.
When you say 'now' do you mean inN Stephen's example ?

I will post a substantially updated version of my genre sheet in a second.
It might answer some questions by itself, but I will read your latest post better after that and respond if I think I have something useful to say ;-)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 12, 2020, 04:30:10 PM
I find Folk/Ethnic/Region still a bit problematic and difficult to force into this hierarchy in a way that makes sense and is practical.
The way it is now is e.g. breaking my own adage of not mixing genres and locations in the same taxonomy.
I believe I found a nice solution for this problem.
I created new genre categories for genres that most people could probably agree on are tied to a rather specific region and/or ethnicity:

Ethnic African
Ethnic Asian
Ethnic Australian
Ethnic Central American
Ethnic European
Ethnic North American
Ethnic Russian
Ethnic South American

'Contemporary Folk' is also a new category, which has solved issues that I had with the 'Ethnic/Folk' category. (which is now gone)

At this moment I don't have simply 'folk' as genre, because it seems a bit too vague to me at this moment, and any music that could fall into such a genre can now find a place in one of the above categories.
Maybe it should be there somewhere though, not sure yet.

download Genre-Subgenre sheet (https://bit.ly/Genres_Subgenres)


edit:
I am also not quite settled on main genre categories 'Roots', 'American folk music', 'Ethnic North American'.
After reading this:
https://en.wikipedia.org/wiki/American_folk_music
it seems there is a lot of overlap that will be difficult to solve in a comprehensive and practical sheet.

edit2:
And... 'Roots' is gone again.
updated with another approach to American/Country/Folk/Ethnic North American. (v0.92)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 12, 2020, 04:36:10 PM
Oops, the upload went wrong.
The new version should be up now.
(named v0.90)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 12, 2020, 08:12:05 PM
The way it is now is e.g. breaking my own adage of not mixing genres and locations in the same taxonomy.
When you say 'now' do you mean inN Stephen's example ?
As what he is suggesting is valid for all tags, not just genres. So you could have a  "Relationships" panel that only establishes parent/child relationships for genres, and it's up to you how far you want to customize those - name, or branching/depth wise.
But, this goes far beyond just a 3rd layer to manage genres....
If I understand Stephen correctly, and this was my hope, that I could have relationship trees & integrated auto oplaylists generated for every tag there is on my files.
i.e. this is what I would attempt for my library in the  "Relationships" panel: ...

I was speaking about my own genre sheet.

I am mainly focusing on what I proposed in the very startpost of this thread, and what I explained in reply #53.
And in relation to genres, I am strictly aiming to produce a correct and practical as possible genre taxonomy sheet that can easily be inserted into MusicBee when it can handle an extra hierarchy level.

It seems you are a few steps ahead and seeing more advanced opportunities with regards to relations, and a much broader practical use.
I am not sure I understand how that would work and how it would turn out in MusicBee exactly, so I will respectfully take a backseat on that part of the discussion.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 15, 2020, 10:45:00 AM
@hiccup, so do you have 2 fields - one for genre and one for sub-genre and you tag both those fields with the values you list in your sheet?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 15, 2020, 11:03:11 AM
@alec.tron,
regarding <DISCOGS_STYLES>
Are they unique for each genre ie. specific to Acid House and specific to Disco House using your example

   EDM
      House
         Acid House
         <DISCOGS_STYLES>
         Disco House
         <DISCOGS_STYLES>
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 15, 2020, 11:13:54 AM
@hiccup, so do you have 2 fields - one for genre and one for sub-genre and you tag both those fields with the values you list in your sheet?

That's correct.

It may well be some unrealistic pipe-dream, but I am thinking about being able to do something like in the screenshot here:

https://getmusicbee.com/forum/index.php?topic=8987.msg123195#msg123195
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 15, 2020, 12:07:34 PM
@hiccup, so do you have 2 fields - one for genre and one for sub-genre and you tag both those fields with the values you list in your sheet?

That's correct.
Then this discussion about a relationship panel doesnt really add anything to what you could already do using the library explorer to drill down on genre/ sub-genre. I will revisit the topic you linked to.
With the discussion with alec.tron, it would be possible to mix drill down tags and also add your own hierarchy of non-tagged groupings on top of tagged values, so it seems you both are after different things
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 15, 2020, 01:03:45 PM
@hiccup, so do you have 2 fields - one for genre and one for sub-genre and you tag both those fields with the values you list in your sheet?

That's correct.
Then this discussion about a relationship panel doesnt really add anything to what you could already do using the library explorer to drill down on genre/ sub-genre.

I only answered the question which I understood to be only about how I am currently doing it.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 15, 2020, 01:11:39 PM
Then this discussion about a relationship panel doesnt really add anything to what you could already do using the library explorer to drill down on genre/ sub-genre. I will revisit the topic you linked to.
With the discussion with alec.tron, it would be possible to mix drill down tags and also add your own hierarchy of non-tagged groupings on top of tagged values, so it seems you both are after different things
To my understanding:
- we're both after a taxonomy/grouping/hierarchy system
- we're both after being able to define on each parenting branch, which tag field is queried (based on ones own library & file setup).

To illustrate, what hiccup has in the UI mockup, would be this in the text based taxonomy approach (which imo is much more versatile for a variety of users than hard-coding a 3 layer system with a dedicated tag editing UI for a pre defined set of tags)

Code
<HierarchicalName="Classic" Tag id=""/> 
    <Child="Modern"/>
<HierarchicalName="Modern" Tag id="Genre"/>
    <Child="20th century"/>
    <Child="Contemporary"/>
    <Child="Modern 1830-1930"/>
    <Child="Minimal"/>
<HierarchicalName="20th century" Tag id="SubGenre"/>
<HierarchicalName="Contemporary" Tag id="SubGenre"/>
<HierarchicalName="Modern 1830-1930" Tag id="SubGenre"/>
<HierarchicalName="Minimal" Tag id="SubGenre"/>

Form/Style would be a new set of complexities, as this is another classification on its own.



As for:
@alec.tron,
regarding <DISCOGS_STYLES>
Are they unique for each genre ie. specific to Acid House and specific to Disco House using your example

They should be but discogs is not perfect either... see
https://blog.discogs.com/en/genres-and-styles-list/
i.e. Acid House is, Disco House does not exist on discogs.

A note regarding that - for discogs current taxonomic genre definitions (and folk/world is notoriously badly mapped out... and genres in general are very slow to make it onto discogs, and the backlog is fairly large...):
The duplicates I've seen so far in the above for example is "Gospel" appearing under "Folk, World & Country" as well as "Funk/Soul".
And it's most likely not the only occurrence, but, I could flag that with some discogs folk as I would think this is an oversight/historically grown issue.

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 15, 2020, 02:08:08 PM
Form/Style would be a new set of complexities, as this is another classification on its own.

Thoughts will surely differ on this, but when narrowing this down to using a system for genres, Form/Style in my mind is a somewhat different entity:
While genre and sub-genres would have more strict relationships, and should try to adhere to some pseudo-academic correctness, Form/Style/Keyword/whatever would be a less restricted listing of all sorts of words and terminologies that a user may want to have available to apply to his liking.
This will allow to use the fuzzy human brain capacity for handling chaos. Which is probably an essential factor to make this all usable in practice.

For example for genres, such a 'chaos' list could contain words related to music and genres such as: independent, alternative, ballroom, crossover, elevator music, industrial, serenade, soft rock, Top 40, etc.
I would like to be able to apply them independent from a selected genre.
(I have such a list, I'll see if I can include it in my updated genre list, probably later tonight)

This 'chaos list' could of course also be an unrelated independent tag, but it could be nice to have it included in an xml sheet such as you are proposing.

When using such a system for instruments, I am sure you could also come up with a list of words that do not fit in the musical instruments taxonomy from an academic standpoint, but you would still like to have available there?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 23, 2020, 10:43:32 AM
I have the new tag hierarchy panel to a fairly advanced stage now, where the panel can be used for navigating and filtering; and there is a dialog where you can edit the relationships. Its not fully ready yet but wanted to describe how the hierarchy is constructed. Also i do plan to consider tag editor support to make use of the hierarchy.

- You can enter any arbitrary nodes to the hierarchy. Often the names will correspond to file tag values but don't have to. For example you might group a bunch of genres where the grouping name doesnt correspond to any file tag - see EDM in the example below
- child nodes must be indented. Indentation must be a multiple of 4 spaces which will be validated. Using the tab and shift-tab keys in the hierarchy editor will apply the 4 space indentation
- if the node corresponds to a tagged value in a file, append '::<tag>'
- if a node is tagged, that tells MusicBee that when the node selected the results in the main panel can be filtered on that tag value eg. selecting Breakbeat would filter Genre='Breakbeat'
- if a node is not tagged, that tells MusicBee that when the node selected the results in the main panel can be filtered for all the child nodes where there is a tag value eg. selecting EDM would filter Genre='Breakbeat' or Genre='House'
Code
EDM
    Breakbeat::Genre
        Acid Breaks::SubGenre
        Big Beat::SubGenre
        Drumstep::SubGenre
    House::Genre
        Acid House::SubGenre
        Disco House::SubGenre
Where
    Europe
        Spain::Country
        Portugal::Country

@hiccup, i know you are working on a taxonomy for genre-category/ genre/ sub-genre.
Would you be happy to share that (in XL or text format) so I can include it as the default?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 23, 2020, 12:13:16 PM
I have the new tag hierarchy panel to a fairly advanced stage now, where the panel can be used for navigating and filtering
wow, just wow...!

(https://thumbs.gfycat.com/EducatedDamagedAfricanclawedfrog-size_restricted.gif)

(https://media1.giphy.com/media/hYrwRki5WYoZW/giphy.gif)

(https://media2.giphy.com/media/26n6R5HOYPbekK0YE/200.gif)

Let us know when it's availble and if/where we can help.



Curious - is this through a single text file where the tags & hioerarchies are defined ? or can we have multiples and swap between  (easily) ?
Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 23, 2020, 12:22:51 PM
its a single text file as in the example. I guess you could overwrite the file but i have no plans to support multiple files
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 23, 2020, 12:30:53 PM
@hiccup, i know you are working on a taxonomy for genre-category/ genre/ sub-genre.
Would you be happy to share that (in XL or text format) so I can include it as the default?

Sure.
I have been doing a lot of work on it and made lots of changes.
Some decisions I made on the hierarchy may trigger some discussion with other invested members.
Later tonight I should be able to post the latest version. (as a .pdf)

Depending on the feedback I could then perhaps made some adjustments to it, and weed out some possible plain mistakes.
After that I can share it as .txt, .xml or .xls.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 23, 2020, 09:15:06 PM
@hiccup, i know you are working on a taxonomy for genre-category/ genre/ sub-genre.
Would you be happy to share that (in XL or text format) so I can include it as the default?
I posted an updated version here: https://getmusicbee.com/forum/index.php?topic=32098.msg177996#msg177996
It's not final, and there seems to be an issue with the genre grouping list that matches the grouping map.
But it may at least give some useful ammunition for testing and feedback and perhaps a next step.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 10:10:25 AM
I took the latest from above, and chucked a few categories (for testing) into the syntax outlined by Steven.
Steven, can you confirm that this is what we need - this takes a few of hiccups 3-layered genre hierarchies, and puts them in the syntax you outlioned, also keeping it in a Genres group, so we could also have a "Where" hierachy:

Code
Genres
    EDM::Genre
        Alternative Dance::Genre
        Breakbeat::Genre
            Acid breaks::SubGenre
            Big beat::SubGenre
            Breakbeat hardcore::SubGenre
            Darkcore::SubGenre
            Florida breaks::SubGenre
            Nu skool breaks::SubGenre
        UK Garage::Genre
            2 Step::SubGenre
            Bassline::SubGenre
            Speed Garage::SubGenre
    Ethnic - Europe::Genre
        Alpine folk music::Genre
        Basque folk music::Genre
        Catalan folk music::Genre
            Catalan rumba::SubGenre
            Sardana::SubGenre
Where
    Europe
        Spain::Country
        Portugal::Country

Maybe hiccup & me can divvy it up, bringing the xls info into the correct syntax in .txt (with white spacing etc), so you have a file that you can add to the MB distro.

@hiccup if Steven confirms, let's PM then we could share the work in bringing it into the syntax steven needs.
Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 24, 2020, 10:18:39 AM
The "Where" in my example was just to show the hierarchy is flexible and not constrained to Genre/SubGenre tags
Although your example would still work if people tagged both "EDM" and "Alternative Dance" as genres, I would expect "EDM" to be not associated with a tagged value ie. just "EDM" instead of "EDM::Genre"

I also know that almost all people wont have a tag called "SubGenre" so still thinking about how to guide new users with that.

By the way, if you get the latest v3.4 patch, you can add a "tag hierarchy" panel and edit the tag hierarchy. I would advise to only use it on the basis that it all goes wrong and you lose anything you do
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 11:07:09 AM
Cool. Thanks for the info.
How about - I'll try to put hiccups genre syntax fully into a formatted .txt file as per your spec (might take a bit). I'll then pass it on to hiccup, with 'SubGenre' as the field to query for his use, and swap it over to just 'Genre' field, and pass that on to you for testing/distribution...?


Question re:
Although your example would still work if people tagged both "EDM" and "Alternative Dance" as genres, I would expect "EDM" to be not associated with a tagged value ie. just "EDM" instead of "EDM::Genre"

My interpretation was that the EDM group would get created all the same with
    EDM::Genre
or just
    EDM

The upside being that the upper syntax option would act as a group, but also catch & populate itself with files that had had the "EDM" as an explicit genre tag value. Is that a wrong assumption ?

I wasn't aware it's already in test builds. I'll update mine and will test asap.
Will get back in a few hrs when I had a play with it. Looking very much forward to.
 

Churs.
c.

ps. Installed it & - oh... this is very neat!!!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 24, 2020, 11:12:51 AM
I suggest you use "Edit Tag Relationships" and play around with it - after editing, clicking on displayed nodes will apply the filter to the main panel
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 11:21:20 AM
UI SCHMUI! (but thanks for the UI nontheless!!! this will help & make it accessible for many)
But, I had the formatted .txt already & works like a charm to just put that in place & have it load (on panel unload/reload) :D
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 02:17:49 PM
Ah, after testing, I see.
So there's a functional difference, whereas:
    EDM::Genre
or just
    EDM

the former acts as an exclusive list of files with that tag
the later is a functional group that accumulates all childrens' content.
Correct ?

I would hope/think that the EDM::Genre would also be able to act as a group node and show all child groups' files.


As for the list - here's the first pass on hiccups genre map, in the required syntax. One thing to note - there were a few double ups of names. So I had to get rid of all doubled up names as names need to be unique in this approach.

Let's see if I can past a 700 line long txt in a code snippet (aaand, that's a no... I'll split it up in 2 parts...), then you guys could just grab it from here and test yourself:
Code
Genres
    African::Genre
        Afrobeat::Genre
        Bikutsi::Genre
        Chimurenga::Genre
        Fuji::Genre
        Highlife::Genre
        Kizomba::Genre
        Maloya::Genre
        Mbalax::Genre
        Mbaqanga::Genre
        Mbube::Genre
        Morna::Genre
        Raï::Genre
            Pop raï::Genre
        Salegy::Genre
        Soukous::Genre
        Taarab::Genre
        Malagasy::Genre
        Yoruba music::Genre
    Americana::Genre
    Asian::Genre
        C-pop::Genre
            Cantopop::Genre
            Hokkien pop::Genre
            Mandopop::Genre
        Dangdut::Genre
        Eleki::Genre
        J-pop::Genre
            Denpa::Genre
            Ryuukouka::Genre
        J-rock::Genre
            Kawaii metal::Genre
            Kayoukyoku::Genre
            Shibuya-kei::Genre
            Techno kayō::Genre
        K-pop::Genre
        Luk krung::Genre
        Luk thung::Genre
        Manila sound::Genre
        Pinoy pop::Genre
        Trot::Genre
        Bhangra::Genre
        Sarala gee::Genre
        V-Pop::Genre
    Baroque pop::Genre
    Blues::Genre
        Acoustic blues::Genre
        African blues::Genre
        British blues::Genre
        Chicago blues::Genre
        Country blues::Genre
        Delta blues::Genre
        Electric blues::Genre
        Electric Texas blues::Genre
        Hill country blues::Genre
        Jump blues::Genre
        New Orleans blues::Genre
        Piano blues::Genre
        Soul blues::Genre
        St. Louis blues::Genre
        Swamp blues::Genre
        Texas blues::Genre
        Vaudeville blues::Genre
        West Coast blues::Genre
    Central American::Genre
        Afro::Genre
        Chutney::Genre
        Compas::Genre
        Mambo::Genre
        Mariachi::Genre
        Nueva trova::Genre
        Pachanga::Genre
        Punto guajiro::Genre
        Reggaeton::Genre
            Neoperreo::Genre
        Rocksteady::Genre
        Sega::Genre
        Soca::Genre
        Songo::Genre
        Tejano::Genre
        Timba::Genre
        Zouk::Genre
        Zouk-love::Genre
    Classical::Genre
        Medieval era (500–1400)::Genre
            Ars antiqua::Genre
            Ars nova::Genre
            Ars subtilior::Genre
            Plainsong::Genre
        Renaissance era (1400–1600)::Genre
        Baroque era (1600–1760)::Genre
            Early baroque (1600–1654)::Genre
            Middle baroque (1654–1707)::Genre
            Late baroque (1680–1760)::Genre
        Classical era (1730–1820)::Genre
        Romantic era (1780–1910)::Genre
            Early romantic (1780—1850)::Genre
            Late Romantic (1850—1910)::Genre
        Modernist era (1890–1980)::Genre
            Impressionist (1890–1930)::Genre
            Post-romanticism (1890–1930)::Genre
            Expressionism (1900–1930)::Genre
            Neoclassicism (1920–1950)::Genre
            Serialism (1920–1980)::Genre
        Postmodernist era (1930– )::Genre
            Neoromanticism (1930– )::Genre
            Contemporary (1950– )::Genre
            Experimentalism (1950– )::Genre
            Minimalism (1960– )::Genre
            Postminimalism (1980– )::Genre
            Modern (1830–1930)::Genre
                Minimalism::Genre
        Latin American classical music::Genre
        Modern classical::Genre
    Contemporary folk::Genre
        Anti-folk::Genre
        Indie folk::Genre
        Neofolk::Genre
        Progressive folk::Genre
        Psychedelic folk::Genre
        Skiffle::Genre
    Contemporary country::Genre
        Country rap::Genre
        Neo-traditionalist country::Genre
    Country::Genre
        Bakersfield sound::Genre
        Outlaw country::Genre
        Alternative country::Genre
            Gothic country::Genre
            Progressive country::Genre
        Bluegrass::Genre
            Bluegrass gospel::Genre
            Neo-traditional bluegrass::Genre
            Progressive bluegrass::Genre
            Traditional bluegrass::Genre
        Country pop::Genre
            Countrypolitan::Genre
        Honky tonk::Genre
        Red dirt::Genre
        Texas country::Genre
        Western swing::Genre
    EDM
        Alternative Dance::Genre
        Breakbeat:Genre
            Acid breaks::Genre
            Big beat::Genre
            Breakbeat hardcore::Genre
            Darkcore::Genre
            Florida breaks::Genre
            Nu skool breaks::Genre
        Deconstructed club::Genre
        Drum and bass:Genre
            Darkstep::Genre
            Drumfunk::Genre
            Drumstep::Genre
            Halftime::Genre
            Hardstep::Genre
            Jazzstep::Genre
            Jump-up::Genre
            Liquid funk::Genre
            Minimal drum and bass::Genre
            Neurofunk::Genre
            Sambass::Genre
            Techstep::Genre
        Dubstep::Genre
            Brostep::Genre
            Chillstep::Genre
            Deathstep::Genre
            Melodic dubstep::Genre
        EBM::Genre
        Electro::Genre
        Electro-industrial::Genre
            Aggrotech::Genre
            Dark electro::Genre
            Death industrial::Genre
            Power electronics::Genre
        Electro swing::Genre
        Eurodance::Genre
            Italo dance::Genre
        Future garage::Genre
        Future bass::Genre
        Futurepop::Genre
        Ghettotech::Genre
        Grime::Genre
            Weightless::Genre
        Hardcore::Genre
            Freeform::Genre
            Gabber::Genre
            Happy gabber::Genre
            Happy hardcore::Genre
            Hardstyle::Genre
            Industrial hardcore::Genre
            Noizecore::Genre
            Nu style gabber::Genre
            Speedcore::Genre
            Terrorcore::Genre
        Hard NRG::Genre
        Hi-NRG::Genre
        House::Genre
            Acid house::Genre
            Anthem house::Genre
            Brit house::Genre
            Classic house::Genre
            Diva house::Genre
            Electro house::Genre
            French house::Genre
            Funky house::Genre
            Garage::Genre
            Ghetto house::Genre
            Hip house::Genre
            Italo House::Genre
            Latin house::Genre
            Microhouse::Genre
            Moombahton::Genre
            Progressive house::Genre
            Tribal house::Genre
            UK hard house::Genre
        Jungle::Genre
            Dancehall jungle::Genre
            Disco jungle::Genre
            Experimental jungle::Genre
            Oldskool::Genre
            Ragga Jungle::Genre
        Latin freestyle::Genre
        New beat::Genre
        Nu-disco::Genre
        Tech House::Genre
        Techno::Genre
            Acid techno::Genre
            Ambient techno::Genre
            Detroit techno::Genre
            Dub techno::Genre
            Industrial techno::Genre
            Minimal techno::Genre
        Tecnobrega::Genre
        Trance::Genre
            Acid trance::Genre
            Ambient trance::Genre
            Dream trance::Genre
            Goa trance::Genre
            Hard trance::Genre
            Ibiza trance::Genre
            Progressive trance::Genre
            Psytrance::Genre
            Tech trance::Genre
            Uplifting trance::Genre
            Vocal trance::Genre
            UK Garage::Genre
                2 Step::Genre
                Bassline::Genre
                Speed Garage::Genre
    Electronic::Genre
        Acid jazz::Genre
        Downtempo::Genre
        Dungeon synth::Genre
        Electroclash::Genre
        Folktronica::Genre
        Funktronica::Genre
        Glitch::Genre
            Glitch hop::Genre
        IDM::Genre
            Breakcore::Genre
            Flashcore::Genre
            Drill and bass::Genre
        Illbient::Genre
        Indietronica::Genre
        Musique concrète::Genre
        Post-industrial::Genre
            Dark ambient::Genre
        Psybient::Genre
        Synth punk::Genre
        Synthwave::Genre
            Darksynth::Genre
        Witch House::Genre
    Funk::Genre
        Brit funk::Genre
        Deep funk::Genre
        Go-go::Genre
        Latin funk::Genre
        P-funk::Genre
        Synth funk::Genre
    Gospel::Genre
        Progressive southern gospel::Genre
        Southern gospel::Genre
        Traditional black gospel::Genre
        Urban gospel::Genre
    Jazz::Genre
        Jazz traditional::Genre
            Bebop::Genre
            Big band::Genre
            Cape jazz::Genre
            Chamber jazz::Genre
            Cool jazz::Genre
            Dixieland::Genre
            Gypsy jazz::Genre
            Hard bop::Genre
            Mainstream jazz::Genre
            Neo-bop::Genre
            Orchestral jazz::Genre
            Post-bop::Genre
            Stride::Genre
            Vocal jazz::Genre
            West Coast jazz::Genre
        Avant-garde jazz::Genre
        Crossover jazz::Genre
        Free funk::Genre
        Free jazz::Genre
        Jazz-funk::Genre
        Jazz fusion::Genre
            Flamenco Jazz::Genre
            J-fusion::Genre
            Jazz-rock::Genre
        Latin jazz::Genre
            Afro-Brazilian jazz::Genre
            Afro-Cuban jazz::Genre
            Samba-jazz::Genre
        Soul jazz::Genre
    Latin::Genre
        Bachata::Genre
        Bolero::Genre
        Bossa nova::Genre
        Canción::Genre
        Cha-cha-chá::Genre
        Choro::Genre
        Cumbia::Genre
        Guaracha::Genre
        Latin alternative::Genre
        Latin soul::Genre
        Marchinha::Genre
            Samba-reggae::Genre
        Música popular brasileira::Genre
        Nueva canción::Genre
        Pagode::Genre
            Pagode romântico::Genre
        Rumba::Genre
            Guaguancó::Genre
        Salsa::Genre
            Salsa dura::Genre
            Salsa romántica::Genre
        Samba::Genre
            Samba-canção::Genre
            Samba-exaltação::Genre
            Samba-rock::Genre
        Samba-choro::Genre
        Sertanejo::Genre
            Sertanejo romântico::Genre
            Sertanejo universitário::Genre
        Tango::Genre
            Tango nuevo::Genre
    New Age::Genre
    Non-music::Genre
        Sound art::Genre
        Sound poetry::Genre
        Sounds and effects::Genre
        Spoken word::Genre
    Pop/Rock
        Pop::Genre
            Sophisti-pop::Genre
        Rock::Genre
            Hard rock::Genre
        Afroswing::Genre
        Alternative metal::Genre
            Christian metal::Genre
            Funk metal::Genre
            Nu metal::Genre
        Alternative rock::Genre
            Afro-punk::Genre
            Britpop::Genre
            College rock::Genre
            Dream pop::Genre
            Gothic rock::Genre
            Grunge::Genre
            Indie pop::Genre
            Indie rock::Genre
            Jangle pop::Genre
            Neo-Psychedelia::Genre
            Noise pop::Genre
            Paisley underground::Genre
            Post-Britpop::Genre
            Post-grunge::Genre
            Shoegaze::Genre
            Slowcore::Genre
        Art rock::Genre
        Beat music::Genre
        Balkan pop-folk::Genre
        Blackgaze::Genre
        Blues rock::Genre
        Bubblegum::Genre
        Chalga::Genre
        Chamber pop::Genre
        Chanson::Genre
            Nouvelle chanson française::Genre
        Classical crossover::Genre
            Operatic pop::Genre
        Country rock::Genre
        Crossover thrash::Genre
        Crunkcore::Genre
        Dance-pop::Genre
        Dance-rock::Genre
        Dance-punk::Genre
        Dark jazz::Genre
        Dark wave::Genre
            Ethereal wave::Genre
            Neoclassical darkwave::Genre
        Deathgrind::Genre
        Digital hardcore::Genre
        Disco::Genre
            Disco polo::Genre
            Eurodisco::Genre
            Italo disco::Genre
            Post-disco::Genre
            Space disco::Genre
        Electronicore::Genre
        Emo::Genre
            Emo-pop::Genre
            Screamo::Genre
        Europop::Genre
        Folk metal::Genre
            Medieval folk metal::Genre
        Folk pop::Genre
        Folk rock::Genre
            Celtic rock::Genre
            Medieval rock::Genre
        Funk rock::Genre
        Garage rock::Genre
        Glam rock::Genre
        Grindcore::Genre
            Goregrind::Genre
            Gorenoise::Genre
        Heartland rock::Genre
        Heavy metal::Genre
            Atmospheric black metal::Genre
            Black metal::Genre
            Blackened death metal::Genre
            Death 'n' roll::Genre
            Death metal::Genre
            Doom metal::Genre
            Experimental metal::Genre
            Glam metal::Genre
            Gothic metal::Genre
            Groove metal::Genre
            Industrial metal::Genre
            Latin metal::Genre
            Melodic black metal::Genre
            Melodic death metal::Genre
            Melodic metalcore::Genre
            Neoclassical metal::Genre
            Power metal::Genre
            Progressive metal::Genre
            Sludge metal::Genre
            Speed metal::Genre
            Symphonic metal::Genre
            Symphonic black metal::Genre
            Symphonic death metal::Genre
            Symphonic gothic metal::Genre
            Symphonic power metal::Genre
            Technical death metal::Genre
            Trance metal::Genre
            Thrash metal::Genre
            Viking metal::Genre
        Hip hop::Genre
            Alternative hip hop::Genre
            Chicano rap::Genre
            Christian hip hop::Genre
            Conscious hip hop::Genre
            Crunk::Genre
            Dirty rap::Genre
            Disco rap::Genre
            East Coast hip hop::Genre
            Experimental hip hop::Genre
            Freestyle rap::Genre
            Funk carioca::Genre
            G-funk::Genre
            Gangsta rap::Genre
            Hardcore hip hop::Genre
            Horrorcore::Genre
            Industrial hip hop::Genre
            Jazz rap::Genre
            Latin rap::Genre
            Miami bass::Genre
            Phonk::Genre
            Southern hip hop::Genre
            Trap::Genre
            Martial industrial::Genre
        Industrial rock::Genre
        Italo Pop::Genre
        Krautrock::Genre
        Latin pop::Genre
        Latin rock::Genre
        Levenslied::Genre
        Metalcore::Genre
            Deathcore::Genre
            Mathcore::Genre
            Progressive deathcore::Genre
            Progressive metalcore::Genre
            Symphonic deathcore::Genre
        Mexican pop::Genre
        Neue Deutsche Härte::Genre
        Neue Deutsche Welle::Genre
        New jack swing::Genre
        New wave::Genre
        Nintendocore::Genre
        Noise rock::Genre
        Nordic folk rock::Genre
        Nu jazz::Genre
        Pop soul::Genre
        Post-hardcore::Genre
        Post-metal::Genre
        Post-punk::Genre
            Easycore::Genre
        Post-punk revival::Genre
        Power pop::Genre
        Progressive rock::Genre
            Math rock::Genre
            Neo-progressive rock::Genre
        Psychedelic pop::Genre
        Psychedelic rock::Genre
            Acid rock::Genre
        Psychobilly::Genre
            Gothabilly::Genre
        Pub rock::Genre
        Punk blues::Genre
        Punk rock::Genre
            Anarcho-punk::Genre
            Celtic punk::Genre
            Cowpunk::Genre
            Crust punk::Genre
            D-Beat::Genre
            Deathrock::Genre
            Folk punk::Genre
            Garage punk::Genre
            Glam punk::Genre
            Gypsy punk::Genre
            Hardcore punk::Genre
            Oi!::Genre
            Pop punk::Genre
            Riot grrrl::Genre
            Skate punk::Genre
            Thrashcore::Genre
        Rap rock::Genre
            Rap metal::Genre
            Rapcore::Genre
        Rock & roll::Genre
        Rockabilly::Genre
        Samba rock::Genre
        Schlager::Genre
        Ska::Genre
            Third wave ska::Genre
            J-Ska::Genre
            Ska-core::Genre
        Ska punk::Genre
        Smooth jazz::Genre
        Soft rock::Genre
        Southern rock::Genre
        Space age pop::Genre
        Space rock::Genre
        Stoner rock::Genre
        Sunshine pop::Genre
        Surf music::Genre
            Instrumental surf::Genre
            Surf pop::Genre
            Surf punk::Genre
            Surf rock::Genre
            Vocal surf::Genre
        Swamp rock::Genre
        Symphonic rock::Genre
            Symphonic progressive rock::Genre
        Synth-pop::Genre
        Teen pop::Genre
        Traditional pop::Genre
        Two Tone::Genre
        Zolo::Genre
    Reggae::Genre
        Dub::Genre
        Lovers rock::Genre
        Pop reggae::Genre
        Rocksteady::Genre
        Roots reggae::Genre
        Dancehall::Genre
            Bashment::Genre
            Dancehall pop::Genre
            Digital dancehall::Genre
            Ragga::Genre
    Rhythm and blues::Genre
        Doo-wop::Genre
        Hip hop soul::Genre
        Quiet storm::Genre
    Soul::Genre
        Blue-eyed soul::Genre
        British soul::Genre
        Chicago soul::Genre
        Detroit soul::Genre
        Memphis soul::Genre
        Neo soul::Genre
        New Orleans soul::Genre
        Philadelphia soul::Genre
        Psychedelic soul::Genre
        Smooth soul::Genre
        Southern soul::Genre

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 02:18:49 PM
2nd part, Ethnic & Where, as posting it as one would break the 20k character limit of the forum.
c.

Code
    World music::Genre
        Global fusion::Genre
        World fusion::Genre
        World fusion jazz::Genre
        Worldbeat::Genre
    Ethnic - Africa::Genre
        African traditional music::Genre
        Amazigh music::Genre
            Tuareg music::Genre
        Apala::Genre
        Benga::Genre
        Gnawa::Genre
        Jùjú::Genre
        Kuduro::Genre
        Kwaito::Genre
        Kwela::Genre
        Malagasy folk music::Genre
        Muziki wa dansi::Genre
        Mande music::Genre
        Nguni folk music::Genre
        Palm-wine::Genre
        Semba::Genre
        Shona mbira music::Genre
        Songhai music::Genre
        Sungura::Genre
        Tizita::Genre
    Ethnic - Asia::Genre
        Asian traditional music::Genre
        Altai traditional music::Genre
        Armenian folk music::Genre
        Bengali folk music::Genre
        Burmese classical music::Genre
        Burmese folk music::Genre
            Mono::Genre
        Carnatic classical music::Genre
        Chinese classical music::Genre
        Chinese folk music::Genre
        Gamelan::Genre
        Ghazal::Genre
        Hindustani classical music::Genre
        Iranian folk music::Genre
        Israeli folk music::Genre
        Japanese folk music::Genre
            Amami shimauta::Genre
            Heikyoku::Genre
            Min'yō::Genre
            Rōkyoku::Genre
            Taiko::Genre
            Tsugaru shamisen::Genre
        Keroncong::Genre
        Khmer folk music::Genre
        Khyal::Genre
        Kundiman::Genre
        Kurdish folk music::Genre
        Molam::Genre
        Mongolian traditional music::Genre
            Mongolian long song::Genre
            Mongolian throat singing::Genre
        Nhạc vàng::Genre
        Peking Opera::Genre
        Persian classical music::Genre
        Persian pop::Genre
        Phleng phuea chiwit::Genre
        Pop Ghazal::Genre
        Qawwali::Genre
        Sanjo::Genre
        Shidaiqu::Genre
        Sinhalese folk music::Genre
        Southeast Asian classical music::Genre
        Tajik traditional music::Genre
            Shashmaqom::Genre
        Tatar folk music::Genre
        Thai classical music::Genre
        Tibetan traditional music::Genre
        Traditional arabic pop::Genre
        Turkish classical music::Genre
        Turkish folk music::Genre
        Uyghur traditional music::Genre
        Uzbek traditional music::Genre
        Vietnamese folk music::Genre
    Ethnic - Europe::Genre
        European traditional music::Genre
        Alpine folk music::Genre
        Basque folk music::Genre
        Catalan folk music::Genre
            Catalan rumba::Genre
            Sardana::Genre
        English folk music::Genre
        Estonian folk music::Genre
        Flamenco rumba::Genre
        Flemish folk music::Genre
        French folk music::Genre
            Breton Celtic folk music::Genre
        German folk music::Genre
        Hungarian folk music::Genre
        Irish folk music::Genre
            Sean-nós::Genre
        Italian folk music::Genre
            Cantu a tenore::Genre
            Canzone napoletana::Genre
        Neo-Medieval folk::Genre
        Nordic folk music::Genre
            Danish folk music::Genre
            Faroese folk music::Genre
            Finnish folk music::Genre
            Icelandic folk music::Genre
            Joik::Genre
            Norwegian folk music::Genre
            Runolaulu::Genre
            Swedish folk music::Genre
        Polish folk music::Genre
            Poezja śpiewana::Genre
        Polka::Genre
        Portuguese folk music::Genre
            Fado::Genre
        Scottish folk music::Genre
            Pibroch::Genre
            Pipe Band::Genre
        Spanish folk music::Genre
            Aragonese folk music::Genre
            Asturian folk music::Genre
            Canarian folk music::Genre
            Chotis madrileño::Genre
            Copla::Genre
            Cuplé::Genre
            Flamenco::Genre
            Galician folk music::Genre
            Pasodoble::Genre
            Saeta::Genre
            Sevillanas::Genre
            Zarzuela::Genre
        Welsh folk music::Genre
    Ethnic - East Europe::Genre
        East-European traditional music::Genre
        Albanian folk music::Genre
        Balkan brass band::Genre
        Belarusian folk music::Genre
        Bulgarian folk music::Genre
        Croatian folk music::Genre
        Csango folk music::Genre
        Goral music::Genre
        Greek folk music::Genre
        Kef music::Genre
        Klapa::Genre
        Laika::Genre
        Latvian folk music::Genre
        Lithuanian folk music::Genre
        Macedonian folk music::Genre
        Manele::Genre
        Romani folk music::Genre
        Romanian folk music::Genre
        Sevdalinka::Genre
        Slovak folk music::Genre
        Slovenian folk music::Genre
        Starogradska muzika::Genre
        Ukrainian folk music::Genre
        Warsaw city folk::Genre
    Ethnic - Central America::Genre
        Central American traditional music::Genre
        Mento::Genre
        Bolero son::Genre
        Danzón::Genre
        Guajira::Genre
        Son cubano::Genre
            Son montuno::Genre
        Santería music::Genre
    Ethnic - Jewish music::Genre
        Jewish music::Genre
            Ashkenazi music::Genre
            Cantillation::Genre
            Jewish liturgical music::Genre
            Klezmer::Genre
            Mizrahi music::Genre
            Sephardic music::Genre
    Ethnic - North America::Genre
        American traditional music::Genre
        Canadian traditional music::Genre
        Cape Breton folk music::Genre
        Appalachian folk music::Genre
        Cajun::Genre
        Creole::Genre
        French-Canadian folk::Genre
        Indigenous music of North America::Genre
        Inuit music::Genre
        Jug band::Genre
        Mexican folk music::Genre
            Son huasteco::Genre
            Son jarocho::Genre
        Native American::Genre
        Newfoundland folk music::Genre
        Norteño::Genre
        Old-time::Genre
        Ranchera::Genre
        Swamp pop::Genre
        Trova::Genre
        Zydeco::Genre
        Cowboy::Genre
        Canadian maritime folk::Genre
        Traditional cajun::Genre
    Ethnic - Oceania::Genre
        Australian traditional music::Genre
            Australian folk music::Genre
            Indigenous Australian music::Genre
        Ethnic Papuan::Genre
            Papuan traditional music::Genre
        Ethnic Polynesian::Genre
            Austronesian traditional music::Genre
            Fijian music::Genre
            Hawaiian music::Genre
            Māori traditional music::Genre
            Samoan music::Genre
    Ethnic - Russia::Genre
        Russian traditional music::Genre
            Bard music::Genre
            Russian chanson::Genre
            Russian folk music::Genre
            Russian liturgical music::Genre
            Russian romance::Genre
            Soviet estrada::Genre
            Znamenny chant::Genre
    Ethnic - South America::Genre
        South American traditional music::Genre
        Chamamé::Genre
        Cueca::Genre
        Forró::Genre
        Kaseko::Genre
        Milonga::Genre
        Vallenato::Genre
        Andean folk music::Genre
            Chacarera::Genre
            Huayno::Genre
        Joropo::Genre
        Lambada::Genre
        Malagueña Venezolana::Genre
        Música criolla Peruana::Genre
            Vals criollo::Genre
        Parang::Genre
        Plena::Genre
        Porro::Genre
        Sertanejo de raiz::Genre
            Moda de viola::Genre
        Zamba::Genre
Where
    Europe
        Spain::Country
        Portugal::Country




One question - to make this as universally useful - and since that is a lot of categories:
A nice (polishing / optional / settings) feature would be if branches only were to show if:
-they have a child
and/or
-there's actual files populating them.

Meaning, that if I have no files tagged with:
Australian traditional music::Genre
    Australian folk music::Genre
    Indigenous Australian music::Genre

I would not see the taxonomy leaves for these...

Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 24, 2020, 02:32:01 PM
As for the list - here's the first pass on hiccups genre map, in the required syntax. One thing to note - there were a few double ups of names. So I had to get rid of all doubled up names as names need to be unique in this approach

I am pretty sure there are no duplicates in the genre and subgenre columns.
Can you name a couple so I can check?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 02:43:44 PM
Sure.
The ones I've seen is:
Soul & Jazz being listed as category & genre, each.



Also, here's your formatting, using SubGenre tag as the field to query the 3rd level depth (I might have missed some... but I think I got most...).


Code
Genres
    African::Genre
        Afrobeat::Genre
        Bikutsi::Genre
        Chimurenga::Genre
        Fuji::Genre
        Highlife::Genre
        Kizomba::Genre
        Maloya::Genre
        Mbalax::Genre
        Mbaqanga::Genre
        Mbube::Genre
        Morna::Genre
        Raï::Genre
            Pop raï::SubGenre
        Salegy::Genre
        Soukous::Genre
        Taarab::Genre
        Malagasy::Genre
        Yoruba music::Genre
    Americana::Genre
    Asian::Genre
        C-pop::Genre
            Cantopop::SubGenre
            Hokkien pop::SubGenre
            Mandopop::SubGenre
        Dangdut::Genre
        Eleki::Genre
        J-pop::Genre
            Denpa::SubGenre
            Ryuukouka::SubGenre
        J-rock::Genre
            Kawaii metal::SubGenre
            Kayoukyoku::SubGenre
            Shibuya-kei::SubGenre
            Techno kayō::SubGenre
        K-pop::Genre
        Luk krung::Genre
        Luk thung::Genre
        Manila sound::Genre
        Pinoy pop::Genre
        Trot::Genre
        Bhangra::Genre
        Sarala gee::Genre
        V-Pop::Genre
    Baroque pop::Genre
    Blues::Genre
        Acoustic blues::Genre
        African blues::Genre
        British blues::Genre
        Chicago blues::Genre
        Country blues::Genre
        Delta blues::Genre
        Electric blues::Genre
        Electric Texas blues::Genre
        Hill country blues::Genre
        Jump blues::Genre
        New Orleans blues::Genre
        Piano blues::Genre
        Soul blues::Genre
        St. Louis blues::Genre
        Swamp blues::Genre
        Texas blues::Genre
        Vaudeville blues::Genre
        West Coast blues::Genre
    Central American::Genre
        Afro::Genre
        Chutney::Genre
        Compas::Genre
        Mambo::Genre
        Mariachi::Genre
        Nueva trova::Genre
        Pachanga::Genre
        Punto guajiro::Genre
        Reggaeton::Genre
            Neoperreo::SubGenre
        Rocksteady::Genre
        Sega::Genre
        Soca::Genre
        Songo::Genre
        Tejano::Genre
        Timba::Genre
        Zouk::Genre
        Zouk-love::Genre
    Classical::Genre
        Medieval era (500–1400)::Genre
            Ars antiqua::SubGenre
            Ars nova::SubGenre
            Ars subtilior::SubGenre
            Plainsong::SubGenre
        Renaissance era (1400–1600)::Genre
        Baroque era (1600–1760)::Genre
            Early baroque (1600–1654)::SubGenre
            Middle baroque (1654–1707)::SubGenre
            Late baroque (1680–1760)::SubGenre
        Classical era (1730–1820)::Genre
        Romantic era (1780–1910)::Genre
            Early romantic (1780—1850)::SubGenre
            Late Romantic (1850—1910)::SubGenre
        Modernist era (1890–1980)::Genre
            Impressionist (1890–1930)::SubGenre
            Post-romanticism (1890–1930)::SubGenre
            Expressionism (1900–1930)::SubGenre
            Neoclassicism (1920–1950)::SubGenre
            Serialism (1920–1980)::SubGenre
        Postmodernist era (1930– )::Genre
            Neoromanticism (1930– )::SubGenre
            Contemporary (1950– )::SubGenre
            Experimentalism (1950– )::SubGenre
            Minimalism (1960– )::SubGenre
            Postminimalism (1980– )::SubGenre
            Modern (1830–1930)::SubGenre
                Minimalism::SubGenre
        Latin American classical music::Genre
        Modern classical::Genre
    Contemporary folk::Genre
        Anti-folk::Genre
        Indie folk::Genre
        Neofolk::Genre
        Progressive folk::Genre
        Psychedelic folk::Genre
        Skiffle::Genre
    Contemporary country::Genre
        Country rap::Genre
        Neo-traditionalist country::Genre
    Country::Genre
        Bakersfield sound::Genre
        Outlaw country::Genre
        Alternative country::Genre
            Gothic country::SubGenre
            Progressive country::SubGenre
        Bluegrass::Genre
            Bluegrass gospel::SubGenre
            Neo-traditional bluegrass::SubGenre
            Progressive bluegrass::SubGenre
            Traditional bluegrass::SubGenre
        Country pop::Genre
            Countrypolitan::SubGenre
        Honky tonk::Genre
        Red dirt::Genre
        Texas country::Genre
        Western swing::Genre
    EDM
        Alternative Dance::Genre
        Breakbeat:Genre
            Acid breaks::SubGenre
            Big beat::SubGenre
            Breakbeat hardcore::SubGenre
            Darkcore::SubGenre
            Florida breaks::SubGenre
            Nu skool breaks::SubGenre
        Deconstructed club::Genre
        Drum and bass:Genre
            Darkstep::SubGenre
            Drumfunk::SubGenre
            Drumstep::SubGenre
            Halftime::SubGenre
            Hardstep::SubGenre
            Jazzstep::SubGenre
            Jump-up::SubGenre
            Liquid funk::SubGenre
            Minimal drum and bass::SubGenre
            Neurofunk::SubGenre
            Sambass::SubGenre
            Techstep::SubGenre
        Dubstep::Genre
            Brostep::SubGenre
            Chillstep::SubGenre
            Deathstep::SubGenre
            Melodic dubstep::SubGenre
        EBM::Genre
        Electro::Genre
        Electro-industrial::Genre
            Aggrotech::SubGenre
            Dark electro::SubGenre
            Death industrial::SubGenre
            Power electronics::SubGenre
        Electro swing::Genre
        Eurodance::Genre
            Italo dance::SubGenre
        Future garage::Genre
        Future bass::Genre
        Futurepop::Genre
        Ghettotech::Genre
        Grime::Genre
            Weightless::SubGenre
        Hardcore::Genre
            Freeform::SubGenre
            Gabber::SubGenre
            Happy gabber::SubGenre
            Happy hardcore::SubGenre
            Hardstyle::SubGenre
            Industrial hardcore::SubGenre
            Noizecore::SubGenre
            Nu style gabber::SubGenre
            Speedcore::SubGenre
            Terrorcore::Genre
        Hard NRG::Genre
        Hi-NRG::Genre
        House::Genre
            Acid house::SubGenre
            Anthem house::SubGenre
            Brit house::SubGenre
            Classic house::SubGenre
            Diva house::SubGenre
            Electro house::SubGenre
            French house::SubGenre
            Funky house::SubGenre
            Garage::SubGenre
            Ghetto house::SubGenre
            Hip house::SubGenre
            Italo House::SubGenre
            Latin house::SubGenre
            Microhouse::SubGenre
            Moombahton::SubGenre
            Progressive house::SubGenre
            Tribal house::SubGenre
            UK hard house::SubGenre
        Jungle::Genre
            Dancehall jungle::SubGenre
            Disco jungle::SubGenre
            Experimental jungle::SubGenre
            Oldskool::SubGenre
            Ragga Jungle::SubGenre
        Latin freestyle::Genre
        New beat::Genre
        Nu-disco::Genre
        Tech House::Genre
        Techno::Genre
            Acid techno::SubGenre
            Ambient techno::SubGenre
            Detroit techno::SubGenre
            Dub techno::SubGenre
            Industrial techno::SubGenre
            Minimal techno::SubGenre
        Tecnobrega::Genre
        Trance::Genre
            Acid trance::SubGenre
            Ambient trance::SubGenre
            Dream trance::SubGenre
            Goa trance::SubGenre
            Hard trance::SubGenre
            Ibiza trance::SubGenre
            Progressive trance::SubGenre
            Psytrance::SubGenre
            Tech trance::SubGenre
            Uplifting trance::SubGenre
            Vocal trance::SubGenre
            UK Garage::Genre
                2 Step::SubGenre
                Bassline::SubGenre
                Speed Garage::SubGenre
    Electronic::Genre
        Acid jazz::Genre
        Downtempo::Genre
        Dungeon synth::Genre
        Electroclash::Genre
        Folktronica::Genre
        Funktronica::Genre
        Glitch::Genre
            Glitch hop::SubGenre
        IDM::Genre
            Breakcore::SubGenre
            Flashcore::SubGenre
            Drill and bass::SubGenre
        Illbient::Genre
        Indietronica::Genre
        Musique concrète::Genre
        Post-industrial::Genre
            Dark ambient::SubGenre
        Psybient::Genre
        Synth punk::Genre
        Synthwave::Genre
            Darksynth::SubGenre
        Witch House::Genre
    Funk::Genre
        Brit funk::Genre
        Deep funk::Genre
        Go-go::Genre
        Latin funk::Genre
        P-funk::Genre
        Synth funk::Genre
    Gospel::Genre
        Progressive southern gospel::Genre
        Southern gospel::Genre
        Traditional black gospel::Genre
        Urban gospel::Genre
    Jazz::Genre
        Jazz traditional::Genre
            Bebop::SubGenre
            Big band::SubGenre
            Cape jazz::SubGenre
            Chamber jazz::SubGenre
            Cool jazz::SubGenre
            Dixieland::SubGenre
            Gypsy jazz::SubGenre
            Hard bop::SubGenre
            Mainstream jazz::SubGenre
            Neo-bop::SubGenre
            Orchestral jazz::SubGenre
            Post-bop::SubGenre
            Stride::SubGenre
            Vocal jazz::SubGenre
            West Coast jazz::SubGenre
        Avant-garde jazz::Genre
        Crossover jazz::Genre
        Free funk::Genre
        Free jazz::Genre
        Jazz-funk::Genre
        Jazz fusion::Genre
            Flamenco Jazz::SubGenre
            J-fusion::SubGenre
            Jazz-rock::SubGenre
        Latin jazz::Genre
            Afro-Brazilian jazz::SubGenre
            Afro-Cuban jazz::SubGenre
            Samba-jazz::SubGenre
        Soul jazz::Genre
    Latin::Genre
        Bachata::Genre
        Bolero::Genre
        Bossa nova::Genre
        Canción::Genre
        Cha-cha-chá::Genre
        Choro::Genre
        Cumbia::Genre
        Guaracha::Genre
        Latin alternative::Genre
        Latin soul::Genre
        Marchinha::Genre
            Samba-reggae::SubGenre
        Música popular brasileira::Genre
        Nueva canción::Genre
        Pagode::Genre
            Pagode romântico::SubGenre
        Rumba::Genre
            Guaguancó::SubGenre
        Salsa::Genre
            Salsa dura::SubGenre
            Salsa romántica::SubGenre
        Samba::Genre
            Samba-canção::SubGenre
            Samba-exaltação::SubGenre
            Samba-rock::SubGenre
        Samba-choro::Genre
        Sertanejo::Genre
            Sertanejo romântico::SubGenre
            Sertanejo universitário::SubGenre
        Tango::Genre
            Tango nuevo::SubGenre
    New Age::Genre
    Non-music::Genre
        Sound art::Genre
        Sound poetry::Genre
        Sounds and effects::Genre
        Spoken word::Genre
    Pop/Rock
        Pop::Genre
            Sophisti-pop::SubGenre
        Rock::Genre
            Hard rock::SubGenre
        Afroswing::Genre
        Alternative metal::Genre
            Christian metal::SubGenre
            Funk metal::SubGenre
            Nu metal::SubGenre
        Alternative rock::Genre
            Afro-punk::SubGenre
            Britpop::SubGenre
            College rock::SubGenre
            Dream pop::SubGenre
            Gothic rock::SubGenre
            Grunge::SubGenre
            Indie pop::SubGenre
            Indie rock::SubGenre
            Jangle pop::SubGenre
            Neo-Psychedelia::SubGenre
            Noise pop::SubGenre
            Paisley underground::SubGenre
            Post-Britpop::SubGenre
            Post-grunge::SubGenre
            Shoegaze::SubGenre
            Slowcore::SubGenre
        Art rock::Genre
        Beat music::Genre
        Balkan pop-folk::Genre
        Blackgaze::Genre
        Blues rock::Genre
        Bubblegum::Genre
        Chalga::Genre
        Chamber pop::Genre
        Chanson::Genre
            Nouvelle chanson française::SubGenre
        Classical crossover::Genre
            Operatic pop::SubGenre
        Country rock::Genre
        Crossover thrash::Genre
        Crunkcore::Genre
        Dance-pop::Genre
        Dance-rock::Genre
        Dance-punk::Genre
        Dark jazz::Genre
        Dark wave::Genre
            Ethereal wave::SubGenre
            Neoclassical darkwave::SubGenre
        Deathgrind::Genre
        Digital hardcore::Genre
        Disco::Genre
            Disco polo::SubGenre
            Eurodisco::SubGenre
            Italo disco::SubGenre
            Post-disco::SubGenre
            Space disco::SubGenre
        Electronicore::Genre
        Emo::Genre
            Emo-pop::SubGenre
            Screamo::SubGenre
        Europop::Genre
        Folk metal::Genre
            Medieval folk metal::SubGenre
        Folk pop::Genre
        Folk rock::Genre
            Celtic rock::SubGenre
            Medieval rock::SubGenre
        Funk rock::Genre
        Garage rock::Genre
        Glam rock::Genre
        Grindcore::Genre
            Goregrind::SubGenre
            Gorenoise::SubGenre
        Heartland rock::Genre
        Heavy metal::Genre
            Atmospheric black metal::SubGenre
            Black metal::SubGenre
            Blackened death metal::SubGenre
            Death 'n' roll::SubGenre
            Death metal::SubGenre
            Doom metal::SubGenre
            Experimental metal::SubGenre
            Glam metal::SubGenre
            Gothic metal::SubGenre
            Groove metal::SubGenre
            Industrial metal::SubGenre
            Latin metal::SubGenre
            Melodic black metal::SubGenre
            Melodic death metal::SubGenre
            Melodic metalcore::SubGenre
            Neoclassical metal::SubGenre
            Power metal::SubGenre
            Progressive metal::SubGenre
            Sludge metal::SubGenre
            Speed metal::SubGenre
            Symphonic metal::SubGenre
            Symphonic black metal::SubGenre
            Symphonic death metal::SubGenre
            Symphonic gothic metal::SubGenre
            Symphonic power metal::SubGenre
            Technical death metal::SubGenre
            Trance metal::SubGenre
            Thrash metal::SubGenre
            Viking metal::SubGenre
        Hip hop::Genre
            Alternative hip hop::SubGenre
            Chicano rap::SubGenre
            Christian hip hop::SubGenre
            Conscious hip hop::SubGenre
            Crunk::SubGenre
            Dirty rap::SubGenre
            Disco rap::SubGenre
            East Coast hip hop::SubGenre
            Experimental hip hop::SubGenre
            Freestyle rap::SubGenre
            Funk carioca::SubGenre
            G-funk::SubGenre
            Gangsta rap::SubGenre
            Hardcore hip hop::SubGenre
            Horrorcore::SubGenre
            Industrial hip hop::SubGenre
            Jazz rap::SubGenre
            Latin rap::SubGenre
            Miami bass::SubGenre
            Phonk::SubGenre
            Southern hip hop::SubGenre
            Trap::SubGenre
            Martial industrial::SubGenre
        Industrial rock::Genre
        Italo Pop::Genre
        Krautrock::Genre
        Latin pop::Genre
        Latin rock::Genre
        Levenslied::Genre
        Metalcore::Genre
            Deathcore::SubGenre
            Mathcore::SubGenre
            Progressive deathcore::SubGenre
            Progressive metalcore::SubGenre
            Symphonic deathcore::SubGenre
        Mexican pop::Genre
        Neue Deutsche Härte::Genre
        Neue Deutsche Welle::Genre
        New jack swing::Genre
        New wave::Genre
        Nintendocore::Genre
        Noise rock::Genre
        Nordic folk rock::Genre
        Nu jazz::Genre
        Pop soul::Genre
        Post-hardcore::Genre
        Post-metal::Genre
        Post-punk::Genre
            Easycore::SubGenre
        Post-punk revival::Genre
        Power pop::Genre
        Progressive rock::SubGenre
            Math rock::SubGenre
            Neo-progressive rock::SubGenre
        Psychedelic pop::Genre
        Psychedelic rock::Genre
            Acid rock::SubGenre
        Psychobilly::Genre
            Gothabilly::SubGenre
        Pub rock::Genre
        Punk blues::Genre
        Punk rock::Genre
            Anarcho-punk::SubGenre
            Celtic punk::SubGenre
            Cowpunk::SubGenre
            Crust punk::SubGenre
            D-Beat::SubGenre
            Deathrock::SubGenre
            Folk punk::SubGenre
            Garage punk::SubGenre
            Glam punk::SubGenre
            Gypsy punk::SubGenre
            Hardcore punk::SubGenre
            Oi!::SubGenre
            Pop punk::SubGenre
            Riot grrrl::SubGenre
            Skate punk::SubGenre
            Thrashcore::SubGenre
        Rap rock::Genre
            Rap metal::SubGenre
            Rapcore::SubGenre
        Rock & roll::Genre
        Rockabilly::Genre
        Samba rock::Genre
        Schlager::Genre
        Ska::Genre
            Third wave ska::SubGenre
            J-Ska::SubGenre
            Ska-core::SubGenre
        Ska punk::Genre
        Smooth jazz::Genre
        Soft rock::Genre
        Southern rock::Genre
        Space age pop::Genre
        Space rock::Genre
        Stoner rock::Genre
        Sunshine pop::Genre
        Surf music::Genre
            Instrumental surf::SubGenre
            Surf pop::SubGenre
            Surf punk::SubGenre
            Surf rock::SubGenre
            Vocal surf::SubGenre
        Swamp rock::Genre
        Symphonic rock::Genre
            Symphonic progressive rock::SubGenre
        Synth-pop::Genre
        Teen pop::Genre
        Traditional pop::Genre
        Two Tone::Genre
        Zolo::Genre
    Reggae::Genre
        Dub::Genre
        Lovers rock::Genre
        Pop reggae::Genre
        Rocksteady::Genre
        Roots reggae::Genre
        Dancehall::Genre
            Bashment::SubGenre
            Dancehall pop::SubGenre
            Digital dancehall::SubGenre
            Ragga::SubGenre
    Rhythm and blues::Genre
        Doo-wop::Genre
        Hip hop soul::Genre
        Quiet storm::Genre
    Soul::Genre
        Blue-eyed soul::Genre
        British soul::Genre
        Chicago soul::Genre
        Detroit soul::Genre
        Memphis soul::Genre
        Neo soul::Genre
        New Orleans soul::Genre
        Philadelphia soul::Genre
        Psychedelic soul::Genre
        Smooth soul::Genre
        Southern soul::Genre
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 02:44:26 PM
And the second part:

Code
    World music::Genre
        Global fusion::Genre
        World fusion::Genre
        World fusion jazz::Genre
        Worldbeat::Genre
    Ethnic - Africa::Genre
        African traditional music::Genre
        Amazigh music::Genre
            Tuareg music::SubGenre
        Apala::Genre
        Benga::Genre
        Gnawa::Genre
        Jùjú::Genre
        Kuduro::Genre
        Kwaito::Genre
        Kwela::Genre
        Malagasy folk music::Genre
        Muziki wa dansi::Genre
        Mande music::Genre
        Nguni folk music::Genre
        Palm-wine::Genre
        Semba::Genre
        Shona mbira music::Genre
        Songhai music::Genre
        Sungura::Genre
        Tizita::Genre
    Ethnic - Asia::Genre
        Asian traditional music::Genre
        Altai traditional music::Genre
        Armenian folk music::Genre
        Bengali folk music::Genre
        Burmese classical music::Genre
        Burmese folk music::Genre
            Mono::SubGenre
        Carnatic classical music::Genre
        Chinese classical music::Genre
        Chinese folk music::Genre
        Gamelan::Genre
        Ghazal::Genre
        Hindustani classical music::Genre
        Iranian folk music::Genre
        Israeli folk music::Genre
        Japanese folk music::Genre
            Amami shimauta::SubGenre
            Heikyoku::SubGenre
            Min'yō::SubGenre
            Rōkyoku::SubGenre
            Taiko::SubGenre
            Tsugaru shamisen::SubGenre
        Keroncong::Genre
        Khmer folk music::Genre
        Khyal::Genre
        Kundiman::Genre
        Kurdish folk music::Genre
        Molam::Genre
        Mongolian traditional music::Genre
            Mongolian long song::SubGenre
            Mongolian throat singing::SubGenre
        Nhạc vàng::Genre
        Peking Opera::Genre
        Persian classical music::Genre
        Persian pop::Genre
        Phleng phuea chiwit::Genre
        Pop Ghazal::Genre
        Qawwali::Genre
        Sanjo::Genre
        Shidaiqu::Genre
        Sinhalese folk music::Genre
        Southeast Asian classical music::Genre
        Tajik traditional music::Genre
            Shashmaqom::SubGenre
        Tatar folk music::Genre
        Thai classical music::Genre
        Tibetan traditional music::Genre
        Traditional arabic pop::Genre
        Turkish classical music::Genre
        Turkish folk music::Genre
        Uyghur traditional music::Genre
        Uzbek traditional music::Genre
        Vietnamese folk music::Genre
    Ethnic - Europe::Genre
        European traditional music::Genre
        Alpine folk music::Genre
        Basque folk music::Genre
        Catalan folk music::Genre
            Catalan rumba::SubGenre
            Sardana::SubGenre
        English folk music::Genre
        Estonian folk music::Genre
        Flamenco rumba::Genre
        Flemish folk music::Genre
        French folk music::Genre
            Breton Celtic folk music::SubGenre
        German folk music::Genre
        Hungarian folk music::Genre
        Irish folk music::Genre
            Sean-nós::SubGenre
        Italian folk music::SubGenre
            Cantu a tenore::SubGenre
            Canzone napoletana::SubGenre
        Neo-Medieval folk::Genre
        Nordic folk music::Genre
            Danish folk music::SubGenre
            Faroese folk music::SubGenre
            Finnish folk music::SubGenre
            Icelandic folk music::SubGenre
            Joik::SubGenre
            Norwegian folk music::SubGenre
            Runolaulu::SubGenre
            Swedish folk music::SubGenre
        Polish folk music::Genre
            Poezja śpiewana::SubGenre
        Polka::Genre
        Portuguese folk music::Genre
            Fado::Genre
        Scottish folk music::Genre
            Pibroch::SubGenre
            Pipe Band::SubGenre
        Spanish folk music::Genre
            Aragonese folk music::SubGenre
            Asturian folk music::SubGenre
            Canarian folk music::SubGenre
            Chotis madrileño::SubGenre
            Copla::SubGenre
            Cuplé::SubGenre
            Flamenco::SubGenre
            Galician folk music::SubGenre
            Pasodoble::SubGenre
            Saeta::SubGenre
            Sevillanas::SubGenre
            Zarzuela::SubGenre
        Welsh folk music::Genre
    Ethnic - East Europe::Genre
        East-European traditional music::Genre
        Albanian folk music::Genre
        Balkan brass band::Genre
        Belarusian folk music::Genre
        Bulgarian folk music::Genre
        Croatian folk music::Genre
        Csango folk music::Genre
        Goral music::Genre
        Greek folk music::Genre
        Kef music::Genre
        Klapa::Genre
        Laika::Genre
        Latvian folk music::Genre
        Lithuanian folk music::Genre
        Macedonian folk music::Genre
        Manele::Genre
        Romani folk music::Genre
        Romanian folk music::Genre
        Sevdalinka::Genre
        Slovak folk music::Genre
        Slovenian folk music::Genre
        Starogradska muzika::Genre
        Ukrainian folk music::Genre
        Warsaw city folk::Genre
    Ethnic - Central America::Genre
        Central American traditional music::Genre
        Mento::Genre
        Bolero son::Genre
        Danzón::Genre
        Guajira::Genre
        Son cubano::Genre
            Son montuno::SubGenre
        Santería music::Genre
    Ethnic - Jewish music::SubGenre
        Jewish music::Genre
            Ashkenazi music::SubGenre
            Cantillation::SubGenre
            Jewish liturgical music::SubGenre
            Klezmer::SubGenre
            Mizrahi music::SubGenre
            Sephardic music::SubGenre
    Ethnic - North America::Genre
        American traditional music::Genre
        Canadian traditional music::Genre
        Cape Breton folk music::Genre
        Appalachian folk music::Genre
        Cajun::Genre
        Creole::Genre
        French-Canadian folk::Genre
        Indigenous music of North America::Genre
        Inuit music::Genre
        Jug band::Genre
        Mexican folk music::Genre
            Son huasteco::SubGenre
            Son jarocho::SubGenre
        Native American::Genre
        Newfoundland folk music::Genre
        Norteño::Genre
        Old-time::Genre
        Ranchera::Genre
        Swamp pop::Genre
        Trova::Genre
        Zydeco::Genre
        Cowboy::Genre
        Canadian maritime folk::Genre
        Traditional cajun::Genre
    Ethnic - Oceania::Genre
        Australian traditional music::Genre
            Australian folk music::SubGenre
            Indigenous Australian music::SubGenre
        Ethnic Papuan::Genre
            Papuan traditional music::SubGenre
        Ethnic Polynesian::Genre
            Austronesian traditional music::SubGenre
            Fijian music::SubGenre
            Hawaiian music::SubGenre
            Māori traditional music::SubGenre
            Samoan music::SubGenre
    Ethnic - Russia::Genre
        Russian traditional music::Genre
            Bard music::SubGenre
            Russian chanson::SubGenre
            Russian folk music::SubGenre
            Russian liturgical music::SubGenre
            Russian romance::SubGenre
            Soviet estrada::SubGenre
            Znamenny chant::SubGenre
    Ethnic - South America::Genre
        South American traditional music::Genre
        Chamamé::Genre
        Cueca::Genre
        Forró::Genre
        Kaseko::Genre
        Milonga::Genre
        Vallenato::Genre
        Andean folk music::Genre
            Chacarera::SubGenre
            Huayno::SubGenre
        Joropo::Genre
        Lambada::Genre
        Malagueña Venezolana::Genre
        Música criolla Peruana::Genre
            Vals criollo::SubGenre
        Parang::Genre
        Plena::Genre
        Porro::Genre
        Sertanejo de raiz::Genre
            Moda de viola::SubGenre
        Zamba::Genre
Where
    Europe
        Spain::Country
        Portugal::Country

As a thank you for the work you've done on the genre table ;)

c.

ps. oops, I missed some. I replace the snippets above in a bit.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 24, 2020, 03:04:43 PM
Sure.
The ones I've seen is:
Soul & Jazz being listed as category & genre, each.

Those are not duplicates within the genre or subgenre columns. (which are the actual tags)

If a song was tagged with 'Soul', you obviously want it to show up in the 'Soul' Genre category in MusicBee.
So in the sheet, Soul is present both in the category column, and in a genre column.


User case scenario:

A user should be able to first select a category (the least difficult decision to make), and then be able to e.g. quickly apply Soul as a genre tag.
That's quick and easy, but still correct and adhering to the Genre map. (of which he doesn't even have to be aware of it's existence)

If he wants to be more specific and detailed with tagging it, he could select another Genre that resides under the Soul Category, or a Subgenre residing under the Soul Genre.


And a sidenote to be clear and not maybe confuse some things:

For having music tagged with a genre that:

- is present in the genre map
and/or
- is sourced from Discogs or MusicBrainz

showing up under the correct Genre category in MusicBee, it is essential that MusicBee is also using the custom genre grouping list.
So the Genre map and the Grouping list have related but different purposes.
 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 24, 2020, 03:27:16 PM
edited my previous post to clarify a bit more
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 03:39:24 PM
Ok, I see. Steven also took the Category/Genre approach of the old 2-level system into this.
So I just tested, and you could also construct things like:

Code
Genres
    Jazz Category
        Jazz
            Jazz::Genre
            Bebop::Genre
            Big band::Genre
        Avant-garde jazz::Genre
        Crossover jazz::Genre
        Jazz fusion::Genre
            Flamenco Jazz::Genre
            J-fusion::Genre


Whereas I would have thought this would be not wanted/ideal
Code
     Jazz Category
        Jazz
            Jazz::Genre

Fair enough though, then your category/genre grouping, that allows double ups is still possible. But you need to decide on each branch, do you want a child-content-group (i.e. a categoryto collect files from children) or an explicit genre name. Having both does not seem possible (?).

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 24, 2020, 03:45:03 PM
Ok, I see. Steven also took the Category/Genre approach of the old 2-level system into this.
So I just tested, and you could also construct things like:
I haven't been able to look at how this turns up and functions in MusicBee at all.
I'll probably do that this weekend.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 24, 2020, 03:59:37 PM
Switching between Tabs with Custom Views / Layouts causes the new Tag Hierarchy Explorer Panel to "white out" and requires a restart of MusicBee to become interactive / visible again.

 F5 does not resolve the issue.

Importantly, the current filter still appears, despite the panel being white.

See the screenshot below:

(https://i.imgur.com/6Stp1jY.png)


EDIT:

I thought removing the Column Browser might help -- it didn't.

Interestingly, the bug only occurs when navigating away from the tab containing the panel and back.

You can start MusicBee with any tab loaded then switch to the tab containing the panel and it will appear correctly until you navigate away and back.

As a test, I added it to another tab, and as long as you alternate between the two tabs containing the Hierarchy Explorer, it won't white-out.

No errors in the error logs either.

---


Despite this bug, this is exactly what I had hoped for. What an awesome new feature! Thanks.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 04:11:43 PM
I also had occasional 'white outs'. Not sure if it's the same as yours. But I found them fix-able by force re-reading the .txt file, and/or un-/re-loading the panel itself...
i.e -> TagHierarchy Panel -> Edit Tag Hieracrhy -> OK
seems to rebuild the panel on the quick.


Also - I have a mapping for foo_discogs  fields (it again exceeds the 20k limit... need to find a better way to store/share large txt files... :D)
c.


Code
Discogs_Genres
    Blues::DISCOGS_RELEASE_GENRES
        Boogie Woogie::DISCOGS_STYLES
        Chicago Blues::DISCOGS_STYLES
        Country Blues::DISCOGS_STYLES
        Delta Blues::DISCOGS_STYLES
        East Coast Blues::DISCOGS_STYLES
        Electric Blues::DISCOGS_STYLES
        Harmonica Blues::DISCOGS_STYLES
        Jump Blues::DISCOGS_STYLES
        Louisiana Blues::DISCOGS_STYLES
        Memphis Blues::DISCOGS_STYLES
        Modern Electric Blues::DISCOGS_STYLES
        Piano Blues::DISCOGS_STYLES
        Piedmont Blues::DISCOGS_STYLES
        Rhythm & Blues::DISCOGS_STYLES
        Texas Blues::DISCOGS_STYLES
    Brass & Military::DISCOGS_RELEASE_GENRES
        Brass Band::DISCOGS_STYLES
        Marches::DISCOGS_STYLES
        Military::DISCOGS_STYLES
        Pipe & Drum::DISCOGS_STYLES
    Children’s::DISCOGS_RELEASE_GENRES
        Educational::DISCOGS_STYLES
        Nursery Rhymes::DISCOGS_STYLES
        Story::DISCOGS_STYLES
    Classical::DISCOGS_RELEASE_GENRES
        Baroque::DISCOGS_STYLES
        Choral::DISCOGS_STYLES
        Classical::DISCOGS_STYLES
        Contemporary::DISCOGS_STYLES
        Early::DISCOGS_STYLES
        Impressionist::DISCOGS_STYLES
        Medieval::DISCOGS_STYLES
        Modern::DISCOGS_STYLES
        Neo-Classical::DISCOGS_STYLES
        Neo-Romantic::DISCOGS_STYLES
        Opera::DISCOGS_STYLES
        Operetta::DISCOGS_STYLES
        Oratorio::DISCOGS_STYLES
        Post-Modern::DISCOGS_STYLES
        Renaissance::DISCOGS_STYLES
        Romantic::DISCOGS_STYLES
        Serial::DISCOGS_STYLES
        Twelve-tone::DISCOGS_STYLES
        Zarzuela::DISCOGS_STYLES
    Electronic::DISCOGS_RELEASE_GENRES
        Abstract::DISCOGS_STYLES
        Acid::DISCOGS_STYLES
        Acid House::DISCOGS_STYLES
        Acid Jazz::DISCOGS_STYLES
        Ambient::DISCOGS_STYLES
        Ballroom::DISCOGS_STYLES
        Baltimore Club::DISCOGS_STYLES
        Bassline::DISCOGS_STYLES
        Beatdown::DISCOGS_STYLES
        Berlin-School::DISCOGS_STYLES
        Big Beat::DISCOGS_STYLES
        Breakbeat::DISCOGS_STYLES
        Breakcore::DISCOGS_STYLES
        Breaks::DISCOGS_STYLES
        Broken Beat::DISCOGS_STYLES
        Chillwave::DISCOGS_STYLES
        Chiptune::DISCOGS_STYLES
        Dance-pop::DISCOGS_STYLES
        Dark Ambient::DISCOGS_STYLES
        Darkwave::DISCOGS_STYLES
        Deep House::DISCOGS_STYLES
        Deep Techno::DISCOGS_STYLES
        Disco::DISCOGS_STYLES
        Disco Polo::DISCOGS_STYLES
        Donk::DISCOGS_STYLES
        Doomcore::DISCOGS_STYLES
        Downtempo::DISCOGS_STYLES
        Drone::DISCOGS_STYLES
        Drum n Bass::DISCOGS_STYLES
        Dub::DISCOGS_STYLES
        Dub Techno::DISCOGS_STYLES
        Dubstep::DISCOGS_STYLES
        Dungeon Synth::DISCOGS_STYLES
        EBM::DISCOGS_STYLES
        Electro::DISCOGS_STYLES
        Electro House::DISCOGS_STYLES
        Electroclash::DISCOGS_STYLES
        Euro House::DISCOGS_STYLES
        Euro-Disco::DISCOGS_STYLES
        Eurobeat::DISCOGS_STYLES
        Eurodance::DISCOGS_STYLES
        Experimental::DISCOGS_STYLES
        Freestyle::DISCOGS_STYLES
        Funkot::DISCOGS_STYLES
        Future Jazz::DISCOGS_STYLES
        Gabber::DISCOGS_STYLES
        Garage House::DISCOGS_STYLES
        Ghetto::DISCOGS_STYLES
        Ghetto House::DISCOGS_STYLES
        Ghettotech::DISCOGS_STYLES
        Glitch::DISCOGS_STYLES
        Goa Trance::DISCOGS_STYLES
        Grime::DISCOGS_STYLES
        Hands Up::DISCOGS_STYLES
        Happy Hardcore::DISCOGS_STYLES
        Hard Beat::DISCOGS_STYLES
        Hard House::DISCOGS_STYLES
        Hard Techno::DISCOGS_STYLES
        Hard Trance::DISCOGS_STYLES
        Hardcore::DISCOGS_STYLES
        Hardstyle::DISCOGS_STYLES
        Harsh Noise Wall::DISCOGS_STYLES
        Hi NRG::DISCOGS_STYLES
        Hip Hop::DISCOGS_STYLES
        Hip-House::DISCOGS_STYLES
        House::DISCOGS_STYLES
        IDM::DISCOGS_STYLES
        Illbient::DISCOGS_STYLES
        Industrial::DISCOGS_STYLES
        Italo House::DISCOGS_STYLES
        Italo-Disco::DISCOGS_STYLES
        Italodance::DISCOGS_STYLES
        J-Core::DISCOGS_STYLES
        Jazzdance::DISCOGS_STYLES
        Juke::DISCOGS_STYLES
        Jumpstyle::DISCOGS_STYLES
        Jungle::DISCOGS_STYLES
        Latin::DISCOGS_STYLES
        Leftfield::DISCOGS_STYLES
        Lento Violento::DISCOGS_STYLES
        Makina::DISCOGS_STYLES
        Minimal::DISCOGS_STYLES
        Minimal Techno::DISCOGS_STYLES
        Modern Classical::DISCOGS_STYLES
        Musique Concrète::DISCOGS_STYLES
        Neo Trance::DISCOGS_STYLES
        Neofolk::DISCOGS_STYLES
        Nerdcore Techno::DISCOGS_STYLES
        New Age::DISCOGS_STYLES
        New Beat::DISCOGS_STYLES
        New Wave::DISCOGS_STYLES
        Noise::DISCOGS_STYLES
        Nu-Disco::DISCOGS_STYLES
        Power Electronics::DISCOGS_STYLES
        Progressive Breaks::DISCOGS_STYLES
        Progressive House::DISCOGS_STYLES
        Progressive Trance::DISCOGS_STYLES
        Psy-Trance::DISCOGS_STYLES
        Rhythmic Noise::DISCOGS_STYLES
        Schranz::DISCOGS_STYLES
        Skweee::DISCOGS_STYLES
        Sound Collage::DISCOGS_STYLES
        Speed Garage::DISCOGS_STYLES
        Speedcore::DISCOGS_STYLES
        Synth-pop::DISCOGS_STYLES
        Synthwave::DISCOGS_STYLES
        Tech House::DISCOGS_STYLES
        Tech Trance::DISCOGS_STYLES
        Techno::DISCOGS_STYLES
        Trance::DISCOGS_STYLES
        Tribal::DISCOGS_STYLES
        Tribal House::DISCOGS_STYLES
        Trip Hop::DISCOGS_STYLES
        Tropical House::DISCOGS_STYLES
        UK Funky::DISCOGS_STYLES
        UK Garage::DISCOGS_STYLES
        Vaporwave::DISCOGS_STYLES
        Witch House::DISCOGS_STYLES
    Folk, World & Country::DISCOGS_RELEASE_GENRES
        Aboriginal::DISCOGS_STYLES
        African::DISCOGS_STYLES
        Andalusian Classical::DISCOGS_STYLES
        Appalachian Music::DISCOGS_STYLES
        Bangladeshi Classical::DISCOGS_STYLES
        Basque Music::DISCOGS_STYLES
        Bengali Music::DISCOGS_STYLES
        Bhangra::DISCOGS_STYLES
        Bluegrass::DISCOGS_STYLES
        Cajun::DISCOGS_STYLES
        Cambodian Classical::DISCOGS_STYLES
        Canzone Napoletana::DISCOGS_STYLES
        Carnatic::DISCOGS_STYLES
        Catalan Music::DISCOGS_STYLES
        Celtic::DISCOGS_STYLES
        Chacarera::DISCOGS_STYLES
        Chamamé::DISCOGS_STYLES
        Chinese Classical::DISCOGS_STYLES
        Chutney::DISCOGS_STYLES
        Cobla::DISCOGS_STYLES
        Copla::DISCOGS_STYLES
        Country::DISCOGS_STYLES
        Dangdut::DISCOGS_STYLES
        Éntekhno::DISCOGS_STYLES
        Fado::DISCOGS_STYLES
        Filk::DISCOGS_STYLES
        Flamenco::DISCOGS_STYLES
        Folk::DISCOGS_STYLES
        Funaná::DISCOGS_STYLES
        Gagaku::DISCOGS_STYLES
        Gamelan::DISCOGS_STYLES
        Gospel::DISCOGS_STYLES
        Griot::DISCOGS_STYLES
        Guarania::DISCOGS_STYLES
        Hawaiian::DISCOGS_STYLES
        Highlife::DISCOGS_STYLES
        Hillbilly::DISCOGS_STYLES
        Hindustani::DISCOGS_STYLES
        Honky Tonk::DISCOGS_STYLES
        Indian Classical::DISCOGS_STYLES
        Jota::DISCOGS_STYLES
        Kaseko::DISCOGS_STYLES
        Keroncong::DISCOGS_STYLES
        Kizomba::DISCOGS_STYLES
        Klasik::DISCOGS_STYLES
        Klezmer::DISCOGS_STYLES
        Korean Court Music::DISCOGS_STYLES
        Laïkó::DISCOGS_STYLES
        Lao Music::DISCOGS_STYLES
        Liscio::DISCOGS_STYLES
        Luk Krung::DISCOGS_STYLES
        Luk Thung::DISCOGS_STYLES
        Maloya::DISCOGS_STYLES
        Mbalax::DISCOGS_STYLES
        Min’yō::DISCOGS_STYLES
        Mizrahi::DISCOGS_STYLES
        Mouth Music::DISCOGS_STYLES
        Mugham::DISCOGS_STYLES
        Népzene::DISCOGS_STYLES
        Nordic::DISCOGS_STYLES
        Ottoman Classical::DISCOGS_STYLES
        Overtone Singing::DISCOGS_STYLES
        Pacific::DISCOGS_STYLES
        Pasodoble::DISCOGS_STYLES
        Persian Classical::DISCOGS_STYLES
        Philippine Classical::DISCOGS_STYLES
        Phleng Phuea Chiwit::DISCOGS_STYLES
        Piobaireachd::DISCOGS_STYLES
        Polka::DISCOGS_STYLES
        Progressive Bluegrass::DISCOGS_STYLES
        Raï::DISCOGS_STYLES
        Rebetiko::DISCOGS_STYLES
        Romani::DISCOGS_STYLES
        Rune Singing::DISCOGS_STYLES
        Salegy::DISCOGS_STYLES
        Sámi Music::DISCOGS_STYLES
        Sea Shanties::DISCOGS_STYLES
        Séga::DISCOGS_STYLES
        Sephardic::DISCOGS_STYLES
        Soukous::DISCOGS_STYLES
        Thai Classical::DISCOGS_STYLES
        Volksmusik::DISCOGS_STYLES
        Waiata::DISCOGS_STYLES
        Western Swing::DISCOGS_STYLES
        Yemenite Jewish::DISCOGS_STYLES
        Zamba::DISCOGS_STYLES
        Zemer Ivri::DISCOGS_STYLES
        Zouk::DISCOGS_STYLES
        Zydeco::DISCOGS_STYLES
    Funk/Soul::DISCOGS_RELEASE_GENRES
        Afrobeat::DISCOGS_STYLES
        Bayou Funk::DISCOGS_STYLES
        Boogie::DISCOGS_STYLES
        Contemporary R&B::DISCOGS_STYLES
        Disco::DISCOGS_STYLES
        Free Funk::DISCOGS_STYLES
        Funk::DISCOGS_STYLES
        Gogo::DISCOGS_STYLES
        Gospel::DISCOGS_STYLES
        Minneapolis Sound::DISCOGS_STYLES
        Neo Soul::DISCOGS_STYLES
        New Jack Swing::DISCOGS_STYLES
        P.Funk::DISCOGS_STYLES
        Psychedelic::DISCOGS_STYLES
        Rhythm & Blues::DISCOGS_STYLES
        Soul::DISCOGS_STYLES
        Swingbeat::DISCOGS_STYLES
        UK Street Soul::DISCOGS_STYLES
    Hip Hop::DISCOGS_RELEASE_GENRES
        Bass Music::DISCOGS_STYLES
        Beatbox::DISCOGS_STYLES
        Bongo Flava::DISCOGS_STYLES
        Boom Bap::DISCOGS_STYLES
        Bounce::DISCOGS_STYLES
        Britcore::DISCOGS_STYLES
        Cloud Rap::DISCOGS_STYLES
        Conscious::DISCOGS_STYLES
        Crunk::DISCOGS_STYLES
        Cut-up/DJ::DISCOGS_STYLES
        DJ Battle Tool::DISCOGS_STYLES
        Electro::DISCOGS_STYLES
        Favela Funk::DISCOGS_STYLES
        G-Funk::DISCOGS_STYLES
        Gangsta::DISCOGS_STYLES
        Go-Go::DISCOGS_STYLES
        Grime::DISCOGS_STYLES
        Hardcore Hip-Hop::DISCOGS_STYLES
        Hiplife::DISCOGS_STYLES
        Horrorcore::DISCOGS_STYLES
        Hyphy::DISCOGS_STYLES
        Instrumental::DISCOGS_STYLES
        Jazzy Hip-Hop::DISCOGS_STYLES
        Kwaito::DISCOGS_STYLES
        Miami Bass::DISCOGS_STYLES
        Motswako::DISCOGS_STYLES
        Pop Rap::DISCOGS_STYLES
        Ragga HipHop::DISCOGS_STYLES
        RnB/Swing::DISCOGS_STYLES
        Screw::DISCOGS_STYLES
        Spaza::DISCOGS_STYLES
        Thug Rap::DISCOGS_STYLES
        Trap::DISCOGS_STYLES
        Trip Hop::DISCOGS_STYLES
        Turntablism::DISCOGS_STYLES
    Jazz::DISCOGS_RELEASE_GENRES
        Afro-Cuban Jazz::DISCOGS_STYLES
        Afrobeat::DISCOGS_STYLES
        Avant-garde Jazz::DISCOGS_STYLES
        Big Band::DISCOGS_STYLES
        Bop::DISCOGS_STYLES
        Bossa Nova::DISCOGS_STYLES
        Cape Jazz::DISCOGS_STYLES
        Contemporary Jazz::DISCOGS_STYLES
        Cool Jazz::DISCOGS_STYLES
        Dixieland::DISCOGS_STYLES
        Easy Listening::DISCOGS_STYLES
        Free Improvisation::DISCOGS_STYLES
        Free Jazz::DISCOGS_STYLES
        Fusion::DISCOGS_STYLES
        Gypsy Jazz::DISCOGS_STYLES
        Hard Bop::DISCOGS_STYLES
        Jazz-Funk::DISCOGS_STYLES
        Jazz-Rock::DISCOGS_STYLES
        Latin Jazz::DISCOGS_STYLES
        Modal::DISCOGS_STYLES
        Post Bop::DISCOGS_STYLES
        Ragtime::DISCOGS_STYLES
        Smooth Jazz::DISCOGS_STYLES
        Soul-Jazz::DISCOGS_STYLES
        Space-Age::DISCOGS_STYLES
        Swing::DISCOGS_STYLES
    Latin::DISCOGS_RELEASE_GENRES
        Afro-Cuban::DISCOGS_STYLES
        Axé::DISCOGS_STYLES
        Bachata::DISCOGS_STYLES
        Baião::DISCOGS_STYLES
        Batucada::DISCOGS_STYLES
        Beguine::DISCOGS_STYLES
        Bolero::DISCOGS_STYLES
        Bomba::DISCOGS_STYLES
        Boogaloo::DISCOGS_STYLES
        Bossanova::DISCOGS_STYLES
        Candombe::DISCOGS_STYLES
        Carimbó::DISCOGS_STYLES
        Cha-Cha::DISCOGS_STYLES
        Champeta::DISCOGS_STYLES
        Charanga::DISCOGS_STYLES
        Choro::DISCOGS_STYLES
        Compas::DISCOGS_STYLES
        Conjunto::DISCOGS_STYLES
        Corrido::DISCOGS_STYLES
        Cuatro::DISCOGS_STYLES
        Cubano::DISCOGS_STYLES
        Cumbia::DISCOGS_STYLES
        Danzon::DISCOGS_STYLES
        Descarga::DISCOGS_STYLES
        Forró::DISCOGS_STYLES
        Gaita::DISCOGS_STYLES
        Guaguancó::DISCOGS_STYLES
        Guajira::DISCOGS_STYLES
        Guaracha::DISCOGS_STYLES
        Jibaro::DISCOGS_STYLES
        Joropo::DISCOGS_STYLES
        Lambada::DISCOGS_STYLES
        Mambo::DISCOGS_STYLES
        Marcha Carnavalesca::DISCOGS_STYLES
        Mariachi::DISCOGS_STYLES
        Marimba::DISCOGS_STYLES
        Merengue::DISCOGS_STYLES
        MPB::DISCOGS_STYLES
        Musette::DISCOGS_STYLES
        Música Criolla::DISCOGS_STYLES
        Norteño::DISCOGS_STYLES
        Nueva Cancion::DISCOGS_STYLES
        Nueva Trova::DISCOGS_STYLES
        Occitan::DISCOGS_STYLES
        Pachanga::DISCOGS_STYLES
        Plena::DISCOGS_STYLES
        Porro::DISCOGS_STYLES
        Quechua::DISCOGS_STYLES
        Ranchera::DISCOGS_STYLES
        Reggaeton::DISCOGS_STYLES
        Rumba::DISCOGS_STYLES
        Salsa::DISCOGS_STYLES
        Samba::DISCOGS_STYLES
        Samba-Canção::DISCOGS_STYLES
        Seresta::DISCOGS_STYLES
        Son::DISCOGS_STYLES
        Son Montuno::DISCOGS_STYLES
        Sonero::DISCOGS_STYLES
        Tango::DISCOGS_STYLES
        Tejano::DISCOGS_STYLES
        Timba::DISCOGS_STYLES
        Trova::DISCOGS_STYLES
        Vallenato::DISCOGS_STYLES
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 24, 2020, 04:13:40 PM
Code
    Non-Music::DISCOGS_RELEASE_GENRES
        Audiobook::DISCOGS_STYLES
        Comedy::DISCOGS_STYLES
        Dialogue::DISCOGS_STYLES
        Education::DISCOGS_STYLES
        Field Recording::DISCOGS_STYLES
        Health-Fitness::DISCOGS_STYLES
        Interview::DISCOGS_STYLES
        Monolog::DISCOGS_STYLES
        Movie Effects::DISCOGS_STYLES
        Poetry::DISCOGS_STYLES
        Political::DISCOGS_STYLES
        Promotional::DISCOGS_STYLES
        Public Broadcast::DISCOGS_STYLES
        Public Service Announcement::DISCOGS_STYLES
        Radioplay::DISCOGS_STYLES
        Religious::DISCOGS_STYLES
        Sermon::DISCOGS_STYLES
        Sound Art::DISCOGS_STYLES
        Sound Poetry::DISCOGS_STYLES
        Special Effects::DISCOGS_STYLES
        Speech::DISCOGS_STYLES
        Spoken Word::DISCOGS_STYLES
        Technical::DISCOGS_STYLES
        Therapy::DISCOGS_STYLES
    Pop::DISCOGS_RELEASE_GENRES
        Ballad::DISCOGS_STYLES
        Barbershop::DISCOGS_STYLES
        Bollywood::DISCOGS_STYLES
        Break-In::DISCOGS_STYLES
        Bubblegum::DISCOGS_STYLES
        Chanson::DISCOGS_STYLES
        Enka::DISCOGS_STYLES
        Ethno-pop::DISCOGS_STYLES
        Europop::DISCOGS_STYLES
        Indie Pop::DISCOGS_STYLES
        J-pop::DISCOGS_STYLES
        K-pop::DISCOGS_STYLES
        Karaoke::DISCOGS_STYLES
        Kayōkyoku::DISCOGS_STYLES
        Levenslied::DISCOGS_STYLES
        Light Music::DISCOGS_STYLES
        Music Hall::DISCOGS_STYLES
        Néo Kyma::DISCOGS_STYLES
        Novelty::DISCOGS_STYLES
        Parody::DISCOGS_STYLES
        Schlager::DISCOGS_STYLES
        Vocal::DISCOGS_STYLES
    Reggae::DISCOGS_RELEASE_GENRES
        Azonto::DISCOGS_STYLES
        Bubbling::DISCOGS_STYLES
        Calypso::DISCOGS_STYLES
        Dancehall::DISCOGS_STYLES
        Dub::DISCOGS_STYLES
        Dub Poetry::DISCOGS_STYLES
        Junkanoo::DISCOGS_STYLES
        Lovers Rock::DISCOGS_STYLES
        Mento::DISCOGS_STYLES
        Ragga::DISCOGS_STYLES
        Rapso::DISCOGS_STYLES
        Reggae::DISCOGS_STYLES
        Reggae Gospel::DISCOGS_STYLES
        Reggae-Pop::DISCOGS_STYLES
        Rocksteady::DISCOGS_STYLES
        Roots Reggae::DISCOGS_STYLES
        Ska::DISCOGS_STYLES
        Soca::DISCOGS_STYLES
        Steel Band::DISCOGS_STYLES
    Rock::DISCOGS_RELEASE_GENRES
        Acid Rock::DISCOGS_STYLES
        Acoustic::DISCOGS_STYLES
        Alternative Rock::DISCOGS_STYLES
        AOR::DISCOGS_STYLES
        Arena Rock::DISCOGS_STYLES
        Art Rock::DISCOGS_STYLES
        Atmospheric Black Metal::DISCOGS_STYLES
        Avantgarde::DISCOGS_STYLES
        Beat::DISCOGS_STYLES
        Black Metal::DISCOGS_STYLES
        Blues Rock::DISCOGS_STYLES
        Brit Pop::DISCOGS_STYLES
        Classic Rock::DISCOGS_STYLES
        Coldwave::DISCOGS_STYLES
        Country Rock::DISCOGS_STYLES
        Crust::DISCOGS_STYLES
        Death Metal::DISCOGS_STYLES
        Deathcore::DISCOGS_STYLES
        Deathrock::DISCOGS_STYLES
        Depressive Black Metal::DISCOGS_STYLES
        Doo Wop::DISCOGS_STYLES
        Doom Metal::DISCOGS_STYLES
        Dream Pop::DISCOGS_STYLES
        Emo::DISCOGS_STYLES
        Ethereal::DISCOGS_STYLES
        Experimental::DISCOGS_STYLES
        Folk Metal::DISCOGS_STYLES
        Folk Rock::DISCOGS_STYLES
        Funeral Doom Metal::DISCOGS_STYLES
        Funk Metal::DISCOGS_STYLES
        Garage Rock::DISCOGS_STYLES
        Glam::DISCOGS_STYLES
        Goregrind::DISCOGS_STYLES
        Goth Rock::DISCOGS_STYLES
        Gothic Metal::DISCOGS_STYLES
        Grindcore::DISCOGS_STYLES
        Grunge::DISCOGS_STYLES
        Hard Rock::DISCOGS_STYLES
        Hardcore::DISCOGS_STYLES
        Heavy Metal::DISCOGS_STYLES
        Horror Rock::DISCOGS_STYLES
        Indie Rock::DISCOGS_STYLES
        Industrial::DISCOGS_STYLES
        Krautrock::DISCOGS_STYLES
        Lo-Fi::DISCOGS_STYLES
        Lounge::DISCOGS_STYLES
        Math Rock::DISCOGS_STYLES
        Melodic Death Metal::DISCOGS_STYLES
        Melodic Hardcore::DISCOGS_STYLES
        Metalcore::DISCOGS_STYLES
        Mod::DISCOGS_STYLES
        NDW::DISCOGS_STYLES
        Neofolk::DISCOGS_STYLES
        New Wave::DISCOGS_STYLES
        No Wave::DISCOGS_STYLES
        Noise::DISCOGS_STYLES
        Noisecore::DISCOGS_STYLES
        Nu Metal::DISCOGS_STYLES
        Oi::DISCOGS_STYLES
        Parody::DISCOGS_STYLES
        Pop Punk::DISCOGS_STYLES
        Pop Rock::DISCOGS_STYLES
        Pornogrind::DISCOGS_STYLES
        Post Rock::DISCOGS_STYLES
        Post-Hardcore::DISCOGS_STYLES
        Post-Metal::DISCOGS_STYLES
        Post-Punk::DISCOGS_STYLES
        Power Metal::DISCOGS_STYLES
        Power Pop::DISCOGS_STYLES
        Power Violence::DISCOGS_STYLES
        Prog Rock::DISCOGS_STYLES
        Progressive Metal::DISCOGS_STYLES
        Psychedelic Rock::DISCOGS_STYLES
        Psychobilly::DISCOGS_STYLES
        Pub Rock::DISCOGS_STYLES
        Punk::DISCOGS_STYLES
        Rock & Roll::DISCOGS_STYLES
        Rock Opera::DISCOGS_STYLES
        Rockabilly::DISCOGS_STYLES
        Shoegaze::DISCOGS_STYLES
        Ska::DISCOGS_STYLES
        Skiffle::DISCOGS_STYLES
        Sludge Metal::DISCOGS_STYLES
        Soft Rock::DISCOGS_STYLES
        Southern Rock::DISCOGS_STYLES
        Space Rock::DISCOGS_STYLES
        Speed Metal::DISCOGS_STYLES
        Stoner Rock::DISCOGS_STYLES
        Surf::DISCOGS_STYLES
        Swamp Pop::DISCOGS_STYLES
        Symphonic Rock::DISCOGS_STYLES
        Technical Death Metal::DISCOGS_STYLES
        Thrash::DISCOGS_STYLES
        Twist::DISCOGS_STYLES
        Viking Metal::DISCOGS_STYLES
        Yé-Yé::DISCOGS_STYLES
    Stage & Screen::DISCOGS_RELEASE_GENRES
        Musical::DISCOGS_STYLES
        Score::DISCOGS_STYLES
        Soundtrack::DISCOGS_STYLES
        Theme::DISCOGS_STYLES
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 24, 2020, 07:53:52 PM
Hm, I just had a small epiphany why there seems to be some confusion in the discussion and communications now and then.

It seems the current development/discussion is mostly about browsing tag hierarchies.
I had (have) a system in mind that is helpful for tagging files:


In my imagination this would work something like this:

You have an album or a track that you want to populate with genre and possibly sub-genre and style.

1. You begin selecting a genre category. (that should be easy)
2. Then from the drop-down menu you must select one of the genres that is presented there. Only relevant genres to the selected genre category are displayed.
3. Save and exit, or go to the optional next step.
4. From the sub-genre menu, select one of the displayed (and already filtered) sub-genres of the genre selected in the step before.
5. Save and exit, or go to the optional next step.
4. From the Form/style menu, select one (or more) item(s). The contents of that menu will not depend on earlier selections and has the same items every time.
5. Save and exit.


Since many users will want to keep using the current implementation for genre, it would probably be best to have it optional to activate such an 'advanced sub-genre/style mode'.
At activating it you could then choose the mapping for sub-genre (most likely a custom tag) and 'style' (the 'keywords' tag would be a likely candidate, or else a custom tag)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 24, 2020, 08:44:58 PM
Hm, I just had a small epiphany why there seems to be some confusion in the discussion and communications now and then.

It seems the current development/discussion is mostly about browsing tag hierarchies.
I had (have) a system in mind that is helpful for tagging files:

This sounds like a good addition to the Additional Tagging Tools plugin, but too specific for it to be native to MB.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 24, 2020, 09:47:29 PM
Hm, I just had a small epiphany why there seems to be some confusion in the discussion and communications now and then.

It seems the current development/discussion is mostly about browsing tag hierarchies.
I had (have) a system in mind that is helpful for tagging files:

This sounds like a good addition to the Additional Tagging Tools plugin, but too specific for it to be native to MB.

I disagree.

Look at it this way:

Currently, when a user wants to apply a tag to a tag (somebody please suggest a better way to phrase this?), MusicBee will usually offer some pop-up suggestions for it.
Where do these suggestions come from?
Certainly not from any sort of logical system that somebody has put some thought behind.
They are coming from content that just 'happens' to be present in other files in your library. (at that moment)

MusicBee is a music player/manager.

Managing is not effective when there is no thought or some basic system behind it.

Most of MusicBee's features depend on your files having systematic, correct, and organised tags.
At the back-end MusicBee has that under control very well.
But at the front-end, improvements can be made for certain.

So to me a systematic and consistent way for users to tag their music falls well within the scope of MusicBee.
It shouldn't be brushed-off to a plugin.
 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 25, 2020, 07:06:02 AM
@hiccup, i know you are working on a taxonomy for genre-category/ genre/ sub-genre.
Would you be happy to share that (in XL or text format) so I can include it as the default?

Sure.
I have been doing a lot of work on it and made lots of changes.
Some decisions I made on the hierarchy may trigger some discussion with other invested members.

Depending on the feedback I could then perhaps made some adjustments to it, and weed out some possible plain mistakes.
After that I can share it as .txt, .xml or .xls.

I now see the implementation is about browsing genres, and not about applying genres.
This is not what I had in mind with all this, and my genre map is not designed for that.

The choices I made on genre categories are not what the average user will want to use as a navigation system.
The genres the map contains are so precisely curated, that they don't match very well what is out there in the wild.

It would be much better to use a list that is based on:

- the current MusicBee genre/genre grouping list
- Discogs
- MusicBrainz.

That is what the average user will have his music tagged by.

@alec.tron
Please don't use the excel list that I pm'ed you earlier.
Lists such as you are creating using information from Discogs etc. are much better suited for this purpose.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 25, 2020, 07:21:44 AM
I now see the implementation is about browsing genres, and not about applying genres.
This is not what I had in mind with all this, and my genre map is not designed for that.
The initial implementation is about browsing. As previously mentioned I will also look at using the same taxonomy for assisted input when editing tags. Why would you want a different taxonomy? I don't get the point you are making or what the difference would be
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 07:57:43 AM
Hi.

@hiccup
tbh, I don't get why your genre map would be suited for tagging, but not for browsing either.
The whole point of the TagHierarchy Panel, and to allow an extended genre hierarchy with user definable layers/branches, is to work with the metadata you have on your files (which is why I mentioned that the display of a given branch/tree in the TagHierarchy should be coupled to 'does this tag/tree exist' [in my library] - but, that might be a later feature to come, no rush/worries...!).


And another list I plonked together yesterday to support existing metadata, is a core construct for jameskennedymonash's mind map for Hornbostel & Sachs (1914) ( https://jameskennedymonash.wordpress.com/2012/05/06/mind-map-taxonomy-of-musical-instruments/ )  musical instrument taxonomy - in case this helps anyone else (lots missing, in terms of actual instruments, but the main structure is there):

Code
Musical Instruments (monash)
    Aerophones (Wind)
        Free Aerophones
            Beating Reed
                Single Reed
                    Organ Reed Pipes::Instruments
                Double Reed
                    Voice::Instruments
                    Voice Female::Instruments
                    Voice Kid::Instruments
                    Voice Male::Instruments
                    Choir::Instruments
            Free Reed
                Framed Reed
                    Foot Blown
                        Harmonium::Instruments
                        Reed Organ::Instruments
                    Hand Blown
                        Accordion::Instruments
                        Bayan::Instruments
                        Concertina::Instruments
                    Mouth Blown
                        Harmonica::Instruments
                        Khaem::Instruments
                        Sheng::Instruments
                        Sho::Instruments
                Unframed Reed
                    Mouth Blown and Plucked
                        Harp Jew's::Instruments
                    Mouth Blown
                        Leaf Instrument::Instruments
                    Wind Blown
                        Aeolian Harp::Instruments
                        Bull-Roarer::Instruments
        Pipe Aerophones
            Brass
                With Halves
                    Cornet::Instruments
                    Eurphonium::Instruments
                    Trumpet::Instruments
                    Tube::Instruments
                Without Halves
                    Bugle::Instruments
                    Conch Shell::Instruments
                    Didgeridoo::Instruments
                    Trombone::Instruments
            Reed Pipe
                Single Reeds
                    Clarinet::Instruments
                    Saxophone::Instruments
                Double Reeds
                    Oboe::Instruments
                    Bassoon::Instruments
            Edge
                Tree Flutes
                    Flute::Instruments
                    Jug::Instruments
                    Panpipes::Instruments
                    Piccolo::Instruments
                Whistle Flutes
                    Organ Flue Pipes::Instruments
                    Recorder::Instruments
                    Whistle::Instruments
    Electrophones
        Electric/Acoustic
            Electric Guitar::Instruments
            Bass Electric::Instruments
        Electronic
            Digital
                303::Instruments
                808::Instruments
                909::Instruments
                Moog::Instruments
                Synthesizer ARP::Instruments
            Electromagnetic
                Theremin::Instruments
                Ondes Martenot::Instruments
                Synthesizer::Instruments
                Electric Organ::Instruments
    Chordophones (Strings)
        Bowed
            Cello::Instruments
            Bass Double::Instruments
            Strings::Instruments
            Viola::Instruments
            Violin::Instruments
        Plucked
            Banjo::Instruments
            Guitar::Instruments
            Guitar Acoustic::Instruments
            Guitar Ukelele::Instruments
            Harp::Instruments
            Harpsichord::Instruments
        Struck
            Hammer Dulcimer::Instruments
            Piano::Instruments
    Percussion
        Percussion::Instruments
            Idiophones
                Pitched
                    Plucked
                        Music Box::Instruments
                        Kalimba::Instruments
                        Mbira::Instruments
                    Rubbed
                        Prayer Bowls::Instruments
                        Glass Harmonica::Instruments
                    Struck
                        Bell::Instruments
                        Celesta::Instruments
                        Glockenspiel::Instruments
                        Gong::Instruments
                        Rimba::Instruments
                        Triangle::Instruments
                        Xylophone::Instruments
                Unpitched
                    Struck
                        Castanets::Instruments
                        Slit Drums::Instruments
                    Shaken
                        Rattle::Instruments
                        Jungles::Instruments
            Membraphones
                Determinate Pitch
                    Struck
                        Timpani::Instruments
                        Roto Drums::Instruments
                Ineterminate Pitch
                    Blown
                        Kazoo::Instruments
                    Rubbed
                        Friction Drum::Instruments
                    Struck
                        Bass Drum::Instruments
                        Bongo::Instruments
                        Congas::Instruments
                        Snare Drum::Instruments


c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 25, 2020, 08:04:20 AM
I now see the implementation is about browsing genres, and not about applying genres.
This is not what I had in mind with all this, and my genre map is not designed for that.
Why would you want a different taxonomy? I don't get the point you are making or what the difference would be

I am not saying the taxonomy between browsing and tagging should be different.
I am saying that my genre map in it's current state is not suited to use for browsing in MusicBee.

There are a couple of reasons for that:
- For browsing the average user will not agree with some category choices I made for this map. E.g. many will want to have Pop and Rock separated. Some will want Electronic and Edm combined. That may need some reconsidering when having browsing in mind.
- The 'Ethnic' genre categories I invented will be disputed and not be familiar to the average user.
- A very large amount of the more refined subgenre/a.k.a. tags that my genre map contains will not be present in the average user's files. Sources such as Discogs and MusicBrainz just don't use them. (they are very slowly improving on that though, so maybe in the far future…)
- Many of the tags that they do use are not in my genre map. Such as 'arena rock', 'avantgarde' 'ballad', 'christmas music' 'experimental' 'industrial' and many, many more.
- The same goes for the current Musicbee genres and categories.
Musicbee uses categories such as 'easy-listening' and 'regional and national'.
And genres as 'folk' 'indie' 'rap'.
Many users may be accustomed to using those, but they are also not in my map.

I am not saying there can't be a map and a hierarchy that assimilates/adapts as well as possible and will work for most users.
Such a map could indeed be used both for browsing and for tagging.

It's just that my map in it's current state was designed exclusively with the latter purpose in mind.
It's very strict with it's contents, and the categories were specifically chosen to make sense for tagging.

I am pretty sure it would frustrate many users if this map was implemented for browsing.
 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 25, 2020, 08:20:03 AM
And another list I plonked together yesterday to support existing metadata, is a core construct for jameskennedymonash's mind map for Hornbostel & Sachs (1914) ( https://jameskennedymonash.wordpress.com/2012/05/06/mind-map-taxonomy-of-musical-instruments/ )  musical instrument taxonomy - in case this helps anyone else (lots missing, in terms of actual instruments, but the main structure is there)

You may also want to check MusicBrainz' instrument list.
The instruments named there are what you will encounter when you tag your music using MusicBrainz' Picard.

https://musicbrainz.org/instruments

Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 09:01:33 AM
Great suggestion.

Not for me though... as I do not tag with MusicBrainz.
Also, there's no taxonomy definition as such either yet, just a flat list... So that is a lot of work to do and I'll leave that for someone who actually uses this.
That's also the beauty with this tag Hierarchy view, everyone can contribute to the mappings.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 25, 2020, 09:35:03 AM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- fixes a few bugs
- now filters out nodes that have no matching files
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 25, 2020, 09:48:47 AM
It's just that my map in it's current state was designed exclusively with the latter purpose in mind.
It's very strict with it's contents, and the categories were specifically chosen to make sense for tagging.

I am pretty sure it would frustrate many users if this map was implemented for browsing.

I will see if I can create a genre mapping list that only contains genres/styles/descriptions that are currently used by Discogs, MusicBrainz and MusicBee, and put them in categories that people suffering less from genre-ocd are used to and happy to see.

That should probably do fine for testing and common usage.

If it results in something usable I will also create a matching genre grouping list that can be used for Tags (2) > Group genres.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: phred on July 25, 2020, 12:04:06 PM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- fixes a few bugs
- now filters out nodes that have no matching files

I'm a little late to the genre party. I've applied today's patch and added the Tag Hierarchy Explorer panel. I'm getting a file not found error for TagHierarchy.txt. Where can I find this file. I know to place it in AppData. I just need to get my hands on the file.

Thanks.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 01:36:37 PM
I just need to get my hands on the file.
Heya,
there's 4 flavours here:
https://getmusicbee.com/forum/index.php?topic=32352.0
https://github.com/alectron/MusicBee_TagHierarchies

3 for Genres, 1 for Instruments.
There is no default yet.
But juts copy the contents from:
MusicBee_2Layer.txt
or
MusicBee_3Layer.txt
and copy it into a file named TagHierarchy.txt in the location you mentioned (or, just go, in MB -> Tag Hierarchy Explorer Panel (Menu) -> "Edit Tag Relationships" and paste the contents of any/either of the above into the MB window that pops up, and it auto generates that file)
And you'll have MusicBee's olden 2 Layer deep Category/Genre representation, and a first stab at a 3 Layer approach (grouping some of the larger genres, with what I would consider sub genres (House, techno, Metal, etc) - that's probably has a few errors, and much room for opinion, subjective tinkering...) and you should be good to go and adjust it to your tags

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: phred on July 25, 2020, 02:08:51 PM
Thanks.

When I open the explorer and click 'Edit Tag Relationships" and paste either 2Layer or 3Layer into the window it's throwing
"Error parsing test: Indentation must be a multiple of 4 spaces. @node: <head>"

Any suggestions?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 02:15:49 PM
Can you copy the first 5 to 10 lines of what you pasted and post into a "code" snippet (formatting option in this forum up top in the menu bar, marked with "</>") here on the forum ? Then I could take a stab at trouble shooting what might be wrong.
c.

ps. Info - white-space & line indents are text format conventions for programming concepts/languages, and these need to be followed to a T for the formatting to be picked up correctly here, by the panel...
in case you want to trouble shoot yourself:
This is what it needs to look like, starting with no whitespace on the first line, then an indent per hierarchy level (i.e. 4 spaces "    Afro-Pop", followed by 2 x 4 leading spaces for the next - "        Afrobeat::Genre" and so on an forth), like so:
Code
Genres (MusicBee 2 Layer)
    Afro-Pop
        Afrobeat::Genre
        Apala::Genre
        Benga::Genre
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: phred on July 25, 2020, 02:41:16 PM
Here you are. This is straight from MusicBee_2Layer.txt including all the blank lines. I also wonder why it's calling out to github.
Code




<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
  <link rel="dns-prefetch" href="https://github.githubassets.com">
  <link rel="dns-prefetch" href="https://avatars0.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars1.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars2.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars3.githubusercontent.com">
  <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com">
  <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">



  <link crossorigin="anonymous" media="all" integrity="sha512-YR0i2ZAJ3fFf7L2CvMny+FWH76iHZNNIcD1YX57o4cdBHev8ffMXOfzy5F/lpBJpLttwPahk3zY/8XXaRH12ew==" rel="stylesheet" href="https://github.githubassets.com/assets/frameworks-611d22d99009ddf15fecbd82bcc9f2f8.css" />
  <link crossorigin="anonymous" media="all" integrity="sha512-37pLQI8klDWPjWVVWFB9ITJLwVTTkp3Rt4bVf+yixrViURK9OoGHEJDbTLxBv/rTJhsLm8pb00H2H5AG3hUJfg==" rel="stylesheet" href="https://github.githubassets.com/assets/site-dfba4b408f2494358f8d655558507d21.css" />
    <link crossorigin="anonymous" media="all" integrity="sha512-rRjA9My/PBBcaPVlqM+Itl3dsS0snuqXO9XFrSmJNNQz6okQW4a4+jBjpKxZQ4sTiaFtDS1hthUIhMDQSbbTpw==" rel="stylesheet" href="https://github.githubassets.com/assets/github-ad18c0f4ccbf3c105c68f565a8cf88b6.css" />
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 02:45:05 PM
ehm, ok. That's an html document.
What you need is the raw txt file. It needs to look as the above 4 line example (but a few 100 lines long...)
You can grab the MusicBee_2Layer.txt content directly from here - without the danger of grabbing html formatting:

https://raw.githubusercontent.com/alectron/MusicBee_TagHierarchies/master/Genres/MusicBee_2Layer.txt

Just highlight all text in the above, and copy&paste into the panel.

github is for hosting code, and is a very complex system...  so can be a bit overwhelming... but the above direct link to raw text is what you need, and my explanation in the previous post should give you an insight as to what it needs to look like I hope.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: phred on July 25, 2020, 02:54:50 PM
I was just about to write that what I'm downloading doesn't look anything like what you're posts show. Apparently since there's no "download" link for any other the text files on GitHub, I right-clicked and did a Save As.

I'm quite familiar with MB and the workings of the Internet, but let me suggest that you reference a straight text file download for the various iterations. I'm sure some of the more novice users will run into the same issue I did. Don't direct users to GitHub for the download.

Now that I've copied and pasted the text file all is well. Is there a direct link for the 3Layer?

Thanks for your help.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 03:00:54 PM
No worries.

MusicBee_3Layer.txt as
Github file view:
https://github.com/alectron/MusicBee_TagHierarchies/blob/master/Genres/MusicBee_3Layer.txt
Github raw text view:
https://raw.githubusercontent.com/alectron/MusicBee_TagHierarchies/master/Genres/MusicBee_3Layer.txt


I'm quite familiar with MB and the workings of the Internet, but let me suggest that you reference a straight text file download for the various iterations. I'm sure some of the more novice users will run into the same issue I did. Don't direct users to GitHub for the download.

I've asked that question :D
i.e. here:
Also, @psychoadept and others active in the MB Wiki - would there be a space that would lend itself to storing and maintaining various mappings/txt files for others to use ?
I pasted a fair few in the above thread already, but forum is a tad limited for that, and would be nice if there was an agreed upon resource to store, collaborate on, and version these Tag Hierarchy Explorer Panel txt files.

Github is what works for me best atm for this, as the forum does not allow posting texts with 20k + characters, and github also allows versioning & collaboration...
But yes, user-friendly it is not.

Maybe Steven could take one of the files (whichever he likes best, I just try to help pre-formatting these for people, and trying to make it easy/ier for the average user), and add one of them as a default to the MusicBee patched packages, so there's a TagHierarchy.txt file people can start with.

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 25, 2020, 03:26:57 PM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- fixes a few bugs
- now filters out nodes that have no matching files

Perfect! I can confirm that this fixes the interactivity issue for me. The new filtering makes it much more usable as well.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: phred on July 25, 2020, 03:59:35 PM
add one of them as a default to the MusicBee patched packages, so there's a TagHierarchy.txt file people can start with.
YES! This would've saved me a lot of time. And I'm sure others would appreciate it. Perhaps Steven isn't quite comfortable with it yet to be included in a distribution/patch. Right now it seems like it's only for the "early-adopters."
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 25, 2020, 04:51:22 PM
I just need to get my hands on the file.
Heya,
there's 4 flavours here:
https://getmusicbee.com/forum/index.php?topic=32352.0
https://github.com/alectron/MusicBee_TagHierarchies

This is an excellent list. Would you be open to pull requests?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 06:44:59 PM
Hai,
the idea to chuck it on github was to be able to cooperate  :D
So thanks for the request!

But at this point I would refrain from adding new genres to the 2 'MusicBee' sets, as these (i.e. MusicBee_2Layer.txtm & MusicBee_3Layer.txt ) should be based on the genres that always shipped with MB & were defined within MB 'Configuration.xml'.
So I will probably deny the merge into those atm, but I'll take your alphabetical order fixes you've added, and up a version with those (might take me a bit, as am a noob in github land as well... so this endeavor is meant for me to learn the official github ways some more as well. So next is - learning merge requests, and how to cherry pick changes, which I will try today or tomorrow on these - so don't remove the request yet please!...), but dobn't really want to add any new genres at this point as then it would become a personal/subjective variant of the original MusicBee category/genre definitions...

But, your edit would be great to have/keep as well!!
But imo this then should sit under a new name as your variant of those maybe... (?)
So maybe add them as
MusicBee_2Layer (zkhcohen version).txt
MusicBee_3Layer (zkhcohen version).txt
or somesuch ?

Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 25, 2020, 07:16:23 PM
But at this point I would refrain from adding new genres to the 2 'MusicBee' sets, as these (i.e. MusicBee_2Layer.txtm & MusicBee_3Layer.txt ) should be based on the genres that always shipped with MB & were defined within MB 'Configuration.xml'.

Thanks for the clarification!

I've created a new PR with this in mind here:

https://github.com/alectron/MusicBee_TagHierarchies/pull/2

Quote
Here's a suggested fix for the issue discussed here: #1 (comment)

While we could still have individualized versions of these files, this "community" version gives us the option to publicly contribute to a common hierarchy. It would be nice if people could provide a source for the reasoning behind their changes -- for example, I added Nu-disco and Post-disco as subgenres of Disco:

https://en.wikipedia.org/wiki/List_of_electronic_music_genres


...although I reverted my previous re-categorization of Disco as derivative of Electronic Music, instead of R&B.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 25, 2020, 08:52:27 PM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- fixes a few bugs
- now filters out nodes that have no matching files

Perfect! I can confirm that this fixes the interactivity issue for me. The new filtering makes it much more usable as well.

Thanks for the filtering!!
One little request - if not too late and potentially easily do-able... could this 'filters out nodes that have no matching files' functionality become a setting for the panel one can switch on/off...?
I have a hunch being able to not filter might be helpful later on, when troubleshooting etc.

Cheers.
c.

Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 26, 2020, 09:11:05 AM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- in the tag relationship editor, it now displays all the tags from files that are not in the hierarchy
- the panel drop down menu now includes a "Files with Tags Missing in the Hierarchy" report. The report runs off the displayed files only ie. select the "All" node if you want to see the results for all files. In the header bar, the report shows all the tag values not in the hierarchy and the main panel lists all the "problem" files
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 26, 2020, 11:09:31 AM
I have created a new genre hierarchy list.

This one contains all the genres that are currently used by Discogs and MusicBrainz.
It is using categories I think will be practical for the average user.

I also created a genre grouping list that matches these genres and categories.
(which can be added via Tags (2) > group genres)

download Genre hierarchy and grouping list (https://bit.ly/Genres_Subgenres)
 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 26, 2020, 07:29:33 PM
Is there a sensible limit to how large the TagHierarchy list should be?

I am asking because I notice a lot of genres are not matched with my list because of varying spellings:

'Pop music' vs. 'Pop'
Hip-Hop' vs. 'Hip Hop'
'Psy Trance' vs. 'Psytrance'
 
etc. etc.

It would not be terribly difficult for me to add all such variations to the hierarchy list, but it would grow enormously.

Thoughts?

P.S.
The same issue/question applies to the 'group genres' list.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on July 26, 2020, 07:56:46 PM
Haha, welcome to the world of authority control. I would definitely pick one that seems most common or most correct and let people standardize their tags to match (or add their own spellings to the hierarchy)

I haven't looked closely, but I wonder if there's something useful here: https://www.loc.gov/catdir/cpso/genremusic.html
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 26, 2020, 08:01:08 PM
As I was curious as well,  I chucked all mappings I had into one file, and am at ~3600+ lines & ~100k characters... and it still loads & behaves fine...
Not sure that would classify as 'sensible', but it runs/works.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 26, 2020, 08:04:17 PM
Haha, welcome to the world of authority control. I would definitely pick one that seems most common or most correct and let people standardize their tags to match (or add their own spellings to the hierarchy)

I haven't looked closely, but I wonder if there's something useful here: https://www.loc.gov/catdir/cpso/genremusic.html

I'll check it out, but the first thing I notice is a notification: "Updates have been posted to: Candidate Music Genre/Form Terms for Discussion [PDF, 1.5 MB]"

It's dated March 2013…
I'm pretty sure they won't have Simpsoncore in their list.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 26, 2020, 08:09:46 PM
As I was curious as well,  I chucked all mappings I had into one file, and am at ~3600+ lines & ~100k characters... and it still loads & behaves fine...
Not sure that would classify as 'sensible', but it runs/works.
c.

Thanks alec.tron, I will consider to also add such common variations/errors of genre names then.
Not a fun job, and not something I am looking forward to, but having a system now that only partly works because of this is also spoiling the fun.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 26, 2020, 08:22:31 PM
Haha, welcome to the world of authority control. I would definitely pick one that seems most common or most correct and let people standardize their tags to match (or add their own spellings to the hierarchy)

That would be my idea too on a list intended for savvy users that have a serious interest and time to spare on this.

But the hierarchy and genre grouping lists I provided today were intended to be a candidate to possibly be included with MusicBee.
And if that would happen it would probably be nicer if it 'just works' in the majority of cases.

And to be clear, I am not talking about actual misspellings.
Even the big players (Spotify, Discogs, RYM, Wikipedia, MusicBrainz) are often not agreeing and using different spelling for genre names.

I am certainly not going to accommodate for all of them, but it would probably be good if at least the most common tagging sources that MusicBee and Picard use are matched in this regard.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 27, 2020, 09:10:53 AM
I have created a new genre hierarchy list.

This one contains all the genres that are currently used by Discogs and MusicBrainz.
It is using categories I think will be practical for the average user.

I also created a genre grouping list that matches these genres and categories.
(which can be added via Tags (2) > group genres)

download Genre hierarchy and grouping list (https://bit.ly/Genres_Subgenres)
Thanks. I have updated the default genre category mappings using this file.
For the Tag Hierarchy file I see there is no Sub-Genre in your file which I think is fine as almost no one will already have a sub-genre tag
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 27, 2020, 12:44:06 PM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- right click menu now implemented
- option to show file counts
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 27, 2020, 03:13:08 PM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- right click menu now implemented
- option to show file counts

When switching tabs to the Music Explorer in this version, I receive the following:

Code
MusicBee v3.4.7513.38999P  (Win10.0), 27 Jul 2020 7:12:

System.NullReferenceException: Object reference not set to an instance of an object.
   at #=zA4nZ_eN$R5hFpZcRUZmLNNnCXbgY.#=zg7WJjjrFadmv.#=zTiy8ZadsRtcv(#=z6QTrtT27OWeBCOxKY1TsojI=[] #=zqZkFQ5o=)
   at #=zA4nZ_eN$R5hFpZcRUZmLNNnCXbgY.#=z4LUnslxpDePm4tERWg==.#=zvtHcZMe48vbM(Boolean #=zjur8ldlNjNOd)
   at #=zA4nZ_eN$R5hFpZcRUZmLNNnCXbgY.#=z4LUnslxpDePm4tERWg==.#=q2qGxNQJ6c6pKI$7Ud8n2Gth3o7CT9AKNYzy9JQ9pKBk=._Lambda$__0()
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 27, 2020, 04:36:13 PM
Same here, switching to a tab displaying by Album with Cover, I get something similar/same-y, as well as on Music Explorer. :

Code
MusicBee v3.4.7513.38999P  (Win10.0), 27 Jul 2020 17:35:

System.NullReferenceException: Object reference not set to an instance of an object.
   at #=zA4nZ_eN$R5hFpZcRUZmLNNnCXbgY.#=zg7WJjjrFadmv.#=zTiy8ZadsRtcv(#=z6QTrtT27OWeBCOxKY1TsojI=[] #=zqZkFQ5o=)
   at #=zA4nZ_eN$R5hFpZcRUZmLNNnCXbgY.#=z4LUnslxpDePm4tERWg==.#=zvtHcZMe48vbM(Boolean #=zjur8ldlNjNOd)
   at #=zA4nZ_eN$R5hFpZcRUZmLNNnCXbgY.#=z4LUnslxpDePm4tERWg==.#=q2qGxNQJ6c6pKI$7Ud8n2Gth3o7CT9AKNYzy9JQ9pKBk=._Lambda$__0()

Tab with Album with Covers only produced the error once (for me). Music Explorer tabs do multiple times / continuously.
Tab with Tracks view does not produce the error.

Churs.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 27, 2020, 10:56:43 PM
it should be fixed now
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 28, 2020, 01:22:50 AM
it should be fixed now

Confirmed. Thanks.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 28, 2020, 09:04:18 PM
For the Tag Hierarchy file I see there is no Sub-Genre in your file which I think is fine as almost no one will already have a sub-genre tag

That is because this is a version I created solely with having general usage in mind.
Ignoring, and being comfortably numb about most of my personal impulses and more ocd-inclined preferences, and only trying to accommodate what would be useful for 'the average MusicBee user'.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 28, 2020, 09:18:14 PM
Both the genre hierarchy and the genre grouping files are updated:

- For genres that were spelled differently between Discogs, MusicBrainz and RYM, all variations are now added.
   So e.g. 'Psytrance', 'Psy-trance', 'Psychedelic trance', or 'Hip hop' 'Hip hop music' 'Hip-Hop' will all be recognized, categorized and displayed.

- A couple of credible genres that could be retrieved when using Wikidata as a source were added.

- 'Style/Format' was added as a top hierarchy ('Other' has been removed)
    (this Style/Format category will contain descriptors that are too vague to be applicable to a single music genre category)

- Some small mistakes were corrected.

For statistically interested users:

This mapping list contains 1153 genres (including variations on their spelling)
All of them are present in the databases that many users will be using for auto genre-tagging at this moment in time.
(I am curious and awaiting what will happen when RYM becomes Sonemic though, and if they then will make API's available. I'll probably have to get busy again then.)

F.w.i.w.; the Genre grouping list that MusicBee has been using for years now contains 466 genres, many of which don't even match with what will be retrieved from online sources.

Even though this all has been triggered because of current developments with MusicBee 3.4 beta, the provided Genre grouping list can also be applied to regular non-beta versions of MusicBee.
(just copy the contents of the text file, and paste it into MusicBee's Genre Categorisation Editor, Tags (2) > group genres)



This version is the final one as far as I am concerned.
(unless factual mistakes come to the surface, or if users have good suggestions that would improve it for general use)

download Genre hierarchy and grouping list (https://bit.ly/Genres_Subgenres)

An impression on the structure:

(https://i.imgur.com/5zXlQ9M.png)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 29, 2020, 03:12:41 PM


This version is the final one as far as I am concerned.
(unless factual mistakes come to the surface, or if users have good suggestions that would improve it for general use)



This is a really comprehensive list; unfortunately since it only has two levels, I would argue that it's not as practical (even for general use) as a structure such as this one:

(https://i.imgur.com/UMuB2v2.png)

Obviously it would require quite a bit of effort to further classify the genres you've included into sub-genres. Note that in Alec's implementation of sub-genre structuring, he opted not to use "subgenre" tags, which I think is the most appropriate solution for making it accessible to normal users.

(https://i.imgur.com/ltmOxbM.png)

I might try to merge the two in the Community Version, here: https://github.com/alectron/MusicBee_TagHierarchies/tree/master/Genres

---

EDIT:


I created a combined, 3-layer version here:

https://github.com/alectron/MusicBee_TagHierarchies/blob/master/Genres/Community%20Versions/(Combined%20with%20Hiccup)%20MusicBee_3Layer.txt
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 29, 2020, 09:12:11 PM
This is a really comprehensive list; unfortunately since it only has two levels, I would argue that it's not as practical (even for general use) as a structure such as this one: …

Obviously it would require quite a bit of effort to further classify the genres you've included into sub-genres. Note that in Alec's implementation of sub-genre structuring, he opted not to use "subgenre" tags, which I think is the most appropriate solution for making it accessible to normal users.

I might try to merge the two in the Community Version

The problem with defining an extra subgenre level is that only deciding on a main- and child- category already is a subjective matter. Deciding on a third level becomes even more subjective.

When doing a web-search on what music genre is a subgenre of what other genre, you'll find that opinions usually differ a lot and are seldom unambigous.
And in many cases when somebody calls something a subgenre, in reality it will be more of an amalgam of more than one genre.

And e.g. what would be appropriate subgenres for a 'World' category'?
Spain?, Spanish?, English?, Gaelic?, Celtic?, Baltic?, Swedish?, Nordic?
(don't even try; been there, tried it, failed)

Also, the average user will probably look at the name of a genre.
Jazz-rock? Must be Rock.
Nu jazz, must be Jazz.
Dream house? Must be House.
Swamp-pop? Must be Pop.
(spoiler: guess again)

For some less genre-conscious users this will already pose some confusion in a two-level hierarchy, but adding a third level is prone to making things even more difficult or confusing.

The genre hierarchy list I specifically designed for 'general use' has the intention to be as objective, unbiased, and easy-to-use as possible.
(my personal version is a very different story and does contain more levels, but is also pretty useless to anybody else)
I feel this version is already an enormous improvement on what have been MusicBee's default genre- and genre grouping lists for many years.
(which received no complaints at all that I am aware of)

Your observation and suggestions are valid though, and it's food for thought to perhaps improve my list.
I'll see if I can find some area's where I can safely add another level that will improve navigation for the average user without threading into too subjective territories or triggering discussion or confusion.

But the main objectives for this particular list will remain:
- containing all, and only currently considered 'valid' genres that MusicBee users are likely to encounter when auto-tagging genres.
- trying to avoid too much bias.
- having an efficient and comfortable navigation structure.

Anything deviating too much from that in my opinion is better suited to be offered as an optional feature/download.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 30, 2020, 01:17:05 AM


The problem with defining an extra subgenre level is that only deciding on a main- and child- category already is a subjective matter. Deciding on a third level becomes even more subjective.



Yep. I agree with everything you said here. I think we'll all just have to settle on our favorite.  :)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 30, 2020, 10:50:04 AM
- option to show file counts
For parent nodes the count is the simple sum of all the counts from the leaf nodes. However that count wont necessarily match the files displayed on the main panel when the node is selected as there can be double counting eg. a "Blues" node has "Electric Blues" and "Memphis Blues" as child nodes. Say 11 files are tagged with both those genres means the same 11 files will display under "Electric Blues" and also under "Memphis Blues", the "Blues" parent node will say 22 files when infact only 11 display in the main panel.
I cant think of an efficient way to get the accurate count for the parent node, so what i will probably do is not show the count on the parent nodes but open to comments

edit:
never mind - i have an idea how to do this now

https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 30, 2020, 02:31:23 PM
- option to show file counts
For parent nodes the count is the simple sum of all the counts from the leaf nodes. However that count wont necessarily match the files displayed on the main panel when the node is selected as there can be double counting eg. a "Blues" node has "Electric Blues" and "Memphis Blues" as child nodes. Say 11 files are tagged with both those genres means the same 11 files will display under "Electric Blues" and also under "Memphis Blues", the "Blues" parent node will say 22 files when infact only 11 display in the main panel.
I cant think of an efficient way to get the accurate count for the parent node, so what i will probably do is not show the count on the parent nodes but open to comments

edit:
never mind - i have an idea how to do this now
https://getmusicbee.com/patches/MusicBee34_Patched.zip

Unfortunately the hierarchy only shows the top node in this version:

(https://i.imgur.com/KT7yRQv.png)

I'm also not quite understanding why the "No Tag Hierarchy For" feature shows that one doesn't exist for Witch House, when it clearly does:

(https://i.imgur.com/VOJiAdU.png)

Capitalization?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on July 30, 2020, 03:59:50 PM
Capitalization?
I often found the case for this  to be an extra white space at the end.
i.e.
"Witch house::Genre "
instead of
"Witch house::Genre"

edit:
never mind - i have an idea how to do this now
Noice!

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on July 30, 2020, 10:54:23 PM
Unfortunately the hierarchy only shows the top node in this version:
Can you send me a link to your hierarchy file.
Also check the error log

edit:
try this version:
https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on July 31, 2020, 12:54:26 PM
I updated the hierarchy and grouping files.

The top hierarchy is now exactly identical to the Genre grouping categories:

(https://i.imgur.com/sWkatOf.png)


For some of these categories there is an extra level to split and refine main categories such as Blues/Country/Folk, EDM/Electronic, etc.:

(https://i.imgur.com/38HSXcw.png)


For some genres where it was both useful and possible to do (without it becoming too subjective), an extra genre level was created.
These genres are: Hardcore, House, Techno, Trance, Ambient, IDM, Rock, Heavy metal, Punk.
Any genre that doesn't fit well enough in one these categories goes into 'other'.

(https://i.imgur.com/q8wtzfq.png)


download Genre hierarchy and grouping list (https://bit.ly/Genres_Subgenres)

Testers are invited…

I do have a slight itch some mistakes may have been introduced, resulting from the endless juggling with formulas, sheets, and copying and pasting in Excel to create these files.
 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 31, 2020, 03:19:52 PM
edit:
try this version:
https://getmusicbee.com/patches/MusicBee34_Patched.zip


Whatever the issue was, it was fixed by this update!

Thanks.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on July 31, 2020, 03:33:23 PM

Testers are invited…

I do have a slight itch some mistakes may have been introduced, resulting from the endless juggling with formulas, sheets, and copying and pasting in Excel to create these files.
 

Oooh, this one might be the most controversial yet, but it's also my favorite.

I'm going to play around with it.

---

Updated my version with heavy modifications based on Hiccup's new 3-layer. Now ~1300 unique genres:

https://github.com/alectron/MusicBee_TagHierarchies/blob/master/Genres/Community%20Versions/(Combined%20with%20Hiccup)%20MusicBee_3Layer.txt
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 01, 2020, 10:09:28 AM
I'm also not quite understanding why the "No Tag Hierarchy For" feature shows that one doesn't exist for Witch House, when it clearly does:
did you ever figure out why it was showing as missing?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 01, 2020, 11:11:16 AM
Oooh, this one might be the most controversial yet…

You are probably right.
I updated the download to a more objective and possibly less controversial one.

@Steven
If you are going to include a genre hierarchy based on my work, please use the version that is now in the download link.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 01, 2020, 11:37:05 AM
@Steven
If you are going to include a genre hierarchy based on my work, please use the version that is now in the download link.
has it changed in the last few hours?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 01, 2020, 11:59:34 AM
has it changed in the last few hours?
Less than an hour
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 01, 2020, 12:26:57 PM
Is it intentional you got rid of Blues, Country, Folk etc sub-groupings under Blues · Country · Folk ?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 01, 2020, 12:45:06 PM
Is it intentional you got rid of Blues, Country, Folk etc sub-groupings under Blues · Country · Folk ?
Yes.
Because there could be discussion about Country, Folk, Americana not having such clear and distinct boundaries between them.
The same goes for House and Techno, R&B and Soul, Rock, Punk and Metal, etc.

So for this (more plain) vanilla version I think it is better to play safe and avoid bias and possible discussions on the matter.

I still have my personal version that does refine more.
And not only for Blues/Country/Folk, but also for Classical, Jazz, Reggae, etc.
It also contains genres that are currently not present at Discogs and MusicBrainz (and so won't be retrieved by MusicBee either), but I do consider a useful addition to a comprehensive genre map.

But that 'enhanced' version will probably be better suited to be an optional download that I can design, maintain and update without the need to consider or imagine what the the average MusicBee user would like or expect.
And I can take the blame and the credit for that one too.
 
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on August 01, 2020, 02:59:57 PM
I'm also not quite understanding why the "No Tag Hierarchy For" feature shows that one doesn't exist for Witch House, when it clearly does:
did you ever figure out why it was showing as missing?

No, I didn't. The interesting part is that the tagged songs still appear under the supposedly-missing genre-node, so it's a problem with the validation feature itself.

Unless it has to do with encoding or line-endings or something, I'm stumped (without seeing how you've programmed that specific query). Capitalization has no effect and there are no extra/special characters.

You can try out my hierarchy here:

https://raw.githubusercontent.com/alectron/MusicBee_TagHierarchies/master/Genres/Community%20Versions/(Combined%20with%20Hiccup)%20MusicBee_3Layer.txt

Here's a list of all the "missing" tags (some of which definitely are):

Code
Genre=00S, 2014, Abstract Hip Hop, Abstract Hip-Hop, Academy Award Winner, Adam Levine, Adult Alternative Pop, Adult Alternative Pop/Rock, Adult Alternative Rock, Adult Standards, African Traditional, Album Rock, Alt Rock, Alternative & Punk, Alternative 90Er, Alternative And Punk, Alternative Pop/Rock, Alternative/Indie Rock, Alternative/Rock/Folk/Metal, Ambient Breakbeat, Ambient Dub Techno, Ambient Pop, American, American Shoegaze, Américain, Australien, Beatgen, Billboard Hot 100, Binaural, Braindance, Britannique, British, British Folk, British Soundtrack, California Dreamin, Cast Recordings, Catchy As Hell, Chill Out, Chillhop, Christmas Classics, Cinematic, Classic, Classic Motown, Classic Pop And Rock, Classical/Piano, Club/Dance, Contemporary Country, Corsican Polyphony, Country Pop, Dance And Electronica, Dance Dub, Dance Instrumental, Dance-Pop, Death By Pneumonia, Down-Tempo, Downbeat, Downtempo, Lounge & Ambient, Downtempo/Trip-Hop/Ambient Chill/Beats, Drum And Bass, DubstepBass Music, Dutch Experimental Electronic, Dvdv, E-Gitarre, Early Pop, Electra, Electronic Dance, Electronic/House/Dance/Hardstyle/Jumpstyle, Electronic/House/Pop/Jazz, Electronica Dance, ElectronicBass Music, ElectronicDowntempo/Trip-Hop/Ambient Chill/Beats, Epicore, Escape Room, Experimental Hip Hop, Funk / Soul, Future Funk, Game, Game Music, General Downtempo, General Film Music, General Hip-Hop/Rap, General Indie Rock, Gesang, Glitchcore, Grave Wave, Harlem Renaissance, Hip Hop Rap, Hip-Hop Idm, Hip-Hop/R&B, Hip-Hop/Rap, Holiday, Hot Ac, Iceland, Indie Dream Pop, Indie Garage Rock, Indie Jazz, Indie Surf, Instrumental Hip Hop, Israel, Jazz/Big Band, Jungle Drum N Bass, Ladino, Long Title, Metropopolis, Microtonal, Modern Rap/Hip-Hop, Movie/TV Soundtrack, Old School Rap, Oldies/R&B/Soul, Original Film/TV Music, Other Rap Hip-Hop, Part Ii, Podcast, Pop / Rap, Pop And Chart, Pop/Others, Post-Modern Electronic Pop, Post-Teen Pop, Punjabi, Rap/Hip Hop, Rap/Hip-Hop, Rock And Indie, Scorecore, Sephardi, Shimmer Pop, Shimmer Psych, Synthwave / Electro, Traditional, Uk Contemporary R&B, Vapor Trap, Video Game Music, Video Game Soundtrack, Wantlist, West African, Western Hip-Hop/Rap, Western Pop, Wonky, Year End Chart
Genres=00S, 2014, Abstract, Abstract Hip Hop, Abstract Hip-Hop, Academy Award Winner, Acid, Acid House, Acid Jazz, Acoustic, Acoustic Rock, Adam Levine, Adult Alternative Pop, Adult Alternative Pop/Rock, Adult Alternative Rock, Adult Contemporary, Adult Standards, African Traditional, Afro-Cuban Jazz, Album Rock, Alt Rock, Alternative, Alternative & Punk, Alternative 90Er, Alternative And Punk, Alternative Dance, Alternative Hip-Hop, Alternative Pop/Rock, Alternative Punk, Alternative R&B, Alternative Rock, Alternative/Indie Rock, Alternative/Rock/Folk/Metal, Ambient, Ambient Breakbeat, Ambient Dub Techno, Ambient House, Ambient Music, Ambient Pop, Ambient Techno, American, American Shoegaze, Americana, Américain, Art Pop, Art Rock, Australien, Avantgarde, Baroque Pop, Bass, Bass Music, Beatgen, Bhangra, Billboard Hot 100, Binaural, Bluegrass, Blues, Blues Rock, Boom Bap, Bop, Bossa Nova, Braindance, Breakbeat, Breaks, Britannique, British, British Folk, British Soundtrack, California Dreamin, Cast Recordings, Catchy As Hell, Chamber Pop, Chill Out, Chillhop, Chillout, Chillwave, Christmas, Christmas Classics, Cinematic, Classic, Classic Motown, Classic Pop And Rock, Classic Rock, Classical, Classical/Piano, Club/Dance, Concerto, Conscious Hip Hop, Contemporary Country, Contemporary R&B, Cool Jazz, Corsican Polyphony, Country, Country Pop, Dance And Electronica, Dance Dub, Dance Instrumental, Dance-Pop, Death By Pneumonia, Deep House, Disco, Down-Tempo, Downbeat, Downtempo, Downtempo, Lounge & Ambient, Downtempo/Trip-Hop/Ambient Chill/Beats, Dream Pop, Drill And Bass, Drum And Bass, Dub, Dub Techno, Dubstep, DubstepBass Music, Dutch Experimental Electronic, Dvdv, E-Gitarre, Early Pop, East Coast Hip Hop, Easy Listening, Electra, Electro, Electro House, Electronic, Electronic Dance, Electronic Rock, Electronic/House/Dance/Hardstyle/Jumpstyle, Electronic/House/Pop/Jazz, Electronica, Electronica Dance, ElectronicBass Music, ElectronicDowntempo/Trip-Hop/Ambient Chill/Beats, Electropop, Epicore, Escape Room, Ethereal, Experimental, Experimental Hip Hop, Experimental Rock, Film Score, Flamenco, Folk, Folk Pop, Folk Rock, Funk / Soul, Future Funk, Future Jazz, Game, Game Music, Gangsta, Gangsta Rap, General Downtempo, General Film Music, General Hip-Hop/Rap, General Indie Rock, Gesang, Glitch, Glitchcore, Grave Wave, Hard Bop, Hard Rock, Hardcore Hip Hop, Harlem Renaissance, Hip Hop, Hip Hop Rap, Hip-Hop, Hip-Hop Idm, Hip-Hop/R&B, Hip-Hop/Rap, Holiday, Hot Ac, House, Iceland, IDM, Indie, Indie Dream Pop, Indie Folk, Indie Garage Rock, Indie Jazz, Indie Pop, Indie R&B, Indie Rock, Indie Surf, Indietronica, Instrumental, Instrumental Hip Hop, Israel, Jangle Pop, Jazz, Jazz Blues, Jazz Pop, Jazz Rap, Jazz/Big Band, Jazztronica, Jungle Drum N Bass, Ladino, Latin, Latin Jazz, Leftfield, Lo-Fi, Long Title, Lounge, Mainstream Rock, Math Rock, Metropopolis, Microtonal, Misc, Modern Rap/Hip-Hop, Movie/TV Soundtrack, Neo-Psychedelia, New Wave, Nu-disco, Old School Rap, Oldies, Oldies/R&B/Soul, Original Film/TV Music, Other Rap Hip-Hop, Part Ii, Podcast, Pop, Pop / Rap, Pop And Chart, Pop Punk, Pop Rap, Pop Rock, Pop/Others, Post-Modern Electronic Pop, Post-Teen Pop, Progressive House, Progressive Trance, Psychedelic, Psychedelic Pop, Psychedelic Rock, Punjabi, Punk, R&B, Rap, Rap/Hip Hop, Rap/Hip-Hop, Reggae, Rhythm And Blues, Rock, Rock And Indie, Score, Scorecore, Sephardi, Shimmer Pop, Shimmer Psych, Shoegaze, Soul, Soul Jazz, Soundtrack, Synth-Pop, Synthpop, Synthwave, Synthwave / Electro, Techno, Traditional, Trance, Tribal, Trip Hop, Trip-Hop, Uk Contemporary R&B, Underground Hip Hop, Urban, Vapor Trap, Vaporwave, Video Game Music, Video Game Soundtrack, Vocal, Wantlist, West African, Western Hip-Hop/Rap, Western Pop, Witch House, Wonky, World, Year End Chart
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 02, 2020, 01:55:27 AM
You can try out my hierarchy here:

https://raw.githubusercontent.com/alectron/MusicBee_TagHierarchies/master/Genres/Community%20Versions/(Combined%20with%20Hiccup)%20MusicBee_3Layer.txt
I can reproduce the issue. In some cases you are using ::Genres instead of ::Genre
I dont know why that causes the issue just yet but if you change them to use ::Genre then it works
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on August 02, 2020, 05:34:46 AM
You can try out my hierarchy here:

https://raw.githubusercontent.com/alectron/MusicBee_TagHierarchies/master/Genres/Community%20Versions/(Combined%20with%20Hiccup)%20MusicBee_3Layer.txt
I can reproduce the issue. In some cases you are using ::Genres instead of ::Genre
I dont know why that causes the issue just yet but if you change them to use ::Genre then it works

Hmm. I only see one instance, but removing it does resolve the issue.

That was a silly mistake on my part.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 02, 2020, 09:25:05 AM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- fixed the tag hierarchy editor to handle large files
- if your hierarchy uses sub-genres, MB will make use of the sub-genres for the entered genre to populate the drop-down list box for the sub-genre in the tag editor. Given genre is on a different tab to the custom tag for sub-genre, it makes most sense to use the vertical tag editor so genre and sub-genre can be positioned beside each other
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 02, 2020, 11:22:36 AM
Currently a custom hierarchy file must be named TagHierarchy.txt

That can pose problems when a user wants to use and switch between several hierarchies.
Or when he has one that he is happy with, but in testing other ones accidentally overwrites the original one so that one is lost.

A solution where a user can have several ones would be nice.
Perhaps something similar to language files or skins.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 02, 2020, 01:00:26 PM
I understand and appreciate you are switching files while developing the hierarchy but once that settles down why would you or anyone else need to switch files?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 02, 2020, 02:12:40 PM
I understand and appreciate you are switching files while developing the hierarchy but once that settles down why would you or anyone else need to switch files?

I can imagine users having different taxonomies. Not only for genres, but also for perhaps instruments, regions/countries.
It would be useful if they could reside in the same folder and a user could select one. (with or without a restart)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on August 02, 2020, 06:16:13 PM
A solution where a user can have several ones would be nice.
For me this isn't a big one as I just keep multiple copies per purpose:
TagHierarchy.all.txt
TagHierarchy.genres.txt
TagHierarchy.instruments.txt

And just duplicate & rename to the default:
TagHierarchy.txt
making sure to only write over the default from the purpose driven copies.


But, I also see value in allowing multi-files as mentioned previously.

Could this be an easy/straight forward approach ?
Instead of a singular
*\AppData\TagHierarchy.txt
could be to have a directory to hold txt files:
*\AppData\TagHierarchies\Genres_default.txt
*\AppData\TagHierarchies\MyInstrumentTags.txt
*\AppData\TagHierarchies\Regions.txt

And having something like this inside the menu:

Tag Hierarchy Explorer \/
    Hide Header Menu
    ---------------------
    Show Count
    Tag Hierarchy Files  \/
        Genres_default
        MyInstrumentTags
        Regions
    Edit Tag Hierarchy...
    ...

Whereas "Tag Hierarchy Files" shows  all (correctly formatted) .txt files from that default directotry as a list, and you pick (via tickbox to show which is active [?] ) which you want to display.
Just an idea thrown in.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 02, 2020, 06:56:11 PM

…For me this isn't a big one as I just keep multiple copies per purpose…

…But, I also see value in allowing multi-files as mentioned previously…

If we agree this is useful to have I think the easiest approach would be to have a separate folder to contain hierarchy txt files.
Or if they remain to reside in appdata, it is probably better to use a somewhat unique file extension for them.
(something like .hier or whatever)

In the first case, when a user creates or edits a hierarchy file he can just name it and save it as a .txt file, in the second case he should save it as .hier (or whatever)
(I am guessing a compiling option similar to skins and language files will be a bit overkill for this)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 03, 2020, 08:55:30 AM
https://getmusicbee.com/patches/MusicBee34_Patched.zip

- now supports templates (.txt) files located in AppData/TagHierarchyTemplates
- you will need to move your existing templates there yourself before starting MB and the default template is "Genres.txt" so one of the files should be named that
- for new users this will be automatic
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on August 03, 2020, 12:58:19 PM
- now supports templates (.txt) files located in AppData/TagHierarchyTemplates

Neato, that works great (for me).
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 03, 2020, 07:10:37 PM
if your hierarchy uses sub-genres, MB will make use of the sub-genres for the entered genre to populate the drop-down list box for the sub-genre in the tag editor.

I may misunderstand how this is supposed to work, but after (only very brief) testing I am not able to see it retrieving and proposing something that is in the hierarchy sheet. Or I just may be doing something wrong.

But before putting more work in refining such a feature, it may be helpful if I explain how I would expect it to work in proposing subgenres:

For example, usually I would tag a song with Rock as the genre, and if I wanted to refine it, I might tag it with Krautrock as the subgenre.
Or another song I would tag with Jazz as the genre, and then e.g. Bebop as subgenre.

Now looking at my genre hierarchy sheet for these two examples to see how that would work; all the genres in the coloured boxes are what I would expect to be proposed for subgenre.

(https://i.imgur.com/4tNnWKW.png)

So for as far as I can oversee it, it would need to check if the genre is also a category, and then select all genres at the same level, and the ones at the levels above it.
I am not sure how doable that is though.

On a sidenote,
When using such a 'subgenre workflow', all genres in the hierarchy sheet (except for the main genres) would additionally need to get an entry as subgenre so they are recognised and categorised, but it looks like that won't be a problem.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 04, 2020, 12:07:20 AM
MB looks for any child nodes under a genre node (tagged with ::Genre) where there is a child node that is not tagged with ::Genre ie. MB looks at the field that child node is tagged with (likely to be a custom tag) and considers that field to be the sub-genre.
You can see if the sub-genre is detected by checking in MusicBee3Settings.ini for <ENV_SubGenre> not being 0
For the tag editor, as long as the genre is entered, the sub-genre custom tag field should be a dropdown that shows the relevant sub-genres
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 04, 2020, 06:35:41 PM
I see, yes that works nicely.
There is a problem though. A genre node that has child nodes using ::subgenre, becomes a collapsible category itself as soon as a subgenre was created.

The result is either a duplicate additional category within the category:

(https://i.imgur.com/zE11W85.png)


or a new category where you don't want it to be an additional category (Jazz), and it showing the subgenre (Bop) under it, while you only want that shown in the category you designed for it.

(https://i.imgur.com/kA7YobG.png)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 04, 2020, 10:40:34 PM
its probably best you send me a link to your hierarchy file
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 05, 2020, 07:13:34 AM
its probably best you send me a link to your hierarchy file

Code
Jazz
    Bebop · Cool · Hardbop
        Bebop::genre
        Bop::genre
        Hard bop::genre
    Jazz fusion
        Afro-cuban jazz::genre
        Jazz-rock::genre
        Latin jazz::genre
    Jazz::genre
        Bop::subgenre
    Big band::genre
    Chamber jazz::genre
Funk · R&B · Soul
    Funk
        Funk::genre
            Deep funk::subgenre
        Bayou funk::genre
        Deep funk::genre
    R&B
        R&B::genre
        Doo-wop::genre
        Swingbeat::genre
    Soul
        Soul::genre
        Soul music::genre
        Blue-eyed soul::genre
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 05, 2020, 08:01:54 AM
Based on that data, the screenshot of the expandable nodes is as I would expect. I am not sure what else you were expecting it would do.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 05, 2020, 08:48:41 AM
Based on that data, the screenshot of the expandable nodes is as I would expect. I am not sure what else you were expecting it would do.

I am not sure I can explain it better than I did in posts 176 and 178.
I was hoping for a feature that would propose tags that reside under a given main genre, to be written as a subgenre tag.
And that not having an effect on the constructed browsing hierarchy.

For displaying/browsing the subgenre tag would show up in the hierarchy as defined, e.g.:

Code
Jazz
    Bebop · Cool · Hardbop
        Bebop::genre
        Bebop::subgenre
        Bop::genre
        Bop::subgenre
        Hard bop::genre
        Hard bop::subgenre
So that both the genre and the subgenre tag for a given genre show up where you planned them to.

But with the current implementation duplicate categories are created, quickly making a mess of the browsing hierarchy.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 05, 2020, 09:01:11 AM
I am not sure I can explain it better than I did in posts 176 and 178.
I was hoping for a feature that would propose tags that reside under a given main genre, to be written as a subgenre tag.
If you create nodes tagged with ::subgenre under a genre, then in the tag editor those values will be in the drop-down list for the sub-genre field as long as you have entered a value into the genre field. I think you have said that's working and that's all I am planning to implement around that aspect.
As to how the subgenre is displayed in the tag hierarchy panel, are you requesting they be suppressed from being displayed?
I would like others to comment on that
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 05, 2020, 11:54:23 AM
As to how the subgenre is displayed in the tag hierarchy panel, are you requesting they be suppressed from being displayed?

No, I am saying the category shouldn't even be created (or seen as a category) in the first place.

When you look at the standard–or the enhanced–hierarchy lists, you find that only entries that are not appended with :: are candidates to be a collapsible category. (if there are genres residing under them)
It makes sense to me as user that tries to create such a hierarchy list, to understand and suppose that entries with :: are genre tags, and entries without are categories.

But with the subgenre implementation as it is now, also a genre tag using :: can now become a collapsible category by itself.
As a user to me that is confusing and seems inconsistent.

I am no coder, but perhaps prevent entries with :: becoming a category could be a solution. Or instead of having this:

Code
Jazz
    Bebop · Cool · Hardbop
        Bebop::genre
        Bop::genre
        Hard bop::genre
    Jazz fusion
        Afro-cuban jazz::genre
        Jazz-rock::genre
        Latin jazz::genre
    Jazz::genre
        Bop::subgenre
    Big band::genre
    Chamber jazz::genre

perhaps something like this:

Code
Jazz
    Bebop · Cool · Hardbop
        Bebop::genre
        Bop::genre
        Hard bop::genre
    Jazz fusion
        Afro-cuban jazz::genre
        Jazz-rock::genre
        Latin jazz::genre
    Jazz::genre
        Bop#subgenre
    Big band::genre
    Chamber jazz::genre
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on August 05, 2020, 02:45:36 PM
I find it quite good to be explicit, and allow organizational groups (with no ::genre affiliation) as well as organizational groups also being its' own genre group (with a ::genre affiliation) to be used in a hierarchy.

i.e. I use both... as in:
Combined collector for sub genres and a genre definition in itself:
Code
Discogs_Genres
    Blues::DISCOGS_RELEASE_GENRES
        Boogie Woogie::DISCOGS_STYLES

As well as this 2 explicitely different collector & genre groups with the same name... (as the current system allows us to... :D):
Code
    Electronic
        Bass Music
            Bass Music::Genre




As for opinions, re this:
Code
Jazz
    Bebop · Cool · Hardbop
        Bebop::genre
        Bebop::subgenre
I do not have that use case...and I'm actually not sure what I would prefer or if this should even be allowed (to populate the same named thing from multiple sources...)... and/or if this should create 2 or 1 group (if this was intended usage...) inside the tagHierarchy.
Might need to mull on this to form an opinion...

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 05, 2020, 05:55:48 PM
Code
Jazz
    Bebop · Cool · Hardbop
        Bebop::genre
        Bebop::subgenre
I do not have that use case...and I'm actually not sure what I would prefer or if this should even be allowed

It was already allowed and it can be very useful. I don't see what problems could arise from it.
And for users having subgenre tags it is essential.

(and that is the title and the reason this topic exists ;-)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 05, 2020, 05:58:20 PM
As well as this 2 explicitely different collector & genre groups with the same name... (as the current system allows us to... :D):
Code
    Electronic
        Bass Music
            Bass Music::Genre

That's identical to what I am doing with Jazz both being a category and a genre. (see my screenshots)
There is no issue there.

Similar to your example, I have:
Jazz
so it is understood to be a category.

And I have
Jazz::genre
so it is understood to be a genre tag.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on August 05, 2020, 06:25:20 PM
Code
Discogs_Genres
    Blues::DISCOGS_RELEASE_GENRES
        Boogie Woogie::DISCOGS_STYLES

Slightly off-topic but curious:
So you are not writing genres sourced from Discogs to the Genre tag?

Does the actual Genre tag also have a place in your workflow and hierarchy sheet?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on August 05, 2020, 09:50:52 PM
As well as this 2 explicitely different collector & genre groups with the same name... (as the current system allows us to... :D):
Code
    Electronic
        Bass Music
            Bass Music::Genre

That's identical to what I am doing with Jazz both being a category and a genre. (see my screenshots)
There is no issue there.

I'm not saying there is an issue. But, entering/using it this way, even though we stated explicitely (in this thread in the past that it probably would be needed, or be best practice, to have unique names for a single tag hierachy, this act was a 'oh, let's just move the goal post a little...' notion for me :D
But, it seems to work indeed/despite and is quite helpful, and a neat additional angle....


As for:
Code
Jazz
    Bebop · Cool · Hardbop
        Bebop::genre
        Bebop::subgenre
I do not have that use case...and I'm actually not sure what I would prefer or if this should even be allowed

It was already allowed and it can be very useful. I don't see what problems could arise from it.
And for users having subgenre tags it is essential.

(and that is the title and the reason this topic exists ;-)
I don't think so that this was explicitely allowed, but it accidentially/incidentially worked. But, this  also is moving the goal post a bit further.
It's not the fact that it uses  Bebop::subgenre, that was indeed the point of this thread  - but the fact that your outline case is attempting to populate the same named thing (i.e. the Bebop tag Hierarchy Group - be it 1 or 2 groups... which, if we don't know, this already screems something is askew), from 2 different source fields (::genre as well as ::subgenre) within the same TagHierarchy definition.
And this feels... odd...messy... & skewed.
But, this is just a hunch/feeling, not an opinion or a fact.



And for:
Slightly off-topic but curious:
So you are not writing genres sourced from Discogs to the Genre tag?

Does the actual Genre tag also have a place in your workflow and hierarchy sheet?

For me official Genre field is populated by hand-picked Genre descriptors that are true for me.
DISCOGS_RELEASE_GENRES & DISCOGS_STYLES hold the discogs auto tagger values and represent the discogs definitions (which can be great, but also terribly hit & miss...).
This allows me to see my library contents within 2 (or more) Genre Taxonomies easily, side by side, and it's awesome; especially since it comes for free as the discogs data has been added to most of my library over the last years :D
The only thing missing is generating MusicBrainz IDs from discogs IDs, to auto retrieve the MusicBrainz data as well, and plonk it into custom fields as well...

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: darkred on August 08, 2020, 03:46:32 PM
Greetings

First of all, thanks a lot for the "Tag Hierarchy Explorer", it's an awesome, super useful idea!

I'd like to make some suggestions to consider, regarding the "Tag Relationship Editor" (via rightclick|'Edit Tag Hierarchy'),
in order to be able to edit the hierarchy within MusicBee more easily:
- add a toggle filter, to toggle between: displaying all genres, and display only those genres tags for which there are music files in the Library.
- to be able to drag and drop each genre entry between genre groups
- to be able to expand/collapse each parent group, e.g. the 'Classical', 'Blues · Country · Folk' groups.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 09, 2020, 12:06:45 AM
I'd like to make some suggestions to consider, regarding the "Tag Relationship Editor" (via rightclick|'Edit Tag Hierarchy'),
in order to be able to edit the hierarchy within MusicBee more easily:
- add a toggle filter, to toggle between: displaying all genres, and display only those genres tags for which there are music files in the Library.
- to be able to drag and drop each genre entry between genre groups
- to be able to expand/collapse each parent group, e.g. the 'Classical', 'Blues · Country · Folk' groups.
None of that will be possible as the editor is implemented using a text box.
I will however look at drag/drop in the tag hierarchy panel itself
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on August 11, 2020, 08:23:46 PM
Hello hai.
One thing I was wondering (not a feature request - but if there's easy ways to add this feature, that would be grand too... to park genre related info inside the tagHierarchy txt... but, we should be dreading the feature creep... :D ).

With the ability to add ever more dense/complex genres & hierachies - I would love to park (text and/or link) info somewhere, ideally accessible within the MB interface (not necessarily in the tagHierarchy. And definitely not in metadata...).
So, as for a real world example - I have:
Code
        Colombia’s Pacific Marimba Music
            Arrullo::Genre
            Currulao::Genre
            Alabao::Genre
            Chigualo::Genre

Now, against each of the genres I would love to store info (in form of free form text and/or one or multiple URLs/Weblinks), like:
https://ich.unesco.org/en/decisions/5.COM/6.8
So the same link for each of the 4, plus the finer details from the text for each of the above genres...
"This music is performed principally during four rituals: Arrullo, Currulao, Chigualo and Alabao.
Arrullo is a saint worship ritual led by women, who prepare the saints, candles and altars and perform chants accompanied by drums and, on occasion, Marimbas.
The Currulao (or Marimba Dance) is a festive occasion. Men play the Marimba and perform profane chants while people sing, dance, eat and drink, and recount stories.
The Chigualo is a wake following the death of a young child. The body is covered with flowers and a cappella chants are performed around it.
The Alabao is a wake following the death of an adult, where extremely sad chants are sung, also a cappella.
"


As this is probably ever more extreme niche ideas/features - if anyone has an suggestion how this could be done otherwise (the only thing I could think of was to auto-construct URLs to discogs style wiki pages [as one can do with release & artist ID] - but, many of the smaller / sub genres do not exist, or have empty pages [https://reference.discogs.com/style/persian-classical] ) - I'm all ears too.

Cheers.
c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on August 12, 2020, 10:50:41 AM
I would love to park (text and/or link) info somewhere, ideally accessible within the MB interface (not necessarily in the tagHierarchy. And definitely not in metadata...).
I would be fine to add a syntax so you can include a comment with each genre but anything more where MB does something with it, probably not unless there is significant support for more than that
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 07, 2020, 04:32:41 PM

Just noticed the massive addition of genres to the Configuration.xml file on version 3.4.7555 P.

What's the purpose for this change? New tagging source?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on September 07, 2020, 04:56:54 PM
Just noticed the massive addition of genres to the Configuration.xml file on version 3.4.7555 P.

I see the same amount as in 3.0, namely 466.
How many do you see?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 07, 2020, 05:04:51 PM
Just noticed the massive addition of genres to the Configuration.xml file on version 3.4.7555 P.

I see the same amount as in 3.0, namely 466.
How many do you see?

1170.

Are you sure you applied the latest update dated 9/7/2020?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: hiccup on September 07, 2020, 05:18:59 PM
Are you sure you applied the latest update dated 9/7/2020?

You are right. I was on 7554, and 7555 indeed has this new list.
It's probably the list that I suggested for the new tag hierarchy feature.

I notice that some ancient genres that stem from the ID3v1/Winamp 1.0 era and are not in my list are now gone.
(such as the rather silly 'beautiful music' and 'negerpunk', which was some foolish joke by the Nullsoft developers in those days)

Do you think that could result in issues for other users?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 09, 2020, 10:14:44 AM
Just noticed the massive addition of genres to the Configuration.xml file on version 3.4.7555 P.
What's the purpose for this change? New tagging source?
Its the default genre category mappings. It shouldnt affect anything if you already set up your own mappings
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 11, 2020, 10:28:39 AM
Ok, I'm just finally getting around to testing this out. It's really cool, and in some places can replace auto-playlists I have.

I've skimmed through the thread but if this is in there I've missed it: do these classifications exist outside the hierarchy panel, similar to genre category? I've been messing with location rather than genre. I'm wondering if I have something tagged with, for example, Scotland, which is under United Kingdom, which is in turn under Europe, can I reference United Kingdom or Europe in a search or an auto-playlist and come up with that track?


A couple of maybe bugs I've noticed (or maybe something I'm missing):

I have a playlist consisting of all files from my library and inbox, which comes in at 23059 files, but "All" in the tag hierarchy panel is reported as 22947. This part seems to have sorted itself out. Playlist and tag explorer both report 22946. Maybe something got reset when I deleted that one track.

The filter to show files with tags missing from the hierarchy shows all 22946 files, which doesn't seem right. I have two tags I'm using right now: "location" and "playlist filters". Even if both fields are filled in with correct values, the (!) message will be "No tag hierarchy for:" and nothing after the colon.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: alec.tron on September 11, 2020, 03:49:15 PM
can I reference United Kingdom or Europe in a search or an auto-playlist and come up with that track?
Not afai know.
I scribbled down a neat-to-have idea elsewhere:
...what IF Auto Playlists themselves could have rules written against the TagHierarchy context/relations ?...

I still feel I would like to be able to do that, butI can't think of a neat way but a fair few problems instead (i.e should a playlist filter list all genre / location / whathaveyou context-parents as filter options...? probably NOT per default as this would become somewhat hard to grasp in a flat list... and secondly, the file reference and/or MB file DB probably have no concept of these hierachies, and querying/storing them as well could be a major headache, depending on the current information architecture...).
So, I'm probably leaving this as a loose idea, and not a feature wish as such...  :D

c.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 11, 2020, 04:35:40 PM
I still feel I would like to be able to do that, butI can't think of a neat way but a fair few problems instead (i.e should a playlist filter list all genre / location / whathaveyou context-parents as filter options...? probably NOT per default as this would become somewhat hard to grasp in a flat list... and secondly, the file reference and/or MB file DB probably have no concept of these hierachies, and querying/storing them as well could be a major headache, depending on the current information architecture...).
So, I'm probably leaving this as a loose idea, and not a feature wish as such...  :D

I was coming up with the wildest ideas for this last night. Like, I'm sure it would be a headache programmatically, but what if you could create new tags on the fly?  Using my example, what if rather than an explicitly defined location tag, you could do something like this:

North America::location
-USA::location
--Illinois::location
---Chicago::location
----Chicago::artist
----Disturbed::artist
----Fall Out Boy::artist

And then you could search for "location is Chicago" and get all tracks tagged with the artists under Chicago, or search for Illinois and get everything under that, etc.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 13, 2020, 08:02:13 AM
This version integrates queries to the tag hierarchy. For enumerated fields (such as genre) a new query condition selection criteria "in tag hierarchy" is now available. When chosen, you need to enter the x-path for the list you are interested in eg.
Genre in tag hierarchy "Electronic" would include all genre names including and under Electronic or "Electronic/Big Beats" would include all genre names including and under Big Beats. You can use this in auto-playlists or anywhere a query is constructed.

By default, MB uses the active tag hierarchy file but you can force it to use a specific file by surrounding the filename with brackets eg. [Genres]Electronic would open file "Genres.txt" to get the hierarchy

https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 13, 2020, 08:25:13 AM
Ooh. I can't wait to try this out!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 15, 2020, 02:24:17 AM
Working great so far. When I first set it up, I had switched the field type and created the playlist all in one session, and I was getting an error every time I clicked on a track in the playlist. But once I restarted MusicBee it was happy.

Have you had a chance to look at why the "Files With Tags Missing" filter is getting false positives?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 15, 2020, 02:56:23 AM
When I first set it up, I had switched the field type and created the playlist all in one session, and I was getting an error every time I clicked on a track in the playlist.
is there anything in the error log or can you remember what the error said?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 15, 2020, 03:20:52 AM
is there anything in the error log or can you remember what the error said?

Yeah, it looks like this:

Code
9/14/20 8:14:04 PM - 10.0.19041.0 - 3.4.7562.13962D - System.InvalidCastException: Unable to cast object of type '#=z_A91$FiZEclRYxJvGS5u3ck=' to type '#=zZaJ31WzagDruHEdODe5T526T9BBg'.
   at #=zJxJmE4rnIADz3gC8LFa58f0=.#=zEWB03Fc_qPzk()
   at #=zJxJmE4rnIADz3gC8LFa58f0=.#=zDbxMg_Gl5Mpm()
   at #=zJxJmE4rnIADz3gC8LFa58f0=.#=zbeiBT64=(IList`1 #=zkiRhIwc=, Boolean #=zsmzUohI=)
   at #=ztmYjST5Cmkxj7ht8iNGdL1jGEeHV.#=zhWVau0TPYongI73jHw==.#=zlp4MMpgRyJDX(List`1 #=zzKjMf0_V5rgi)
   at #=ztmYjST5Cmkxj7ht8iNGdL1jGEeHV.#=ziS3WIwSUCsQn5sC3Ng==()
   at #=ztmYjST5Cmkxj7ht8iNGdL1jGEeHV.#=z_XACaWpT_Yxo(#=zuYYr1cszBI4C4QgH8j1$wh0= #=z2pRZsWI=, Boolean #=zz_bQbSLlZkQb)
   at #=ztmYjST5Cmkxj7ht8iNGdL1jGEeHV.#=z7mO9VlkjTHBd.#=zmiBOx4HHpkOy(#=zb7MTvyNtcszlBfIYo7xtQCoMzZJZ #=zgJEZKQY=)
   at #=zDWl16i$LgtpVLlAOo$6saeM=.#=zvBdTlIgvHYhi.#=zrQ7UzmVnUeyn(Int32 #=z6EXGxuQ=, Boolean #=zz_bQbSLlZkQb, Boolean #=zIMPRyKmN1nNn)
   at #=zDWl16i$LgtpVLlAOo$6saeM=.#=zvBdTlIgvHYhi.#=zS4XP3H7I7Lut5L_0jA==(Int32 #=z6EXGxuQ=, Keys #=ztwqeLak=)
   at #=zDWl16i$LgtpVLlAOo$6saeM=.#=zvBdTlIgvHYhi.OnMouseDown(MouseEventArgs #=zgJEZKQY=)
   at System.Windows.Forms.Control.WmMouseDown(Message& m, MouseButtons button, Int32 clicks)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at #=z9doUfp8$e6AU42VnjHjAyqY=.WndProc(Message& #=zEISNTJI=)
   at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 15, 2020, 09:18:55 AM
thanks, i can see why it would happen with the vertical tag editor active and changing the type for a field but not straight forward to fix. As you found, restarting MB fixes the issue

Have you had a chance to look at why the "Files With Tags Missing" filter is getting false positives?
you are referring to "Files With Tags Missing in the Hierarchy"?
i thought it had been resolved, so are you still finding instances it is not working?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 15, 2020, 09:30:52 AM
you are referring to "Files With Tags Missing in the Hierarchy"?
i thought it had been resolved, so are you still finding instances it is not working?

I'm on 3.4.7562, and it's just showing me all the files from the main panel. I am using more than one tag in the hierarchy, if it matters.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 15, 2020, 09:32:59 AM
can you send me a link to the .txt file?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 15, 2020, 09:37:27 AM
Here you go: https://app.box.com/s/m09d0nzl2501joqj4tkltrmufx9hqu9y

It's a work in progress, lol
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 15, 2020, 09:52:02 AM
Both reported issues should be fixed now:
https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 15, 2020, 10:48:08 AM
Yes, that's fixed the false positives. Now it's gone the other way, it's only identifying values from one of the tags in the filter (it gets "filters" but misses "locations"). But it shows the values that aren't in the hierarchy in the editor, so I can at least see what they are and search for them easily.

Hold off on that. I thought I had all tracks in the main panel, but I may not have. Will report when I have more details.

Looking good at the moment. I was able to very quickly fix all those unmatched tags, now there are none. Cool!


What you've done here is amazing. The more I think about it, the more possibilities occur to me - ways to save tons of work on tagging, or just to make information more accessible. One thing I played around with earlier was making a tree of groups and their members. The Beatles are an obvious example, since they're ALL famous and have solo careers, other bands, collaboration work, etc. The ability to see all the tracks an artist was involved in already exists, of course (with correct tagging), but this allows the relationships to be clustered and organized in new ways.

I posted something a while back about ways to store information about artists in the database - this meets that need. Rather than tag every track by an artist with the same info, you can enter the artist in a hierarchy once and never have to mess with it again. New tracks will be included automatically. I remember going around in circles with somebody, trying to help them figure out how to do something similar with autoplaylists.

The only advantage I can still see to using autoplaylists for simple grouping based on tag values is the ability to set custom views and so on. My mind is pretty blown. I think it's going to get more blown as I work through this. :D
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 15, 2020, 08:41:45 PM
Both reported issues should be fixed now:
https://getmusicbee.com/patches/MusicBee34_Patched.zip

Two bugs for you:

Genre counts randomly change every time you switch back and forth between playlists AND randomly change when repeatedly selecting the same playlist. Note that the song count does not change.

The Column Browser no longer works in in conjunction with the Genre Browser. It only appears as a header.

Please see the GIF below which exhibits both issues simultaneously:

(https://i.imgur.com/KZnm9kl.gif)


[MOD: Reduced image size. Click for full size.]
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 16, 2020, 02:27:57 AM
Is there a way to add comments to the hierarchy files? Like, commenting something out with # or // so MusicBee doesn't read it into the hierarchy.

Added: I was having an issue with MB not reading the contents of a file that had been changed outside of MB. In fact, at some point it overwrote the changed file with the old contents. If I copied the file and gave it a different name, then MB would read it correctly. I had edited with Notepad++ and also couldn't see a file changed date, so that might have been related. But I checked several time that it was THAT file I had edited. (I think this was an issue with Notepad++ making me think the file had been saved when it hadn't. If anything like that happens again I'll speak up, but for now I think we can safely assume user error there.  :-[ )

Also MB was complaining because Notepad++ had put real tabs in the file rather than four spaces, but that was easily fixed with a search and replace.

Update with another small bug: if there are trailing spaces after the tag name (::location   , for instance), then MusicBee reports that the tag is not configured in MB.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 16, 2020, 03:36:21 AM
It seemed like it would be useful to have a centralized place to collect shared Tag Hierarchy files, so I made one: https://getmusicbee.com/forum/index.php?topic=32978.msg180672
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 16, 2020, 08:43:13 AM
Two bugs for you:
I cant reproduce either. Can you send me a link to your settings file and also any files in AppData\Saved Settings if you make use of custom views/layouts
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 16, 2020, 09:32:19 AM
Is there a way to add comments to the hierarchy files? Like, commenting something out with # or // so MusicBee doesn't read it into the hierarchy.
the next update will ignore //
Update with another small bug: if there are trailing spaces after the tag name (::location   , for instance), then MusicBee reports that the tag is not configured in MB.
thats fixed for the next update


https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 17, 2020, 12:02:20 AM
Thanks!


I'm seeing some odd behavior when using Artist in the hierarchy; it's like MusicBee is defining artist differently depending on what aspect it's looking at. If I put Artist::artist in the hierarchy, it seems to include all definitions of Artist (guest artist, performer, etc). However, when counting the tracks it only seems to pick up tracks where the artist is a primary artist (or at least not the performer (role) credits).

Take Natalie Merchant, for example: clicking her node in the hierarchy gets all of her solo tracks and 10,000 Maniacs where she's included as a performer. That's 37 tracks, but the count only shows 23, which is how many tracks where she's tagged as Artist. And then in the Files With Tags Missing filter, it shows "No tag hierarchy for: Natalie Merchant (vocals)", etc.

Another issue I've stumbled on is there's different behavior related to sub-nodes when using Node::tag vs just Node. If I put New York::location, I get only the tracks tagged with New York, in both the main panel and the count. If I put New York plain, I get all the sub-nodes. I've worked around it for now by making New York::location a sub-node of New York. I can imagine reasons this behavior might be desirable, but it's definitely a problem if there are no tracks with the Node tag, because then it disappears, even if there are tracks in the sub nodes.

A vaguely related question: can you put virtual tags in a hierarchy? [Update: Actually, that won't do what I want. Still a useful question, maybe.]
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 17, 2020, 09:07:47 AM
The Column Browser no longer works in in conjunction with the Genre Browser. It only appears as a header.
in your Layout(1) preferences you have disabled resizing panels

for the 2nd issue, i still cant reproduce it. In your description you say you are switching between playlists but the gif file makes it look like you are clicking on "Music Library" multiple times. When switching playlists i would expect the counts to change as they reflect what it shown in the main panel.
Are you using the latest patch version: 3.4.7564?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 17, 2020, 09:40:11 AM
Another issue I've stumbled on is there's different behavior related to sub-nodes when using Node::tag vs just Node. If I put New York::location, I get only the tracks tagged with New York, in both the main panel and the count. If I put New York plain, I get all the sub-nodes. I've worked around it for now by making New York::location a sub-node of New York. I can imagine reasons this behavior might be desirable, but it's definitely a problem if there are no tracks with the Node tag, because then it disappears, even if there are tracks in the sub nodes.
that is the intentional behavior - nodes with no tag simply aggregate all the nodes under that node
when selecting a node with a tag, it only filters for that one tag and ignores the child nodes.
However I will update the node visibility logic so it accounts for there being child nodes that do have matches
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 17, 2020, 10:24:28 AM
I'm seeing some odd behavior when using Artist in the hierarchy; it's like MusicBee is defining artist differently depending on what aspect it's looking at. If I put Artist::artist in the hierarchy, it seems to include all definitions of Artist (guest artist, performer, etc). However, when counting the tracks it only seems to pick up tracks where the artist is a primary artist (or at least not the performer (role) credits).
thats fixed for the next update - it should pick up all definitions of artist and now the count should reflect the same

https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 17, 2020, 03:45:34 PM
in your Layout(1) preferences you have disabled resizing panels

for the 2nd issue, i still cant reproduce it. In your description you say you are switching between playlists but the gif file makes it look like you are clicking on "Music Library" multiple times. When switching playlists i would expect the counts to change as they reflect what it shown in the main panel.
Are you using the latest patch version: 3.4.7564?

1. Whoops -- that's embarrassing, you're correct, it was caused by that setting.

2. I am using the latest patch version and I'm still able to replicate the issue. To clarify, the count changes both when selecting the playlist multiple times in a row, and navigating to and from a playlist. Please see the new gif below:


(https://i.imgur.com/h8iRqBK.gif)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 18, 2020, 07:28:58 AM
thats fixed for the next update - it should pick up all definitions of artist and now the count should reflect the same

Thanks again!  Yep, in fact it seems to be counting them ALL indiviually, lol. It's giving me a count of 91 on 41 tracks for Natalie Merchant, now. She has as many as 3 separate credits on some of them (Artist, piano, vocals), so that seems about right. And in the list shown of "No tag hiearchy for", it's including the performance roles - guitar, vocals, etc. I can't imagine the tricky logic you're having to have MusicBee go through to coordinate all these factors, I don't envy you. :D


that is the intentional behavior - nodes with no tag simply aggregate all the nodes under that node
when selecting a node with a tag, it only filters for that one tag and ignores the child nodes.
However I will update the node visibility logic so it accounts for there being child nodes that do have matches

This looks good now. It might be helpful to be able to visually distinguish a "tag" node from an "aggregate" node. I'm not sure what that would be: slightly different font color, font style, some small icon, hover text...?'


Added: Actually, I can verify what zkhcohen says. Sometimes it shows a count of 91, and sometimes 60 for Natalie Merchant. I can't tell what prompts it to display differently.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 18, 2020, 09:51:52 AM
2. I am using the latest patch version and I'm still able to replicate the issue. To clarify, the count changes both when selecting the playlist multiple times in a row, and navigating to and from a playlist. Please see the new gif below:
I still can't reproduce the issue. Could you try this version to see if it works
https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 18, 2020, 03:36:36 PM
I still can't reproduce the issue. Could you try this version to see if it works
https://getmusicbee.com/patches/MusicBee34_Patched.zip

Unfortunately I'm still experiencing the issue.

I'll try reconfiguring a fresh installation of MusicBee later today, hopefully.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 18, 2020, 10:52:11 PM
Does it only happen when you click between playlists quickly ie. while the old one is still loading?
And when it happens, if you minimise MB and restore do the numbers look correct?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 19, 2020, 07:34:32 AM
Does it only happen when you click between playlists quickly ie. while the old one is still loading?
And when it happens, if you minimise MB and restore do the numbers look correct?

1. Nope -- happens regardless of the speed of / delay between clicks.
2. Minimizing and maximizing has no effect. The numbers remain the same as before MB was minimized, regardless of whether they're in a glitched state or not.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 19, 2020, 07:58:17 AM
in that case are you happy to run a debug version?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 19, 2020, 08:19:21 AM
in that case are you happy to run a debug version?

Gladly! Send it on over and I'll try it in the morning.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 19, 2020, 08:46:25 AM
in that case are you happy to run a debug version?
Gladly! Send it on over and I'll try it in the morning.
http://www.mediafire.com/file/o4vxkhxg1bfll9l/MusicBeeDebTagHierarchy.zip/file

it will log a lot of info to the error log so could you just use it on the Classical Piano playlist ie. click twice on it so you see 2 sets of numbers
Send me the new info at the end of the log. You will probably need to zip it

I suggest you replace it straight away with the normal version so the error log doesnt fill up
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 19, 2020, 04:22:39 PM
it will log a lot of info to the error log so could you just use it on the Classical Piano playlist ie. click twice on it so you see 2 sets of numbers
Send me the new info at the end of the log. You will probably need to zip it

I suggest you replace it straight away with the normal version so the error log doesnt fill up

I can't replicate the issue with this version. I have tried switching back and forth between 3.4.7567 and 3.4.7566.33864 to confirm, and the issue returns immediately when reverting to the older version.

Was something else changed in this version besides debugging?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 19, 2020, 10:47:59 PM
I did make one really minor change but in likelihood this is a timing issue that is affected by the debug code.
Could you try this version
https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 20, 2020, 01:04:39 AM
Could you try this version
https://getmusicbee.com/patches/MusicBee34_Patched.zip

No luck -- issue still occurs with this version
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 20, 2020, 02:18:28 AM
hopefully this will work:
https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: zkhcohen on September 20, 2020, 02:53:33 AM
hopefully this will work:
https://getmusicbee.com/patches/MusicBee34_Patched.zip

Yep! That one fixed it.

Thanks.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 20, 2020, 05:28:07 AM
do you have any files that are split by cuesheet in your library?
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 20, 2020, 05:43:34 AM
It's fixed it for me, too. No cue sheets here.

It hasn't fixed the part where Natalie Merchant has a count of 91 for 41 tracks.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 20, 2020, 07:57:41 AM
I finally figured out the root cause of the issue and now should be fixed appropriately. This version also has handling for duplicate artist counts
https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 20, 2020, 09:57:16 AM
Looks good, thanks again!
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 24, 2020, 07:02:01 AM
Could it be possible to interact with the main window and maybe even tag editor while editing the tag hierarchy? Would make transferring values much easier.

Another small convenience thing: if you add a new line from the end of the previous line, MusicBee auto-tabs so they stay in line. Could it do the same if you have your cursor at the beginning of the line (but after the tabs)? Currently, that moves the text to the very beginning of the next line. If that's not clear I can capture a gif.
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on September 24, 2020, 09:54:58 AM
Could it be possible to interact with the main window and maybe even tag editor while editing the tag hierarchy? Would make transferring values much easier.

Another small convenience thing: if you add a new line from the end of the previous line, MusicBee auto-tabs so they stay in line. Could it do the same if you have your cursor at the beginning of the line (but after the tabs)? Currently, that moves the text to the very beginning of the next line. If that's not clear I can capture a gif.
sure,
https://getmusicbee.com/patches/MusicBee34_Patched.zip
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: psychoadept on September 28, 2020, 12:46:49 AM
Thanks! Finally got a chance to play with this again, and that helps a lot.


And because I seem to try all the weird things, I've found there's some odd behavior if you do a Local Node Only search with the hierarchy active. It does not filter to the search results, with either a search box or a custom search. Clicking on the hierarchy explorer shows tracks that aren't in the search results again.

Doing a search of the entire library behaves as expected and filters to what's shown in the search results. (I actually didn't mean to do a Local Node search, but it was set to that by accident. *shrug*)
Title: Re: Proposal: Extend 'Genre' hierarchy with 'Subgenre'
Post by: Steven on October 01, 2020, 09:49:47 AM
the tag hierarchy panel is now responsive to text searches and filtering by other panels such as the thumbnail browser

https://getmusicbee.com/patches/MusicBee34_Patched.zip