You are not logged in.

#1 2022-04-12 15:36:13

860lacov
Member
Registered: 2020-05-02
Posts: 452

How to get OBS hardware acceleration with intel 1165G

I use Plasma with wayland.


I've installed
obs-studio
libva-vdpau-driver
intel-media-driver
libva-intel-driver (optional) - hardware encoding
libva-mesa-driver (optional) - hardware encoding

And in recording an streaming I can choose only x264 software encoder.

On HW video acceleration libva-intel-drives is listed for older CPU gen but I tried with an without it.
During uninstallation I got a message:

:: libva optionally requires libva-intel-driver: backend for Intel GPUs (<= Haswell)
:: obs-studio optionally requires libva-intel-driver: hardware encoding

I did a test with mpv and intel_gpu_top
mpv says

[ffmpeg] AVHWDeviceContext: Failed to query surface attributes: 20 (the requested function is not implemented).
[vo/gpu/vaapi-egl] failed to retrieve libavutil frame constraints
Cannot load libcuda.so.1
Using hardware decoding (vaapi).
AO: [pulse] 44100Hz stereo 2ch float
VO: [gpu] 1920x1080 vaapi[nv12]
AV: 00:00:23 / 02:23:54 (0%) A-V:  0.000

And in gpu top I have a movement in Video.

And vainfo output is:

