So, being mostly a Linux user has caused me issues with GeForce Now. It is supported but unless you have hardware that is very capable of software decoding, it is going to be slow or very limited.
Google Chrome supports it well but there is no official VAAPI/LIBVA support, which only works for Chromebook devices. On the other hand, Firefox supports video acceleration out of the box nowadays but GeForce Now is not compatible. So this is mostly focused on GFN but you could use these instructions for other websites.
People seem to have had success with patched versions of Chromium but I have found that this has so many levers to pull that I decided to add some information to the discussion. Here is what worked for me.
Software and Hardware
I am running Linux Mint with an old Intel N3450 "Apollo Lake", with Chromium version 131. Any version higher or lower may not work due to different flags or even distro specific compilation flags.
This hardware is quite slow for software decoding but can decode via hardware for pretty much everything, except for 10bit VP9 and AV1.
- intel-media-va-driver-non-free
- intel-gpu-tools (to use "intel_gpu_top")
- libva-glx2
- libva-drm2
- libva-x11
- vainfo
libva info: VA-API version 1.14.0libva info: Trying to open /usr/lib/x86_64-linux-gnu/dri/iHD_drv_video.solibva info: Found init function __vaDriverInit_1_14libva info: va_openDriver() returns 0vainfo: VA-API version: 1.14 (libva 2.12.0)vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 22.3.1 ()vainfo: Supported profile and entrypointsVAProfileNone : VAEntrypointVideoProcVAProfileNone : VAEntrypointStatsVAProfileMPEG2Simple : VAEntrypointVLDVAProfileMPEG2Main : VAEntrypointVLDVAProfileH264Main : VAEntrypointVLDVAProfileH264Main : VAEntrypointEncSliceVAProfileH264Main : VAEntrypointFEIVAProfileH264Main : VAEntrypointEncSliceLPVAProfileH264High : VAEntrypointVLDVAProfileH264High : VAEntrypointEncSliceVAProfileH264High : VAEntrypointFEIVAProfileH264High : VAEntrypointEncSliceLPVAProfileVC1Simple : VAEntrypointVLDVAProfileVC1Main : VAEntrypointVLDVAProfileVC1Advanced : VAEntrypointVLDVAProfileJPEGBaseline : VAEntrypointVLDVAProfileJPEGBaseline : VAEntrypointEncPictureVAProfileH264ConstrainedBaseline: VAEntrypointVLDVAProfileH264ConstrainedBaseline: VAEntrypointEncSliceVAProfileH264ConstrainedBaseline: VAEntrypointFEIVAProfileH264ConstrainedBaseline: VAEntrypointEncSliceLPVAProfileVP8Version0_3 : VAEntrypointVLDVAProfileHEVCMain : VAEntrypointVLDVAProfileHEVCMain : VAEntrypointEncSliceVAProfileHEVCMain : VAEntrypointFEIVAProfileHEVCMain10 : VAEntrypointVLDVAProfileVP9Profile0 : VAEntrypointVLD
VAEntryPointVLD means it is decoder, for each line, and EncSlice means there is decoding support.
Chromium
--enable-features=AcceleratedVideoDecodeLinuxGL
The other requirement is that this only works on X11, so you need to go to the "chrome://flags" URL and set the Ozone platform to force X11.
I will updated this if something changes.
No comments:
Post a Comment