Classical Extras 2.0

Sorry, no time to look at this in any detail. However, I suspect the answer is as follows:
You are using _cwp_work_part_levels. It seems what you want is _cwp_part_levels. The one you are using is the max number of levels for any track within the overall work. See the help file :wink:
Not sure why the different releases give different answers without access to my PC, but it seems like you are using the wrong variable anyway.

That’s not the case, and this is not so much about me getting incorrect results.
I only mentioned this because when in the past I looked into this deeper and constructed ‘my scheme’, I thought that the value of _cwp_work_part_levels always matched the number of entries for _cwp_work_n
I probably remembered wrong then.

I am not experiencing any real problems because of this, but I thought to mention it in case some error you weren’t’ aware about might have slipped into the plugin.

So that’s not the case then. All is fine!

1 Like

This specific recording will not get saved:

It’s not related to file corruption or read-only.
(I created a brand new copy of the file, and also used a second Picard install for confirming the problem)

(hovering over the red warning icon only says ‘Great match’ :wink:

error log:
E: 21:28:40,761 util.thread.run:64: Traceback (most recent call last):
File “picard\util\thread.py”, line 60, in run
File “picard\file.py”, line 294, in _save_and_rename
File “picard\formats\vorbis.py”, line 300, in _save
File “picard\formats\vorbis.py”, line 319, in _remove_deleted_tags
IndexError: list index out of range

I think I just fixed this this week. You are trying to delete a performer or comment tag from the file, right?

1 Like

Well, not me intentionally. I ended up testing with a vanilla Picard, no scripts.
The release saved o.k. without CE activated, but as soon as I activated the plugin, only that specific track refuses to save.
So maybe that track contains some tag that CE is trying to delete? I am not sure.

Could be. I’ll take a look.

Actually I can’t replicate this because I don’t have the files. CE does delete some file tags; in particular if you have checked the box on the tag mapping tab that says

Do not show any file tags that are NOT listed above AND NOT listed in the main Picard “Preserve tags…” option (Options->Tags), even if “Clear existing tags” is not selected.

I appreciate that the wording is not exactly clear :wink:

I ended up testing it with a vanilla Picard/CE, and by default I don’t think that that particular box is checked.
If you like to test it yourself on actual files, I don’t think you need the actual album files.
You could use some random files and force Picard into believing that they’re the ones.

Hello! I am just starting to use your plugin. I will take a bit of work to configure just the way I want, but I am excited to use the detailed tagging for my classical albums!

I have one issue that I just don’t understand. On this album:

My CE settings are mostly default right now and I have no other active plugins. What I am seeing is that the Album tag is changing this way:

The Album tag on most albums is unchanged, but for some reason this one is changing. Any ideas?

Thanks!

Plugin settings:
‘Artists’ tab > ‘Other artist options’ > 'Name album as “Composer Last Name(s): Album Name”

3 Likes

That’s it - thanks! I thought it had to be something like that. I looked at the settings a few times and just didn’t see it.

Is it possible to launch classical extra only when genre=classical (to not update ‘stamp’ or ‘artists_options’ on every track) ?
(Question from a newb :slight_smile: )

Not at the moment, AFAIK. That would require Picard to selectively launch plugins depending on tag contents.
OTOH it might be possible within CE to by-pass it’s own processing if genre!=classical. That would assume that the genre tagging is all correct to start with - part of the plugin’s functionality is to determine if the music is classical.
Since you would have to pre-tag your files accordingly, I would have thought that an easier solution is to use separate folders for classical and non-classical music and only use the plugin for the classical folders.
That said, I use it for non-classical music too. Where there are no works, it runs at a reasonable speed and I find the artists section still adds value.
Another option, if you let it run on everything, is to do any subsequent clean-up you need using tagger scripts - these will run after the plugin.

2 Likes

Hi. I’ve got a problem with Picard 2.3.2 on Windows crashing and I think it’s Classical Extras that is causing it. It happens consistently when I hit the “Tagger” button in my browser for https://musicbrainz.org/release/08254841-645d-4141-b5ef-a63d6a1b8aae and I believe it’s the work in medium 30, track 3 which is the trigger.
I’ve run Picard with the -d option redirecting stdout and stderr to a file and here are the last few lines of console output:
D: 15:20:47,110 webservice.ratecontrol.decrement_requests:146: (‘musicbrainz.org’, 443): Decrementing requests to: 1
D: 15:20:47,111 webservice.handle_reply:434: Received reply for https://musicbrainz.org:443/ws/2/work/c9b692bf-5d38-3ee1-b1cd-2520bc2e9c81?inc=work-rels+artist-rels+label-rels+place-rels+aliases+tags: HTTP 200 (OK)
The file has:
Traceback (most recent call last):
File "picard\webservice_init
.py", line 462, in process_reply
File "picard\webservice_init
.py", line 449, in handle_reply
File "C:\Users\James\AppData\Local\MusicBrainz\Picard\plugins\classical_extras.zip\classical_extras_init
.py", line 5012, in work_process
ValueError: (‘d211fc24-75ae-4c06-978a-27048fa37877’,) is not in list
This was in 2.0.7 but I’ve just installed 2.0.10 and the issue is still there.
Let me know if you need any more info. Thank you.

1 Like

I’ll look into it when I get a mo. My head is full of php and js at the moment, which is very bad for my python!

A post was split to a new topic: Count which composer has the most tracks with tagger script

I’ve been alerted to a small bug in the plugin that affects tracks where Picard cannot supply a work. I’ve done a PR for it (https://github.com/metabrainz/picard-plugins/pull/261). Hopefully it will get approved soon (@outsidecontext ?).

1 Like

Thanks @MetaTunes. I merged your changes. We just need to update the website, but we need to do this anyway. @zas, can you take care of this?

If I’m tagging an album where 10 out of 20 tracks contain the work year and the others don’t, and I use another source to fill in the blanks. Is there a way for CE to recognize this? I refer to that tag to format other tags and as I understand it, period is also inferred from this tag. If I refresh using ctrl+R the info I added disappears. I’ve tried saving the album with all the work year tags filled in and then reloading the album and also using “Add to ‘Preserve Tags’ list” but it was unsuccessful.

Have you tried adding the tag you want to preserve in the 3rd box on the “Tag mapping” tab of CE (and omitting it from the main Picard “preserve tags”) option?