Не было только времени решить этот вопрос раз и навсегда. Сегодня выкроил время и немного погуглил. Меня давно раздражала проблема кривого отображения id3 тегов на русском в mp3 файлах в iTunes.
Вообще нормальный современный софт для работы с mp3 должен использовать id3 теги версии 2.x. В ней реализована поддержка юникода (универсальной кодировки, просто говоря). Но как ведется не всегда вещи делаются как надо, поэтому достаточно часто попадаются mp3 файлы со старым форматом тегов id3 v1.x. Нам же нужно убить двух зайцев сразу – конвертировать теги id3v1 в id3v2 и конвертировать саму кодировку текста: из cp1251 в utf-8 (юникод). iTunes может только конвертировать id3v1 в id3v2, поэтому нужна сторонняя программа, которая разберется с кодировками.
Итак, быстро нашелся один вариант, описанный на macfaq.ru. Используется терминальная утилитка для конвертации тегов – id3iconv, работающая на Java.
Не могу сказать, что я не люблю Java, но этот вариант мне не сильно понравился. Особенно увидев что для каждого файла авторы предлагают запускать отдельный java-процесс.
find ~/Music/ -name "*.mp3" -exec java -jar ~/Desktop/id3iconv-0.2.1.jar -e cp1251 {} \;
Совет нашёл у dobrych