Mp3Tag fails to read ID3 v.2.3

Hi All,
When I use TagScanner v6.0.4 to read an album with 10 songs (all MP3), it reports the tag format to be ID3v.1.1 ID3v.2.3 APEv2
All looks good and the tracks play well.

If I open the same album in Mp3Tag, it reports APEv2 (ID3v1 ID3v.2.3 APEv2)
In that order including the parenthesis. But it fails to show the album art, and all tagged fields are missing (blank).

If I open the same album in MediaMonkey 4.1.11.1783 everything looks just fine.

I am a long time Mp3Tag user and I have always trusted it to be correct and more accurate that other programs, but now I'm beginning to doubt....

Am I doing something wrong?

Search there ...
https://www.google.de/search?q=site%3Aforum...APE+ID3v2+ID3v1

DD.20160302.1039.CET

I suspect your APEv2 tags are bad. It's easy to check. Go to Options/Tags/Mpeg and uncheck APE in the READ section. Refresh and if your fields are back those APE tags are empty. They're not widely used on MP3 files and I don't understand why Mp3Tag reads them last OR why it overwrites populated fields in the GUI with blank fields. Maybe someone can explain that.

Many thanks for your advice, Rijkstra :slight_smile:

I found a source for this problem and it is Mp3Gain. It will write track gain information to APE tags and omit the other fields! So if you use Mp3Gain and I do, I advise not to read or remove APE tags in Mp3Tag. Write them? I say only if necessary. Unfortunately, Mp3Tag doesn't have the option to update them only if they exist.

Mp3Tag definitely needs an option to change the read priority of APE tags.

Yes, I do use MP3Gain.
But I never use APE, only ID3.
If I find APE in my files, I remove it using Mp3Tag so that all files in an album are neatly tagged using only ID3 v1 and/or v2.3 (v2.4).

Still my problem is that the Plex media scanner report error in many files:

WARNING - MediaInfo and FFmpeg disagree on the number of audio streams in the file (ffmpeg: 1, mediainfo: 0)

The result is that Plex ignores the ID3 tag content completely in these files. I have not found a way to correct this discrepancy using Mp3Tag or any other program.

The stream has nothing to do with MP3tag.
Try MP3diags, mp3val and/or Foobar2000

Also, I would be careful with V2.4 tags as e.g. Windows Explorer (and WMP) do not read them at all.

And when you remove APE, you remove the information that Mp3gain put there. It won't know it's been there before. BTW, I don't advise writing ID3v2.4, Windows has issues with it.

I think that this option is already there: see Tools>Options>Tags>Mpeg.
You can control the priority with the settings in the "read" section.
As soon as you have contents in one of the tag versions, it overwrites the contents of the internal representation of the field variables in the already known way:
APE>V2>V1
If you had the option to e.g. move the priority like this:
V2>APE>V1
MP3tag would behave just like switching off the reading of APE altogether. That is why I think the option is already there.

What I suspect is behind your suggestion: store whatever data you find in any field in the MP3tag field variables and if on tag version has no data for a field, use the information from that tag version that has.

Yes, an option is needed for that because there are too many opportunities for incomplete APE tags to exist, Mp3Gain being the likely culprit that led to the OP's problems. He is right that most other programs that read tags do not have this problem. I've been using Winamp for a long time and it NEVER prioritizes any blank field over a populated one. It also lets you look at all the tags in a tabbed setup.

This forum thread carries the everlasting theme, why Mp3tag does not treat the tagging systems ID3 and APE the same.
I think that the APE tag today does not have any value or more comfort against the ID3 tag.
I do not apply the APE tag since years, therefore there are no problems within Mp3tag, as a side effect.
I use the foobar2000 user interface to calculate perfect replay gaining to be hold in a ID3v2 tag.

But there is oldish tagging and replay gaining software on the market, which still supports the tag type APE. And there are many users in the world, who works with such software.

Nevertheless the tool mp3gain.exe version 1.5.2 can be set up to apply the tag-type ID3v2 instead of the oldish tag-type APE.
Usage: mp3gain.exe [options] [<infile 2> ...]
options:
/s a - use APE tag for MP3 gain info (default)-type
/s i - use ID3v2 tag for MP3 gain info

When using the ID3v2 tag, there are no problems with the Mp3tag priority system APE > ID3v2 > ID3v1.

DD.20160303.1119.CET

Even though mp3gain /? does not list the /s i as an available option, I do belive what you write (assuming that this is a hidden feature of mp3gain that you have discovered). However, my mp3gain does not seem to recognize this switch when I type "mp3gain /s i" (without the quotes) all it says is:

C:\Program Files (x86)\MP3Gain>mp3gain /s i
mp3gain version 1.4.6
copyright© 2001-2004 by Glen Sawyer
uses mpglib, which can be found at http://www.mpg123.de
Usage: mp3gain [options] [<infile 2> ...]
--use /? or /h for a full list of options

