User-defined Field Mappings

Using the Mp3tag Options dialog | Tag Panel menu item, you can add "Name in Mp3tag" fields to the Tag Panel like DISCNUMBER. The "Name:" you can call anything. The "Field" is a drop down list of "Name in Mp3tag" fields.

I am not clear how this relates to User-defined Field Mappings i.e. the Mp3tag Options dialog | Tags | Mappings which have columns Tag, Source, and Target.

When you create a new entry, the default for Tag is "ID3v2". Can the Tag also be either "ID3v2.3", "ID3v2.4", "WMA", "iTunes", "WMP 10", or Winamp. If so, why is it not a drop down list?

Is the Source a name found in the "Name in Mp3tag" column like DISCNUMBER? If so, why is it not a drop down list of "Name in Mp3tag" values like DISCNUMBER.

Is the Target a "Name:" you created for the Tag Panel using Mp3tag Options dialog | Tag Panel menu item?

Thanks in advance.

You would use the field name that Mp3tag uses internally when defining the Tag Panel field. From the Options > Tags > Mapping dialog this would be the 'Target' name.

According to the Help, the tag type can be one of the following:

APEv2, ID3v2, MP4, VorbisComment or WMA

There wouldn't be much reason to have mappings for both ID3v2.3 and ID3v2.4 version tags, since Mp3tag will only write one of them, as defined under Options > Tags > Mpeg > Write.

That's a very good question. The Tag type really should be a drop down list.

Where do see the word 'Source"? I see it only in the Options > Tags > Mapping dialog. The Source in the tag mapping options is the actual field name written to the file. You don't want to use that anywhere in Mp3tag.

In the Tag Panel field definition, you don't really need to worry about the drop down list, since you can type anything into the field definition for the Tag Panel. Again, use either the Target name from the tag mapping or else use one of the other internal field names that Mp3tag uses.

I think you have the logic a little backwards. Define any mappings you need first, then use the Target name to define a Tag Panel field.

Be careful mapping names that Mp3tag already uses for fields. It can get confusing if you do and give unexpected results. See this Help page for the names that Mp3tag uses.

Thank you for the valuable feedback.

If I understand you correctly, User-defined Field Mappings is only for creating new ID3v2.4 tags. Say you wanted to create a new ID3v2.4 tag called "TDOG" which is your dog's name. You would do the following:

Tools menu | Options menu item | Mp3tag Options dialog | Tags | Mappings
Press Add Fields button
Fill in the following fields:
Tag: ID3v2
Source: ?
Target: TDOG

I am not sure what to put in Source?

I would then need to have it show in the Tag Panel.
Tools menu | Options menu item | Mp3tag Options dialog | Tag Panel
Press Add Fields button
Fill in the following fields:
Field: TDOG
Name: My dog's name

To verify that TDOG was placed in the MP3 file do the following:
View menu | Extended Tags
You will see that TDOG is one of the tags.

Thanks in advance.

I don't believe Mp3tag can read or write four-character ID3v2 field names that it hasn't already internally mapped to one of its recognizable names, even if you use the tag mapping feature. I'm not sure why that is. If you were to try to create a field named TDOG (with or without mapping the name) it will actually read and write a TXXX field with a description (name) of TDOG.

So, let's say you're not really interested in creating a field named TDOG (which, to be honest, no program is going recognize anyway). Instead you want to have a custom TXXX field with some name for your dog. You may as well just use a recognizable name like "DOG". And since Mp3tag will write it as a TXXX frame anyway, there's no need to map the name in the user-defined field options.

Thank you for the valuable feedback.

It would be helpful to me if we look at a specific example.
What would I need to fill in to create my own tag?
Can the tag have any number of characters, or must it be four characters?
Please pick a tag name and fill in the following ?s so I see what is required.

Tag name: ?

Mappings - Tag: ID3v2
Mappings - Source: ?
Mappings - Target: ?

Tag Panel - Field: ?
Tag Panel - Name: ?

Thanks in advance.

The field name does not have to be four characters in length. It can be any length you like.

There is no need to have a user-defined mapping in Mp3tag for the field name. (I think this is what you're getting hung up on, for some reason.)

And you don't even have to use the Tag Panel to read or write the field. You can use the field name in the Extended Tags dialog, in an Mp3tag action, in any of Mp3tag's scripting functions, etc.

If you do want a Tag Panel field to read and write your custom field, it's simple. Say you want to call the field "DOG". That's what you put in the definition for "Field:". The text for "Name:" can be anything you like (as you noted in your original post), it's just the label that you see in the Tag Panel. So you might enter "My Dog's Name:".