[Intel] OBS Studio does not allow me to use hardware encoding

I can confirm that this is supported on my GPU with the following means:

  1. vainfo returns the following:
Trying display: wayland
Trying display: x11
vainfo: VA-API version: 1.21 (libva 2.22.0)
vainfo: Driver version: Intel i965 driver for Intel(R) CherryView - 2.4.1
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Simple            :	VAEntrypointEncSlice
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointEncSlice
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileH264MultiviewHigh      :	VAEntrypointVLD
      VAProfileH264MultiviewHigh      :	VAEntrypointEncSlice
      VAProfileH264StereoHigh         :	VAEntrypointVLD
      VAProfileH264StereoHigh         :	VAEntrypointEncSlice
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileJPEGBaseline           :	VAEntrypointEncPicture
      VAProfileVP8Version0_3          :	VAEntrypointVLD
      VAProfileVP8Version0_3          :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
  1. Downloading a YouTube video and playing it with mpv video.mp4 --hwdec=auto-safe works. sudo intel_gpu_top shows the Video bar above 0%. Browsers have not seemed to want to use va-api, and I’ve actually screwed up my video playback on Floorp because of this.
  2. This feature works properly on Windows.

    On Windows I would have the option to use my iGPU’s encoder instead, which makes my videos look more like videos instead of diarrhea.

As far as i know, i965 does not have an encoding engine, your list is all decoding support. VA-API is not en encoding interface, it is for decoding. With a libva-intel-hybrid-driver and G45 chips you get an encoder but only for VP8, nothing else. I have no experience with that, i am using NVIDIA which has nvenc as encoder, which is very flexible and allows choosing different codecs and adjustments to parameters. OBS works with it.

The Arch Wiki:

VAEntrypointVLD means that your card is capable to decode this format, VAEntrypointEncSlice means that you can encode to this format.

I see a whole lot of both. Is this something I would have to bug OBS about to support on Linux?

ok, my information seems outdated… I don’t think that this is a bug in OBS. OBS web site lists NVENC, AMF and also QSV, but from what i see it uses external programs like x264 or nvenc for encoding. I have no idea what the Interface would be for QSV, other than if you have a x264 version qsv support, this will certainly do the job. I am not sure, i use nvenc for this.

Some bored search engine usage later (4 months later, surprised I didn’t find this earlier), I found this thread (Look at the third to last post).

So you have to set it differently than Winblows would let you, interesting. Well my videos look less like vomit now and more like videos, so I guess it works. (Set both the streaming and recording tabs to the settings I show here, specifically the ones with red around them)

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.