Помогите разобраться.
Решил перекодировать теги(из CP1251 в UTF8). Написал простенький скриптик
import pyid3lib
x=pyid3lib.tag("01-Это рок.mp3")
encoding="CP1251"
for i in x:
try:
text = i['text']
textenc = i['textenc']
frameid = i['frameid']
i['text'] = unicode(text,encoding).encode("UTF8")
i['textenc']=0
x[x.index(frameid)] = i
except Exception,details:
print details
x.update()
Скриптик пробный, поэтому много лишнего.Все перекодировалось вроде хорошо. beep воспринимает это хорошо, а вот amarok все показыват кракозябрами.
(система SuSE 9.2, locale UTF8, amarok 1.2.3). Где-то видел что надо указать кодировку, а иначе все текстовые поля воспринимаются, как ISO-8859-1. В стандарте id3v2.4.0 нашел, что байт отвечающие кодировке должен быть:
$00 - ISO-8859-1
$01 - UTF-16
$02 - UTF-16BE
$03 - UTF8
Если указать i['textenc']=3, то ни beep, ни amarok этого не воспринимают. Мне кажется, что я просто чего-то не понимаю(я вообще в этом не силен).
Ответ на:
комментарий
от anonymous
Ответ на:
комментарий
от Delay
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.
Похожие темы
- Форум Перекодировка win-файла (2012)
- Новости Бардак с кодировками в id3v1/2 и пути выхода из него (2005)
- Форум Кодировка из Ubuntu в Windows. (2014)
- Форум Кодировка отчетов в amavisd (2015)
- Форум Ломаные кодировки в тэгах музыкальных файлов (2010)
- Форум CommuniGate Pro 4.1.8 Настройка работы через веб-интерфейс (2004)
- Форум id3lib (2004)
- Форум Туплю - кто знает MIME (2003)
- Форум компилирование с библиотекой ID3LIB (2011)
- Форум id3lib compile error: undefined reference (2004)