LINUX.ORG.RU

использование vaapi для декодирования и vdpau для отображения

 , ,


0

2

Добрый день, подскажите пожалуйста по ситуации: Есть процессор i5-8600K, встроенное GPU поддерживает hevc. Есть видеокарта, Nvidia GTX 750, шустрее интеграшки, но древнее и не умеет hevc. В системе используется как основное устройство Nvidia.

Есть желание использовать в плеере, например MPV, аппаратное декодирование hevc примерно так: hwdec=vaapi vo=vdpau - так вообще можно? Проблема в том что надо указывать на каком GPU использовать vaapi. Если просто запустить vainfo то естественно пытается использоваться Nvidia и vaapi нет. Если запустить vainfo –device /dev/dri/renderD129 –display drm то определяется интеграшка и показывает что есть аппаратное декодирование hevc.

пробовал запускать mpv так: mpv –hwdec=vaapi-copy –vaapi-device=/dev/dri/renderD129 – vo=vdpau

выдаёт ошибку: [vaapi] Failed to initialize VAAPI: unknown libva error и грузит cpu как обычно.

если hwdec=vaapi то ошибку не выдаёт но и CPU грузит как без аппаратной поддержки.

Вопрос как сделать чтобы для vaapi использовалась конкретная видеокарта или как-то по другом реализовать vo=vdpau hwdec=vaapi ?

Система gentoo, mpv собран с опциями vaapi vdpau vulkan -drm

Ну и юзать vdpau как видеовыход, имхо, не имеет смысла. Видеовыход gpu вполне не нагружает проц при декодинге на видюхе, а если нагружает, то параметр -gpu-context=x11egl фиксит это.

chaos_dremel ★★ ()