Разгон монитора и исправление цветового диапазона в Linux

Пост опубликован в блогах iXBT.com, его автор не имеет отношения к редакции iXBT.com
| Инструкция | Платформа ПК

Здравствуй, многоуважаемый читатель! Мы продолжаем серию материалов, посвящённых настройке и оптимизации систем на базе ядра Linux. В этой небольшой инструкции вы узнаете, как исправить давнюю проблему с ограниченным цветовым диапазоном в Linux, а также как всего за пару кликов разогнать матрицу монитора вне зависимости от используемой модели видеокарты, протокола графического сервера (Xorg, Wayland) или рабочего окружения (Gnome, KDE, Xfce, I3).

Система автора

Пояснение проблемы

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

При использовании цифрового подключения HDMI/DVI-D, Linux не всегда правильно выставляет цветовой диапазон и частоту обновления экрана монитора, что приводит к плохому качеству отображаемой картинки и потери плавности мыши.

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

Full RGB и разгон монитора

В настоящее время в Linux происходит плавная замена протокола графического сервера Xorg на более новую и быструю реализацию Wayland, что приносит настоящий хаос в настройку конфигурации. Но мы воспользуемся не стандартным методом и создадим универсальный конфигурационный файл для нашего монитора.

1. Открываем терминал и вводим команду find /sys/devices/pci*/ -name edid. Она нам необходима, чтобы узнать, где хранится файл конфигурации edid.

У меня монитор подключен по HDMI, а значит я просто выделяю и копирую всю первую строку.

2. Копируем файл edid в домашнюю директорию с помощью команды:

cp /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/drm/card0/card0-HDMI-A-1/edid ~/edid.bin

Если вы всё сделали правильно, то в /home/ваше_имя появится файл edid.bin.

3. Теперь нам необходимо установить ПО для чтения и внесения изменений в файл edid.bin. Я рекомендую использовать нативный редактор wxEDID.

Выполняем установку wxEDID и зависимостей:

sudo pacman -S git base-devel grub-customizer                           # Скачать зависимости и редактор grub

git clone https://aur.archlinux.org/wxedid.git                               # Стянуть исходники ПО

cd wxedid                                                                                             # Перейти в папку с исходниками

makepkg -sric                                                                                       # Собрать и установить программу

4. Запускаем программу через команду в терминале sudo wxedid и в окне программы выбираем наш edid.bin. File -> Open EDID binary.

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

  • SPF: Supported features -> изменить значение vsig_format на 0b00
  • CHD: CEA-861 header -> изменить значение YCbCr4:2:2 и YCbCr4:4:4 на 0
  • VSD: Vendor Specific Data Block -> изменить значение DC_Y444 на 0

Для разгона матрицы монитора выбираем изменяем данные (Пропустите раздел, если вам не нужен разгон):

Выбираем DTD: Detailed Timing Descriptor и переключаемся на вкладку DTD Constructor, где в поле Pixel clock постепенно повышаем частоту обновления монитора до необходимых значений. Для различных мониторов пределы разгона отличаются. 

Сохраняем изменения через File-> Save EDID Binary. Для удобства я назову новый конфигурационный файл edid2.bin.

5. Теперь необходимо заставить систему использовать модифицированный файл edid2.bin вместо системного. Создаём по пути /usr/lib/firmware/ папку edid и переносим туда наш модифицированный edid2.bin.

Вводим команды:

cd /usr/lib/firmware/                                                                           # Перейти в нужный раздел

sudo mkdir edid                                                                                  # Создать папку от администратора

cd                                                                                                      # Перейти в домашнюю папку

sudo cp edid2.bin /usr/lib/firmware/edid                                               # Скопировать файл edid2.bin

6. Добавляем модифицированный файл в наш загрузчик.

Запускаем grub-customizer и добавляем в параметры ядра (в самый конец) команду drm.edid_firmware=edid/edid2.bin, которая заставит Linux подхватывать наш изменённый конфигурационный файл при загрузке ядра. 

