• Авторизация


kaffeine, mp3 и теги 12-01-2009 04:23 к комментариям - к полной версии - понравилось!


Оригинал сообщения
Дело было так. Запускаю свой любимый медиа-плеер Kaffeine (который,

если будет так жрать ресурсы скоро будет заменен на AmaroK), кидаю туда

папку с альбомом “Изгой” многоуважаемой “Алисы” а подлый кофейный

элемент мне вместо названия альбома/песни - кракозябры. Ну и

закручинился я тогда. Конечно, после 2 лет использования Linux я на

всякое насмотрелся и с некоторой вероятностью даже могу бегло читать

эти самые кракозябры (не могу лишь KOI-8, отображенную как UTF-8), но

заниматься этим постоянно, как говорят герои Зощенко, “скушно”.
Вылазка

в диалог настроек, а потом, что греха таить, и в конфигурационный файл

не дала никаких полезных знаний и, тем более, возможностей отучить

Kaffeine выражаться. Тогда был взят Великий Админский Бубен, и с ним на

перевес владелец оного был отправлен по всем известному адресу -

google.ru. После копания в выдаче по запросу “кодировка тегов” были

обнаружены и прочитаны сотни комментариев к релизу Amarok за номером

1.4.9, который отчего-то перестал понимать русские теги. А выяснилось

все быстро - товарищи разработчики посчитали перекодировку тегов

(которая, судя по отзывам и работала-то криво) костылем и решили строго

следовать стандарту. А по стандарту IDv3 в тегах должен применяться

Unicode и только! Но тут конечно руку приложила M$ и с её нелегкого

почина теги стали записываться в кодировке, соответствующей системной.

Более того, WinAMP 5, Foobar2k и Windows a Player не умеют правильно

отображать теги, записанные в UTF8, т.е. не соответствуют стандартам.

Выход вроде бы был найден на тех же форумах - утилита EasyTAG. Я скачал

и установил её (из исходников - дружно благодарим mandriva за скудность

репозиториев), но эта, с позволения сказать, тварь мне испортила

половину тегов моей любимой группы “Ария” неправильно распознав

изначальную кодировку. Продолжать общение с EasyTAG я не захотел и

вытянул из интернета скромный java-бинарник id3iconv-0.2.1.jar,

написанный неким китайцем, у которого возникли аналогичные проблемы. Ну

а т.к. Unicode - универсальная кодировка, то я вполне мог прикрутить

его и к моей повозке. Синтаксис команды следующий:

java -jar id3iconv-0.2.1.jar -e <изначальная кодировка> <mp3-файлы>

Как

вы уже догадались, работает из консоли. Зато быстро. Но тут такая

проблемка, хоть и малая - у меня папка Music занимает 10ГБ и является

полностью рассортированной по исполнителям и альбомам коллекцией,

просто указать список файлов для перекодирования я не могу. Что же я

сделал?
Вспомним, что shell в Linux считается практически скриптовым языком и я могу создавать сколь угодно сложные
Как вы


конструкции из команд. Например, я могу задать поиск всех mp3-файлов в

нужной папке и перенаправить выдачу программы на вход той же самой

id3iconv. Например, так

find /media/sda5/Music/ -name “*.mp3″ >java -jar id3iconv-0.2.1.jar -e Cp1251

Но

это не срабатывает - что-то там я с синтаксисом перемудрил. В итоге

решение просто и элегантно: записываем список в файл и натравливаем на

него id3iconv.

find /media/sda6/Music -name “*.mp3″ > listmp3.txt

Теперь в файле listmp3.txt, куда мы перенаправили выдачу утилиты find, мы имеем список файлов с полными путями.
Дело за малым:

java -jar id3iconv-0.2.1.jar -e Cp1251 < listmp3.txt

И все. Кидаю любую папку из коллекции в Kaffeine - имею пристойные теги =)


[682x439]

[показать]LIci WP - WordPress crossposting plugin
вверх^ к полной версии понравилось! в evernote


Вы сейчас не можете прокомментировать это сообщение.

Дневник kaffeine, mp3 и теги | PaladinOfSky - Путь радикала | Лента друзей PaladinOfSky / Полная версия Добавить в друзья Страницы: раньше»