VA-API на оборудовании i915 в Debian

VA-API на оборудовании i915 в Debian

У меня старый ноутбук Atom (идентификатор устройства VGA22Б1), который я хотел бы использовать в качестве видеоплеера. Я смутно помню, что раньше у меня было ускоренное видео с Debian Stretch много лет назад, но я могу ошибаться. На ноутбуке сейчас установлен Debian Buster с i915.koзагруженным драйвером, а VA-API отказывается работать:

user@machine:~/.config$ vainfo
libva info: VA-API version 1.4.0
libva info: va_getDriverName() returns -1
libva error: va_getDriverName() failed with unknown libva error,driver_name=(null)
vaInitialize failed with error code -1 (unknown libva error),exit

user@machine:~/.config$ LIBVADRIVERNAME=i915 vainfo
libva info: VA-API version 1.4.0
libva info: va_getDriverName() returns -1
libva info: User requested driver 'i915'
libva info: Trying to open /usr/lib/i386-linux-gnu/dri/i915_drv_video.so
libva info: va_openDriver() returns -1
vaInitialize failed with error code -1 (unknown libva error),exit

Я понимаю, что i915_drv_video.soэто не предусмотрено ни одним пакетом Debian Buster. Я пробовал использовать i965_drv_video.soи iHD_drv_video.so, но vainfoсообщается "init failed", что неудивительно, учитывая, что у меня i915.

Интересно, какие у меня есть варианты. Стоит ли попробовать обновиться до Bullseye? Или понизить до Stretch? Насколько я могу судить, i915_drv_video.soни один из них не предоставляет.

Вот активная конфигурация драйвера i915:

user@machine:~/.config$ sudo systool -m i915 -av
Module = "i915"

  Attributes:
    coresize            = "1331200"
    initsize            = "0"
    initstate           = "live"
    refcnt              = "3"
    taint               = ""
    uevent              = <store method only>

  Parameters:
    alpha_support       = "N"
    disable_display     = "N"
    disable_power_well  = "1"
    dmc_firmware_path   = "(null)"
    edp_vswing          = "0"
    enable_dc           = "-1"
    enable_dp_mst       = "Y"
    enable_dpcd_backlight= "N"
    enable_fbc          = "0"
    enable_guc          = "0"
    enable_gvt          = "N"
    enable_hangcheck    = "Y"
    enable_ips          = "1"
    enable_ppgtt        = "2"
    enable_psr          = "-1"
    error_capture       = "Y"
    fastboot            = "N"
    force_reset_modeset_test= "N"
    guc_firmware_path   = "(null)"
    guc_log_level       = "0"
    huc_firmware_path   = "(null)"
    invert_brightness   = "0"
    load_detect_test    = "N"
    lvds_channel_mode   = "0"
    mmio_debug          = "0"
    modeset             = "-1"
    nuclear_pageflip    = "N"
    panel_use_ssc       = "-1"
    prefault_disable    = "N"
    reset               = "2"
    vbt_firmware        = "(null)"
    vbt_sdvo_panel_type = "-1"
    verbose_state_checks= "Y"

решение1

Похоже, что VAAPI поддерживается только наIntel® GMA X4500HD и вышев то время как вашIntel GMA900может поддерживать только предыдущее воплощение, известное какКомпенсация движения X-Video(XvMC).

Также похоже, что любое доступное ускорение видео ограничено MPEG-2. Хотя вы сможете воспроизводить DVD, у вас не будет аппаратного ускорения для Blue Ray и современного веб-видео. ИзIntel GMA900Информация из Википедии:

Как и предыдущие интегрированные графические решения Intel, GMA 900 имеет аппаратную поддержку компенсации движения MPEG-2, преобразования цветового пространства и наложения DirectDraw.

Arch Linux имеет некоторую информацию о XvMC, но я могу найти тольконеопределенные сообщения на форуме о Debian.

решение2

На самом деле у вас нет i915 — это всего лишь название драйвера ядра; тот же гигантский i915.koдрайвер управляет всеми графическими процессорами Intel, когда-либо выпущенными за последние ~17 лет или около того, хотяниктоиз них, за исключением оригинальной серии Intel GMA 9xx (которая была за несколько поколений до вашей HD Graphics), на самом деле назывались «i915».

Однако наименование толькопохожий,но они не идентичны между драйвером ядра и различными типами драйверов пользовательского пространства, поэтому совершенно нормально, что вы видите i915.ko на стороне ядра, но i965.so в VAAPI.

Например, проект Mesa имеет отдельные драйверы DRI i915_dri.soи i965_dri.so(а также crocus_driи iris_dri) для разных поколений графических процессоров Intel – все четыре из них, как ожидается, будут взаимодействовать с i915.ko на стороне ядра.

То же самое касается VA-API; i965_drv_video.soдрайвер VA-APIявляетсяправильный для большинства старых графических процессоров Intel, тогда как iHD_drv_video.so— для Skylake и более поздних версий, но все они по-прежнему будут использовать драйвер ядра i915.ko.

(Насколько я могу судить, i915_drv_video.so нет, потому чтодействительныйГрафические процессоры «i915» вообще не имели ускоренного декодирования видео.)

Связанный контент