You are not logged in.
Weird. LIBVA_DRI3_DISABLE=1 does make it work again. I tried it at first and it didn't work at all but I actually had to reboot. I thought those env variables were loaded when logging out and back in again but I guess not?. I don't even have to use --use-gl=egl anymore which is weird.
I don't know I'm not gonna question it I got it working and that's all that matters. Thanks.
edit: with that variable all i need is:
--enable-features=VaapiVideoDecoder,VaapiVideoEncoder
--disable-features=UseChromeOSDirectVideoDecoder
and nothing else just like before.
Last edited by cbr1_ (2023-04-08 04:16:52)
Offline
Weird. LIBVA_DRI3_DISABLE=1 does make it work again. I tried it at first and it didn't work at all but I actually had to reboot. I thought those env variables were loaded when logging out and back in again but I guess not?. I don't even have to use --use-gl=egl anymore which is weird.
I don't know I'm not gonna question it I got it working and that's all that matters. Thanks.
edit: with that variable all i need is:
--enable-features=VaapiVideoDecoder,VaapiVideoEncoder
--disable-features=UseChromeOSDirectVideoDecoderand nothing else just like before.
Oh yes we are back in acceleration business
These 2 flags and the env variable do the trick.
Thank you very much. Have nice weekend.
Offline
I'd like to add that LIBVA_DRI3_DISABLE=1 is not required for AMD setups.
GPG key: 3DEA 6251 3C80 3538 3A24 5A12 E578 6B42 E8E5 D565
Offline
what are the settings required to get this to work on dedicated AMD GPUs? The latest update broke the legacy HW accelerator.
Offline
what are the settings required to get this to work on dedicated AMD GPUs? The latest update broke the legacy HW accelerator.
This chromium-flags.conf is working for me (using 5700xt)
--ignore-gpu-blocklist
--enable-gpu-rasterization
--enable-zero-copy
--enable-features=VaapiVideoEncoder,VaapiVideoDecoder,CanvasOopRasterization
--disable-gpu-driver-bug-workarounds
--disable-features=UseSkiaRenderer,UseChromeOSDirectVideoDecoder
--canvas-oop-rasterization
--use-vulkan
Offline
bluestang wrote:what are the settings required to get this to work on dedicated AMD GPUs? The latest update broke the legacy HW accelerator.
This chromium-flags.conf is working for me (using 5700xt)
--ignore-gpu-blocklist
--enable-gpu-rasterization
--enable-zero-copy
--enable-features=VaapiVideoEncoder,VaapiVideoDecoder,CanvasOopRasterization
--disable-gpu-driver-bug-workarounds
--disable-features=UseSkiaRenderer,UseChromeOSDirectVideoDecoder
--canvas-oop-rasterization
--use-vulkan
While these settings do say that HW acceleration is enabled in the chrome://gpu tab, actual playback reporting via chrome://media-internals tab says otherwise...
The VpxVideoDecoder is being used instead.
Are you sure that you are getting hw accel playback? If so than seems like this is specific to RDNA2.
Offline
Yes, media-internals report VDAVideoDecoder being used.
Offline
sorry out of the loop. is it working on wayland nowadays?
Offline
Upgrading from Chromium 111 to Chromium 112 (Opera) brakes again HW video decode with intel media driver and libva. When using : --use-gl=egl HW acceleration is purely broken (everything shows as disabled in about:gpu). After removing --use-gl=egl , about:gpu lies that video HW works (intel_gpu_top shows it does not). At this moment I do not have working combination of flags.
Edit: Using Kabylake. Maybe be relevant, as some users report it as processor family specific issue:
https://forum.manjaro.org/t/howto-enabl … /51895/120
Last edited by gladykov (2023-04-23 17:09:31)
Offline
Google Chrome 114.0.5720.4 (Official Build) dev (64-bit)
Now perfectly works decoding VP9 and AV1 using GPU acceleration on Intel Iris Xe Graphics
Running with this flags:
google-chrome-unstable --enable-features=VaapiVideoDecoder,VaapiVideoEncoder --disable-features=Vulkan
Checked on "Japan in 8K 60fps" - Media tab shows that acceleration is enabled using VaapiVideoDecoder, also see Video decoder loaded ~50% when running intel_gpu_top
Offline
Upgrading from Chromium 111 to Chromium 112 (Opera) brakes again HW video decode with intel media driver and libva. When using : --use-gl=egl HW acceleration is purely broken (everything shows as disabled in about:gpu). After removing --use-gl=egl , about:gpu lies that video HW works (intel_gpu_top shows it does not). At this moment I do not have working combination of flags.
Edit: Using Kabylake. Maybe be relevant, as some users report it as processor family specific issue:
https://forum.manjaro.org/t/howto-enabl … /51895/120
I am on brave (Chromium 112) and got it working again with
LIBVA_DRI3_DISABLE=1
in /etc/environment and only one additional flag
--disable-features=UseChromeOSDirectVideoDecoder
Intel Ice lake, x11
vainfo: VA-API version: 1.18 (libva 2.18.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.1.0 ()a
PS
The level of insanity in "game" we are all playing after every update of chrome/libva/mesa is making me laugh, we should find the good naming for it
H: Thinkpad P14s Gen4 AMD 7840U, S: Wayland, KDE, UEFI SB
Offline
sorry out of the loop. is it working on wayland nowadays?
Not on my system unfortunately (Intel CometLake-H GT2 with intel-media-driver).
I've installed chromium-wayland-vaapi 111.0.5563.146-1, used the following flags
--enable-features=VaapiVideoDecoder,VaapiVideoEncoder
--disable-features=UseChromeOSDirectVideoDecoder
--ozone-platform-hint=auto
and set the following variables in /etc/environment
LIBVA_DRIVER_NAME=iHD
LIBVA_DRI3_DISABLE=1
__EGL_VENDOR_LIBRARY_FILENAMES="/usr/share/glvnd/egl_vendor.d/50_mesa.json"
but on Wayland it raises the following errors
ERR: Display.cpp:1014 (initialize): ANGLE Display::initialize error 12289: Could not make the initialization pbuffer current.
[8180:8180:0428/103909.251521:ERROR:gl_display.cc(498)] EGL Driver message (Critical) eglInitialize: Could not make the initialization pbuffer current.
The same setup works with no issues on X11 though.
Offline
I am trying to get chromium to use my Intel integrated GPU while I wait for the issues with the Nvidia drivers to get sorted out (getting the black videos like xuanrui was getting). Chromium does not seem to be trying to use the correct GPU though, even when setting the libva driver.
$ lspci -nn|grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630] [8086:3e9b] (rev 02)
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117GLM [Quadro T1000 Mobile] [10de:1fb9] (rev a1)
$ ls /dev/dri
by-path card0 card1 renderD128 renderD129
renderD129 seems to be the one to use, and renderD128 has an error with vainfo.
$ LIBVA_DRIVER_NAME=iHD vainfo --display drm --device /dev/dri/renderD129
Trying display: drm
vainfo: VA-API version: 1.18 (libva 2.18.0)
vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.1.0 ()
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
VAProfileVP8Version0_3 : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointVLD
VAProfileHEVCMain : VAEntrypointEncSlice
VAProfileHEVCMain : VAEntrypointFEI
VAProfileHEVCMain10 : VAEntrypointVLD
VAProfileHEVCMain10 : VAEntrypointEncSlice
VAProfileVP9Profile0 : VAEntrypointVLD
VAProfileVP9Profile2 : VAEntrypointVLD
$ LIBVA_DRIVER_NAME=iHD vainfo --display drm --device /dev/dri/renderD128
Trying display: drm
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
libva error: /usr/lib/dri/iHD_drv_video.so init failed
vaInitialize failed with error code 18 (invalid parameter),exit
And when trying to run chromium with iHD I see the same error that I see when trying vainfo with renderD128
$ LIBVA_DRI3_DISABLE=1 LIBVA_DRIVER_NAME=iHD chromium
DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument
Assuming 131072kB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [22]
param: 4, val: 0
libva error: /usr/lib/dri/iHD_drv_video.so init failed
....
My chromium-lfags.conf is
--enable-features=VaapiVideoDecoder,VaapiVideoEncoder
--disable-features=UseChromeOSDirectVideoDecoder
--enable-gpu-rasterization
--enable-zero-copy
My flags://gpu says that hardware acceleration is on, but lists no video acceleration decoders. Anyone have any solution to this?
I have intel-media-driver 23.1.0-1, chromium 113.0.5672.63-1.
Last edited by iam2391212 (2023-05-02 17:29:36)
Offline
I am trying to get chromium to use my Intel integrated GPU while I wait for the issues with the Nvidia drivers to get sorted out (getting the black videos like xuanrui was getting). Chromium does not seem to be trying to use the correct GPU though, even when setting the libva driver.
$ lspci -nn|grep VGA 00:02.0 VGA compatible controller [0300]: Intel Corporation CoffeeLake-H GT2 [UHD Graphics 630] [8086:3e9b] (rev 02) 01:00.0 VGA compatible controller [0300]: NVIDIA Corporation TU117GLM [Quadro T1000 Mobile] [10de:1fb9] (rev a1)
$ ls /dev/dri by-path card0 card1 renderD128 renderD129
renderD129 seems to be the one to use, and renderD128 has an error with vainfo.
$ LIBVA_DRIVER_NAME=iHD vainfo --display drm --device /dev/dri/renderD129 Trying display: drm vainfo: VA-API version: 1.18 (libva 2.18.0) vainfo: Driver version: Intel iHD driver for Intel(R) Gen Graphics - 23.1.0 () 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 VAProfileVP8Version0_3 : VAEntrypointEncSlice VAProfileHEVCMain : VAEntrypointVLD VAProfileHEVCMain : VAEntrypointEncSlice VAProfileHEVCMain : VAEntrypointFEI VAProfileHEVCMain10 : VAEntrypointVLD VAProfileHEVCMain10 : VAEntrypointEncSlice VAProfileVP9Profile0 : VAEntrypointVLD VAProfileVP9Profile2 : VAEntrypointVLD $ LIBVA_DRIVER_NAME=iHD vainfo --display drm --device /dev/dri/renderD128 Trying display: drm DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument Assuming 131072kB available aperture size. May lead to reduced performance or incorrect rendering. get chip id failed: -1 [22] param: 4, val: 0 libva error: /usr/lib/dri/iHD_drv_video.so init failed vaInitialize failed with error code 18 (invalid parameter),exit
And when trying to run chromium with iHD I see the same error that I see when trying vainfo with renderD128
$ LIBVA_DRI3_DISABLE=1 LIBVA_DRIVER_NAME=iHD chromium DRM_IOCTL_I915_GEM_APERTURE failed: Invalid argument Assuming 131072kB available aperture size. May lead to reduced performance or incorrect rendering. get chip id failed: -1 [22] param: 4, val: 0 libva error: /usr/lib/dri/iHD_drv_video.so init failed ....
My chromium-lfags.conf is
--enable-features=VaapiVideoDecoder,VaapiVideoEncoder --disable-features=UseChromeOSDirectVideoDecoder --enable-gpu-rasterization --enable-zero-copy
My flags://gpu says that hardware acceleration is on, but lists no video acceleration decoders. Anyone have any solution to this?
I have intel-media-driver 23.1.0-1, chromium 113.0.5672.63-1.
I had the same problem as you: Intel iGPU and Nvidia dGPU are swapped, renderD128 should be the iGPU, whereas renderD129 should be the dGPU.
In my case the problem was the early KMS: if you've added to the MODULES in /etc/mkinitcpio.conf the line "nvidia nvidia_modeset nvidia_uvm nvidia_drm", you should also add "i915" in front of it, namely:
MODULES="<your other modules...> i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm"
Don't forget to re-generate the initramfs with
mkinitcpio -P
Offline
sorry out of the loop. is it working on wayland nowadays?
No.
Offline
...
I had the same problem as you: Intel iGPU and Nvidia dGPU are swapped, renderD128 should be the iGPU, whereas renderD129 should be the dGPU.
In my case the problem was the early KMS: if you've added to the MODULES in /etc/mkinitcpio.conf the line "nvidia nvidia_modeset nvidia_uvm nvidia_drm", you should also add "i915" in front of it, namely:MODULES="<your other modules...> i915 nvidia nvidia_modeset nvidia_uvm nvidia_drm"
Don't forget to re-generate the initramfs with
mkinitcpio -P
Thanks, that did clear up that error I was seeing in chromium. I now see decoders listed for all the usual suspects in the chrome://gpu tab. That said, when trying to watch a vp9 (and even with h264ify) Youtube video I get an error with it trying to init the iHD driver:
$ LIBVA_DRI3_DISABLE=1 LIBVA_DRIVER_NAME=iHD chromium
libva error: /usr/lib/dri/iHD_drv_video.so init failed
[1649653:1649653:0505/104838.054078:ERROR:vaapi_wrapper.cc(1657)] Failed to create VaapiWrapper for va_profile: VAProfileVP9Profile0
Last edited by iam2391212 (2023-05-05 18:33:49)
Offline
with chrome 113 I'm able to have hwaccell without --disable-features=UseChromeOSDirectVideoDecoder ! And it works well also with AV1
this was my bug report: https://bugs.chromium.org/p/chromium/is … 1325824#c1
Offline
with chrome 113 I'm able to have hwaccell without --disable-features=UseChromeOSDirectVideoDecoder ! And it works well also with AV1
this was my bug report: https://bugs.chromium.org/p/chromium/is … 1325824#c1
Does not work on AMDGPU.
Offline
with chrome 113 I'm able to have hwaccell without --disable-features=UseChromeOSDirectVideoDecoder ! And it works well also with AV1
this was my bug report: https://bugs.chromium.org/p/chromium/is … 1325824#c1
This is a weird one.
If I do not set any flags, I don't get hardware video acceleration:
If I set
--disable-features=UseChromeOSDirectVideoDecoder
I get a subset of my full vaapi decode abilities (mainly no av1 decode), but they all do work:
If I set
--enable-features=VaapiVideoDecodeLinuxGL
I get the full decode abilities of my GPU.... but NONE work in practice!
And I get this error in the logs each time I try to play a video
[28839:29513:0506/124244.750786:ERROR:vaapi_video_decoder.cc(1234)] : failed Initialize()ing the frame pool
So all in all, I still can't play av1 videos with hardware acceleration, since the only option that enables hardware acceleration on my machine doesn't expose the full capabilities of my GPU... I hope there will be a fix for that one day, it's really painful to not have hardware video acceleration on a laptop.
I'm using Chromium 113.0.5672.63, here are my system info
System:
Host: MK73DS Kernel: 6.3.1-arch1-1 arch: x86_64 bits: 64 Desktop: KDE Plasma
v: 5.27.4 Distro: Arch Linux
Machine:
Type: Laptop System: LENOVO product: 82SN v: IdeaPad 5 Pro 16ARH7
serial: <superuser required>
Mobo: LENOVO model: LNVNB161216 v: SDK0K17763 WIN
serial: <superuser required> UEFI: LENOVO v: J4CN36WW date: 12/29/2022
Battery:
ID-1: BAT0 charge: 55.1 Wh (74.7%) condition: 73.8/75.0 Wh (98.4%)
CPU:
Info: 8-core AMD Ryzen 7 6800HS Creator Edition [MT MCP] speed (MHz):
avg: 1761 min/max: 1600/4784
Graphics:
Device-1: AMD Rembrandt [Radeon 680M] driver: amdgpu v: kernel
Device-2: Chicony Integrated Camera type: USB driver: uvcvideo
Display: x11 server: X.Org v: 21.1.8 driver: X: loaded: amdgpu
unloaded: modesetting dri: radeonsi gpu: amdgpu resolution: 2560x1600~120Hz
API: OpenGL v: 4.6 Mesa 23.2.0-devel (git-6d84b34359) renderer: AMD
Radeon Graphics (rembrandt LLVM 15.0.7 DRM 3.52 6.3.1-arch1-1)
Offline
I just really can't fathom what's going on. Identical version (113.0.5672.63) and identical flags, yet HW decoding only works in Chromium but not in Chrome. Verified by media-internals.
--enable-features=WebUIDarkMode,VaapiVideoEncoder,VaapiVideoDecoder,CanvasOopRasterization,RawDraw,WebRTCPipeWireCapturer,Vulkan,VulkanFromANGLE,DefaultANGLEVulkan
--enable-zero-copy
--use-gl=angle
--force-dark-mode
--enable-raw-draw
--enable-gpu-rasterization
--use-vulkan
--disable-features=UseChromeOSDirectVideoDecoder
--enable-drdc
X11, AMD.
Offline
Hey guys, my VAAPI hardware accelerated video decoding/encoding doesn't work. I am running the chromium browser using XWayland and I am using Intel iHD graphics.
I got all the nice green Hardware Accelerated check marks and under the "Video Acceleration Information" Section all of the supported decoding and encoding show up, which are shown by vainfo.
However, when starting playback no video hardware acceleration is happening, and it fell back to the "VpxVideoDecoder". In the media-internals it threw the following error:
0:00:00.435 info "Selected FFmpegAudioDecoder for audio decoding, config: codec: opus, profile: unknown, bytes_per_channel: 4, channel_layout: STEREO, channels: 2, samples_per_second: 48000, sample_format: Float 32-bit, bytes_per_frame: 8, seek_preroll: 80000us, codec_delay: 312, has extra data: true, encryption scheme: Unencrypted, discard decoder delay: true, target_output_channel_layout: STEREO, target_output_sample_format: Unknown sample format, has aac extra data: false"
00:00:00.435 info "Cannot select DecryptingVideoDecoder for video decoding"
00:00:00.452 seek_target 1447.829567
00:00:00.454 info "VideoDecoderPipeline |decoder_| Initialize() successful"
00:00:00.454 kIsVideoDecryptingDemuxerStream false
00:00:00.454 kVideoDecoderName "VaapiVideoDecoder"
00:00:00.454 kIsPlatformVideoDecoder true
00:00:00.454 info "Selected VaapiVideoDecoder for video decoding, config: codec: vp9, profile: vp9 profile0, level: not available, alpha_mode: is_opaque, coded size: [1920,1080], visible rect: [0,0,1920,1080], natural size: [1920,1080], has extra data: false, encryption scheme: Unencrypted, rotation: 0°, flipped: 0, color space: {primaries:BT709, transfer:BT709, matrix:BT709, range:LIMITED}"
00:00:00.454 pipeline_state "kPlaying"
00:00:00.475 pipeline_state "kSeeking"
00:00:00.055 duration 1750.501
00:00:01.509 pipeline_state "kPlaying"
00:00:01.516 error "VideoDecoderPipeline Frame converter returns null frame."
00:00:01.516 warning "video decoder fallback after initial decode error."
00:00:01.516 error "VideoDecoderPipeline Frame converter returns null frame."
00:00:01.517 kIsVideoDecryptingDemuxerStream false
00:00:01.517 kVideoDecoderName "VpxVideoDecoder"
and I also get the following error a few dozen times in the shell (after starting no video playback needed):
[102778:102778:0514/214618.202459:ERROR:vulkan_swap_chain.cc(409)] Swapchain is suboptimal.
Does anybody know how to fix this/ or what is going on here?
Offline
Hi all, I was struggling to get hardware acceleration working on my laptop after updating chromium, but after reading this comment and using the VaapiVideoDecodeLinuxGL flag, I was able to get HW acceleration back:
Chromium Version: 113.0.5672.92
VA-API Driver Version: 1.18 (libva 2.18.1)
GPU Driver: Intel iHD driver for Intel(R) Gen Graphics - 23.1.0
Processor: Intel i7-7700HQ
Here are my flags:
--ignore-gpu-blocklist
--enable-features=VaapiVideoDecoder,VaapiVideoEncoder,VaapiVideoDecodeLinuxGL,VaapiIgnoreDriverChecks
Hope this helps. This was a headache to get working!
Offline
amdgpu+wayland here. Nothing is working. I've tried every command line switch on edge-beta and google-chrome-stable and none of them yield results. Thorium tries then bombs out with VA Error 4, falling back to sw decode.
The various switches in this thread have always worked for me in the past. Not this time.
Offline
amdgpu+wayland here. Nothing is working. I've tried every command line switch on edge-beta and google-chrome-stable and none of them yield results. Thorium tries then bombs out with VA Error 4, falling back to sw decode.
The various switches in this thread have always worked for me in the past. Not this time.
On native Wayland nothing works. You have to use XWayland.
Offline
Intel GPU + iHD va driver here.
Just use `--enable-features=VaapiVideoDecodeLinuxGL` flag brings hardware accelerate back for me. Since VaapiVideoDecoder is enabled by default, va is seems out of box for Intel users.
Thanks shraiwi and MK73DS introduce this flag, maybe it's make sense to update this to Chromium page on Arch Wiki.
Last edited by ovear (2023-05-25 17:16:57)
Offline