[FAQ] Не правильно отображаются тэги (Mac OS)

Евгений Кириченко
iOS Support iTunes
[FAQ] Не правильно отображаются тэги (Mac OS)
Не правильно отображаются тэги в iTunes

Достаточно часто приходится сталкиваться с ситуацией, когда к примеру iTunes не может нормально отобразить русские тэги в списке воспроизведения. Вместо них отображаются "крякозябры"

Проблема в кодировке тэгов в mp3 файле. Как правило тэги находятся в стандартной кодировке Windows - CP1251, до сих пор встречаются ретрограды, которые не понимают Unicode. Самый правильный способ решения данной проблемы - перевести тэги в другую кодировку рекомендуется Unicode.
Для решений этой проблемы есть достаточно много способов. Приведу 4 из них, а дальше смотрите сами что вам удобнее.


I.
Можно воспользоваться небольшой программой ID3Mod2

Программа достаточно проста в использовании.
1. Вы либо перетаскиваете файлы в окно программы, либо нажав на Load указываете нужную папку (файлы) на диске. Также есть возможность открыть библиотеку iTunes и выбрать в ней нужные файлы или плейлисты.
2. Далее выделяете списке нужные файлы
3. Select Encoding и выбрать как правило надо WindowsCyrillic
4. Нажав Save вы перезапишите исходные файлы с Unicode, Save As – как думаю не сложно догадаться создаст новые файлы с Unicode кодировкой.


II
Изменение тегов в iTunes с помощью скрипта.
1. Скачиваете Скрипт для iTunes (54 KB).
2. Распаковываете и копируете оба файла в папку ~/Library/iTunes/Scripts (если папки Scripts нет – создайте ее)
3. Запускаете iTunes
4. Выбираете файлы со слетевшими кодировками.
5. В меню iTunes, если еще не было, появится кнопка скрипта, нажимаете и выбираете "• Russian". Соглашаетесь со всем и в результате получаете нормально отображение тэгов.

III
Еще один скрипт для iTunes. Он более "продвинутый". Подробно описывать его не буду, на странице автора есть ссылка на скачивание и подробное описание.


IV
Это пожалуй самый старый и популярный вариант.
Надо воспользоваться скриптом id3conv, сделанным на Java. Скачиваем его и открываем терминал (если раньше никогда с ним не работали - не бойтесь страшного и сложного ничего не будет).

В терминале надо ввести
find ~/Music/ -name "*.mp3" -exec java -jar ~/Desktop/id3iconv-0.2.1.jar -e cp1251 {} \;

где
~/Music/ - путь к папке (папкам), файлы в которых нужно перекодировать
~/Desktop/id3iconv-0.2.1.jar - путь к скриту, в данном случае лежит на рабочем столе

find - будет итеративно искать все mp3 во всех вложеных папках начиная с ~/Music/, имя каждого mp3 файла будет использованно как входной параметер id3iconv-0.2.1.jar. Если не хочется прописывать пути вручную, то в терминал достаточно перетащить нужный файл или папку и путь пропишется автоматически.

Многих пугает терминал, хотя сложного в этом ничего нет. Поэтому можно воспользоваться для упрощения небольшим скриптом, для того что бы скрипт работал надо чтобы id3conv лежал в папке Applications/Utilites
set strPath to alias choose folder
set strShowPath to (quoted form of POSIX path of strPath)
--choose folder
display dialog "Do you want to conterv ID3Tags in " & strShowPath & "?" buttons {"Yes", "No"} default button 1
if the button returned of the result is "No" then
   -- action for No button goes here
   say "Bye"
else
   -- action for Da button goes here
   set strAction to "find " & strShowPath & " -name \"*.mp3\" -exec java -jar /Applications/Utilities/id3iconv-0.2.1.jar -e cp1251 {} \\;"
   tell application "Terminal"
      do script strAction
   end tell
end if



PS Теорретически в iTunes есть уже встроенная функция конвертации, но к сожалению работает не всегда корректно, поэтому я бы не рекомендовал ей пользоваться.
5 февраля 2019, 16:01

Ответы