September
Если MP3-плеер не понимает русский язык (mp3-player java-utility)
Posted in: Java technologies, J2SE, Полезные программы |
MP3 плеер вещь хорошая и полезная…
К сожалению, иногда он “расставляет все точки над i”, равно как и над e, и над о, и так далее, в названиях песен. А все потому, что не понимает русский (и/или украинский) язык.
Хорошо, если на сайте производителя есть множество софта, в частности для перепрошивки и загрузки шрифтов. А если нет?
Тогда вы попали туда, куда нужно.
Решением описанной проблемы может быть переименование файлов и директорий, например, в транслит.
Вот так и появилась идея маленькой полезной программки (написал на Java).
Скачать ее совершенно бесплатно можно здесь - interpreter.zip (7 Kb).
Запустите interpreter.bat со следующим параметром: полный путь к директории, с которой нужно начать переименование. Пример:
interpreter.bat D:/mp3/Музыка
Если мой манер перевода слов в транслит вам не нравится, создайте свой словарь и укажите полный путь к нему в качестве второго параметра (если словарь находится в той же директории, что и bat-файл, достаточно указать только имя), например:
interpreter.bat D:/mp3/Музыка slovarik.txt
Словарь составляется следующим образом:
- правило замены имеет вид [цепочка символов для замены]=[результирующая цепочка];
- каждое правило начинается с новой строки;
- последовательность символов для замены должна быть уникальна в пределах словаря;
- результирующие цепочки не обязаны быть уникальными и могут быть пустыми;
- чем длиннее цепочка для замены, тем выше она находится в файле словаря.
Вот фрагмент для лучшего понимания правил создания словаря:
ье=ye б=b г=g ь= я=ya ...
Очевидно, что предельно старательные люди могут добиться дословного перевода названий песен с русского языка на английский и наоборот :).
Пока что единственный обнаруженный недостаток утилиты - работа со словарем только в кодировке windows-1251. Если будут положительные отзывы от пользователей, обязуюсь расширить возможности программки.
Всего вам хорошего.
Updated (24.05.2006):
По многочисленным просьбам читателей стараюсь понемногу улучшать утилиту.
Теперь она умеет проверять mp3 файлы на наличие ID3v1 тэгов (и переводить их в транслит). Кроме этого был немного улучшен механизм обработки исключительных ситуаций.
Скачать новую версию можно по ссылке в начале статьи. Параметры запуска утилиты остались прежними. Если что-то работает не так или же у вас появились идеи для дальнейшего улучшения программы, буду рад выслушать вас.
14 Comments »
RSS feed for comments on this post. TrackBack URI
Отличная идея! Еще бы сделать правку ID3 тэгов - было бы вообще рулез!
>>Отличная идея! Еще бы сделать правку ID3 тэгов - было бы вообще рулез!
А я где-то видел программку, которая и такое может сделать.
+ тэги тоже можно править - там формат файла открытый, кажется в начале mp3 или в конце есть все ID# тэги
2wert2all & lucker: Будет время, обязательно этим займусь.
2Oleg: Да там и смотреть-то не на что. Как вы наверное заметили, словарь - это не что иное, как файл с properties, которые вычитываются в инстанс одноименного класса Properties. Начиная с некоторой директории осуществляется рекурсивный обход директорий и файлов с их переименованием.
wert2all: Ну такие проги и я видел и пользую, тока иногда хочется по-тупому програть все фалы в директории и сконвертировать и названия и ID3 тэги. А у этих прог все сильно наворочено (читай неудобно) и приходится оченьго долго тыкаться, патаясь добиться результата.
Уже ID3v1 тэги работают, с остальными пока не разобрался. Читайте выше дополнение к статье.
very nice..
только одна проблемка - хотелось бы убирать некоторые символы совсем.. например, номер трека в начале песни.
Учту это. Нужно, наверное, опцию добавить.
Программа понравилась, но есть замечания.
В базовой версии рубит все заглавные буквы даже в случае если оригинальное имя было на английском. Зачем перекодировать файлы если уже видно что там все латиницей?
Попробую составить пользовательский словарь, может тогда она начнет обходить стороной английские песни ;).
Дельное замечание. Спасибо.
Все будет исправлено в скором времени, осталось только это время найти )).
Хорошая програмка, спасибо.
Но не нашел инструкций как перегнать в транслит тэги?
а на русс можно потом вернуть!
1. Теги переводятся в транслит автоматически.
2. На русский язык можно вернуть в случае, если создать словарь правил перехода с английского на русский. Постараюсь как-нибудь выложить его демо-версию. Но учтите, что это далеко не тривиальная задача и во многих случаях перевод будет неправильным.
Как вариант в процессе миграции можно создавать файл с меппингом переходов. Тогда можно будет вернуть исходные имена файлов. Но вообще-то, лучше копировать музыку на плеер и запускать программу, указав корневую папку на файловой системе плеера.
Hi! Рекомендую при транстите использовать ISO 9.
Этого
http://en.wikipedia.org/wiki/ISO_9
будет достаточно.
Удачи.!!!
c0nst здравствуйте! Сейчас столкнулся с проблемой непонимания плеером русской раскладки. По поиску попал к вам, но я в программировании не разбираюсь вообще. Не могли бы вы обьяснить поподробнее, как пользоваться вашей программой. Конкретно не понятен пункт: “Запустите interpreter.bat со следующим параметром: полный путь к директории, с которой нужно начать переименование”. Я не знаю, куда нужно вписать “interpreter.bat D:/mp3/Музыка”. А при запуске interpreter.bat, выдает сообщение: “Java” не является внутренней или внешней командой.