You are not logged in.
No. He has issues w/ his GL installation. Because he's using manjaro.
Please don't hijack threads for solicitation - both is in violation of the forum standards.
Offline
Guys, if you have issues in Chromium, start using Firefox, hardware acceleration is working good there.
But font rendering of web pages is awful
Offline
Guys, if you have issues in Chromium, start using Firefox, hardware acceleration is working good there.
But font rendering of web pages is awful
Looks like recent versions of Firefox not only ignore system settings but also any "font_rendering" tweaks in about:config.
Last edited by DAC324 (2020-12-27 12:10:16)
Offline
[ 4.277] (II) LoadModule: "glx" [ 4.278] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so [ 4.289] (II) Module glx: vendor="X.Org Foundation" … [ 4.305] (EE) NVIDIA(0): Failed to initialize the GLX module; please check in your X [ 4.305] (EE) NVIDIA(0): log file that the GLX module has been loaded in your X [ 4.305] (EE) NVIDIA(0): server, and that the module is the NVIDIA GLX module. If [ 4.305] (EE) NVIDIA(0): you continue to encounter problems, Please try [ 4.305] (EE) NVIDIA(0): reinstalling the NVIDIA driver. … [ 4.773] (II) GLX: Initialized DRISWRAST GL provider for screen 0
Indeed - that was the problem. For some very weird reason, these lines
ModulePath "/usr/lib/nvidia/xorg"
ModulePath "/usr/lib/xorg/modules"
were both entirely missing from /usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf and hence, X did not recognize the Nvidia libglx.so
So it looks like you're right again:
You do have
local/nvidia-390xx-utils 390.138-1
NVIDIA drivers utilitiesso the problem is that the module path isn't extende what would be done by /usr/share/X11/xorg.conf.d/10-nvidia-drm-outputclass.conf provide by that package - if this was archlinux.
=> Manjaro problem. Completely unrelated to chromium. Ask the Manjaro boards. Nobody here can possibly help you and it would violate board rules anyway.
Thank you once again and apologies for any inconvenience. - And also thanks a bunch for the detailed debugging instructions for X problems. That surely will help me a lot going forward.
Kind regards and a relaxing holiday season,
DAC324
Last edited by DAC324 (2020-12-27 12:49:37)
Offline
When I enable Vulkan in chrome://flags in Chromium 88, all the hardware-accelerated videos are blank and only the sound plays (I have nvidia). But when I use the '--use-vulkan' option in command line instead of that flag, the videos play just fine.
I'm not sure if that option fixes the issue, or it just doesn't enable Vulkan at all. It's kind of weird. The 'gpu' page says that Vulkan is enabled, but how can you make sure if it actually is?
Last edited by TheWeirdDev (2021-01-21 19:35:11)
Offline
Eh, seems that Chromium 88 broke everything again. Hardware decoding isn't working for me on 88.
Never mind, 88 was innocent. The thing is that --use-gl=desktop was required again. IIRC for version 86, I was able to get video acceleration on ANGLE just fine, so no --use-gl=desktop.
Anyone could explain why this is the case? Much thanks.
Last edited by xuanrui (2021-01-21 23:22:04)
Offline
When I enable Vulkan in chrome://flags in Chromium 88, all the hardware-accelerated videos are blank and only the sound plays (I have nvidia). But when I use the '--use-vulkan' option in command line instead of that flag, the videos play just fine.
I'm not sure if that option fixes the issue, or it just doesn't enable Vulkan at all. It's kind of weird. The 'gpu' page says that Vulkan is enabled, but how can you make sure if it actually is?
Same here. With chrome://flags or '--enable-features=Vulkan' the video went blank -- tracked here.
But as you mentioned, with latest version '--use-vulkan' now reports vulkan enabled in gpu status
Offline
When I enable Vulkan in chrome://flags in Chromium 88, all the hardware-accelerated videos are blank and only the sound plays (I have nvidia). [...]
But as you mentioned, with latest version '--use-vulkan' now reports vulkan enabled in gpu status
Looks like Vulkan is enabled on the latest Nvidia drivers only. If you happen to use version 390, Vulkan remains off in chrome://gpu despite of any flags set.
Offline
Is there any way to get this working with the quadro 770M?
Using nouveau:
If you download the nvidia decoder firmware and put it in /lib/firmware it decodes H264 but is as slow as CPU and drops frames.
Unfortunately nouveau appears to have poor power management and other issues, it's still terrible.
Using nvidia-340-dkms:
Chrome 84: detects with --use-gl=egl but no video formats are shown
Chrome 87: run with no flag, using angle, formats detect but MojoVideoDecoder falls back to ffmpeg with VDA4 error.
Using --use-gl=desktop causes gpu to not be detected at all.
So I tried firefox, so far only on nvidia-340
VA-API FFmpeg is disabled by platform
I get there was some issue with chrome looking for VAProfile None and the vdpau wrapper not providing it? Is there some patch? Maybe a specific version of chrome to try?
Offline
Just an FYI, i had to enable all 3 of these flags to get video acceleration to work on nvidia 1660ti and chromium from the official repos:
#Video Acceleration
--use-gl=desktop
--enable-accelerated-video-decode
--ignore-gpu-blacklist
Maybe the wiki should be updated because it seem --enable-accelerated-video-decode is required when using nvidia, the wiki says it's only need when using ANGLE.
Offline
Besides --use-gl all the other ones can be set inside chrome://flags
Offline
Besides --use-gl all the other ones can be set inside chrome://flags
There is also
~/.config/chromium-flags.conf
for chromium and
~/.config/chromium-dev-flags.conf
for chromium-dev.
Offline
However, you can watch h.264 videos with hardware acceleration with the existing VDPAU-VAAPI wrapper. About fullscreen, I haven't modified anything related to fullscreening in this patch but that may be an issue unrelated to VDPAU.
Sorry for the offtopic - but is there something similar as the patch discussed here required to get Firefox working with hardware accelerated video playback on VDPAU systems?
Thank you very much in advance for the clarification.
Offline
New chromium 89 has use_vaapi disabled, what happened?
GPG key: 3DEA 6251 3C80 3538 3A24 5A12 E578 6B42 E8E5 D565
Offline
use_vaapi gets removed here: https://github.com/archlinux/svntogit-p … 747767d41c
hmm
hi
Offline
use_vaapi has defaulted to true since Chromium 88 so its removal from the PKGBUILD didn't disable it.
The reason it stopped working in Chromium 89 is because it was changed from a switch to a feature. It can be re-enabled from chrome://flags/#enable-accelerated-video-decode (or with the --enable-features=VaapiVideoDecoder flag).
Offline
I have --enable-accelerated-video-decode on my chromium-flags.conf and it doesn't work, had to add it to the enable-features flag
GPG key: 3DEA 6251 3C80 3538 3A24 5A12 E578 6B42 E8E5 D565
Offline
Always the same issue with Chromium on my AMD system. 1080p60 vaapi playback has microblocks every 3/4 seconds. That does not happen with Firefox.
Last edited by digitalone (2021-03-13 10:08:30)
Offline
There used to be a chromium-dev package in AUR at https://aur.archlinux.org/packages/chromium-dev - but it has been flagged Out Of Date.
Does that mean that this package is no longer maintained? If yes, are there any successors?
I am asking this because the version number of the regular chromium (89.0.4389.90) has already overtaken the one of chromium-dev (89.0.4381.6).
Offline
There used to be a chromium-dev package in AUR at https://aur.archlinux.org/packages/chromium-dev - but it has been flagged Out Of Date.
Does that mean that this package is no longer maintained? If yes, are there any successors?I am asking this because the version number of the regular chromium (89.0.4389.90) has already overtaken the one of chromium-dev (89.0.4381.6).
Out of date means there is a newer version and the PKGBUILD has to be updated (In this case using the same version number as the chrome-dev releases).
https://www.chromium.org/getting-involv … d-chromium
Last edited by progandy (2021-03-25 12:41:02)
| alias CUTF='LANG=en_XX.UTF-8@POSIX ' |
Online
DAC324 wrote:There used to be a chromium-dev package in AUR at https://aur.archlinux.org/packages/chromium-dev - but it has been flagged Out Of Date.
Does that mean that this package is no longer maintained? If yes, are there any successors?I am asking this because the version number of the regular chromium (89.0.4389.90) has already overtaken the one of chromium-dev (89.0.4381.6).
Out of date means there is a newer version and the PKGBUILD has to be updated (In this case using the same version number as the chrome-dev releases).
Indeed, there is already version 91.0.4455.2 of chromium-dev available.
Unfortunately, simply changing the version number in PKGBUILD is not enough as there were several changes to the source, causing compile to fail with the current PKGBUILD.
Example:
ninja: error: '../../third_party/perfetto/protos/third_party/chromium/chrome_track_event.proto', needed by 'gen/third_party/perfetto/protos/third_party/chromium/chrome_track_event.descriptor', missing and no known rule to make it
ninja: error: '../../third_party/perfetto/src/protozero/protoc_plugin/protozero_plugin.cc', needed by 'obj/third_party/perfetto/src/protozero/protoc_plugin/protozero_plugin/protozero_plugin.o', missing and no known rule to make it
ninja: error: '../../third_party/tflite-support/src/tensorflow_lite_support/metadata/metadata_schema.fbs', needed by 'gen/third_party/tflite-support/src/tensorflow_lite_support/metadata/metadata_schema_generated.h', missing and no known rule to make it
The problem is that the package maintainer, sl1pkn07 (who, unfortunately, has passed away - hope he rests in peace) tried to remove unnecessary packages from the package before compiling and installing.
Looks like as of now, all third party packages that come with Chromium (except for the Android ones) are mandatory for compiling.
But even with the function to remove unwanted third party packages removed (i.e. leaving everything in), I get Python errors:
/usr/bin/python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="nm" --sofile="./libcodec.so" --tocfile="./libcodec.so.TOC" --output="./libcodec.so" -- /home/gerd/Downloads/chromium-dev/src/chromium-91.0.4455.2/third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-soname="libcodec.so" -fuse-ld=/home/gerd/Downloads/chromium-dev/src/chromium-91.0.4455.2/third_party/llvm-build/Release+Asserts/bin/ld.lld -Wl,--fatal-warnings -Wl,--build-id -fPIC -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -Wl,--icf=all -Wl,--color-diagnostics -Wl,--no-call-graph-profile-sort -m64 -Wl,-O2 -Wl,--gc-sections -rdynamic -nostdlib++ -Wl,-rpath=\$ORIGIN -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o "./libcodec.so" @"./libcodec.so.rsp"
FAILED: libcodec.so libcodec.so.TOC
/usr/bin/python "../../build/toolchain/gcc_solink_wrapper.py" --readelf="readelf" --nm="nm" --sofile="./libcodec.so" --tocfile="./libcodec.so.TOC" --output="./libcodec.so" -- /home/gerd/Downloads/chromium-dev/src/chromium-91.0.4455.2/third_party/llvm-build/Release+Asserts/bin/clang++ -shared -Wl,-soname="libcodec.so" -fuse-ld=/home/gerd/Downloads/chromium-dev/src/chromium-91.0.4455.2/third_party/llvm-build/Release+Asserts/bin/ld.lld -Wl,--fatal-warnings -Wl,--build-id -fPIC -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,defs -Wl,--as-needed -Wl,--icf=all -Wl,--color-diagnostics -Wl,--no-call-graph-profile-sort -m64 -Wl,-O2 -Wl,--gc-sections -rdynamic -nostdlib++ -Wl,-rpath=\$ORIGIN -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o "./libcodec.so" @"./libcodec.so.rsp"
ld.lld: error: undefined symbol: cr_png_sig_cmp
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, SkBitmap*))
ld.lld: error: undefined symbol: cr_png_destroy_read_struct
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, SkBitmap*))
ld.lld: error: undefined symbol: cr_png_create_read_struct
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, SkBitmap*))
ld.lld: error: undefined symbol: cr_png_create_info_struct
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, SkBitmap*))
ld.lld: error: undefined symbol: cr_png_set_longjmp_fn
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::LogLibPNGDecodeError(png_struct_def*, char const*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
>>> referenced 1 more times
ld.lld: error: undefined symbol: cr_png_set_error_fn
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
ld.lld: error: undefined symbol: cr_png_set_progressive_read_fn
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, SkBitmap*))
ld.lld: error: undefined symbol: cr_png_process_data
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, gfx::PNGCodec::ColorFormat, std::__Cr::vector<unsigned char, std::__Cr::allocator<unsigned char> >*, int*, int*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::PNGCodec::Decode(unsigned char const*, unsigned long, SkBitmap*))
ld.lld: error: undefined symbol: cr_png_get_progressive_ptr
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeRowCallback(png_struct_def*, unsigned char*, unsigned int, int))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeEndCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_get_IHDR
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_expand
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_get_valid
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_strip_16
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_bgr
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_add_alpha
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_gray_to_rgb
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_get_gAMA
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_gAMA
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_gamma
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: undefined symbol: cr_png_set_read_user_transform_fn
>>> referenced by png_codec.cc
>>> obj/ui/gfx/codec/codec/png_codec.o:(gfx::(anonymous namespace)::DecodeInfoCallback(png_struct_def*, png_info_def*))
ld.lld: error: too many errors emitted, stopping now (use -error-limit=0 to see all errors)
Looks like I finally found the reason sl1pkn07 gave up on this package - I guess it is time for me to give up as well
Last edited by DAC324 (2021-03-26 15:58:02)
Offline
I just wanted to put this out there for anyone that might have this issue in the future. It seems that chromium/chrome will only apply the last instance of the --enable-features flag/cmd argument. So if you're like me and use both VaapiVideoDecoder AND WebUIDarkMode, write them in the same line like this: --enable-features=VaapiVideoDecoder,WebUIDarkMode
This was the reason I couldn't get hardware acceleration to work.
Last edited by jpegxguy (2021-03-27 03:45:47)
hi
Offline
In case somebody is interested in testing the latest version (91.0.4455.2) of chromium-dev, I have suggested a patch in the comment section of the chromium-dev AUR package.
Only drawback observed with this version so far: It has to be started with --no-sandbox, otherwise, no text is displayed at all places where the browser's default font is used.
Looks like the sandbox, as of now, uses a Fontconfig setting different from the one present on the system, resulting in
Fontconfig error: Cannot load default config file: No such file: (null)
Offline
@DAC324 I've seen that `Fontconfig` error quite often in chromium logs, so I don't think it's a new warning
Offline