СИНОПСИС: Периодически навожу порядок в тэгах музыкальных mp3 коллекций. Пока работаю в GUI - easytag. Очень хочется делать это в пределах консоли, поскольку музыку слушаю только в cmus из-под сессии tmux, и лазить в другие программы не очень удобно, особенно в GUI в сеансе ssh. Или когда мне нужно сотне mp3 какой аудиокниги назначить один общий тэг:
find . -type f -iname "Эдгар*.mp3" -print -exec lltag --yes -a "Эдгар А. По" {} \;
но гуй, кракозябры вам, а не русские буквы.
Вроде утилит много, но все как-то работают с киррилицей через жопу.
id3v2
Беру для примера файл с правильно заполненными и корректно отображаемыми русскими тэгами.
Пытаюсь добавить/изменить тег:
id3v2 -a "ТехнологиR" Технология\ -\ Всё\,\ что\ ты\ хочешь.mp3
Просматриваю:
id3v2 -l Технология\ -\ Всё\,\ что\ ты\ хочешь.mp3
id3v1 tag info for Технология - Всё, что ты хочешь.mp3:
Title : AQ, GB> BK E>G5HL Artist: ТехнологиR
Album : 06<8 =0 :=>?:C Year: 1994, Genre: Unknown (255)
Comment: Exactaudiocopy v1.0b4 Track: 2
id3v2 tag info for Технология - Всё, что ты хочешь.mp3:
COMM (Comments): ()[eng]: Exactaudiocopy v1.0b4
TALB (Album/Movie/Show title): 06<8 =0 :=>?:C
TCON (Content type): Synth-Pop/New Wave/Techno/Pop (255)
TIT2 (Title/songname/content description): AQ, GB> BK E>G5HL
TPE2 (Band/orchestra/accompaniment): "5E=>;>38O
TRCK (Track number/Position in set): 02
TYER (Year): 1994
APIC (Attached picture): ()[, 3]: image/jpeg, 9926 bytes
COMM (Comments): (ID3v1 Comment)[XXX]: Exactaudiocopy v1.0b4
TPE1 (Lead performer(s)/Soloist(s)): ТехнологиR
Вроде ок, иду в cmus, делаю :update-cache -f
, и вижу вместо букв:
<12>AQ, GB> BK E>G5HL (Технологи)
Пробую менять tittle:
id3v2 -t "Всё, что ты хочешь." Технология\ -\ Всё\,\ что\ ты\ хочешь.mp3
Вижу в cmus вместо букв:
Всё, что ты хоче (Технологи)
Хотя сама утилита внутри себя вроде как записанное прочитала:
id3v2 -l Технология\ -\ Всё\,\ что\ ты\ хочешь.mp3 | grep TIT
ВЫВОД:
TIT2 (Title/songname/content description): Всё, что ты хочешь
И как такой утилитой пользоваться, скажите пожалуйста? Почему cmus видит какое-то говно? И прошу не винить плеер, он нормально отображает все музыкальные теги. Правлю файл в easytag - и нормально всё отображается.
Такие же проблемы с другой утилитой:
lltag --yes -a "Technologia" Технология\ -\ Всё\,\ что\ ты\ хочешь.mp3
Или:
id3tool --set-artist="Технология" Технология\ -\ Всё\,\ что\ ты\ хочешь.mp3
Даже если использовать латинские буквы, внезапно всё равно, кракозябры.
Утилиту eyeD3 не пробовал, не удалось даже установить пошли проблемы ошибка: не удалось получить файл 'python-faker-'
они специально так называют файлы? Я даже не хочу с этим разбираться…
Конечно можно потом сделать
mid3iconv Технология\ -\ Всё\,\ что\ ты\ хочешь.mp3
и исправить кодировку, но хотелось бы без лишней работы писать сразу в правильную.
Может нужно провести какие-то неочевидные действия по подготовке консоли? Или есть адекватные нормально работающие CLI утилиты?
Как узнать в какой кодировке тэги? Чем их нормально без лишнего мусора посмотреть?
У меня в который раз опустились руки, но вы видели, я честно пытался. :-(