В пакете с Firefox для Fedora появилась поддержка ускорения декодироваиня видео через VA-API
4 июня 2020 года
Мэйнтейнер пакетов с Firefox для Fedora Linux сообщил о готовности к использованию в Fedora аппаратного ускорения декодирования видео в Firefox при помощи VA-API. Ускорение пока работает только в окружениях на базе Wayland. Поддержка VA-API в Chromium была реализована в Fedora в прошлом году.
Аппаратное ускорение декодирования видео в Firefox стало возможным благодаря новому бэкенду для Wayland, который использует механизм DMABUF для отрисовки в текстуры и организации совместного использования разными процессами буферов с этими текстурами. В Fedora 32 и Fedora 31 в свежем пакете с Firefox 77 новый бэкенд по умолчанию включается при запуске в сеансе GNOME на базе Wayland, но для активации аппаратного ускорения декодирования видео дополнительно требуется установка пакетов ffmpeg, libva и libva-utils из репозитория RPM Fusion, собранных с поддержкой VA-API.
На системах с видеокартами Intel ускорение работает только с драйвером libva-intel-driver (драйвер libva-intel-hybrid-driver пока не поддерживается). Для GPU AMD ускорение работает при наличии штатной библиотеки radeonsi_drv_video.so, входящей в состав пакета mesa-dri-drivers. Для видеокарт NVIDIA поддержка пока не реализована. Для оценки поддержки VA-API драйвером можно воспользоваться утилитой vainfo. Если поддержка подтверждена, то для включения ускорения в Firefox на странице "about:config" следует установить в значение true переменные "gfx.webrender.enabled" и "widget.wayland-dmabuf-vaapi.enabled". После перезапуска браузера необходимо проверить активацию WebRender и нового бэкенда (Wayland/drm) на странице "about:support".
После этого нужно убедиться в применении VA-API для ускорения при просмотре видео (могут быть проблемы совместимости с кодеками, размерами видео и библиотеками), для чего можно включить отладочный режим, запустив Firefox c переменной окружения MOZ_LOG и проверить в выводе наличие сторк "VA-API FFmpeg init successful" и "Got one VAAPI frame output". MOZ_LOG="PlatformDecoderModule:5" MOZ_ENABLE_WAYLAND=1 firefox
Применение ускорения при просмотре Youtube зависит от способа кодирования ролика (H.264, AV1 и т.п.). Посмотреть формат можно в открываемом по клику правой кнопкой мыши контекстном меню в секции "Stats for nerds". Для выбора формата, поддерживаемого системой аппаратного декодирования видео, можно использовать дополнение enhanced-h264ify.
Отдельно отмечается, что в пакеты с Firefox 77.0 для Fedora включены дополнительные патчи, влияющие на производительность и стабильность, которые отсутствуют в штатных сборках Firefox 77.0 от Mozilla. Включение данных патчей в основной состав ожидается только в Firefox 78.0 (пользователи могут использовать бета-версию Firefox 78 или ночные сборки от Mozilla, запуская браузер командой "MOZ_ENABLE_WAYLAND=1 ./firefox"). Кроме того, в сборках от Mozilla для декодирования VP8/VP9 применяется встроенная библиотека libvpx, не поддерживающая VA-API - при необходимости ускорения декодирования VP8/VP9 следует отключить libvpx, установив в about:config переменную "media.ffvpx.enabled" в значение "false" (в пакете из репозитория Fedora libvpx уже отключён).
Источники править
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.
Комментарии
Если вы хотите сообщить о проблеме в статье (например, фактическая ошибка и т. д.), пожалуйста, используйте обычную страницу обсуждения.
Комментарии на этой странице могут не соответствовать политике нейтральной точки зрения, однако, пожалуйста, придерживайтесь темы и попытайтесь избежать брани, оскорбительных или подстрекательных комментариев. Попробуйте написать такие комментарии, которые заставят задуматься, будут проницательными или спорными. Цивилизованная дискуссия и вежливый спор делают страницу комментариев дружелюбным местом. Пожалуйста, подумайте об этом.
Несколько советов по оформлению реплик:
- Новые темы начинайте, пожалуйста, снизу.
- Используйте символ звёздочки «*» в начале строки для начала новой темы. Далее пишите свой текст.
- Для ответа в начале строки укажите на одну звёздочку больше, чем в предыдущей реплике.
- Пожалуйста, подписывайте все свои сообщения, используя четыре тильды (~~~~). При предварительном просмотре и сохранении они будут автоматически заменены на ваше имя и дату.
Обращаем ваше внимание, что комментарии не предназначены для размещения ссылок на внешние ресурсы не по теме статьи, которые могут быть удалены или скрыты любым участником. Тем не менее, на странице комментариев вы можете сообщить о статьях в СМИ, которые ссылаются на эту заметку, а также о её обсуждении на сторонних ресурсах.