| Shoorick ( @ 2007-10-25 16:16:00 |
| Current mood: | |
| Current music: | Григорий Данской – Книга Песен. На верхней боковой – Грустные размышления медитативного характера о |
| Entry tags: | free software, freebsd, mp3, ogg, perl, software, unicode, кодировка, программизм |
Мартышкин труд
Видя бардак с кодировками ID3-тэгов и помня, что, по стандарту, там не может быть ни UTF-8, ни КОИ-8, нашёл радикальный, но вполне корректный путь: перегнать коллекцию из mp3 в ogg vorbis, где с тэгами нет такого бардака, ибо они всегда в UTF-8. Да и сжатие там получше. Да и формат этот открытый...
Поискал конвертер в портах при помощи make search и, не заметив его в толпе софта, стал писать свой: традиционно, на перле.
Метод — ленивый до безобразия: взять файл, прочитать свойства и тэги (MP3::Info), декодировать звук (mpg123), послав его кодировщику (oggenc), попутно передав тэги, переведённые из windows-1251. Итого — 99 строк, 2 кБ (вместе с развесистыми комментариями). Работает. И называется, чтоб долго не думать, mp32ogg.
А потом выясняется, что в портах уже есть mp32ogg. И делает он то же самое. И тем же самым путём.
Не знаю, может ли он кодировку тэгов менять (ещё не проверял), но это, в общем-то, и не важно, ибо в портах нашёлся mp3unicode.
ЗЫ Но вот железные MP3-плееры да музцентры с магнитолами нечасто ogg понимают...