04.11.2007 в 21:44 — Viscount
В наше время не редко попадается музыка со старыми или неправильно отформатированными id3-тэгами. Казалось бы и ладно... но ведь частенько бывает, что наши любимые аудио плееры отказываются по-русски читать это безобразие. Конкретный пример: довольно известный плеер Amarok, начиная с версии 1.4, перестал воспринимать тэги в неправильных кодировках. В итоге многие получили полные каракуль плэйлисты. Это руководство научит вас справляться с этой проблемой в Linux, используя консольные утилиты find и mid3iconv.
Для начала убедитесь, что в вашей системе имеются:
find
Скорее всего она у вас уже установлена. Если же нет, то установите. Это стандартная программа и наверняка она есть на диске с вашим дистрибутивом. (В Debian пакет называется findutils.)
Mutagen
Эту программу можно скачать по адресу . (В Debian есть пакет и называтся он python-mutagen)
На всякий случай можете сделать бэкап своей mp3 коллекции, хотя мне он ни разу не понадобился. Теперь, когда всё готово, можно вводить, наконец, волшебную команду:
find /путь/до/вашей/mp3/коллекции -iname '*.mp3' -print0 | xargs -0 mid3iconv -eCP1251 --remove-v1
Команда рекурсивно пройдётся по всем mp3 файлам в указанном каталоге, удалит старые id3v1 тэги и запишет вместо них id3v2 с правильной кодировкой. Готово :)
Стоит заметить, что есть и другие способы увидеть русские буквы в плэйлисте. Например можно пропатчить taglib патчем от проекта RusXMMS или подсунуть плееру особенные шрифты. Но это не совсем решение проблемы, скорее подстраивание под неё.
Комментарии
Я так и решил проблему тег своей обширной фонотеки
все тип-топ
удачи меломанам!
А еще можно воспользоваться пакетом easytag, который кроме смены кодировки умеет еще сам прописывать название/исполнителя/альбом/год если таковые отсутствуют в теге.
/me использует exfalso для подобных вещей
easytag
Use Easytag and don't f**k your mind.
А ваще храните музло в ogg vorbis, в нём отродясь не было проблем с кодировкой тэгов.