How to add custom tags to metadata pane?

It seems like it should be pretty obvious task but I still can’t figure it out.
I want to add custom tags in the metadata view, like ‘Bits per sample’.
So I would right click in the metadata pane, click Add New Tag... and then no matter what I enter in the dialogue box, I can not have Picard display my custom tag.

Is there a way to add custom tags in the metadata pane?

Version 2.5.6 on MacOS Catalina

You also need to specify a value, if the tag is empty it won’t be show in the metadata list.

We should probably make this a requirement for closing this dialog or at least show a message.


But should not the value for ‘Bits per sample’ already be there by default? Like 16 or 24 or whatever it is?
I actually tried inputting values into the value field like ‘bits per sample’, ‘bitspersample’ and various other combinations but it just adds a tag ‘Bits per sample’ with exactly the same text from the field instead of actual data from the file.
Screen Shot 2021-01-08 at 21.53.27

Screen Shot 2021-01-08 at 21.53.38

I guess this pane is not “dynamic” so to speak, it can’t dynamically generate tags from files. So I have to run a tag script to populate the tag ‘Bps’ with actual file data and only then the metadata pane will display this ‘Bps’ tag.
Am I more or less correct with this assumption?

I guess my assumption was correct. I quickly whipped up a Tagger script

$set(Sample Rate,%_sample_rate%)

And ran it on some tracks and now I can see correct data for ‘Sample Rate’ and ‘Bits Per Sample’ tags for these tracks.

Yes. The tag panel of a selected file shows you all the tags that have been read for the file (original value column) or all the tags that will be written if you save it (new values column).

The purpose of adding a new tag there is to have a new tag actually saved to the file. Sample rate and bits per sample are also metadata from the files, but not stored as a normal tag (it is usually part of some format specific header data). Picard does not show it in the tag list, but you can see it in the info dialog.

Note that when you do e.g. $set(BPS,%_bits_per_sample%) you will also see this in the metadata view now, but this also means it will be stored into the file on saving as an additional tag “BPS”.


Thank you for a very detailed answer!

Another quick question - is there a difference between so to speak ‘standard’ and ‘non standard’ tags and the way they are handled?

When I used the script $set(Sample Rate,%_sample_rate%) it set it to
Sample Rate | 44100 (notice capitalization)
But when I closed and then reopened that folder in Picard with the same script enabled, I see the following
Screen Shot 2021-01-10 at 02.35.20
So it lowercased my previous tag and now thinks that Sample Rate (with capitalization) is a new tag.