Could you please provide the syntax to permanently set mp3gain to only use ID3?

I have MP3Gain 1.4.6 and the ID3 option doesn't appear to work. Instead of upgrading I went to foobar2K. Thanks for the tip.

Is there a field in Mp3Tag for Gain? I couldn't find one in Customize Columns...

I tried to re-create the MP3 stream in a couple of MP3 files using Foobar2000, but that did not fix the bug. What else....?

Excerpt from file "%appdata%\Mp3tag\data\columns.ini"

width=70 numeric=1 name=AlbumGain value=%REPLAYGAIN_ALBUM_GAIN% sort=$num($replace(%REPLAYGAIN_ALBUM_GAIN%,'.',),1) field= enabled=1 width=70 numeric=0 name=AlbumPeak value=$replace(%REPLAYGAIN_ALBUM_PEAK%,',','.') sort=$replace(%REPLAYGAIN_ALBUM_PEAK%,'.',,',',) field= enabled=1 width=70 numeric=1 name=TrackGain value=%REPLAYGAIN_TRACK_GAIN% sort=$num($replace(%REPLAYGAIN_TRACK_GAIN%,'.',),1) field= enabled=1 width=70 numeric=0 name=TrackPeak value=$replace(%REPLAYGAIN_TRACK_PEAK%,',','.') sort=$replace(%REPLAYGAIN_TRACK_PEAK%,'.',,',',) field= enabled=1

DD.20160303.2012.CET

Thanks! I'm still wondering why I can't find those values in Customize Columns ...

I have Mp3Gain.exe v1.5.2 now and have decided I'm done with it unless I can also get a version of Mp3GainGUI.exe (I have v1.2.5) that will pass the [/s i] parameter to it. I am liking foobar2000 much more and it is much faster.

C:\Program Files (x86)\MP3Gain>Mp3Gain /?

Mp3Gain version 1.5.2
copyright© 2001-2009 by Glen Sawyer
uses mpglib, which can be found at http://www.mpg123.de
Usage: Mp3Gain [options] [<infile 2> ...]
options:

    /v - show version number
    /g <i>  - apply gain i without doing any analysis
    /l 0 <i> - apply gain i to channel 0 (left channel)
              without doing any analysis (ONLY works for STEREO files,
              not Joint Stereo)
    /l 1 <i> - apply gain i to channel 1 (right channel)
    /e - skip Album analysis, even if multiple files listed
    /r - apply Track gain automatically (all files set to equal loudness)
    /k - automatically lower Track/Album gain to not clip audio
    /a - apply Album gain automatically (files are all from the same
                  album: a single gain change is applied to all files, so
                  their loudness relative to each other remains unchanged,
                  but the average album loudness is normalized)
    /m <i> - modify suggested MP3 gain by integer i
    /d <n> - modify suggested dB gain by floating-point n
    /c - ignore clipping warning when applying gain
    /o - output is a database-friendly tab-delimited list
    /t - writes modified data to temp file, then deletes original
         instead of modifying bytes in original file
    /q - Quiet mode: no status messages
    /p - Preserve original file timestamp
    /x - Only find max. amplitude of file
    /f - Assume input file is an MPEG 2 Layer III file
         (i.e. don't check for mis-named Layer I or Layer II files)
    /? or /h - show this message
    /s c - only check stored tag info (no other processing)
    /s d - delete stored tag info (no other processing)
    /s s - skip (ignore) stored tag info (do not read or write tags)
    /s r - force re-calculation (do not read tag info)
   <b> /s i - use ID3v2 tag for MP3 gain info</b>
    /s a - use APE tag for MP3 gain info (default)
    /u - undo changes made (based on stored tag info)
    /w - "wrap" gain change if gain+change > 255 or gain+change < 0
          (use "/? wrap" switch for a complete explanation)

If you specify /r and /a, only the second one will work
If you do not specify /c, the program will stop and ask before
applying gain change to a file that might clip

I'm done with Mp3Gain regardless. The [/s i] parameter writes ID3v2.4 and there is no option for ID3v2.3!

I sincerely thank you for clearing up this facts. Maybe there is a way to persuade the author to reconsider and add an option for 2.3 ?
In the mean time, I've had it too and say goodbye to MP3Gain after long time use. It has ruined my library slowly which is now full of APEs (monkeys).

Does anyone have a recommended alternative to MP3Gain?

I was amazed at how much faster foobar2000 (v1.3.9 2015) is than MP3Gain. Add an option for ID3v2.3? I have the latest MP3Gain.exe version and it is dated 2009! v1.4.6 that is now freeware is dated 2004 and worth every penny. MP3GainPRO is available, but it is nothing at all like MP3Gain and appears to do nothing with tags including deleting erroneous (because it may have altered the gain) tag data left over from MP3Gain. MP3GainPRO v107 is not dated, but the support blogs were closed in 2013.