You are not logged in.

#1151 Today 02:50:28

richardm
Member
Registered: 2023-02-19
Posts: 6

Re: chromium: hardware video acceleration with VA-API

Update to my last message.  I'm closer to getting video acceleration on Wayland (still with Chrome running ozone=x11 however):

Throwing everything but the kitchen sink at it with these env vars:

__GLX_VENDOR_LIBRARY_NAME=nvidia
__NV_PRIME_RENDER_OFFLOAD=1
__VK_LAYER_NV_optimus=NVIDIA_only
LIBVA_DRIVER_NAME=nvidia
DRI_PRIME=pci-0000_03_00_0

...and these switches:

--enable-features=Vulkan,DefaultANGLEVulkan,VulkanFromANGLE,VaapiVideoDecodeLinuxGL,VaapiIgnoreDriverChecks,VaapiVideoDecoder
--render-node-override=/dev/dri/renderD129

This finally gets me to...

Video Acceleration Information
==============================
Decoding                      : 
Decode h264 baseline          : 48x16 to 4096x4096 pixels
Decode h264 main              : 48x16 to 4096x4096 pixels
Decode h264 high              : 48x16 to 4096x4096 pixels
Decode vp8                    : 48x16 to 4096x4096 pixels
Decode vp9 profile0           : 128x128 to 8192x8192 pixels
Decode vp9 profile2           : 128x128 to 8192x8192 pixels
Decode hevc main              : 144x144 to 8192x8192 pixels
Decode hevc main 10           : 144x144 to 8192x8192 pixels
Decode hevc main still-picture: 144x144 to 8192x8192 pixels
Decode av1 profile main       : 128x128 to 8192x8192 pixels

First time seeing ANY decodes here with this GPU.

The catch?  Most videos won't actually play.

00:00:01.881	pipeline_state	"kPlaying"
00:00:01.903	dimensions	"2560x1440"
00:00:01.903	kResolution	"2560x1440"
00:00:01.903	error	{"code":5,"data":{},"group":"DecoderStatus","message":"","stack":[{"file":"media/mojo/clients/mojo_video_decoder.cc","line":475}]}
00:00:01.903	error	"video decode error!"
00:00:02.572	error	{"cause":{"code":5,"data":{},"group":"DecoderStatus","message":"","stack":[{"file":"media/mojo/clients/mojo_video_decoder.cc","line":475}]},"code":24,"data":{},"group":"PipelineStatus","message":"","stack":[{"file":"media/renderers/video_renderer_impl.cc","line":596}]}
00:00:02.572	pipeline_state	"kStopping"

The breakthrough (if you call it that) was when I pointed vainfo at the nVidia with the correct arguments to make it work.  LIBVA_DRIVER_NAME is the key that made h/w decodes appear in Chrome://GPU:

LIBVA_DRIVER_NAME=nvidia vainfo --display drm --device /dev/dri/renderD129

and for the RX 570:

LIBVA_DRIVER_NAME=radeonsi vainfo --display drm --device /dev/dri/renderD128

I'll add that switcherooctl appears to omit LIBVA_DRIVER_NAME and also DRI_PRIME is insufficient by itself (on my setup at least).

Chrome remains unusable in native Wayland mode.

Last edited by richardm (Today 02:53:23)

Offline

#1152 Today 06:57:21

Xephon
Member
Registered: 2024-12-22
Posts: 116

Re: chromium: hardware video acceleration with VA-API

@richardm, could you please check hardware acceleration status on NVIDIA in the "media" tab in the devtools or in nvtop on your system?

I was trying to help to set-up video acceleration on NVIDIA https://bbs.archlinux.org/viewtopic.php?id=305664
Despite Video Acceleration Information table in chrome://gpu was filled with codec information, videos were not accelerated.

Offline

Board footer

Powered by FluxBB