!!! Данная статья неактуальна. Просьба перейти к этой статье !!!
Для запуска аппаратного ускорения видео (хоть в каком-то виде) нам нужен соответствующий драйвер.
Ниже приведена инструкция по сборке и установке драйвера, настройке плеера SMPlayer, установке и настройке браузера Chromium.
Данный драйвер я “позаимствовал“ в свой репозиторий потому что он изначально отказывался запускаться и надо было немного подправить исходник (оригинальный репозиторий доступен по ссылке).
Все манипуляции производились на официальной прошивке RepkaOS 1.0.17 (11.12.2023).
Итак, приступим.
1) Сборка и установка драйвера #
-
откроем терминал
-
установим зависимости
sudo apt install build-essential vainfo libva-dev libdrm-dev meson
-
скачаем драйвер из репозитория
git clone https://github.com/ArtSvetlakov/libva-v4l2-request.git
-
последовательно введём команды
cd libva-v4l2-request
meson build
cd build
meson configure -Dprefix=/usr
ninja
ninja install
-
откроем файл ~/.profile (это скрытый файл в домашней папке) в текстовом редакторе и добавим в конец эту строку:
export LIBVA_DRIVER_NAME=v4l2_request
-
сохраняем файл и перезагружаем Репку.
-
снова открываем терминал и вводим команду:
vainfo
Если вы увидели примерно это (ниже на рисунке), то сделали всё правильно.
va_openDriver() returns 0 говорит о том, что драйвер запустился и работает без ошибок, а чуть ниже перечислены кодеки, которые он поддерживает.
На этом первая часть выполнена!
2) Настройка SMPlayer #
SMPlayer - это простой видеоплеер с графическим интерфейсом, входит в число стандартных приложений.
Чтобы включить поддержку аппаратного ускорения нужно сделать следующее:
-
Запустить SMPlayer, далее “Параметры” → “Настройки”.
-
В окне настроек слева выбрать “Основные”, сверху вкладка “Видео” → Поставить галочку “Прямой рендеринг”.
-
Слева выбрать “Быстродействие“ → правее будет “Аппаратное декодирование“ → в выпадающем списке выбрать “vaapi”.
-
Нажать “Применить“, затем “ОК“.
Настройка SMPlayer завершена. Можно смотреть скачанные фильмы :)
3) Установка и настройка браузера Chromium #
Стандартный Firefox у меня не получилось “аппаратно ускорить“, так что проще забыть о нём.
Поэтому поставим Chromium.
-
Добавим репозиторий Chromium и скачаем браузер оттуда
sudo add-apt-repository ppa:saiarcot895/chromium-dev
sudo apt update
sudo apt install chromium-browser
-
Для дальнейшего удобства создадим скрипт для запуска браузера с нужными параметрами. Для этого создайте на рабочем столе пустой текстовый файл с именем например
chromium.sh
и откройте его текстовым редактором. В файл добавтье следующие строки:#!/bin/bash
LIBVA_DRI3_DISABLE=1 chromium-browser --no-sandbox --use-gl=angle --use-angle=gl-egl --enable-features=VaapiVideoDecodeLinuxGL,VaapiVideoEncoder --disable-features=UseChromeOSDirectVideoDecoder --disable-gpu-memory-buffer-video-frames --ignore-gpu-blocklist --disable-gpu-driver-bug-workarounds
-
Сохраните файл и закройте текстовый редактор.
-
Дадим нашему скрипту права на выполнение. Для этого по файлу кликните правой кнопкой мыши → Свойства → Права → поставить галочку “Разрешить выполнять как программу” → OK.
-
Дважды кликаем по нашему файлу и откроется Chromium. Нам нужно активировать 2 флага. для этого в адресной строке впишите
chrome://flags
и нажмите Enter. -
В появившейся странице в поисковой строке найдите
enable-unsafe-webgpu
и переключите на Enabled, затем найдитеenable-raw-draw
и тоже переключите на Enabled. После чего перезапустите Chromium (для этого снизу как раз появится синяя кнопка “Relaunch”). -
После перезапуска Chromium в адресной строке введите
chrome://gpu
и нажмите Enter.
Если у вас как на картинке ниже, значит Chromium настроен верно.
Direct Rendering Display Compositor отключен потому что он для Android (если я правильно нашёл).
Vulkan отключен потому что его на Репке просто нет.
Всё остальное “аппаратно ускорено“ настолько, насколько это могут драйвера/железо репки.
Круто! Будем проверять.
Очень интересно. Возможно лучше будет добавить строку "LIBVA_DRIVER_NAME=v4l2_request" в файл /etc/environment, чтобы переменная была доступна для всех учётных записей.
К медиаплееру VLC ускорение тоже подключилось. Инструменты -> Настройки -> Ввод/Кодеки -> Hardware-accelerated decoding выбрать "Видеодекодер VA-API" или "Видеодекодер VA-API через DRM"
у меня только одна учетная запись (root), делал по руководству из linux-sunxi.
Попробовал по вашему, тоже заработало.