Как включить вертикальную синхронизацию при воспроизведении видео

AEvg

New member
Сообщения
20
#1
Как включить вертикальную синхронизацию при воспроизведении видео в яндекс браузере и вообще потому что заметны разрывы кадров без нее.
 

countmein

New member
Сообщения
328
#2
Похоже, что пока никак. Какой-то композит-менеджер появится, тогда уж. Раньше был compton, а сейчас его убрали, а вместо ничего не добавили. Picom, типа, стоит, но на деле в этом пакете только документация, а самой программы нет.
 

Montfer

New member
Сообщения
2 364
#3
есть и композит-менеджер, и вертикальная синхрнизация в его настройках
 

countmein

New member
Сообщения
328
#4
Ну, значит он бесполезный. Разрывы не убирает своими настройками, а на прошлой версии убирал.
 

countmein

New member
Сообщения
328
#6
Что именно? Исполняемый файл picom отсутствует. Compton был символьной ссылкой на picom. Её, естественно, тоже нет.
 

Montfer

New member
Сообщения
2 364
#7
Что именно? Исполняемый файл picom отсутствует. Compton был символьной ссылкой на picom. Её, естественно, тоже нет.
да, разобрался. я не заметил, что при установке compton удалились fly-all-main и picom. без них вроде как всё работает. единствое, что может при следующих обновлениях выоезти проблема из за отсутствия fly-all-main.
 

countmein

New member
Сообщения
328
#8
без них вроде как всё работает.
Я думал, что с fly-all-main вообще весь fly удалится, поэтому не рискнул.

С правильным репозиторием Астры мне удалось собрать picom локально, по этой инструкции, но как-то он странно работает, нестабильно. Самый сильный эффект (что касается vsync) был при первом запуске, а потом такое впечатление, что при каждом запуске всё слабее. Но зато сначала сильно и процессор загружался. В общем, что-то непонятное происходит.
 

countmein

New member
Сообщения
328
#10
Тем временем я посмотрел в старой Астре параметры запуска picom (под именем compton), оказались такие:
Код:
--unredir-if-possible --refresh-rate 24 --use-ewmh-active-win --xrender-sync-fence --use-damage --glx-no-rebind-pixmap --glx-no-stencil --backend glx --vsync -e 0.84
С ними работает хорошо. Но официальную ветку (yshui) лучше не собирать, т.к. она не знает параметра --refresh-rate. Я сейчас пробую jonaburg. Вообще параметров у picom куча, ещё знать бы что они означают.

Но вылезает проблема, с которой я сталкивался и на старой Астре: большая загрузка процессора процессом kworker -- до 60%, если верить выводу top. Тогда я нагуглил, что это связано с видеодрайвером nouveau, и действительно, установка Nvidia решила проблему. Так что, думаю, здесь теперь то же самое.
 

countmein

New member
Сообщения
328
#11
После установки Nvidia сборка jonaburg падает с треском, а вот yshui работает нормально, только нужно убрать --refresh-rate. Он, оказывается, deprecated.
 

countmein

New member
Сообщения
328
#12
Подытожу свою возню с picom. У меня он хорошо устраняет разрывы при прокрутке, если также сменить видеодрайвер с nouveau на nvidia. С nouveau наблюдаю либо постоянную загрузку процессора до 60% процессом kworker, либо, если отключить vsync и использовать refresh-rate и sw-opti, прокрутку с сильным дребезгом.

Так что советую
Код:
sudo apt install nvidia-driver-510
и перезагрузиться. Скрипт из пакета astra-nvidia для этого лучше не использовать -- он устарел.

Описание picom и инструкция: https://www.linuxfordevices.com/tutorials/linux/picom

Установить зависимости:
Код:
sudo apt install cmake meson git pkg-config asciidoc libxext-dev libxcb1-dev libxcb-damage0-dev libxcb-xfixes0-dev libxcb-shape0-dev libxcb-render-util0-dev libxcb-render0-dev libxcb-randr0-dev libxcb-composite0-dev libxcb-image0-dev libxcb-present-dev libxcb-xinerama0-dev libxcb-glx0-dev libpixman-1-dev libdbus-1-dev libconfig-dev libgl1-mesa-dev  libpcre3-dev  libevdev-dev uthash-dev libev-dev libx11-xcb-dev
Вместо libpcre2-dev, как в инструкции, устанавливается libpcre3-dev, т.к. picom использует более старую библиотеку, а она, как ни странно, в пакете с большим номером.

Получить исходники:
Код:
git clone --recursive https://github.com/yshui/picom <dir>
Сборка и установка:
Код:
cd <dir>
meson -Dwith_docs=true --buildtype=release . build
ninja -C build
sudo ninja -C build install
Meson жалуется, что не нашёл пакет libev, хотя библиотеки присутствуют в /usr/lib/x86_64-linux-gnu. Но это не мешает сборке, т.к., по-видимому, используется найденная библиотека ev (см. src/meson.build).

Исполняемый файл будет лежать по адресу /usr/local/bin/picom. Прописать его в автозагрузку можно без параметров -- их удобнее держать в файле конфигурации. Этот файл отслеживается запущенным picom, так что если там менять настройки, то при сохранении файла они подхватываются на лету.

Файл конфигурации (~/.config/picom/picom.conf):
Код:
shadow = false
fading = false
corner-radius = 0
blur-background = false
blur-background-frame = false
backend = "glx"
glx-no-stencil = true
glx-no-rebind-pixmap = true
use-damage = true
xrender-sync-fence = true
unredir-if-possible = true
use-ewmh-active-win = true
vsync = true
log-level = "error"
log-file = "/home/user/.config/picom/picom.log"
Мне кроме устранения разрывов никакие эффекты не нужны, поэтому постарался всё отключить, чтобы снизить нагрузку. В настройках оформления fly отключил композит-менеджер. Видимо, он теперь встроенный, но какой-то беспонтовый -- по крайней мере что касается вертикальной синхронизации. Что включи её там, что выключи -- никакого эффекта нет.
 
Последнее редактирование: