HW acceleration w/ Wayland
-
Despite all my efforts, I am still not there with "5.3.2679.38 (Stable channel) stable (64-bit)" under ArchLinux.
This is what vivaldi://gpu reports:
The custom settings I have enabled are:
- Override software rendering list #ignore-gpu-blocklist
- WebRTC PipeWire support #enable-webrtc-pipewire-capturer
- GPU rasterization #enable-gpu-rasterization
- Zero-copy rasterizer #enable-zero-copy
- Chrome-wide echo cancellation #chrome-wide-echo-cancellation
- Hardware decode acceleration for k-SVC VP9 #enable-vp9-kSVC-decode-acceleration
- Enables Display Compositor to use a new gpu thread #enable-drdc
- Out-of-process 2D canvas rasterization #canvas-oop-rasterization
- Enable raw draw #enable-raw-draw
It's almost all there, but actually it still all software-based: Vivaldi says it should be using hardware acceleration, but actually is not.
On the other side, VLC v3.0.17.4 can effectively expolit hw acceleration.
I verified the above things via intel_gpu_top tool that shows 0% GPU usage for "Video" with Vivaldi, and a non-zero usage with VLC.My question is: is hw acceleration in Vivaldi for Linux a real thing or just a fairy tale?
-
@Uqbar
Hi, I have none flags set at all to get HW acceleration on my system with 5.3.2679.38.You have a brand new Intel iGPU, this should work.
Cheers, mib
EDIT: Tested with Wayland gives better results, about 20%.
The image is with the olde XServer -
As far as I remember since you mentioned VLC & GPU usage for "VIdeo", Hardware video acceleration is not working for Chromium with Wayland (so I assume the same for Vivaldi as well), you would need to try making it work with XWayland but you would have to use the
--use-gl=egl
flag instead.But even if it was theoretically possible on Wayland you should be using the flags
--enable-features=UseOzonePlatform --ozone-platform=wayland
in the first place from what I know. Your log shows: Ozone platform: X11In any case, since I'm not that updated on the matter, I assume you have checked everything in the Arch wiki and the dedicated thread in the Arch forums, where people are periodically writing about their newest tries, tests and observations. Personally, I would try making it work first for Chromium (if possible), then try applying the same method to Vivaldi.
-
@mib2berlin I am sorry, but you are not using any hw acceleration for encoding/decoding video. Your GPU top shows a nice 0.00% of GPU resource usage. Just like mine.
-
@npro I have almost everything working under Wayland w/o the xwayland bridge. Firefox, VSCode and all KDE applications.
My browser is being started up with something similar to this:/usr/bin/vivaldi-stable --use-gl=desktop --enable-features=VaapiVideoEncoder,VaapiVideoDecoder,CanvasOopRasterization --enable-features=UseOzonePlatform --ozone-platform=wayland -βdisk-cache-size=209715200 --disable-features=UseChromeOSDirectVideoDecoder %U
(Those options are reported into the linked vivaldi://gpu page).
Arch wiki is not covering well all the details and Chromium is behaving exactly the same as Vivaldi: they are basically the same at the gfx core.Hardware video acceleration is not working for Chromium with Wayland.
Do you have a reference to this information?
My web-based video conferencing software overloads my PC because of video encoding/decoding done in software and fixing this would be a nice goal for me.
So far Vivaldi detects my hw video acceleration capabilities (see again my vivaldi://gpu) but fails at using them. VLC succeeds. -
@Uqbar said in HW acceleration w/ Wayland:
My browser is being started up with something similar to this:
(Those options are reported into the linked vivaldi://gpu page).Didn't show up in your log though. I found this under
vivaldi://flags
:so maybe the above flags were deprecated in favor to that, so it could be this:
--ozone-platform-hint=wayland
ifauto
wouldn't work/detect it properly.Do you have a reference to this information?
I think I could find that.
So far Vivaldi detects my hw video acceleration capabilities (see again my vivaldi://gpu) but fails at using them
yep, many people in the forums were believing they were using it (even on X11), but only the tests described in the Arch wiki would prove it, for example many were missing the va-api driver in the first place.
-
I told you, check our wiki thoroughly
It points to: https://wiki.archlinux.org/title/Chromium#Hardware_video_acceleration
The thread: https://bbs.archlinux.org/viewtopic.php?id=244031
Good luck
(or wait/hope for a better answer)
-
@npro Indeed ArchLinux has that table available. I badly overlooked it. Thanks.
The point is: shouldn't it be Vivaldi documentation to sport such details?
What ArchLinux reports is basically the same as what all other distros can say: all Chromium-based browsers don't support (yet) hw video acceleration.
So, basically, the answer to my question is: "Yes, it's more a fairy tale than a real thing".
-
@Uqbar said in HW acceleration w/ Wayland:
The point is: shouldn't it be Vivaldi documentation to sport such details?
Ideally yes but that would be really too much for Vivaldi, to cover all graphic cards alone and all display protocols, when nvidia is not working right with Wayland to begin with and Chromium is not even interested.
What ArchLinux reports is basically the same as what all other distros can say: all Chromium-based browsers don't support (yet) hw video acceleration.
So, basically, the answer to my question is: "Yes, it's more a fairy tale than a real thing".
Well not quite, the wiki can be outdated, so following the thread is your best bet atm. In fact latest posts there say it's possible with Ungoogled Chromium!?
-
Ideally yes but that would be really too much for Vivaldi
Well, I don't know exactly how the team is organized, but I would expect some QA and test plans.
Otherwise they'd be pulling in external code with no idea on the directions taken. Which would be weird on a such high quality product.
It cannot be a Linux distro Wiki to document a product. It should be the product itself to list what's working, under which constraints and what is not.
Bottom line is: they are already doing tests, just document the results.