You are not logged in.

#976 2024-03-10 17:28:40

adi222
Member
Registered: 2023-01-03
Posts: 11

Re: chromium: hardware video acceleration with VA-API

Reuter wrote:

Is the mesa patch from hmann still necessary?

Edit: Apparently so. X11 AMD still dysfunctional in Chrome, despite chrome://gpu showing Encoding to be supported.

yes, without his patch doesn't work here on 6650xt
with mesa-git with applied patches it does work on x11 and with xwayland, didnt try native wayland but i assume it won't work
on mine laptop with intel 8350u and uhd620 vaapi works in chrome with native wayland without issues

Offline

#977 2024-03-15 03:18:48

lxsq
Member
Registered: 2024-03-15
Posts: 1

Re: chromium: hardware video acceleration with VA-API

As long as chrome is using Vulkan, would they support Vulkan Video as well? Already tired about VA-API. Why would a same API work only on Intel, but not AMD?

Offline

#978 2024-03-18 10:45:57

Reuter
Member
Registered: 2023-05-12
Posts: 9

Re: chromium: hardware video acceleration with VA-API

Sadly applying the hmann patch to the latest mesa-git (24.1.0) breaks KDE Plasma 6. X11 has graphical glitches while a Wayland session wouldn't even start.

Last edited by Reuter (2024-03-18 10:46:40)

Offline

#979 2024-03-21 10:58:52

0BADC0DE
Member
From: Regnum Utriusque Siciliae
Registered: 2018-02-21
Posts: 319

Re: chromium: hardware video acceleration with VA-API

It seems I got it finally working on Chrome/Chromium/Vivaldi but not yet on Falkon.

Chrome: 124.0.6356.2 (yup, "unstable")
Chromium:  122.0.6261.128
Vivaldi: 6.6.3271.53
Falkon:  24.02.0

This is my current system setup:

Kernel Version : 6.8.1.zen1-1
Plasma Version : 6.0.2-3
KDE Version : 24.02.0-1
Frameworks Version : 5.115.0-1
Qt5 Version : 5.15.13+kde+r7-1
Qt6 Version : 6.6.2-4
Wayland Version : 1.22.0-1
XOrg/Wayland Version : 23.2.4-2
Mesa Version : 1:24.0.3-1
LibVA Version : 2.21.0-1
VDPAU Version : 1.5-2
GPU: TigerLake-LP GT2 [Iris Xe Graphics]

These are the CLI options  I use to start chromium-based browsers (relevant options only):

--enable-features=VaapiVideoDecodeLinuxGL,VaapiVideoEncoder --ignore-gpu-blocklist --ozone-platform=wayland

There are the flags I enabled (not sure they are all needed):

chrome://flags/#ignore-gpu-blocklist
chrome://flags/#enable-gpu-rasterization
chrome://flags/#enable-zero-copy
chrome://flags/#cast-streaming-hardware-h264
chrome://flags/#enable-global-vaapi-lock
chrome://flags/#enable-drdc
chrome://flags/#canvas-oop-rasterization
chrome://flags/#enable-raw-draw  # <<< not available in chrome-unstable
chrome://flags/#use-gpu-scheduler-dfs

Anyway, I can now see it working, on youtube for example, because when I watch a video I can fire "sudo intel_gpu_top" on a terminal and see something like this (chorme-unstable):

intel-gpu-top: Intel Tigerlake (Gen12) @ /dev/dri/card1 -  126/ 127 MHz;  80% RC6;  0.51/ 4.97 W;      467 irqs/s

         ENGINES     BUSY                                                                               MI_SEMA MI_WAIT
       Render/3D   13.61% |██████████▎                                                                |      0%      0%
         Blitter    0.00% |                                                                           |      0%      0%
           Video    0.79% |▋                                                                          |      0%      0%
    VideoEnhance    2.68% |██▏                                                                        |      0%      0%

   PID              NAME        Render/3D               Blitter                 Video              VideoEnhance         
 47851            chrome |█▋                   ||                     ||▏                    ||▌                    |
   819      kwin_wayland |█▏                   ||                     ||                     ||                     |
     1           systemd |                     ||                     ||                     ||                     |
   902          Xwayland |                     ||                     ||                     ||                     |
   926             kded6 |                     ||                     ||                     ||                     |
   927         ksmserver |                     ||                     ||                     ||                     |
   959       plasmashell |                     ||                     ||                     ||                     |

