MP3 Diags is a GUI-based application that allows end-users to identify issues with their MP3 files, fix some of the issues and make other changes, like adding track information. It also lets you "look inside" an MP3 file.
Unlike some programs that are designed to deal with a single topic (like fixing VBR headers or adding cover art), MP3 Diags is a one stop solution that identifies more than 50 different issues in MP3 files and provides the means to fix many of them (well, not everything is fixable; you can't make a 64kbps file sound like a 256kbps one.)
Some of the more important issues that are found:
* broken tags / headers / audio
* duplicate tags / headers
* incorrect placement of tags / headers (ID3V2, ID3V1, LAME, Xing, ...)
* low quality audio
* missing VBR header
* missing track info / cover art
* broken track info / cover art
* missing normalization data
* character encoding issues (for languages other than English)
Some of the fixes and changes that MP3 Diags can do:
* Adding / fixing track info, including album cover; information can be retrieved from several sources: Internet, clipboard, file name, local files, and (obviously) keyboard
* Correcting files that show incorrect song duration
* Correcting files in which the player cannot seek correctly
* Converting characters for non-English names
* Adding composer name to the artist field, for players that don't handle the composer field
* Renaming files based on their fields
* Changing word case for track info
From Author: in May 2008 I decided to improve my MP3 collection, by properly tagging all the files (including composer data), adding album cover art, fixing VBR headers, re-ripping albums that have poor sound quality, and more. I tried several programs, but I wasn't happy with how they worked. None of them did all the things that I wanted, and some corrupted the files. Worse, none allowed me to "look inside" an MP3 file, so the best way to see what was wrong with a file was to open it with a hex editor and try to see how some specifications mapped to the various pieces of the file. After a while I decided to give up on the tools I was experimenting with and write my own. The result is MP3 Diags.
There are many programs that create and edit MP3 files, and many of them are broken. As a result, many MP3 files have various issues, ranging from values that are not standards-conforming but that are tolerated by all players and tools (so they look perfectly fine to the end user) to files that play correctly only on some players or even cause players and tools to crash. Many of the tools are quite tolerant of errors in an MP3 file, but some are less so. Also, there are reasons to change a file even if it technically doesn't have errors; for example you may want to add the image on album cover, or the lyrics.
The high-level structure of an MP3 file is quite simple: a sequence of blocks of data, each of them with a well defined function and format. MP3 Diags calls these blocks of data "streams" (for lack of a better word.) Some of the streams are formally known as "headers" or "tags". Here's the list of streams that MP3 Diags handles:
1.MPEG audio stream. This is the most important, because it contains the actual audio data. Normally it's also the biggest. MP3 files should contain "MPEG 1 Layer III" data, but sometimes they have something different (e.g. "MPEG 1 Layer II"). MP3 Diags should be able to handle these files as long as they have an ".mp3" extension. Note, though, that very little testing was done for files that are not "MPEG 1 Layer III".
2.ID3V1 tag. This is an old and quite limited tag that stores track information (artist, title, ...)
3.ID3V2 tag. Also stores track information, but it is a lot more flexible than ID3V1 and allows storing of many things that can't be stored in ID3V1, like cover art, rating, or composer. An ID3V2 tag is made up of a header and a number of frames, each frame storing a particular value (artist, title, ...) There are several versions of it, and MP3 Diags can read data from ID3V2.3.0 (which seems the most popular) and from ID3V2.4.0, and can write to ID3V2.3.0
4.Ape tag. Another tag that stores track information. I tried to implement reading from it, but I don't have any file that uses the tag for track info, so I don't know how well that works. This tag is also used to store normalization info, which is handled by MP3 Diags and seems to be working fine.
5.Lyrics tag. Track info, lyrics, more. This is not fully supported; some fields are currently ignored, but basic fields like artist name or track title are used. It cannot be written to; it is kept unchanged, so it should be usable by a player after MP3 Diags processes a file that has such a tag.
6.Xing header. Information about the audio stream (size, quality, ...). Some players get confused by VBR files that don't have a Xing header, so it should be added if it's missing.
7.LAME header. An improved version of the Xing header, which is found in files created with the popular LAME encoder. Currently MP3 Diags doesn't use the extra features, and treats LAME and Xing headers the same.
8.VBRI header. Also for handling VBR files, but many tools don't recognize it, so switching to a Xing header is usually a good idea (and MP3 Diags can do it.)
9.Null stream. A sequence of zeroes that doesn't belong to other stream. MP3 files shouldn't contain null streams.
There shouldn't be multiple instances of a stream type in a file (one audio and at most one ID3V1, at most one ID3V2, ... )
There are some restrictions regarding the order in which these streams may come. Among them:
ID3V2.3.0 must be at the beginning of the file
ID3V2.4.0 may be at the beginning or at the end of the file
The Xing, LAME and VBRI headers should be located right before the audio stream (so there may be only one of them in a file)
An MPEG audio stream is divided into thousands of frames, each frame containing the audio data for a small part of the whole song.
One important characteristic of an MPEG audio stream is its bitrate, meaning the amount of memory or disk space that is allocated to a second of sound. Bitrates are normally measured in kilobits per second (kbps) and values from 128 to 256 or 320 are usually used in MP3 files. Roughly speaking, the higher the bitrate - the better the quality, but there's more to it. There are various encoders (programs or libraries that create MP3 audio) and some of them are better than others at the same bitrate, meaning that given some input (usually an audio CD or a WAV file) both produce files of a similar size, but one may sound better. Some encoders have parameters that define a tradeoff between the quality of the MP3 it creates and the time it spends to do it. Also, some encoders may be better than others only for some kinds of music.
Another thing worth mentioning is that there are 2 kinds of audio: constant bitrate (CBR) and variable bitrate (VBR). With CBR all the frames are compressed with the same bitrate, while with VBR the bitrate may differ from one frame to another. The idea of doing VBR comes from the observation that some parts of a song may sound pretty good when they are compressed at 128kbps, while other parts need 320kbps. There are 2 conflicting needs: on the one hand, we want the files encoded at a high bitrate, so they sound better, yet on the other hand we want them at a low bitrate, so they take less space. VBR offers a nice compromise, by encoding various parts of the file at various bitrates, so on average the whole file has a lower birate than a similarly-sounding CBR file.
While VBR files are nice, they introduce another opportunity for encoders and other tools to mess things up, and some of them gladly take advantage of the offer.
The license of this software is Free, you can free download and free use this music manager software.