So something about your system or the files is making
easytag crash. Then it's a problem with that particular program, not with my advice, and it would've been polite to mention that.
If you can post the output you get when you run it in a shell it may be possible to to diagnose the problem. Don't forget to do a google search too to see if anyone else is having the same problem, and whether there are any fixes already available.
Otherwise, there
are other tag editors out there that may be able to do the job. I often use
kid3 myself, for example (use the
kid3-qt version if you don't need the full kde integration).
I just did a quick test, however, using an mp3 file I converted to shift-JIS in easytag, and while it can
write tags properly in both id3v1 and id3v2 tags, it can only be set to read arbitrary encodings from id3v1 tags. id3v2 tags set to anything other than unicode* or iso8859-1 are unsupported and you only get mojibake with them.
(*It appears that id3v2.3 only supports UTF-16, but that id3v2.4 also supports UTF-8. I haven't tested this personally, and it's probably not an issue, as I'm sure all tag readers know how to interpret them properly. id3v1 tags aren't designed for storing international encodings, BTW, but they can store the raw strings, which is why so many programs let you interpret them according to different encodings).
That could still be enough to correct your files though; if they contain both v1 and v2 tags, then you can copy the readable v1 tags to the v2 fields, and at least get a partial correction.
In other news, I've also just discovered
mid3iconv, supplied with the
python-mutagen package, which is a cli program designed for converting encodings. I just ran a test like this (using -d and -p so that it only outputs the changes that would be made), and everything worked except the comment, for some reason. There seems to be something about the comment tag format that's confusing it.
Code:
mid3iconv -p -d -e SHIFT-JIS file.mp3
So if you try it, be sure to operate on copies of the files, at least until you're sure it's working correctly.
And here's one more option for you, although it's a bit more work. If you get a command-line program like
id3v2 that outputs tag data in a useful way, then you can run it through the regular
iconv to convert it into a clean utf-8 encoding, and use whatever tagging program you like to manually update the files accordingly. This command worked cleanly on my test file:
Code:
id3v2 -l file.mp3 | iconv -f SHIFT-JIS -t UTF-8 >> tagile.txt
The last part is there to redirect (appending) the output to a text file, of course.