Video and VideoEnhance are both in use by chrome itself!

The same goes for chromium and vivaldi. Nothing happening for falkon (despite the single "enable hardware acceleration" flag is set).

I am not sure about a couple of things like:
* Blitter (usage keeps staying to zero)
* video encoding (not sure it is happening as my webcam refuses to work now)

I think this is better than nothing, though.

Last edited by 0BADC0DE (2024-03-21 11:06:25)


Maybe Computers Will Never Become As Intelligent
As Humans. Surely They Won't Ever Become So Stupid.

Offline

#980 2024-04-01 11:48:03

theDude1848
Member
Registered: 2023-11-27
Posts: 5

Re: chromium: hardware video acceleration with VA-API

On Chromium 123 HW-Acceleration with Mesa-git and Patch from Hmon is not working anymore on Gnome. Any ideas how to fix it? Did flags changed?

Offline

#981 2024-04-01 14:56:27

LinX
Member
Registered: 2012-11-20
Posts: 10

Re: chromium: hardware video acceleration with VA-API

theDude1848 wrote:

On Chromium 123 HW-Acceleration with Mesa-git and Patch from Hmon is not working anymore on Gnome. Any ideas how to fix it? Did flags changed?

It's not working with KDE 6 too. Especially flag --enable-features=Vulkan causes all webpages to be blank and not render anything

Offline

#982 2024-04-02 16:51:18

Preycon
Member
From: México, D.F.
Registered: 2009-02-14
Posts: 51

Re: chromium: hardware video acceleration with VA-API

Not working from me anymore with intel graphics on KDE & Wayland, didn't change anything, was working ok.

Offline

#983 2024-04-12 01:11:06

jr1991
Member
Registered: 2024-02-08
Posts: 3

Re: chromium: hardware video acceleration with VA-API

Offline

#984 2024-04-14 08:55:47

darkbasic
Member
Registered: 2015-06-22
Posts: 44

Re: chromium: hardware video acceleration with VA-API

theDude1848 wrote:

On Chromium 123 HW-Acceleration with Mesa-git and Patch from Hmon is not working anymore on Gnome. Any ideas how to fix it? Did flags changed?

Are you sure you don't have --enable-features=RawDraw ?
It regressed in Chromium 123.

Offline

#985 2024-04-14 13:18:01

theDude1848
Member
Registered: 2023-11-27
Posts: 5

Re: chromium: hardware video acceleration with VA-API

Thanks for help. When RawDraw is enabled the websites are just a whitescreen.

These are my current flags working with HW-Acceleration in Chrome 123:

--use-gl=angle 
--use-angle=vulkan 
--enable-accelerated-video-decode 
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport,UseMultiPlaneFormatForHardwareVideo

Offline

#986 2024-04-24 23:23:52

theDude1848
Member
Registered: 2023-11-27
Posts: 5

Re: chromium: hardware video acceleration with VA-API

darkbasic wrote:
theDude1848 wrote:

On Chromium 123 HW-Acceleration with Mesa-git and Patch from Hmon is not working anymore on Gnome. Any ideas how to fix it? Did flags changed?

Are you sure you don't have --enable-features=RawDraw ?
It regressed in Chromium 123.

I still installed current mesa-git and it's working now. Thanks for help.

Offline

#987 2024-04-25 05:18:02

