PM123's MPEG Audio Decoder

The MPEG Audio Decoder can handle MPEG 1, MPEG 2 and MPEG 2.5 files with Layer I, Layer II and Layer III audio data. It uses the free mpg123 decoder engine.
It can read and write ID3v1.x and ID3v2.x tags and has an advanced ID3 editor that replaces the standard tag dialog of PM123 for MPEG audio files.

Configuration

Configuration Dialog

ID3v1.x Tags

Read ID3v1.x tag

Disable this option if you want PM123 to always ignore the ID3v1.x tags.

Prefer ID3v1.x tag

If you enabled both, ID3v1 and ID3v2 tags, Set this option if you want to prefer the Information from the ID3v1 tag if both is available in a file.
It is recommended to prefer the ID3v2 tag.

Automatic encoding detection

With this option enabled PM123 tries different encodings when reading the tag. A heuristic then chooses the most likely one. PM123 tries the encoding selected below and the system prepared codepages (at most two on OS/2).
Since ID3v1 tags do not have a well defined encoding, this can help to avoid garbled international characters. However it is only a heuristic which might not always hit the mark. It is recommend to use ID3v2 tags in case of ambiguities.

Encoding for reading and writing

This is the default encoding used for dealing with ID3v1 tags. If you edit tags they are always written using this encoding. When tags are read, also the system codepages may be used if the option Automatic encoding detection is turned on.
The most popular encoding for ID3v1 tags is ISO-8859-1, most likely because it is very similar to the Windows default codepage in western countries. So it is recommended to let this setting at it's default unless you explicitly need something else.

ID3v1 tag on write
leave unchanged
ID3v1 tags are not touched.
write always
Meta information will always be written as ID3v1 tag. Because of the limitations of ID3v1 some information might be silently truncated. When all meta fields are empty, the tag is deleted.
This is the default setting.
only when no ID3v2 tag is written
Same as 'write always' but if you write a ID3v2 tag anyway, the ID3v1 tag is deleted.
delete always
This will remove any ID3v1 tag once the meta information is written to the file.

The selected behavior applies unless you select something else in the ID3 tag editor.

ID3v2 tags

Read ID3v2.x tag

Disable this option if you want PM123 to always ignore the ID3v2.x tags. This is not recommended.

Prefer ID3v2.x tag

If you enabled both, ID3v1 and ID3v2 tags, Set this option if you want to prefer the Information from the ID3v2 tag if both is available in a file.
This is recommended.

Default encoding on read

Overwrite the default encoding of ID3v2 tags (ISO-8859-1). This will only apply to information that is non Unicode.
Since ID3v2 tags must not contain anything else but ISO-8859-1 and Unicode, it is strongly recommended to leave this option at it's default value.

ID3v2 tag on write
leave unchanged
ID3v2 tags are not touched.
write always
Meta information will always be written as ID3v2 tag. When all meta fields are empty and the tag does not contain any frames that are not shown in the tag editor, the tag is deleted.
This is the default setting.
on demand (including special characters)
The ID3v2 tag is only written if the meta information does not fit into the ID3v1 tag or it contains non ASCII characters which might be ambiguous with respect to the encoding.
on demand
The ID3v2 tag is only written if the meta information does not fit into the ID3v1 tag.
delete always
This will remove any ID3v2 tag once the meta information is written to the file.
Attention! This will also destroy any other information stored in the ID3v2 tag, like Replay Gain, covers or lyrics.

The selected behavior applies unless you select something else in the ID3 tag editor.

Encoding on write

When writing ID3v2 tags the selected encoding is used. ID3l2 only supports ISO-8859-1, UTF-8 and UTF-16 aka UCS-2 with or without Byte Order Mark. It is recommended to use UTF-8 to have full Unicode support without growing the tags significantly.