Артемий Светлаков
Артемий Светлаков
993 просмотров3 комментариев

(НЕАКТУАЛЬНО!) Настраиваем/Чиним аппаратное ускорение видео (оставил для истории)


!!! Данная статья неактуальна. Просьба перейти к этой статье !!!

Для запуска аппаратного ускорения видео (хоть в каком-то виде) нам нужен соответствующий драйвер.

Ниже приведена инструкция по сборке и установке драйвера, настройке плеера SMPlayer, установке и настройке браузера Chromium.

Данный драйвер я “позаимствовал“ в свой репозиторий потому что он изначально отказывался запускаться и надо было немного подправить исходник (оригинальный репозиторий доступен по ссылке).

Все манипуляции производились на официальной прошивке RepkaOS 1.0.17 (11.12.2023).

Итак, приступим.

1) Сборка и установка драйвера

  1. откроем терминал

  2. установим зависимости

    sudo apt install build-essential vainfo libva-dev libdrm-dev meson

  3. скачаем драйвер из репозитория

    git clone https://github.com/ArtSvetlakov/libva-v4l2-request.git

  4. последовательно введём команды

    cd libva-v4l2-request

    meson build

    cd build

    meson configure -Dprefix=/usr

    ninja

    ninja install

  5. откроем файл ~/.profile (это скрытый файл в домашней папке) в текстовом редакторе и добавим в конец эту строку: export LIBVA_DRIVER_NAME=v4l2_request

  6. сохраняем файл и перезагружаем Репку.

  7. снова открываем терминал и вводим команду: vainfo

Если вы увидели примерно это (ниже на рисунке), то сделали всё правильно.

va_openDriver() returns 0 говорит о том, что драйвер запустился и работает без ошибок, а чуть ниже перечислены кодеки, которые он поддерживает.

На этом первая часть выполнена!

2) Настройка SMPlayer

SMPlayer - это простой видеоплеер с графическим интерфейсом, входит в число стандартных приложений.

Чтобы включить поддержку аппаратного ускорения нужно сделать следующее:

  1. Запустить SMPlayer, далее “Параметры” → “Настройки”.

  2. В окне настроек слева выбрать “Основные”, сверху вкладка “Видео” → Поставить галочку “Прямой рендеринг”.

  3. Слева выбрать “Быстродействие“ → правее будет “Аппаратное декодирование“ → в выпадающем списке выбрать “vaapi”.

  4. Нажать “Применить“, затем “ОК“.

Настройка SMPlayer завершена. Можно смотреть скачанные фильмы :)

3) Установка и настройка браузера Chromium

Стандартный Firefox у меня не получилось “аппаратно ускорить“, так что проще забыть о нём.

Поэтому поставим Chromium.

  1. Добавим репозиторий Chromium и скачаем браузер оттуда

    sudo add-apt-repository ppa:saiarcot895/chromium-dev

    sudo apt update

    sudo apt install chromium-browser

  2. Для дальнейшего удобства создадим скрипт для запуска браузера с нужными параметрами. Для этого создайте на рабочем столе пустой текстовый файл с именем например 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

  3. Сохраните файл и закройте текстовый редактор.

  4. Дадим нашему скрипту права на выполнение. Для этого по файлу кликните правой кнопкой мыши → Свойства → Права → поставить галочку “Разрешить выполнять как программу” → OK.

  5. Дважды кликаем по нашему файлу и откроется Chromium. Нам нужно активировать 2 флага. для этого в адресной строке впишите chrome://flags и нажмите Enter.

  6. В появившейся странице в поисковой строке найдите enable-unsafe-webgpu и переключите на Enabled, затем найдите enable-raw-draw и тоже переключите на Enabled. После чего перезапустите Chromium (для этого снизу как раз появится синяя кнопка “Relaunch”).

  7. После перезапуска Chromium в адресной строке введите chrome://gpu и нажмите Enter.

Если у вас как на картинке ниже, значит Chromium настроен верно.

Direct Rendering Display Compositor отключен потому что он для Android (если я правильно нашёл).

Vulkan отключен потому что его на Репке просто нет.

Всё остальное “аппаратно ускорено“ настолько, насколько это могут драйвера/железо репки.


Комментарии (3)

Для участия в обсуждении вы должны быть авторизованным пользователем
Команда Репки
Команда Репки  

Круто! Будем проверять.

comvir
comvir  

Очень интересно. Возможно лучше будет добавить строку "LIBVA_DRIVER_NAME=v4l2_request" в файл /etc/environment, чтобы переменная была доступна для всех учётных записей.

К медиаплееру VLC ускорение тоже подключилось. Инструменты -> Настройки -> Ввод/Кодеки -> Hardware-accelerated decoding выбрать "Видеодекодер VA-API" или "Видеодекодер VA-API через DRM"

Артемий Светлаков
Артемий Светлаков  

у меня только одна учетная запись (root), делал по руководству из linux-sunxi.
Попробовал по вашему, тоже заработало.

Навигация

ВойтиРегистрацияТемы