Сохраняем изменения через кнопку "Сохранить" в левом углу ПО и смотрим на представленную ниже картинку.

Если всё было сделано правильно, то после перезагрузки вы сразу почувствуете разницу в плавности движения мыши, а картинка с прекрасной Morrigan засияет новыми красками.

Заключение

Вот, собственно, и всё! Не знакомому с Linux-миром человеку вся эта инструкция может показаться пугающим шаманством, но она и не рассчитана на него, а повествует лишь о необычном способе исправления древнего бага и существенного повышения комфорта при использовании Linux. Уважайте свободу, используйте Linux и ни в коем случае не предавайте себя.

Видеоверсия

Другое
Автор не входит в состав редакции iXBT.com (подробнее »)
Об авторе
Связь: https://vk.com/kerfaers или t.me/Pavel_Priluckiy

12 комментариев

Добавить комментарий

Pavel_Priluckiy
Постараюсь видео подготовить сегодня.
370582630@vkontakte
ОН ВЕРНУЛСЯ!
Pavel_Priluckiy
Я постараюсь вернуться к теме линукса, спасибо за поддержку.
n
Отлично, то что нужно было мне.
Pavel_Priluckiy
Добавлена видеоверсия, исправлены опечатки.
Pavel_Priluckiy
Всё аналогично, нужно копаться в файле. Правда я не слышал о проблемах с HDR и 10 bit.
Pavel_Priluckiy
Ловите
linuxreviews.org/HOWTO_enable_10-bit_color_on_Linux
Pavel_Priluckiy
Я лишь пишу о проверенном на собственном опыте, к сожалению, у меня нет оборудования с поддержкой HDR и 10 Bit.
102946656600367664478@google
Может автор знает с чем может быть связано то что на ноуте с любым дистрибутивом линукса, при подключении монитора BenQ ex2780, нет его нативного разрешения, т.е. даже 1440p на 60гц,
На ноуте HDMI 1.4b и видеоадаптером выступает intel UHD620. Драйверы стандартные.
Можно в ручную через Xrandr, и то только через GTG -r.
Pavel_Priluckiy
Попробуйте поменять HDMI на 2.0. Однако вы можете и с помощью этого гайда установить любое разрешение.
4
Инфа интересная, но русский язык вам бы подтянуть не мешало:
>>серию материалов, посвящённых настройки и оптимизации систем на базе ядра Linux. В этой небольшой инструкции вы узнаете, как исправить давнюю проблему с ограниченным цветовым диапазоном в Linux, а также как всего за пару кликов разогнать матрицу монитора в независимости от используемой модели видеокарты
«посвящённых настройкЕ»
«ВНЕ зависимости»

Добавить комментарий

Сейчас на главной

Новости

Публикации

Живем ли мы в симуляции? Если да, то законы физики доказывают: мы в ней подопытные, а не игроки

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

101 километр между Волгой и Доном: зачем СССР соединил две великие реки

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

Три экологические формы байкальского омуля: как калибровка жаберных тычинок разделила один вид

Анатомический подсчет выростов на первой жаберной дуге байкальского омуля (Coregonus migratorius) дает строго фиксированный разброс: от 36 до 55 шт. Если у выловленной рыбы зафиксировано менее 41...

Этот лед горячее расплавленной стали: физики открыли новую форму воды в недрах планет-гигантов

Магнитные поля Земли, Юпитера и Сатурна имеют форму правильного диполя. Их силовые линии выходят из областей вблизи географических полюсов, а центр магнитного диполя практически совпадает с центром...

От рыбацкой деревушки до киберпанка: чем может удивить самый современный город мира Шэньчжэнь

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

Почему рябина иногда месяцами висит почти нетронутой, а потом птицы объедают дерево буквально за несколько дней

Осенняя рябина умеет долго выглядеть так, будто птицы её совершенно игнорируют. Гроздья висят яркими, тяжёлыми, заметными издалека, листья уже опали, вокруг почти не осталось другой растительной...