0BADC0DE
Member
From: Regnum Utriusque Siciliae
Registered: 2018-02-21
Posts: 319

Re: chromium: hardware video acceleration with VA-API

theDude1848 wrote:
darkbasic wrote:
theDude1848 wrote:

On Chromium 123 HW-Acceleration with Mesa-git and Patch from Hmon is not working anymore on Gnome. Any ideas how to fix it? Did flags changed?

Are you sure you don't have --enable-features=RawDraw ?
It regressed in Chromium 123.

I still installed current mesa-git and it's working now. Thanks for help.

What about WebRTC hw en-/de-coding?

Last edited by 0BADC0DE (2024-04-25 05:18:20)


Maybe Computers Will Never Become As Intelligent
As Humans. Surely They Won't Ever Become So Stupid.

Offline

#988 2024-04-25 13:07:33

jmandawg
Member
Registered: 2011-10-19
Posts: 60

Re: chromium: hardware video acceleration with VA-API

Is HW accel broken on wayland with intel? 

It works until i add the following wayland flags to enable wayland:

--enable-features=VaapiVideoDecodeLinuxGL
--enable-features=UseOzonePlatform
--ozone-platform=wayland

UPDATE:

They must have fixed something after latest update (2 chromium updates today) now it works with just these flags:


--enable-features=VaapiVideoDecodeLinuxGL
--ozone-platform=wayland

Adding this flag seems to break it:

#--enable-features=UseOzonePlatform

Last edited by jmandawg (2024-05-01 12:57:21)

Offline

#989 2024-04-26 16:04:50

noobaroo
Member
Registered: 2024-04-02
Posts: 10

Re: chromium: hardware video acceleration with VA-API

0BADC0DE wrote:

It seems I got it finally working on Chrome/Chromium/Vivaldi but not yet on Falkon.

Chrome: 124.0.6356.2 (yup, "unstable")
Chromium:  122.0.6261.128
Vivaldi: 6.6.3271.53
Falkon:  24.02.0

This is my current system setup:

Kernel Version : 6.8.1.zen1-1
Plasma Version : 6.0.2-3
KDE Version : 24.02.0-1
Frameworks Version : 5.115.0-1
Qt5 Version : 5.15.13+kde+r7-1
Qt6 Version : 6.6.2-4
Wayland Version : 1.22.0-1
XOrg/Wayland Version : 23.2.4-2
Mesa Version : 1:24.0.3-1
LibVA Version : 2.21.0-1
VDPAU Version : 1.5-2
GPU: TigerLake-LP GT2 [Iris Xe Graphics]

These are the CLI options  I use to start chromium-based browsers (relevant options only):

--enable-features=VaapiVideoDecodeLinuxGL,VaapiVideoEncoder --ignore-gpu-blocklist --ozone-platform=wayland

There are the flags I enabled (not sure they are all needed):

chrome://flags/#ignore-gpu-blocklist
chrome://flags/#enable-gpu-rasterization
chrome://flags/#enable-zero-copy
chrome://flags/#cast-streaming-hardware-h264
chrome://flags/#enable-global-vaapi-lock
chrome://flags/#enable-drdc
chrome://flags/#canvas-oop-rasterization
chrome://flags/#enable-raw-draw  # <<< not available in chrome-unstable
chrome://flags/#use-gpu-scheduler-dfs

Anyway, I can now see it working, on youtube for example, because when I watch a video I can fire "sudo intel_gpu_top" on a terminal and see something like this (chorme-unstable):

intel-gpu-top: Intel Tigerlake (Gen12) @ /dev/dri/card1 -  126/ 127 MHz;  80% RC6;  0.51/ 4.97 W;      467 irqs/s

         ENGINES     BUSY                                                                               MI_SEMA MI_WAIT
       Render/3D   13.61% |██████████▎                                                                |      0%      0%
         Blitter    0.00% |                                                                           |      0%      0%
           Video    0.79% |▋                                                                          |      0%      0%
    VideoEnhance    2.68% |██▏                                                                        |      0%      0%

   PID              NAME        Render/3D               Blitter                 Video              VideoEnhance         
 47851            chrome |█▋                   ||                     ||▏                    ||▌                    |
   819      kwin_wayland |█▏                   ||                     ||                     ||                     |
     1           systemd |                     ||                     ||                     ||                     |
   902          Xwayland |                     ||                     ||                     ||                     |
   926             kded6 |                     ||                     ||                     ||                     |
   927         ksmserver |                     ||                     ||                     ||                     |
   959       plasmashell |                     ||                     ||                     ||                     |

Video and VideoEnhance are both in use by chrome itself!

The same goes for chromium and vivaldi. Nothing happening for falkon (despite the single "enable hardware acceleration" flag is set).

I am not sure about a couple of things like:
* Blitter (usage keeps staying to zero)
* video encoding (not sure it is happening as my webcam refuses to work now)

I think this is better than nothing, though.

Have you actually looked in the "inspect" menu of the browser under the "media" tab? AFAIK GPU is always being used to some extent, even without full-blown hardware video decoding.

theDude1848 wrote:

Thanks for help. When RawDraw is enabled the websites are just a whitescreen.

These are my current flags working with HW-Acceleration in Chrome 123:

--use-gl=angle 
--use-angle=vulkan 
--enable-accelerated-video-decode 
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport,UseMultiPlaneFormatForHardwareVideo

Are you using Intel? I'm using Intel Rocket Lake, and a couple years ago Chromium hardware decoding used to work, but recently I've noticed it doesn't anymore and I have tried everything to get it to work. I use KDE Wayland mainly, but I've tried on X11 and it doesn't work either. Here's my current config (note I have tried lots of different things, not just this): http://0x0.st/XH_S.txt
Any suggestions for me?

Offline

#990 2024-04-26 20:44:03

jmandawg
Member
Registered: 2011-10-19
Posts: 60

Re: chromium: hardware video acceleration with VA-API

noobaroo wrote:

Are you using Intel? I'm using Intel Rocket Lake, and a couple years ago Chromium hardware decoding used to work, but recently I've noticed it doesn't anymore and I have tried everything to get it to work. I use KDE Wayland mainly, but I've tried on X11 and it doesn't work either. Here's my current config (note I have tried lots of different things, not just this): http://0x0.st/XH_S.txt
Any suggestions for me?

On KDE Plasma (wayland) it works for me with stock chromium.

Make sure your vaapi uses intel-media-driver.

and use ONLY the following flags, they work for me on intel tiger lake and normal chromium from the standard repo.

--enable-features=VaapiVideoDecodeLinuxGL
--ozone-platform=wayland

Last edited by jmandawg (2024-04-26 20:44:50)

Offline

#991 2024-04-27 01:04:50

noobaroo
Member
Registered: 2024-04-02
Posts: 10

Re: chromium: hardware video acceleration with VA-API

jmandawg wrote:

On KDE Plasma (wayland) it works for me with stock chromium.

Make sure your vaapi uses intel-media-driver.

and use ONLY the following flags, they work for me on intel tiger lake and normal chromium from the standard repo.

--enable-features=VaapiVideoDecodeLinuxGL
--ozone-platform=wayland

Nope, it says it's enabled then under chrome://gpu but according to "inspect" menu it doesn't actually use it.
I tried the ones from this guy:

theDude1848 wrote:
--use-gl=angle 
--use-angle=vulkan 
--enable-accelerated-video-decode 
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,PlatformHEVCDecoderSupport,UseMultiPlaneFormatForHardwareVideo

And it works, fully, under X11 only. Under Wayland, the entire list of all options in chrome://gpu is forced to software.
I'm pretty happy, though.

jmandawg wrote:

Is HW accel broken on wayland with intel? 

It works until i add the following wayland flags to enable wayland:

--enable-features=VaapiVideoDecodeLinuxGL
--enable-features=UseOzonePlatform
--ozone-platform=wayland

UPDATE:

They must have fixed something after latest update (2 chromium updates today) now it works with just these flags:


--enable-features=VaapiVideoDecodeLinuxGL
--ozone-platform=wayland

Adding this flag seems to break it:

--enable-features=VaapiVideoDecodeLinuxGL

You say "--enable-features=VaapiVideoDecodeLinuxGL" works, and at the same time you say it breaks it. Which one is it?

Offline

#992 2024-04-29 17:45:01

AniAggarwal
Member
Registered: 2024-04-29
Posts: 1

Re: chromium: hardware video acceleration with VA-API

jmandawg wrote:
--enable-features=VaapiVideoDecodeLinuxGL
--ozone-platform=wayland

I'm using intel-media-driver and vaapi works fine elsewhere but using just these flags (along with practically every other combination I could find) doesn't seem to work for me.
On Chromium 124.0.6367.91 Arch Linux.

Offline

#993 2024-05-01 13:01:59

jmandawg
Member
Registered: 2011-10-19
Posts: 60

Re: chromium: hardware video acceleration with VA-API

noobaroo wrote:

You say "--enable-features=VaapiVideoDecodeLinuxGL" works, and at the same time you say it breaks it. Which one is it?

Sorry it was a copy paste error the flag that breaks it is:

--enable-features=UseOzonePlatform

With just these 2 flags only everything works for me on wayland including pinch to zoom on laptop touchpad:

--enable-features=VaapiVideoDecodeLinuxGL
--ozone-platform=wayland

Are you sure your using intel-media-driver?

Post all your flags in .config/chromium-flags.conf and the output of vainfo. 
Also where are you looking in inspect to see if it's using HW decoding?

Last edited by jmandawg (2024-05-01 13:02:34)

Offline

#994 2024-05-08 09:56:42

CBiX
Member
Registered: 2013-07-15
Posts: 21

Re: chromium: hardware video acceleration with VA-API

Got a new AMD 5850U machine (iGPU only), on Gnome Wayland VAAPI works in Firefox, VLC, mpv etc. but haven't been able to make it work in Chromium 124 even with Xwayland.

$ vainfo
Trying display: wayland
vainfo: VA-API version: 1.21 (libva 2.21.0)
vainfo: Driver version: Mesa Gallium driver 24.0.6-arch1.2 for AMD Radeon Graphics (radeonsi, renoir, LLVM 17.0.6, DRM 3.57, 6.8.9-arch1-1)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc

This makes Chromium try VaapiVideoDecoder

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=gl
--ignore-gpu-blocklist
--disable-gpu-driver-bug-workaround
--enable-features=VaapiVideoDecodeLinuxGL,VaapiVideoDecoder,VaapiVideoEncoder,VaapiIgnoreDriverChecks

Same situation with ozone-platform-hint=auto (→ Wayland) and with leaving out use-gl/angle flags (see chromium docs). This results in

error: "VaapiVideoDecoder: failed Initialize()ing the frame pool"
warning: "video decoder fallback after initial decode error."

I was able to get rid of the error with vulkan flags on Xwayland but the above warning + fallback to software rendering remained:

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=vulkan
--enable-accelerated-video-decode
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,VaapiVideoEncoder,VaapiVideoDecodeLinuxGL
--disable-features=UseChromeOSDirectVideoDecoder

Also this caused major rendering issues and e.g. Figma complaining about missing WebGPU.

Should I follow other AMD users and give up for now?

Offline

#995 2024-05-08 10:18:21

Vamp898
Member
From: 東京
Registered: 2009-01-03
Posts: 922
Website

Re: chromium: hardware video acceleration with VA-API

CBiX wrote:

Got a new AMD 5850U machine (iGPU only), on Gnome Wayland VAAPI works in Firefox, VLC, mpv etc. but haven't been able to make it work in Chromium 124 even with Xwayland.

$ vainfo
Trying display: wayland
vainfo: VA-API version: 1.21 (libva 2.21.0)
vainfo: Driver version: Mesa Gallium driver 24.0.6-arch1.2 for AMD Radeon Graphics (radeonsi, renoir, LLVM 17.0.6, DRM 3.57, 6.8.9-arch1-1)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc

This makes Chromium try VaapiVideoDecoder

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=gl
--ignore-gpu-blocklist
--disable-gpu-driver-bug-workaround
--enable-features=VaapiVideoDecodeLinuxGL,VaapiVideoDecoder,VaapiVideoEncoder,VaapiIgnoreDriverChecks

Same situation with ozone-platform-hint=auto (→ Wayland) and with leaving out use-gl/angle flags (see chromium docs). This results in

error: "VaapiVideoDecoder: failed Initialize()ing the frame pool"
warning: "video decoder fallback after initial decode error."

I was able to get rid of the error with vulkan flags on Xwayland but the above warning + fallback to software rendering remained:

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=vulkan
--enable-accelerated-video-decode
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,VaapiVideoEncoder,VaapiVideoDecodeLinuxGL
--disable-features=UseChromeOSDirectVideoDecoder

Also this caused major rendering issues and e.g. Figma complaining about missing WebGPU.

Should I follow other AMD users and give up for now?

This is, by far, not the only Issue Chromium causes on modern system, especially Wayland.

There's are issues with scaling, Keyboard input, IME, video coded support (that sadly carries over to Firefox) and so on.

After like 10 years of Chromium I switched back to Firefox as the list of things that don't work properly in Linux grew longer

Offline

#996 2024-05-08 12:47:03

0BADC0DE
Member
From: Regnum Utriusque Siciliae
Registered: 2018-02-21
Posts: 319

Re: chromium: hardware video acceleration with VA-API

Vamp898 wrote:
CBiX wrote:

Got a new AMD 5850U machine (iGPU only), on Gnome Wayland VAAPI works in Firefox, VLC, mpv etc. but haven't been able to make it work in Chromium 124 even with Xwayland.

$ vainfo
Trying display: wayland
vainfo: VA-API version: 1.21 (libva 2.21.0)
vainfo: Driver version: Mesa Gallium driver 24.0.6-arch1.2 for AMD Radeon Graphics (radeonsi, renoir, LLVM 17.0.6, DRM 3.57, 6.8.9-arch1-1)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc

This makes Chromium try VaapiVideoDecoder

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=gl
--ignore-gpu-blocklist
--disable-gpu-driver-bug-workaround
--enable-features=VaapiVideoDecodeLinuxGL,VaapiVideoDecoder,VaapiVideoEncoder,VaapiIgnoreDriverChecks

Same situation with ozone-platform-hint=auto (→ Wayland) and with leaving out use-gl/angle flags (see chromium docs). This results in

error: "VaapiVideoDecoder: failed Initialize()ing the frame pool"
warning: "video decoder fallback after initial decode error."

I was able to get rid of the error with vulkan flags on Xwayland but the above warning + fallback to software rendering remained:

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=vulkan
--enable-accelerated-video-decode
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,VaapiVideoEncoder,VaapiVideoDecodeLinuxGL
--disable-features=UseChromeOSDirectVideoDecoder

Also this caused major rendering issues and e.g. Figma complaining about missing WebGPU.

Should I follow other AMD users and give up for now?

This is, by far, not the only Issue Chromium causes on modern system, especially Wayland.

There's are issues with scaling, Keyboard input, IME, video coded support (that sadly carries over to Firefox) and so on.

After like 10 years of Chromium I switched back to Firefox as the list of things that don't work properly in Linux grew longer

Linux for desktops is still considered a hackish freaky thing not only by hardware vendors, but also by developers.
So, sadly enough, no surprise.


Maybe Computers Will Never Become As Intelligent
As Humans. Surely They Won't Ever Become So Stupid.

Offline

#997 2024-05-08 13:07:32

Vamp898
Member
From: 東京
Registered: 2009-01-03
Posts: 922
Website

Re: chromium: hardware video acceleration with VA-API

0BADC0DE wrote:
Vamp898 wrote:
CBiX wrote:

Got a new AMD 5850U machine (iGPU only), on Gnome Wayland VAAPI works in Firefox, VLC, mpv etc. but haven't been able to make it work in Chromium 124 even with Xwayland.

$ vainfo
Trying display: wayland
vainfo: VA-API version: 1.21 (libva 2.21.0)
vainfo: Driver version: Mesa Gallium driver 24.0.6-arch1.2 for AMD Radeon Graphics (radeonsi, renoir, LLVM 17.0.6, DRM 3.57, 6.8.9-arch1-1)
vainfo: Supported profile and entrypoints
      VAProfileMPEG2Simple            :	VAEntrypointVLD
      VAProfileMPEG2Main              :	VAEntrypointVLD
      VAProfileVC1Simple              :	VAEntrypointVLD
      VAProfileVC1Main                :	VAEntrypointVLD
      VAProfileVC1Advanced            :	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointVLD
      VAProfileH264ConstrainedBaseline:	VAEntrypointEncSlice
      VAProfileH264Main               :	VAEntrypointVLD
      VAProfileH264Main               :	VAEntrypointEncSlice
      VAProfileH264High               :	VAEntrypointVLD
      VAProfileH264High               :	VAEntrypointEncSlice
      VAProfileHEVCMain               :	VAEntrypointVLD
      VAProfileHEVCMain               :	VAEntrypointEncSlice
      VAProfileHEVCMain10             :	VAEntrypointVLD
      VAProfileHEVCMain10             :	VAEntrypointEncSlice
      VAProfileJPEGBaseline           :	VAEntrypointVLD
      VAProfileVP9Profile0            :	VAEntrypointVLD
      VAProfileVP9Profile2            :	VAEntrypointVLD
      VAProfileNone                   :	VAEntrypointVideoProc

This makes Chromium try VaapiVideoDecoder

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=gl
--ignore-gpu-blocklist
--disable-gpu-driver-bug-workaround
--enable-features=VaapiVideoDecodeLinuxGL,VaapiVideoDecoder,VaapiVideoEncoder,VaapiIgnoreDriverChecks

Same situation with ozone-platform-hint=auto (→ Wayland) and with leaving out use-gl/angle flags (see chromium docs). This results in

error: "VaapiVideoDecoder: failed Initialize()ing the frame pool"
warning: "video decoder fallback after initial decode error."

I was able to get rid of the error with vulkan flags on Xwayland but the above warning + fallback to software rendering remained:

--ozone-platform-hint=x11
--use-gl=angle
--use-angle=vulkan
--enable-accelerated-video-decode
--enable-features=Vulkan,VulkanFromANGLE,DefaultANGLEVulkan,VaapiIgnoreDriverChecks,VaapiVideoDecoder,VaapiVideoEncoder,VaapiVideoDecodeLinuxGL
--disable-features=UseChromeOSDirectVideoDecoder

Also this caused major rendering issues and e.g. Figma complaining about missing WebGPU.

Should I follow other AMD users and give up for now?

This is, by far, not the only Issue Chromium causes on modern system, especially Wayland.

There's are issues with scaling, Keyboard input, IME, video coded support (that sadly carries over to Firefox) and so on.

After like 10 years of Chromium I switched back to Firefox as the list of things that don't work properly in Linux grew longer

Linux for desktops is still considered a hackish freaky thing not only by hardware vendors, but also by developers.
So, sadly enough, no surprise.

The same is true for Windows, even worse there imho, but to stay in the Linux world.

It does work perfectly fine and out of the box with Firefox though... so why is Firefox, with the much smaller team, able to do what Google with the giant developer crew can't? Because Linux is hacky? I don't agree on that point.

I follow the development of Chromium since this project exist and Google went for the "as fast as possible" method and the code grew much faster than they could handle and now, Chromium is a giant chunk of unmanagable code that, when one developer touches one line of code, 10 other unrelated developers fall from their chair out of being scared.

Chromium turned into exactly what Google criticized with other browsers. Forking almost half the world inside the chromium code base didn't help it. Andriod has the exact same issue by the way and Chromium on Android has the exact same issue.

Android has an Framework for automatic password management. You install an password manager, register it in Android and all applications access it, whenever there is an password to type. And even though Google itself says that applications _must_ use this feature, the only browser in the playstore where this is not implemented is Chrome/Chromium. And while Firefox on Android supports extensions, Chromium doesn't to this very day. But maybe thats too off-topic for this thread already.

From my point of view, its Chromium fault and unrelated to how "hacky" Linux Desktops are. Google is unable to catch up with development outside of Chromium because they created and unmanageable chunk of code and now complain, that the world doesn't stop spinning for them.

Offline

#998 2024-05-09 08:44:50

0BADC0DE
Member
From: Regnum Utriusque Siciliae
Registered: 2018-02-21
Posts: 319

Re: chromium: hardware video acceleration with VA-API

Honestly, if it was not for the totally missing "WebRTC hardware video en/decoding" support I would be rather satisfied by current chromium-based browsers in my (Arch)Linux desktop setup.
I normally use Vivaldi (because of its native side tabs and a bunch of few extra features) along with Chromium (stable), Chrome (development) and Firefox.
I use VLC for multimedia and I can see it making full use of my GPU (Intel Iris Xe Graphics). Same goes for YouTube and the likes.

Instead, WebRTC-based remote conferencing (Slack, Zoom, Meet and Teams) services all work sluggishly when used in a web browser (Slack doesn't even support Firefox).
I can see the CPUs overloaded during a call and basically no GPU usage.
In Chromium-based browsers "WebRTC hardware video en/decoding" is simply "not available on my platform".

I think the fault is not on Chromium (-based browsers).
It's on Chromium product management that don't consider Linux desktop as a thing.
I fear they see Linux desktop as recumbent bikes or unicycles: freaky weird things (they are actually not) you wouldn't spend any resource on.

The same goes for a lot of other hardware where opensource drivers struggle to keep up with features and performances and often require reverse engineering or disassebling.
Just because manufacturers don't care enough.

I wonder whether AMD integrated GPUs suffer the same issues (I fear so). Any experience?

UPDATE
"WebRTC hardware video en/decoding" is supposed to be working only on Android and ChromeOS, that is Google's stuff!
Nice!

Last edited by 0BADC0DE (2024-05-15 09:06:16)


Maybe Computers Will Never Become As Intelligent
As Humans. Surely They Won't Ever Become So Stupid.

Offline

#999 2024-05-10 05:53:14

theDude1848
Member
Registered: 2023-11-27
Posts: 5

Re: chromium: hardware video acceleration with VA-API

With activated HW-Acceleration on current Chrome and Mesa-Git, Youtube Videos which are in AV1 are not working. There is just a black screen with a grey corner. I use a Radeon RX 6700 XT. On Firefox it's working fine, even with HW-Support.

Any solutions how to fix it without disabling AV1 Videos on Youtube?

Offline

#1000 2024-05-10 13:29:55

digitalone
Member
Registered: 2011-08-19
Posts: 350

Re: chromium: hardware video acceleration with VA-API

Just for your information, AMDGPU driver on AMD 5500U here and hardware decoding is "force disabled by gfxInfo" on Firefox.

Offline

Board footer

Powered by FluxBB