Видео смотреть бесплатно

Смотреть аниме видео

Официальный сайт maxceiling 24/7/365

Смотреть видео бесплатно

23.05.10 20:55 antigluk

Tips & tricksПерекодируем все теги ID3 из cp1251 в UTF-8

Да, utf8 - самая хорошая кодировка, бла-бла-бла. Только это понимает мало кто в этой и соседних странах - практически ВСЕ mp3-шки (и не только), которые я качаю, содержат теги в cp1251.

Для того чтобы перекодировать ID3-теги всех файлов рекурсивно я использую такую команду: find -iname -print0 "*.mp3" | xargs -0 mid3iconv -e CP1251 --remove-v1

И оформленная в скрипт версия recodeID3.sh:
1
2
3
4
5
6
7
8
9
10
11
#!/bin/bash
# Перекодировка ID3-тегов всех файлов указанной папки рекурсивно из cp1251 в UTF-8 (скорее всего в любую, текущую локаль)
# Использование
#      ./recodeID3.sh path/to/dir

if [ -n "$1" ]; then
  cd "$1"
fi

find -iname "*.mp3" -print0 | xargs -0 mid3iconv -e CP1251 --remove-v1
 


1) Заходите в папку с только что скачаной музыкой
2) Запускаете recodeID3.sh
3) Profit!

P.S. Как подсказывает uafz, "чтобы скрипт заработал нужно установить python-mutagen"



uafz 23.05.10 21:31 # +0
xargs: mid3iconv: Нет такого файла или каталога

чтобы скрипт заработал нужно установить python-mutagen
antigluk 23.05.10 21:40 # +1
ага, точно. добавил в статью
exelens 23.05.10 21:42 # +1
antigluk 23.05.10 21:43 # +1
оу, точно :)
видимо где-то команду копипастили из одного места) похожи очень.
motonarola 23.05.10 22:26 # +1
можно сразу find -iname '*.mp3' -exec mid3iconv -d -eCP1251 --remove-v1 {} +
divius 23.05.10 22:30 # +3
А что делать с хардварными плеерами, не понимающими utf8? Они это съедят?
cppmm 24.05.10 01:30 # +0
Мой хардварный плеер не понимает ничего кроме utf или латиницы.
mealsforall 24.05.10 06:32 # +1
А мой наоборот, только latin-1 или cp1251 понимал, если интерфейс русский выбрать. Такая вот засада была, пока не обзавёлся смартфоном.
cppmm 24.05.10 08:31 # +0
Так или иначе, сейчас всё идёт к тому, что кодировкой по умолчанию везде используется utf-8. Это касается не только линуксов. Даже многие оффтопик-программы до этого уже дошли. Не говоря уже про железо. Так что, хочешь - не хочешь, а надо перебираться на юникод.
Girafik 23.05.10 23:03 # +0
А я юзал tag2utf - небольшой скриптец на питоне. Шарит cp1251 и koi8-r.
philosoft 23.05.10 23:12 # +1
EasyTag так же неплох в этом деле. (кроме перекодировки есть регулярки для заполнения тегов / переименования файлов/каталогов)
cppmm 24.05.10 01:31 # +2
Собсно, этот скриптик был бы хорош, если бы не было easytag. :)
goblinyara 23.05.10 23:47 # +0
я для этого пользовался easytag'ом, а по поводу
Только это понимает мало кто в этой и соседних странах - практически ВСЕ mp3-шки (и не только), которые я качаю, содержат теги в cp1251.

это так, потому что ID3v1 не принимает utf кодировку, вот с вики:
ID3v1 также не хватало интернационализации. Он утверждал, что все строки должны храниться в ISO 8859-1, но на практике пользователи часто используют национальную кодировку, поэтому нередко им приходилось видеть «кракозябры».

а так как хомячки даже не знают, что у тегов несколько версий, то и пишут виндовыми средствами в id3v1=)
antigluk 24.05.10 00:20 # +1
Дак в том-то и дело, что ладно id3v1, даже в v2 пишут в этой cp1251. И ничего, "у меня всё работает".
Эх, ждем-с поголовной утфизации)
PocketSam 01.06.10 12:52 # +0
Хомячки не знают, что у тэгов есть версии. :) И не знают про кодировки.
Многие программы (Windows Media Player, например) при воспроизведении файла конвертирует теги в cp1251 на ru винде.
goblinyara 01.06.10 14:12 # +1
убивал бы программистов таких...
todeus 24.05.10 01:44 # +0
А если у меня в папке лежит половина в cp1251 и половина в utf-8? Что этот скрипт сделает с тегами уже перекодированными в utf-8?
cppmm 24.05.10 01:47 # +0
easytag умеет. :)
exelens 24.05.10 07:26 # +0
Опыт показал что ничего =)
antigluk 24.05.10 09:46 # +0
Ничего, он их не тронет :)
punk 24.05.10 07:42 # +0
тоже самое только еще с гуем)
FILE=`zenity --file-selection --directory --title="Выберите путь к крякозябрам"`
case $? in
0)
echo "Выбран "$FILE".";;
1)
echo "Файл не выбран.";;
-1)
echo "Файл не выбран.";;
esac
cd "$FILE";
(find -iname '*.mp3' -print0 | xargs -0 mid3iconv -e KOI8-R --remove-v1; find -iname '*.mp3' -print0 | xargs -0 mid3iconv -e CP1251 --remove-v1)|zenity --progress --pulsate --auto-close --text "идет процесс" --title "Меняем кодировку"
zenity --info --text="теперь у Вас православный UTF"

Лучшие блоги (все 141)
Топ пользователей Топ блогов
Топ пользователей Топ блогов
Элита (все 2839 из 215 городов)
Топ пользователей Топ блогов
welinux.ru

Смотреть видео онлайн

Онлайн видео бесплатно


Смотреть русское с разговорами видео

Online video HD

Видео скачать на телефон

Русские фильмы бесплатно

Full HD video online

Смотреть видео онлайн

Смотреть HD видео бесплатно

School смотреть онлайн