Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Genre enhancements #43

Open
brendan-pike opened this issue Apr 7, 2017 · 5 comments
Open

Genre enhancements #43

brendan-pike opened this issue Apr 7, 2017 · 5 comments

Comments

@brendan-pike
Copy link
Contributor

I would like to request a few genre features, I realise my ideal may not be widely suitable but I can dream right, however I think there is good middle ground available. In the order of importance

  1. Support for genre separation
    I use semi-colons for genre separation, eg. "Rock; Pop" however OPMD renders this as a single genre.

  2. Support for multiple genre tags
    After much research I decided to follow the discog formatting guideline which has only 15 genres but then many sub-genres (styles). So I need both my "genre" and "style" tags included.

  3. Discog genre support
    This is the dreaming part. For full Discog genre support OMPD would probably need to be aware of the style/genre relationships, eg. Free-Funk can relate to Funk / Soul or Jazz. So if an album was listed with:
    Genre: Blues; Jazz
    Style: Free-Funk; Chicago
    The system would need understand that Free-Funk is only listed under Jazz while Chicago is only listed under Blues.
    But what a truly clean system that would present

@ArturSierzant
Copy link
Owner

Ad. 1:
Done in 647fa14 - genre separator is defined in $cfg['multigenre_separator']. In your case it has to be $cfg['multigenre_separator'] = '; ' i.e. semicolon and space

Ad. 2:
Done (at least partially) in 647fa14 - now STYLES tag will be added to genres (I know, this might not be exactly what you expect). To use this, you must set $cfg['style_enable'] to true and force update database (this can be done from Settings > Update > Update only selected directory). $cfg['multigenre_separator'] is also used as styles separator.

Ad. 3:
This requires dynamic update of genres/styles tree from discogs to keep it up to date - for now I don't know how to download all the tree. So for now this issue remains open...

@brendan-pike
Copy link
Contributor Author

Hey Artur, thanks so much for your work, its amazing. I tested these today and it works although I still have a joined categories, eg. "Jazz; Blues; Folk, World, & Country " even though I added
$cfg['multigenre_separator'] = "; ";
Do I perhaps have to drop my old database or should forced update clear the older incorrect tags?

When I get some time I'll investigate and learn what I can about the discogs APIs, I think slimpd might use it but not certain.

@othmar52
Copy link
Contributor

... I think slimpd might use it but not certain.

Yes sliMpd already uses it for fetching single releases information.

@ArturSierzant : in case you consider to make use of the Discogs-API be aware that the oauth documentation of discogs seems to be incorrect @see discogs-thread

@ArturSierzant
Copy link
Owner

@brendan-pike: forced update should re-index all files (no matter if they have been changed since last update or not) so there is no need to drop DB. Have you changed $cfg['style_enable'] to true? I've tested Jazz; Blues; Folk, World, & Country and new genre Folk, World, & Country appeared on the list of genres (Jazz and Blues have been there already), so it seems to work correctly.
Please try to update (just for test) one album with multi-genre using Update album from Album view (it also performs forced update) and see what happens.

@othmar52: thanks for hint, always good to know :)

@brendan-pike
Copy link
Contributor Author

I've been reading further into discog API, I don't think its even possible to pull genre/styles without album references which makes the API useless for this function. What I'm thinking is that it will be far easier to write a scraper for the website by going through the genres and recording the styles. We could allow the user to trigger the scrapper manually or we could write the result into the OMPD file set and update it on new releases.
I'm happy to write this the scraper if you give the format but obviously there is a lot of other coding work outside of that for you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants