Author Topic: How to retrieve good quality genre tags using Picard  (Read 27405 times)

hiccup

  • Sr. Member
  • ****
  • Posts: 7936
Thanks for the reply hiccup. Nay, no genre at all. Shall get my fine toothcomb out and have another look.
O.k.
If that fails, you are welcome to send me a PM with a link to the Config.ini file you have for Picard.

edit
Assuming you are using Picard on WIndows? The portable version by any chance?
The Linux version probably does things a bit different.
Last Edit: March 12, 2024, 05:36:50 PM by hiccup

HBY14

  • Newbie
  • *
  • Posts: 5
Thanks for the reply hiccup. Nay, no genre at all. Shall get my fine toothcomb out and have another look.
O.k.
If that fails, you are welcome to send me a PM with a link to the Config.ini file you have for Picard.

edit
Assuming you are using Picard on WIndows? The portable version by any chance?
The Linux version probably does things a bit different.

Windows 11, aye. And as for portable version, no idea what that means. Did notice that it was something you mentioned, but with you saying something along the lines of "check stuff before you really go ahead with it" I was not pressing save until I was happy with what I saw in the right-hand-side panel. I might not be the most technical of people, and sometimes my common sense is not so common, but I do like to take care at times. And not effing-up my music is something I do care about quite a fair bit!

hiccup

  • Sr. Member
  • ****
  • Posts: 7936
I might not be the most technical of people, and sometimes my common sense is not so common, but I do like to take care at times. And not effing-up my music is something I do care about quite a fair bit!
That's nothing but wise.

I would suggest:

- Download the portable version of Picard.
- Create a folder outside Window's system folders, so e.g. at C:\Picard, or simply on another drive.
- Copy the downloaded MusicBrainz-Picard.exe to that folder and run it.
- Make a copy of the folder that has your Wire album.
- Load that copy of the album into Picard and start testing and experimenting.

If it still fails to populate the Genre tag after you have applied the settings as explained in the start post, send me a link to your Config.ini file.
 
Last Edit: March 12, 2024, 06:05:43 PM by hiccup

HBY14

  • Newbie
  • *
  • Posts: 5
I might not be the most technical of people, and sometimes my common sense is not so common, but I do like to take care at times. And not effing-up my music is something I do care about quite a fair bit!
That's nothing but wise.

My suggestion:
- Download and install the portable version of Picard.
  (install it outside Window's system folders, so e.g. at C:\Picard, or simply on another drive)
- Make a copy of the folder that has your Wire album.
- Load that copy of the album into Picard and start testing and experimenting.
 

Framing that  ;D
And will do, thanks for the help :-)

KallP

  • Newbie
  • *
  • Posts: 3
I am sorry hiccup, I have another question about your tutorial.
How do you manage to get your genres written in capitalized case? I mean, I see on your screenshot that every genre are capitalized "Alternative rock; Blues rock..." when I get "Alternative rock; blues rock".

Is it something I have to set in Picard or in Musicbee, or is it in your scripts? I took a look at all the options and didn't find what I was looking for...

Thanks!
I just installed Picard today and added these scripts and I'm having the same problem. The tagging works, but the capitalization seems to not properly loop for subsequent genres, so it only capitalizes the first one. I've removed the 2nd line for now so that everything will be consistently lower-case, but I don't know what else I can do to fix this on my end aside from learning how to script with this myself. I've tried deleting and re-pasting the code from the txt file, proof-reading with what little example is provided here, and re-launching Picard with some different settings like ID3 versions.

Here's what the script looks like:

Code
$setmulti(_genre,$lower(%genre%))
$setmulti(_genre,$map(%_genre%,$upper($substr(%_loop_value%,0,1))$substr(%_loop_value%,1,)))
$replacemulti(%_genre%,Aor,AOR)
$replacemulti(%_genre%,Eai,EAI)


Code
$replacemulti(%_genre%,Tape music,Tape mmmmm)
$replacemulti(%_genre%,Turntable music,Turntable mmmmm)
$replacemulti(%_genre%,Video game music,Video game mmmmm)
$setmulti(_genre,$rreplace($rreplace(%_genre%,\( folk music;\), fffff;),\( folk music\)\$, fffff))
$setmulti(_genre,$rreplace($rreplace(%_genre%,\( traditional music;\), ttttt;),\( traditional music\)\$, ttttt))
$setmulti(_genre,$rreplace($rreplace(%_genre%,\( music;\),;),\( music\)\$,))
$setmulti(_genre,$replace(%_genre%,mmmmm,music))
$setmulti(_genre,$replace(%_genre%,fffff,folk music))
$setmulti(_genre,$replace(%_genre%,ttttt,traditional music))
$setmulti(_genres,$unique(%_genre%))
$setmulti(_genre,$unique(%_genres%))
$setmulti(genre,%_genre%; %period%)
$cleanmulti(genre)

I'm using the portable Picard 2.11 on Windows 10, with the "Picard genre whitelist and scripts v1.240329.rar" provided by the dropbox link. I'd appreciate it if anybody could help me out, but still the script works as-is and it's incredibly useful.

hiccup

  • Sr. Member
  • ****
  • Posts: 7936
The tagging works, but the capitalization seems to not properly loop for subsequent genres, so it only capitalizes the first one.
I've never experienced this myself, so I just now tested tested this on a clean Picard install using the exact same script as the download version.
It works without any issue for me, and each genre properly gets the first letter capitalised.

I can't really think of anything that could cause this.
But, maybe somehow the script ends up differently when copied/pasted into Picard?
Could the software that you are using for this play some role, and be modifying something?

edit:
I don't understand why your post contains two separate code blocks for the script.
And they are both incomplete. (4 and 13 lines)
The actual script has 266 lines.
Last Edit: April 04, 2024, 07:42:17 PM by hiccup

KallP

  • Newbie
  • *
  • Posts: 3
The tagging works, but the capitalization seems to not properly loop for subsequent genres, so it only capitalizes the first one.
I've never experienced this myself, so I just now tested tested this on a clean Picard install using the exact same script as the download version.
It works without any issue for me, and each genre properly gets the first letter capitalised.

I can't really think of anything that could cause this.
But, maybe somehow the script ends up differently when copied/pasted into Picard?
Could the software that you are using for this play some role, and be modifying something?

edit:
I don't understand why your post contains two separate code blocks for the script.
And they are both incomplete. (4 and 13 lines)
The actual script has 266 lines.
Sorry for the confusion, I only showed the start and end of the script because I assumed the whole thing wouldn't fit in a post. I meant to make a pastebin of it anyhow but forgot.
https://pastebin.com/0vnd9k2e

A change of character encoding was a good thought I suppose, but I've thoroughly extracted every file into its own folder and tried both Microsoft's notepad and notepad++ when opening, so if that's what's happening then I'm not sure how I'm supposed to avoid that. I suppose next time I'll try typing out some lines by hand in Picard itself.

hiccup

  • Sr. Member
  • ****
  • Posts: 7936
...
I have no idea what's going on then.
If you want you can PM me a link to your Picard .ini file.
Perhaps that will give me a clue.

hiccup

  • Sr. Member
  • ****
  • Posts: 7936
If you want you can PM me a link to your Picard .ini file.
Perhaps that will give me a clue.
Thnx, got it.

And I believe I found the culprit...
It looks like that under Options > Genres, you have entered ; as delimiter. (the single character)
But it should be two characters ;  (semi-colon + space)


PS
You have the order of the two scripts switched. Not an issue in this case, but in general it would be better to place $unset and $delete scripts last.
Last Edit: April 05, 2024, 08:45:44 AM by hiccup

KallP

  • Newbie
  • *
  • Posts: 3
Awesome! It works as intended now, thank you. And yeah, one of the last things I did was swap the script order in my efforts to find a solution.

hiccup

  • Sr. Member
  • ****
  • Posts: 7936
updated

The script now replaces spaces in genre names with non-breaking spaces so that they don't get split up to a new line.

(e.g. for Cool jazz, Avant-garde metal, etc.)