Hm… just out of curiosity, I tried Wayland this time, but hardware acceleration on Chrome 104 is broken.
I used this launch command:
/usr/bin/google-chrome-stable --use-gl=egl --enable-features=VaapiVideoDecoder,VaapiVideoEncoder,CanvasOopRasterization --disable-features=UseChromeOSDirectVideoDecoder --disable-direct-composition --disable-font-subpixel-positioning --disable-gpu-vsync --disable-gpu-driver-bug-workarounds --enable-zero-copy --enable-accelerated-2d-canvas --enable-smooth-scrolling --enable-gpu-rasterization
Computer stops responding when the video playback starts, and when it gets responsive again then only a black screen appears, Chrome tools says it’s hardware decoding it, but it’s broken.
Just in case of usefulness, here I leave what the terminal says when I launch Chrome from there:
/usr/bin/google-chrome-stable --use-gl=egl --enable-features=VaapiVideoDecoder,VaapiVideoEncoder,CanvasOopRasterization --disable-features=UseChromeOSDirectVideoDecoder --disable-direct-composition --disable-font-subpixel-positioning --disable-gpu-vsync --disable-gpu-driver-bug-workarounds --enable-zero-copy --enable-accelerated-2d-canvas --enable-smooth-scrolling --enable-gpu-rasterization
*** MESA_GLSL_CACHE_DISABLE is deprecated; use MESA_SHADER_CACHE_DISABLE instead ***
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[6240:6240:0820/122449.078472:ERROR:gpu_init.cc(486)] Passthrough is not supported, GL is egl, ANGLE is
*** MESA_GLSL_CACHE_DISABLE is deprecated; use MESA_SHADER_CACHE_DISABLE instead ***
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[0820/122534.150322:ERROR:elf_dynamic_array_reader.h(64)] tag not found
[0820/122534.214817:ERROR:directory_reader_posix.cc(42)] opendir /home/Guido/.config/google-chrome/Crash Reports/attachments/a50eaa97-b8c4-4d7a-aed6-3e40b6ab82aa: No such file or directory (2)
[6197:6197:0820/122534.253756:ERROR:gpu_process_host.cc(965)] GPU process exited unexpectedly: exit_code=512
*** MESA_GLSL_CACHE_DISABLE is deprecated; use MESA_SHADER_CACHE_DISABLE instead ***
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[6510:6510:0820/122534.563769:ERROR:gpu_init.cc(486)] Passthrough is not supported, GL is egl, ANGLE is
*** MESA_GLSL_CACHE_DISABLE is deprecated; use MESA_SHADER_CACHE_DISABLE instead ***
[6510:6510:0820/122535.940291:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[6510:6510:0820/122541.628891:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times!
[6510:6510:0820/122541.650498:ERROR:shared_image_factory.cc(741)] CreateSharedImage: could not create backing.
[6510:6510:0820/122541.651235:ERROR:shared_image_stub.cc(212)] SharedImageStub: Unable to create shared image
[6510:6510:0820/122541.685730:ERROR:shared_image_manager.cc(218)] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[6510:6510:0820/122541.687844:ERROR:shared_image_manager.cc(218)] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[6510:6510:0820/122541.689786:ERROR:shared_image_manager.cc(218)] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[6510:6510:0820/122541.691266:ERROR:shared_image_manager.cc(218)] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[6510:6510:0820/122541.692219:ERROR:shared_image_manager.cc(218)] SharedImageManager::ProduceSkia: Trying to Produce a Skia representation from a non-existent mailbox.
[0820/122619.592661:ERROR:elf_dynamic_array_reader.h(64)] tag not found
[6197:6197:0820/122619.640312:ERROR:gpu_process_host.cc(965)] GPU process exited unexpectedly: exit_code=512
*** MESA_GLSL_CACHE_DISABLE is deprecated; use MESA_SHADER_CACHE_DISABLE instead ***
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[6554:6554:0820/122619.800147:ERROR:gpu_init.cc(486)] Passthrough is not supported, GL is egl, ANGLE is
*** MESA_GLSL_CACHE_DISABLE is deprecated; use MESA_SHADER_CACHE_DISABLE instead ***
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[6554:6554:0820/122626.620915:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 1 times!
[6554:6554:0820/122632.639481:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 2 times!
[6554:6554:0820/122632.655314:ERROR:gl_surface_presentation_helper.cc(260)] GetVSyncParametersIfAvailable() failed for 3 times!
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[6554:6554:0820/122722.322884:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.700604 s, last_timebase_=902850411 bogo-microseconds, timebase=903551015 bogo-microseconds, last_media_stream_counter_=331, media_stream_counter=332
[6554:6554:0820/122724.861275:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.566996 s, last_timebase_=905516747 bogo-microseconds, timebase=906083743 bogo-microseconds, last_media_stream_counter_=337, media_stream_counter=338
libva error: /usr/lib64/dri/iHD_drv_video.so init failed
/usr/lib64/dri/hybrid_drv_video.so init failed
[6554:6554:0820/122743.361776:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.418424 s, last_timebase_=924166816 bogo-microseconds, timebase=924585240 bogo-microseconds, last_media_stream_counter_=454, media_stream_counter=455
[6554:6554:0820/122819.717430:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.100193 s, last_timebase_=960863520 bogo-microseconds, timebase=960963713 bogo-microseconds, last_media_stream_counter_=567, media_stream_counter=568
[6554:6554:0820/122845.626354:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750504 s, last_timebase_=986078701 bogo-microseconds, timebase=986829205 bogo-microseconds, last_media_stream_counter_=946, media_stream_counter=947
[6554:6554:0820/122846.310043:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.717101 s, last_timebase_=986829205 bogo-microseconds, timebase=987546306 bogo-microseconds, last_media_stream_counter_=947, media_stream_counter=948
[6554:6554:0820/122846.988207:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.687668 s, last_timebase_=987546306 bogo-microseconds, timebase=988233974 bogo-microseconds, last_media_stream_counter_=948, media_stream_counter=949
[6554:6554:0820/122858.681489:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.752822 s, last_timebase_=999127900 bogo-microseconds, timebase=999880722 bogo-microseconds, last_media_stream_counter_=1026, media_stream_counter=1027
[6554:6554:0820/122859.434501:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749087 s, last_timebase_=999880722 bogo-microseconds, timebase=1000629809 bogo-microseconds, last_media_stream_counter_=1027, media_stream_counter=1028
[6554:6554:0820/122900.183040:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750074 s, last_timebase_=1000629809 bogo-microseconds, timebase=1001379883 bogo-microseconds, last_media_stream_counter_=1028, media_stream_counter=1029
[6554:6554:0820/122919.946808:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749866 s, last_timebase_=1020393369 bogo-microseconds, timebase=1021143235 bogo-microseconds, last_media_stream_counter_=1034, media_stream_counter=1035
[6554:6554:0820/122920.696905:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749604 s, last_timebase_=1021143235 bogo-microseconds, timebase=1021892839 bogo-microseconds, last_media_stream_counter_=1035, media_stream_counter=1036
[6554:6554:0820/122921.446368:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750949 s, last_timebase_=1021892839 bogo-microseconds, timebase=1022643788 bogo-microseconds, last_media_stream_counter_=1036, media_stream_counter=1037
[6554:6554:0820/122922.196975:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749031 s, last_timebase_=1022643788 bogo-microseconds, timebase=1023392819 bogo-microseconds, last_media_stream_counter_=1037, media_stream_counter=1038
[6554:6554:0820/122922.946123:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750539 s, last_timebase_=1023392819 bogo-microseconds, timebase=1024143358 bogo-microseconds, last_media_stream_counter_=1038, media_stream_counter=1039
[6554:6554:0820/122931.458553:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749315 s, last_timebase_=1031926066 bogo-microseconds, timebase=1032675381 bogo-microseconds, last_media_stream_counter_=1060, media_stream_counter=1061
[6554:6554:0820/122934.475989:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750389 s, last_timebase_=1034925305 bogo-microseconds, timebase=1035675694 bogo-microseconds, last_media_stream_counter_=1066, media_stream_counter=1067
[6554:6554:0820/122935.225401:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749551 s, last_timebase_=1035675694 bogo-microseconds, timebase=1036425245 bogo-microseconds, last_media_stream_counter_=1067, media_stream_counter=1068
[6554:6554:0820/122938.235654:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750005 s, last_timebase_=1038675545 bogo-microseconds, timebase=1039425550 bogo-microseconds, last_media_stream_counter_=1075, media_stream_counter=1076
[6554:6554:0820/122947.106573:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749992 s, last_timebase_=1047546279 bogo-microseconds, timebase=1048296271 bogo-microseconds, last_media_stream_counter_=1090, media_stream_counter=1091
[6554:6554:0820/122947.856724:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750168 s, last_timebase_=1048296271 bogo-microseconds, timebase=1049046439 bogo-microseconds, last_media_stream_counter_=1091, media_stream_counter=1092
[6554:6554:0820/122953.928516:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.100953 s, last_timebase_=1055006974 bogo-microseconds, timebase=1055107927 bogo-microseconds, last_media_stream_counter_=1143, media_stream_counter=1144
[6554:6554:0820/122956.374736:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.115899 s, last_timebase_=1057424333 bogo-microseconds, timebase=1057540232 bogo-microseconds, last_media_stream_counter_=1162, media_stream_counter=1163
[6554:6554:0820/122956.489280:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.116875 s, last_timebase_=1057540232 bogo-microseconds, timebase=1057657107 bogo-microseconds, last_media_stream_counter_=1163, media_stream_counter=1164
[6554:6554:0820/122956.606644:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.117213 s, last_timebase_=1057657107 bogo-microseconds, timebase=1057774320 bogo-microseconds, last_media_stream_counter_=1164, media_stream_counter=1165
[6554:6554:0820/122959.677566:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.197083 s, last_timebase_=1060676205 bogo-microseconds, timebase=1060873288 bogo-microseconds, last_media_stream_counter_=1190, media_stream_counter=1191
[6554:6554:0820/123000.405704:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.100267 s, last_timebase_=1061456294 bogo-microseconds, timebase=1061556561 bogo-microseconds, last_media_stream_counter_=1196, media_stream_counter=1197
[6554:6554:0820/123003.057424:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.120849 s, last_timebase_=1064173377 bogo-microseconds, timebase=1064294226 bogo-microseconds, last_media_stream_counter_=1214, media_stream_counter=1215
[6554:6554:0820/123003.576105:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.101507 s, last_timebase_=1064623230 bogo-microseconds, timebase=1064724737 bogo-microseconds, last_media_stream_counter_=1218, media_stream_counter=1219
[6554:6554:0820/123007.912909:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.101632 s, last_timebase_=1069055914 bogo-microseconds, timebase=1069157546 bogo-microseconds, last_media_stream_counter_=1255, media_stream_counter=1256
[6554:6554:0820/123015.144697:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.649822 s, last_timebase_=1075727359 bogo-microseconds, timebase=1076377181 bogo-microseconds, last_media_stream_counter_=1316, media_stream_counter=1317
[6554:6554:0820/123025.227252:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.116997 s, last_timebase_=1086271729 bogo-microseconds, timebase=1086388726 bogo-microseconds, last_media_stream_counter_=1398, media_stream_counter=1399
[6554:6554:0820/123031.290396:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.116362 s, last_timebase_=1092337557 bogo-microseconds, timebase=1092453919 bogo-microseconds, last_media_stream_counter_=1435, media_stream_counter=1436
[6554:6554:0820/123033.811695:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.101368 s, last_timebase_=1094854593 bogo-microseconds, timebase=1095057329 bogo-microseconds, last_media_stream_counter_=1453, media_stream_counter=1455
[6554:6554:0820/123035.622695:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.113373 s, last_timebase_=1096673795 bogo-microseconds, timebase=1096787168 bogo-microseconds, last_media_stream_counter_=1466, media_stream_counter=1467
[6554:6554:0820/123037.221454:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.113981 s, last_timebase_=1098272408 bogo-microseconds, timebase=1098386389 bogo-microseconds, last_media_stream_counter_=1478, media_stream_counter=1479
[6554:6554:0820/123039.303413:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750594 s, last_timebase_=1099769593 bogo-microseconds, timebase=1100520187 bogo-microseconds, last_media_stream_counter_=1481, media_stream_counter=1482
[6554:6554:0820/123040.053683:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749445 s, last_timebase_=1100520187 bogo-microseconds, timebase=1101269632 bogo-microseconds, last_media_stream_counter_=1482, media_stream_counter=1483
[6554:6554:0820/123044.575298:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.100384 s, last_timebase_=1105652735 bogo-microseconds, timebase=1105753119 bogo-microseconds, last_media_stream_counter_=1514, media_stream_counter=1515
[6554:6554:0820/123049.963678:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749895 s, last_timebase_=1110454374 bogo-microseconds, timebase=1111204269 bogo-microseconds, last_media_stream_counter_=1524, media_stream_counter=1525
[6554:6554:0820/123050.713628:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749801 s, last_timebase_=1111204269 bogo-microseconds, timebase=1111954070 bogo-microseconds, last_media_stream_counter_=1525, media_stream_counter=1526
[6554:6554:0820/123051.509014:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.36936 s, last_timebase_=1112335009 bogo-microseconds, timebase=1112704369 bogo-microseconds, last_media_stream_counter_=1527, media_stream_counter=1528
[6554:6554:0820/123054.808255:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.116162 s, last_timebase_=1115885848 bogo-microseconds, timebase=1116002010 bogo-microseconds, last_media_stream_counter_=1539, media_stream_counter=1540
[6554:6554:0820/123103.921507:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.100293 s, last_timebase_=1125067293 bogo-microseconds, timebase=1125167586 bogo-microseconds, last_media_stream_counter_=1618, media_stream_counter=1619
[6554:6554:0820/123110.071078:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.117279 s, last_timebase_=1131117150 bogo-microseconds, timebase=1131234429 bogo-microseconds, last_media_stream_counter_=1664, media_stream_counter=1665
[6554:6554:0820/123112.087625:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.749952 s, last_timebase_=1132534783 bogo-microseconds, timebase=1133284735 bogo-microseconds, last_media_stream_counter_=1669, media_stream_counter=1670
[6554:6554:0820/123114.276088:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.100571 s, last_timebase_=1134866582 bogo-microseconds, timebase=1134967153 bogo-microseconds, last_media_stream_counter_=1681, media_stream_counter=1682
[6554:6554:0820/123115.832680:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.750506 s, last_timebase_=1136283249 bogo-microseconds, timebase=1137033755 bogo-microseconds, last_media_stream_counter_=1684, media_stream_counter=1685
[6554:6554:0820/123116.936286:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.100802 s, last_timebase_=1137982820 bogo-microseconds, timebase=1138083622 bogo-microseconds, last_media_stream_counter_=1692, media_stream_counter=1693
[6554:6554:0820/123117.254106:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.10061 s, last_timebase_=1138299994 bogo-microseconds, timebase=1138400604 bogo-microseconds, last_media_stream_counter_=1695, media_stream_counter=1696
[6554:6554:0820/123117.969527:ERROR:sync_control_vsync_provider.cc(139)] Calculated bogus refresh interval=0.10065 s, last_timebase_=1139016239 bogo-microseconds, timebase=1139116889 bogo-microseconds, last_media_stream_counter_=1698, media_stream_counter=1699
EDIT: I got it to work on Wayland but I have to switch again to the LTS kernel for it to work, anyway, the performance is terrible and lags realy bad, videos looks like 10fps.
Also, if I change my launch command to:
/usr/bin/google-chrome-stable --use-gl=egl --enable-features=VaapiVideoDecoder,VaapiVideoEncoder,CanvasOopRasterization,UseOzonePlatform --ozone-platform=wayland --disable-features=UseChromeOSDirectVideoDecoder --disable-direct-composition --disable-font-subpixel-positioning --disable-gpu-vsync --disable-gpu-driver-bug-workarounds --enable-zero-copy --enable-accelerated-2d-canvas --enable-smooth-scrolling --enable-gpu-rasterization
Which means adding “useozoneplatform” and “ozone-platform=wayland” to the first launch command I posted breaks hardware decoding.
Not sure if I have a bad configuration or Wayland is just broken.
I have hardware acceleration working on X11 though, is it worth the hassle on making it work on Wayland rather than X11? 
In a summary, I have now Hardware Decoding working on Wayland, but the issue is that playback seems really choppy, with a low frame-rate. Not sure how I can fix that, or if it’s fixeable in the first place, X11 seems to be doing fine with hardware decoding.