Форум сообщества Runtu.org
Август 14, 2018, 21:03:06 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Новости: Доступна для загрузки х64 версия дистрибутива Runtu LITE 18.04.1 - 20180801

Подробнее
   Начало   Помощь Поиск Войти Регистрация  
Страниц: 1 2 3 Все   Вниз
  Печать  
Автор Тема: Корректное отображение кириллицы (cp1251) в мультимедиа программах.  (Прочитано 45722 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« : Сентябрь 20, 2011, 02:53:29 »

Настройка отображения русских названий в мультимедиа программах.



Введение:
Кодировка - это таблица графических изображений букв, знаков и символов.
На жестком диске текст хранится в закодированном виде, а на экране отображается в виде графических изображений из этой таблицы. Поверх кодировки еще могут применяться темы оформления текста, то есть шрифты.

Раньше для каждого языка имелась своя кодировка, причем на Unix и на Windows были разные кодировки для русского языка:
MS-DOS - cp866
Windows - сначала cp1251 позже UTF-8
Unix - сначала KOI8-R позже UTF-8
Существовали и другие версии русских кодировок (cp1252, iso8859-5, UTF-16), но их использовали реже.

UTF-8 вмещает в себя все языки, и нет больше необходимости использовать в каждой стране свою кодировку.

Кроме этого еще есть стандарт (правила) записи информации в mp3 файл.
В mp3 файлах раньше текст записывался в формате ID3v1, в этом формате и записывали текст в разных кодировках.
Позже стал использоваться формат ID3v2, в котором уже информация записывалась в UTF-8 (реже в UTF-16).


Сейчас у нас остались старые файлы с текстом в разных кодировках (cp1251, cp866, KOI8-R  и огромное множество кодировок других стран), они не совместимы с UTF-8, поэтому мы видим неразборчивые знаки.

Есть несколько способов борьбы с этой проблемой:
1. Использовать программы с поддержкой старых кодировок (автоматически или с ручной настройкой).
2. Сконвертировать текст в mp3 файлах в UTF-8.
3. Изменить для плеера системную кодировку (но не все плееры обращают внимание на системную кодировку), это крайний метод, использовался раньше, когда в плеерах еще не было выбора кодировок или не были изучены методы выбора кодировки, теперь это в прошлом.


================================================


Deadbeef

поддерживает UTF8, CP1251 (русская), CP936 (китайская)


================================================


Audacious

Параметры → Список воспроизведения
Напротив пункта "Если не удалось определить, использовать кодировку" вставить:  UTF-8,WINDOWS-1251



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


================================================

Qmmp

Настройки Qmmp → Модули → Модуль MPEG → Настройки
Сделать как на скриншоте


В настройках внешнего вида, на вкладке "Разное" убрать галку напротив пункта "Использовать растровые шрифты, если возможно"
Это отключает использование шрифта из скина для отображения названия трека на панели плеера.
В шрифте из скина нет русских букв, поэтому русские названия не отображаются на панели плеера.


================================================



Rhythmbox, Banshee, Totem

1. Закрыть плеер.
2. Активировать в системе кодировку CP1251, для этого выполнить следующие действия:
В файлы /var/lib/locales/supported.d/local и /var/lib/locales/supported.d/ru добавить строчку
Код:
ru_RU.CP1251 CP1251
Выпонить в терминале:  
Код:
sudo locale-gen
3. В мультимедийной подсистеме Gstreamer, указать настройку для использования  кодировки CP1251
Открыть текстовый файл ~/.profile, в самом низу добавить строку, в нее вставить текст
Код:
export GST_ID3_TAG_ENCODING="windows-1251"
Ниже нее добавить строку, и оставить пустой.
4. Удалить фонотеку плеера
Rhythmbox хранит фонотеку в ~/.local/share/rhythmbox
Banshee хранит фонотеку в ~/.config/banshee-1
Totem не имеет фонотеки, для него не надо на этом этапе ничего делать
5. Перезапустить мультимедийную подсистему Gstreamer, для этого нужно на панели рабочего стола нажать кнопку главного меню, выбрать завершение работы и выход, затем снова зайти в систему.
6. Проверить отображение кодировок в плеере.

========================================



Amarok, Clementine, Guayadeque, VLC и другие плееры использующие TagLib от проекта KDE (пакеты libtag1c2a, libtag1-vanilla)

Например Clementine:
1. Закрыть плеер
2. Установить пакет libtag1-rusxmms, он заменит libtag1-vanilla
3. Перейти в ~/.config и удалить папку Clementine  (это мы очищаем библиотеку от уже загруженых туда крякозябр, заодним сбросятся настройки плеера)


В Ubuntu 14.04 нет libtag1-rusxmms.
========================================



Exaile  и другие плееры использующие phyton-mutagen

Цитировать
Exaile написан на Python и использует модуль mutagen для обработки тегов, по-этому мы просто ручками допишем нужную нам кодировку. На самом деле данный способ поможет большинству плееров написанных на Python и использующих данный модуль питон.

Ищем пакет mutagen (у меня он лежит в /usr/lib/python2.7/dist-packages/mutagen/) и открываем в нем файл id3.py.

В классе EncodedTextSpec в список _encodings добавляем кортеж (’cp1251′, ’\x00′), должен получиться следующий вид:
Код:
...
class EncodedTextSpec(Spec):
# Okay, seriously. This is private and defined explicitly and
# completely by the ID3 specification. You can't just add
# encodings here however you want.
_encodings = ( ('cp1251', '\x00'), ('latin1', '\x00'), ('utf16', '\x00\x00'),
('utf_16_be', '\x00\x00'), ('utf8', '\x00') )
def read(self, frame, data):
...

Источник: mishamx.ru

Пробовал для Exaile указать несколько кодировок, но он начинает путать кодировки, так что лучше добавлять не больше одной.
latin1 - это ISO-8859-1

===================================================




Конвертирование тегов с помощью EasyTag.

1. Установить настройки как на скриншоте

2. Выделить каталог в котором лежат все подкаталоги с музыкой, подождать пока добавятся в программу.
3. Нажать кнопки "Выделить все" и "Сохранить файлы", через несколько минут все файлы сохранятся.
4. После редактирования тегов нужно в аудио плеерах очистить фонотеку и плейлисты, затем снова заполнить.


Примечание: для id3v1 указана кодировка Windows-1251, на случай если файлы будут использоваться в Windows XP, там файловый менеджер в режиме таблицы показывает исполнителя, при кодировке ISO-8859-1 он кажет знаки вопроса, а при Windows-1251 корректно отображает исполнителя. Другие программы программы давно уже используют id3v2.




« Последнее редактирование: Май 11, 2018, 14:53:57 от Пользователь. » Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #1 : Октябрь 03, 2011, 20:33:45 »

Со временем все меняется, так что надо проверять будут ли работать эти методы в новых версиях систем.

Пользователь решил продолжить мысль: Октябрь 04, 2011, 13:47:31
Radio Tray

 
В файле /usr/share/pyshared/radiotray/StateMediator.py  найти строки
def notifySong(self, data):
newMetadata = str(data)

Вторую строку привести к такому виду
newMetadata = str(data).encode('latin-1').decode('cp1251').encode('utf8')

« Последнее редактирование: Октябрь 04, 2011, 13:47:31 от Пользователь. » Записан
ludoed
Местный
*****
Offline Offline

Сообщений: 861

ludoed1970@jabber.ru


« Ответ #2 : Октябрь 04, 2011, 17:38:15 »

Полезная тема, это можно бы и в HowTo добавить
а кстати, на vlc такого рецептика нет? Я, собственно, музыку слушаю редко, и спец плеера для нее не держу, а vlc универсален
Записан

все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях Подмигивающий

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками Улыбающийся
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #3 : Февраль 19, 2012, 10:08:03 »

Asunder - программа для извлечения аудио файлов из Audio CD.

Решение:

Перейти на сайт freedb.org
Вверху в поле поиска набрать латинскими буквами исполнителя и нажать Ok
Найти свой диск в найденном
В браузере указать кодировку cp-1251 и кириллица станет правильно отображаться
Копируйте информацию с сайта и вставляйте в Asunder
Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #4 : Май 08, 2012, 14:12:24 »

Полезная тема, это можно бы и в HowTo добавить
а кстати, на vlc такого рецептика нет? Я, собственно, музыку слушаю редко, и спец плеера для нее не держу, а vlc универсален

Для VLC и Totem можно настроить как для Rhythmbox   Веселый
Я не пробовал, но теоретически должно сработать.
« Последнее редактирование: Май 20, 2012, 21:58:47 от Пользователь. » Записан
ludoed
Местный
*****
Offline Offline

Сообщений: 861

ludoed1970@jabber.ru


« Ответ #5 : Май 20, 2012, 20:22:52 »

Полезная тема, это можно бы и в HowTo добавить
а кстати, на vlc такого рецептика нет? Я, собственно, музыку слушаю редко, и спец плеера для нее не держу, а vlc универсален

Для VLC и Totem можно настроить как для Rhythmbox   Веселый
Я не пробовал, но теоретически должно сработать.

Попробовал для VLC как для Rhythmbox - не сработало, один фиг крякозябры
Записан

все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях Подмигивающий

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками Улыбающийся
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #6 : Май 20, 2012, 21:58:33 »

Хорошо, что проверил, а то у меня все руки не доходили...

Записан
ludoed
Местный
*****
Offline Offline

Сообщений: 861

ludoed1970@jabber.ru


« Ответ #7 : Май 26, 2012, 19:43:31 »

Хорошо было бы, если б еще и помогло  Грустный а так...  Подмигивающий
Записан

все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях Подмигивающий

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками Улыбающийся
l_l_lblTHuK
Постоялец
***
Offline Offline

Сообщений: 145


« Ответ #8 : Май 29, 2012, 19:29:01 »

Можно поставить виндовый Mp3tag, в нём в настройках выбрать сохранение в utf-8, потом ткнуть на папку, где музыка лежит, он просканит все каталоги. После этого выделить всё и нажать "сохранить". Всё - теги теперь в utf-8.
Есть скрипт, который делает то же самое.
Либо можно попробовать поставить puddletag - во многом она похожа на Mp3tag.
И нафек не нужны эти костыли с отображением.
Записан
ludoed
Местный
*****
Offline Offline

Сообщений: 861

ludoed1970@jabber.ru


« Ответ #9 : Июнь 02, 2012, 19:41:28 »

не-а, все эти скрипты и программы - как раз и есть костыль. Если музыки много, и большей частью она записана на CD / DVD дисках, перекодировка тегов не поможет

Вон, у приятеля - 150 Гб металла и хард-рока на болванках записано, а я ему перекодировать предложу?  Смеющийся Я даже знаю, в каком направлении он меня пошлёт  Смеющийся

Проще уж плеер с нормальным отображением тегов подобрать
Записан

все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях Подмигивающий

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками Улыбающийся
l_l_lblTHuK
Постоялец
***
Offline Offline

Сообщений: 145


« Ответ #10 : Июнь 07, 2012, 22:26:56 »

Просто у меня на харде вся музяка хранится, для кого-то это будет актуальный совет Улыбающийся
А в том случае да, проще плеер научить.

150 гигов на болванках О_о

Пользователь решил продолжить мысль: Июнь 07, 2012, 22:28:18
Хотя чего это я, у самого коллекция фильмов лежит на почти 200 двд Смеющийся
Но это было в далёкие времена, когда инет был медленный, а винты малообъёмные...
Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #11 : Июль 13, 2013, 07:35:39 »

Для VLC подошел метод с libtag1-rusxmms  Смеющийся
В плейлисте проверял, в медиатеке нет.

Остался Totem, ему libtag1-rusxmms не помог, значит надо попробовать инструкцию как для Rhythmbox.
Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #12 : Июль 13, 2013, 19:17:53 »

Проверил, для Totem подходит инструкция как для Rhythmbox.
В плеере Totem, после добавления файлов в плейлист отображаются названия файлов, при воспроизведении файла происходит чтение тегов и название файла заменяется на информацию из тегов.
Записан
Владимир Юрганов
Активист
****
Offline Offline

Сообщений: 439


« Ответ #13 : Июль 24, 2013, 11:29:45 »

эх. если бы только в кирилице дело было... а то значительная часть музыки в latina-1
известная проблема при скачке сусликом
Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #14 : Ноябрь 22, 2013, 14:27:37 »

В Ubuntu 14.04 убрали из репозиториев libtag1-rusxmms, так что в следующей LTS снова будут кракозябры.

Надо искать выход из ситуации.
« Последнее редактирование: Ноябрь 22, 2013, 14:32:24 от Пользователь. » Записан
ludoed
Местный
*****
Offline Offline

Сообщений: 861

ludoed1970@jabber.ru


« Ответ #15 : Ноябрь 22, 2013, 17:48:57 »

может, кто-нибудь включит его в ppa?
Записан

все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях Подмигивающий

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками Улыбающийся
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #16 : Ноябрь 22, 2013, 17:56:08 »

Можно deb пакет из репозиториев предыдущего релиза скачать  Смеющийся
Записан
iks
Новичок
**
Offline Offline

Сообщений: 97


Rusdeb 1.02


WWW
« Ответ #17 : Ноябрь 22, 2013, 23:44:23 »

В Ubuntu 14.04 убрали из репозиториев libtag1-rusxmms, так что в следующей LTS снова будут кракозябры.

Надо искать выход из ситуации.
Debian  Подмигивающий
Записан

Я так обленился на Linux, что уже лень пользоваться другой ОСью

Всё может быть, и все быть может,
И лишь того не может быть,
Чего, быть может, быть не может -
Но и такое может быть!
HsH
Administrator
*****
Offline Offline

Сообщений: 2562



« Ответ #18 : Ноябрь 23, 2013, 09:28:02 »

В Ubuntu 14.04 убрали из репозиториев libtag1-rusxmms, так что в следующей LTS снова будут кракозябры.
Надо искать выход из ситуации.

   Ни в одной из моих сборок этот пакет не установлен.
Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #19 : Ноябрь 25, 2013, 19:01:15 »

Debian  Подмигивающий
На форуме дебиана жалуются на такую же проблему  Смеющийся

   Ни в одной из моих сборок этот пакет не установлен.

Да, в системах Runtu установлены Deadbeef или Audacious, они корректно отображают кириллицу.
Но если пользователи захотят установить популярный нынче Clementine, то им понадобится libtag1-rusxmms, для корректного отображения кириллицы.

Записан
ludoed
Местный
*****
Offline Offline

Сообщений: 861

ludoed1970@jabber.ru


« Ответ #20 : Ноябрь 25, 2013, 19:06:39 »

Этот пакет и для VLC нужен, я, к примеру, музыку тоже через VLC слушаю
Записан

все юниксы очень дружелюбны.. они просто очень разборчивы в друзьях Подмигивающий

Настоящее труЪ: самописное ядро, выращенные на кухне кристаллы и программирование перемычками Улыбающийся
ceH9l
Новичок
**
Offline Offline

Сообщений: 25


« Ответ #21 : Май 27, 2015, 23:53:45 »

Подскажите пожалуйста, как сделать корректное отображение кириллицы в Audacious?
Напротив пункта "Если не удалось определить, использовать кодировку" вставил  UTF-8,WINDOWS-1251.
Не помогло, кракозябры остались.
Ещё написано "И в настройках интерфейса плеера убрать галку напротив пункта "Использовать растровые шрифты"", однако я так и не нашёл эти настройки интерфейса и этот пункт, может подскажет кто как до него добраться? Или может есть какой ещё способ сделать кириллицу в этом плеере? (Правда некоторые песни отбражаются нормально) 
Записан
gvitaly
Активист
****
Offline Offline

Сообщений: 489



« Ответ #22 : Май 28, 2015, 08:30:31 »

Подскажите пожалуйста, как сделать корректное отображение кириллицы в Audacious?
Напротив пункта "Если не удалось определить, использовать кодировку" вставил  UTF-8,WINDOWS-1251.
Не помогло, кракозябры остались.
Очистите список воспроизведения от файлов и снова их добавьте.
Ещё написано "И в настройках интерфейса плеера убрать галку напротив пункта "Использовать растровые шрифты"", однако я так и не нашёл эти настройки интерфейса и этот пункт, может подскажет кто как до него добраться?
Он только при использовании интерфейса классического Winamp.


Записан

ceH9l
Новичок
**
Offline Offline

Сообщений: 25


« Ответ #23 : Май 29, 2015, 00:04:56 »

Да, заново добавил файлы в плейлист, стало отображаться корректно.
Спасибо!
Записан
artec
Новичок
**
Offline Offline

Сообщений: 33


« Ответ #24 : Август 13, 2015, 14:10:17 »

Ребят, а кто-нибудь пробовал для banshee провернуть?..делал по инструкции  - не срабатывает для версии 2.6.2
Записан
HsH
Administrator
*****
Offline Offline

Сообщений: 2562



« Ответ #25 : Август 13, 2015, 21:00:33 »

делал по инструкции  - не срабатывает для версии 2.6.2

    Инструкция из этой темы? Приведите вывод выполнения в терминале команды
Код:
cat ~/.profile
Записан
artec
Новичок
**
Offline Offline

Сообщений: 33


« Ответ #26 : Август 13, 2015, 21:54:05 »

Да, инструкция из темы, для некоторых файлов не определяется кодировка:


Привожу конфиг:
Спойлер  скрыт:
Код:
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.

# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022

# if running bash
if [ -n "$BASH_VERSION" ]; then
    # include .bashrc if it exists
    if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
    fi
fi

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

export GST_ID3_TAG_ENCODING="windows-1251"

Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #27 : Август 15, 2015, 20:25:18 »

Оставь ~/.profile таким же.

0. Закрыть Banshee
1. В файлы /var/lib/locales/supported.d/local и /var/lib/locales/supported.d/ru добавить строчку ru_RU.CP1251 CP1251
2. Выпонить в терминале:  sudo locale-gen
3. Удалить фонотеку Banshee ~/.config/banshee-1

И напиши что получилось.
Записан
artec
Новичок
**
Offline Offline

Сообщений: 33


« Ответ #28 : Август 16, 2015, 00:06:11 »

Пользователь.
от души всё получилось. Откровенно говоря эти файлы отражались крякамизабрами на любых плеерах с любыми настройками (что я только не перепробовал, кроме как менять теги, специально сохранял, авось будет решение). И вот, решение выше. Благодарствую очень!
Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #29 : Август 16, 2015, 00:18:38 »

Надо доработать инструкцию, видимо у меня кодировка уже была добавлена в систему, когда проверял...
Записан
artec
Новичок
**
Offline Offline

Сообщений: 33


« Ответ #30 : Август 16, 2015, 00:25:34 »

Надо доработать инструкцию...
Да, доработайте пожалуйста, будет приятно сразу получить полное руководство на блюдечке)...сейчас проверил в audacious - тоже норма).
« Последнее редактирование: Август 16, 2015, 00:27:44 от artec » Записан
Пользователь.
Местный
*****
Offline Offline

Сообщений: 3265


« Ответ #31 : Август 16, 2015, 11:57:07 »

Доработал.
Написал подробнее, чтобы в будущем пользователи разобрались и сами смогли писать подобные инструкции.
Записан
artec
Новичок
**
Offline Offline

Сообщений: 33


« Ответ #32 : Август 20, 2015, 12:53:08 »

Доработал.
Написал подробнее, чтобы в будущем пользователи разобрались и сами смогли писать подобные инструкции.
Спасибо.
Записан
Near
Прохожий
*
Offline Offline

Сообщений: 7


« Ответ #33 : Ноябрь 02, 2016, 11:57:28 »

Уважаемые, подскажите ещё как поправить кодировку в mixxx. В плеерах отображается нормально, но как загрузишь в mixx - кракозябры.
Записан
HsH
Administrator
*****
Offline Offline

Сообщений: 2562



« Ответ #34 : Ноябрь 03, 2016, 09:22:57 »


    Near, в какой кодировке теги ваших композиций? Ни одна из рекомендаций в теме по данной проблеме вам не помогла?
Записан
Near
Прохожий
*
Offline Offline

Сообщений: 7


« Ответ #35 : Ноябрь 03, 2016, 14:19:23 »

windows-1251.

Единственное решение - перегнать теги в UTF-8 на Windows.
Обидно, что в других плеерах все отображается отлично, а тут ну ни как
Записан
Страниц: 1 2 3 Все   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006, Simple Machines Valid XHTML 1.0! Valid CSS!