vainfo: VA-API version: 1.14 (libva 2.14.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.3.1 ()
vainfo: Supported profile and entrypoints
      VAProfileNone                   : VAEntrypointVideoProc
      VAProfileNone                   : VAEntrypointStats
      VAProfileMPEG2Simple            : VAEntrypointVLD
      VAProfileMPEG2Simple            : VAEntrypointEncSlice
      VAProfileMPEG2Main              : VAEntrypointVLD
      VAProfileMPEG2Main              : VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointVLD
      VAProfileH264Main               : VAEntrypointEncSlice
      VAProfileH264Main               : VAEntrypointFEI
      VAProfileH264Main               : VAEntrypointEncSliceLP
      VAProfileH264High               : VAEntrypointVLD
      VAProfileH264High               : VAEntrypointEncSlice
      VAProfileH264High               : VAEntrypointFEI
      VAProfileH264High               : VAEntrypointEncSliceLP
      VAProfileVC1Simple              : VAEntrypointVLD
      VAProfileVC1Main                : VAEntrypointVLD
      VAProfileVC1Advanced            : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointVLD
      VAProfileJPEGBaseline           : VAEntrypointEncPicture
      VAProfileH264ConstrainedBaseline: VAEntrypointVLD
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline: VAEntrypointFEI
      VAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLP
      VAProfileVP8Version0_3          : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointVLD
      VAProfileHEVCMain               : VAEntrypointEncSlice
      VAProfileHEVCMain               : VAEntrypointFEI
      VAProfileHEVCMain               : VAEntrypointEncSliceLP
      VAProfileHEVCMain10             : VAEntrypointVLD
      VAProfileHEVCMain10             : VAEntrypointEncSlice
      VAProfileHEVCMain10             : VAEntrypointEncSliceLP
      VAProfileVP9Profile0            : VAEntrypointVLD
      VAProfileVP9Profile1            : VAEntrypointVLD
      VAProfileVP9Profile2            : VAEntrypointVLD
      VAProfileVP9Profile3            : VAEntrypointVLD
      VAProfileHEVCMain12             : VAEntrypointVLD
      VAProfileHEVCMain12             : VAEntrypointEncSlice
      VAProfileHEVCMain422_10         : VAEntrypointVLD
      VAProfileHEVCMain422_10         : VAEntrypointEncSlice
      VAProfileHEVCMain422_12         : VAEntrypointVLD
      VAProfileHEVCMain422_12         : VAEntrypointEncSlice
      VAProfileHEVCMain444            : VAEntrypointVLD
      VAProfileHEVCMain444            : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_10         : VAEntrypointVLD
      VAProfileHEVCMain444_10         : VAEntrypointEncSliceLP
      VAProfileHEVCMain444_12         : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointVLD
      VAProfileHEVCSccMain            : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain10          : VAEntrypointVLD
      VAProfileHEVCSccMain10          : VAEntrypointEncSliceLP
      VAProfileHEVCSccMain444         : VAEntrypointVLD
      VAProfileHEVCSccMain444         : VAEntrypointEncSliceLP
      VAProfileAV1Profile0            : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointVLD
      VAProfileHEVCSccMain444_10      : VAEntrypointEncSliceLP

Offline

#2 2022-04-13 12:08:44

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: How to get OBS hardware acceleration with intel 1165G

Do you have an I7-1165G7 aka TigerLake processor ?
If not, what is exact model of your processor ?

remove libva-mesa-driver , it is only used by nouveau (nvidia) and amd cards.


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#3 2022-04-13 16:37:32

860lacov
Member
Registered: 2020-05-02
Posts: 452

Re: How to get OBS hardware acceleration with intel 1165G

Lone_Wolf wrote:

Do you have an I7-1165G7 aka TigerLake processor ?
If not, what is exact model of your processor ?

remove libva-mesa-driver , it is only used by nouveau (nvidia) and amd cards.


Yes
It is I7-1165G7 TigerLake CPU

11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz

I already removed libva-mesa-driver.
Currently, I have only intel-media-driver

Last edited by 860lacov (2022-04-13 16:37:56)

Offline

#4 2022-04-13 16:51:25

progandy
Member
Registered: 2012-05-17
Posts: 5,184

Re: How to get OBS hardware acceleration with intel 1165G

If you want to choose the VAAPI encoder, then you need to set the obs output options to advanced first.

Last edited by progandy (2022-04-13 16:51:41)


| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |

Offline

#5 2022-04-13 20:07:50

860lacov
Member
Registered: 2020-05-02
Posts: 452

Re: How to get OBS hardware acceleration with intel 1165G

progandy wrote:

If you want to choose the VAAPI encoder, then you need to set the obs output options to advanced first.

Tried this.
With advanced output options there is software encoder only

Offline

#6 2022-04-14 07:23:18

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: How to get OBS hardware acceleration with intel 1165G

860lacov wrote:

I use Plasma with wayland.

Have you added -platform wayland to the OBS start command or set the envvar QT_QPA_PLATFORM=wayland ?

See the (first) colored box on https://wiki.archlinux.org/title/Open_B … r_Software .


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#7 2022-06-19 20:42:00

860lacov
Member
Registered: 2020-05-02
Posts: 452

Re: How to get OBS hardware acceleration with intel 1165G

Lone_Wolf wrote:
860lacov wrote:

I use Plasma with wayland.

Have you added -platform wayland to the OBS start command or set the envvar QT_QPA_PLATFORM=wayland ?

See the (first) colored box on https://wiki.archlinux.org/title/Open_B … r_Software .

I tried but OBS still works in software mode.

Offline

#8 2022-06-20 08:51:33

Lone_Wolf
Member
From: Netherlands, Europe
Registered: 2005-10-04
Posts: 11,868

Re: How to get OBS hardware acceleration with intel 1165G

If libva-vdpau-driver is still present, remove it.

Does OBS have hardware accel when running under X ?

If you start obs under XWayland by prepending QT_QPA_PLATFORM=xcb to the start command does it have hw accell ?


Disliking systemd intensely, but not satisfied with alternatives so focusing on taming systemd.


(A works at time B)  && (time C > time B ) ≠  (A works at time C)

Offline

#9 2022-07-04 22:12:32

h3ndrik
Member
Registered: 2022-07-04
Posts: 1

Re: How to get OBS hardware acceleration with intel 1165G

maybe your user has to be in the group 'render' to get access to the device:

sudo usermod -a -G render <username>
sudo usermod -a -G video <username>

Offline

#10 2023-05-14 10:12:05

renyuneyun
Member
Registered: 2017-01-21
Posts: 9

Re: How to get OBS hardware acceleration with intel 1165G

(I'm aware this is a thread almost a year's old. But there is no solution yet, so I'm replying.)

I managed to make hardware encoding for OBS working, with Intel i5 1135G7. I'm on Wayland with KDE.
Previously I was stuck with only "software x264". A reply in this thread mentioned "advanced output option", and I found "FFMPEG  VAAPI H264", which is the thing.

I'm not exactly sure how different my set up is with OP's,  But I have the following relevant packages installed:

$ pacman -Qs vaapi 
local/gstreamer-vaapi 1.22.2-1
    Multimedia graph framework - vaapi plugin
local/intel-media-driver 23.1.0-1
    Intel Media Driver for VAAPI — Broadwell+ iGPUs
local/libvdpau-va-gl 0.4.2-3
    VDPAU driver with OpenGL/VAAPI backend
$ pacman -Qs libva
local/lib32-libva 2.18.0-1
    Video Acceleration (VA) API for Linux (32-bit)
local/libva 2.18.0-1
    Video Acceleration (VA) API for Linux
local/libva-utils 2.18.1-1
    Intel VA-API Media Applications and Scripts for libva
local/vamp-plugin-sdk 2.10.0-2 (pro-audio)
    The Vamp audio analysis plug-in system

(Some, e.g. vamp-plugin-sdk, are unrelated.)

And I have

linux-firmware

installed, which is mentioned in the wiki page

I don't have xf86-video-intel, by the way, if that matters. Neither did I set my user with addition groups for this purpose. But to be complete, my user's additional groups are:

wireshark sambashare docker video wheel

Last edited by renyuneyun (2023-05-14 10:14:06)

Offline

Board footer

Powered by FluxBB