Taiko2k / Tauon

The music player of today! :city_sunrise:
https://tauonmusicbox.rocks
GNU General Public License v3.0
1.64k stars 64 forks source link

Feature request: Tag hierarchy explorer #1029

Open Viktini opened 9 months ago

Viktini commented 9 months ago

MusicBee 3.4 added support for tag hierarchy files. These files basically define a tree hierarchy relating to certain tags, typically genres and locations but any supported tag could work. As a real-world example of a tree hierarchy being used, Rate Your Music is well known for presenting its genre database to its users as a tree hierarchy.

MusicBee calls the text files denoting a tag hierarchy "templates". They're simply text files specially formatted for it to read and then organise into a tree hierarchy. Using RYM's genre tree as an example:

Ambient
    Ambient::genre
    Ambient Americana::genre
    Dark Ambient
        Dark Ambient::genre
        Black Ambient::genre
    ...
Blues
    Blues::genre
    Acoustic Blues
        Acoustic Blues::genre
        Acoustic Chicago Blues::genre
        Acoustic Texas Blues::genre
    ...

If a user selects Ambient in the tree, everything that is tabbed under Ambient in the above tree will show up in the view, including Dark Ambient. If a user selects Dark Ambient, everything under that will also be selected. And of course, a user can select a single genre if they wish. Tabs or spaces are used to denote sub-tags in the hierarchy (e.g. subgenres in the above example)

I've been able to replicate this behaviour in Quod Libet using queries, and I've tried to replicate said functionality in Tauon using generators but I've ran into issues with the genre selection, especially when using a lot of tags (e.g. EDM in RYM's genre tree), so I thought I'd suggest it here. I really like the UI for Tauon so I thought I would suggest this for those coming from MusicBee.

Taiko2k commented 9 months ago

I wonder if there is a place people get this file? Like is there a file everyone uses? I imagine it would be a lot of work for every user to re-create this file themselves. My line of thinking would be more to centralise this feature and include it in the application by default.

Viktini commented 9 months ago

MusicBee does drop a default "Genres.txt" file when you load it, which shows a genre hierarchy. It is mainly a MusicBee-centric feature right now so if a user wants to download their own file it's mainly places like the MusicBee forums where people are posting their tag hierarchy files. https://getmusicbee.com/forum/index.php?topic=32978.0

Hiccup on the forums has an enhanced genre list which adds genres from Discogs, RYM and MusicBrainz. If there is "that one file" it'd probably be this one: https://getmusicbee.com/forum/index.php?topic=35266.0

There's also this that I personally maintain since I use RYM for tagging, but it might be too strict for the general user: https://gitlab.com/Flaky/mb-rym-hierarchy