Created attachment 192146 [details] bt full report When trying to record video with spectacle this happens: spectacle: Unable to load Tesseract candidate "tesseract" : "Cannot load library tesseract: tesseract: cannot open shared object file: No such file or directory" spectacle: Unable to locate a suitable Tesseract shared library spectacle: Tesseract runtime library not available kpipewire_vaapi_logging: VAAPI: VA-API NVDEC driver [direct backend] in use for device "/dev/dri/renderD128" kpipewire_vaapi_logging: VAAPI: entrypoint 6 of profile 13 is not supported by the device "/dev/dri/renderD128" kpipewire_vaapi_logging: VAAPI: entrypoint 8 of profile 13 is not supported by the device "/dev/dri/renderD128" kpipewire_vaapi_logging: VAAPI: entrypoint 6 of profile 6 is not supported by the device "/dev/dri/renderD128" kpipewire_vaapi_logging: VAAPI: entrypoint 8 of profile 6 is not supported by the device "/dev/dri/renderD128" kpipewire_vaapi_logging: VAAPI: entrypoint 6 of profile 7 is not supported by the device "/dev/dri/renderD128" kpipewire_vaapi_logging: VAAPI: entrypoint 8 of profile 7 is not supported by the device "/dev/dri/renderD128" kpipewire_vaapi_logging: VAAPI: Mesa Gallium driver 26.0.6-arch1.1 for AMD Ryzen 7 9700X 8-Core Processor (radeonsi, raphael_mendocino, ACO, DRM 3.64, 6.18.26-1-MANJARO) in use for device "/dev/dri/renderD129" zsh: segmentation fault (core dumped) spectacle I asked chatgpt for help (I don't know how to debug this) in diagnosing the issue and it summarised it as follows: Spectacle/KPipeWire crashes (segfault) when VAAPI enumerates multiple DRM devices in a hybrid NVIDIA + AMD system where AMD VAAPI fails initialization and NVIDIA VAAPI shows unbound/null driver contexts. Logs: (Please see the attached files) STEPS TO REPRODUCE 1. Run spectacle normally or through terminal (in a hybrid AMD iGPU Nvidia dGPU setup) 2. Try to record a full screen video and then end the recording 3. Video recording fails OBSERVED RESULT Video fails to record (it works fine when using LIBVA_DRIVER_NAME=nvidia spectacle) EXPECTED RESULT Spectacle should: - gracefully ignore VAAPI devices that fail initialization - not crash if one GPU backend fails - fall back to software encoding or a single working GPU backend ADDITIONAL INFORMATION GPU setup: NVIDIA RTX 5070 (NVIDIA-SMI 595.71.05) AMD Ryzen 7 9700X integrated Radeon graphics (iGPU) VAAPI stack: libva + mesa VAAPI (radeonsi) libva-nvidia-driver present PipeWire + KPipeWire used for screen capture spectacle --version spectacle 6.6.4 kinfo: Operating System: Manjaro Linux KDE Plasma Version: 6.6.4 KDE Frameworks Version: 6.25.0 Qt Version: 6.11.0 Kernel Version: 6.18.26-1-MANJARO (64-bit) Graphics Platform: Wayland Processors: 16 ร AMD Ryzen 7 9700X 8-Core Processor Memory: 16 GB of RAM (14.8 GB usable) Graphics Processor 1: NVIDIA GeForce RTX 5070/PCIe/SSE2 Graphics Processor 2: NVIDIA GeForce RTX 5070/PCIe/SSE2
Created attachment 192147 [details] vainfo + ffmpeg -hwaccels + ls /dev/dri
Thank you for the bug report. Unfortunately the backtrace is incomplete and missing debug symbols for the following lines that we need to figure out exactly what's going wrong: #0 0x00007efc56a9dc38 in ?? () from /usr/lib/libavcodec.so.62 #6 0x00007efc589dc9c2 in ?? () from /usr/lib/libQt6Core.so.6 Could you please install debug packages and attach a new symbolicated backtrace generated by using `coredumpctl gdb` in a terminal window? See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports for details about how to do this. Thanks again!
ok after trying for a few hours to fix the missing "??" symbols I found out that it's not possible on Manjaro as they do not have the required debug symbols/programs in their repositories due to their packages being different from Arch (something along these lines) unfortunately it seems I will not be able to help with this... ๐ I hope someone else finds this bug again and is able to report it properly with the correct debug symbols...
I just found a bug report that seems kind of similar to mine: https://bugs.kde.org/show_bug.cgi?id=518008 Its says "resolved fixed" but the issue is still occurring for me. The current workaround for me is specifying the GPU when launching spectacle (then it works perfectly fine): LIBVA_DRIVER_NAME=nvidia spectacle A longer term fix so that I don't have to type the above command every time I launch spectacle is setting it as an environment variable: echo "LIBVA_DRIVER_NAME=nvidia" | sudo tee /etc/environment.d/90-vaapi.conf But both of the above commands are a workaround when spectacle fails to look for another GPU if the first one fails or is not the main GPU. Maybe adding an option in the settings for which GPU to use for screen recording could also be a viable fix? Operating System: Manjaro Linux KDE Plasma Version: 6.6.5 KDE Frameworks Version: 6.26.0 Qt Version: 6.11.1 Kernel Version: 6.18.32-1-MANJARO (64-bit) Graphics Platform: Wayland Graphics Processor 1: NVIDIA GeForce RTX 5070 Graphics Processor 2: AMD Ryzen 7 9700X 8-Core Processor
If you're using H.264, setting LIBVA_DRIVER_NAME=nvidia is basically the same as setting KPIPEWIRE_FORCE_ENCODER=libx264. Only VA-API profiles with VAEntrypointEncSlice next to them will do encoding, so you're just falling back to the x264 software encoder. Moved to KPipeWire since that's the part responsible for dealing with FFmpeg and VA-API. There is currently no way for Spectacle to force the use of software encoders, so the ability to do that would have to be added to KPipeWire.
๐๐งน โ ๏ธ This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information, then set the bug status to REPORTED. If there is no change for at least 30 days, it will be automatically closed as RESOLVED WORKSFORME. For more information about our bug triaging procedures, please read https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging. Thank you for helping us make KDE software even better for everyone!
Firefox have recently added Vulkan decoding which will be released with Firefox 153 and there is a screen recording program called "GPU screen Recorder" which has added experimental support for recording with Vulkan encoding, which is supposed to be faster on Nvidia. Would it be possible to use Vulkan with spectacle? especially for Nvidia cards? And what setting or environmental variable should I use now as a workaround for the current issue i'm facing? (as I mentioned above i'm sadly unable to provide a proper backtrace on Manjaro as we do not have the required debug programs in our repos)
We still need a symbolicated backtrace. Could you please install debug packages and attach a new symbolicated backtrace generated by using `coredumpctl gdb` in a terminal window? See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports for details about how to do this. Thanks again!
Dear TraceyC As I mentioned before Manjaro unfortunately does not provide debug packages in it's stable build... I tired for several hours until I eventually found out that it is not possible. There are multiple discussions in the Manjaro forums from users about this matter. So I am sadly unable to do anything about it. I already uploaded whatever I could, but the correct symbols/names are missing from the backtrace it's showing "??" because we do not have the required debug packages in our repos. For further reading (there are many posts like this): https://forum.manjaro.org/t/debug-symbols-on-manjaro/61157
Thanks for checking. I did find another report of this error in Spectacle, and the good news is that it should be fixed in 6.7.0. I'll merge this report in with the other one. *** This bug has been marked as a duplicate of bug 516162 ***
Bug 516162 is about Tesseract (which is related to OCR) my bug report is about spectacle failing to record video at all. This is more closely related from what I can see: https://bugs.kde.org/show_bug.cgi?id=518008
(In reply to Sevenseraphim from comment #11) > Bug 516162 is about Tesseract (which is related to OCR) my bug report is > about spectacle failing to record video at all. Both bugs have the same tesseract error, which is why I thought this was a duplicate of that one spectacle: Unable to load Tesseract candidate "tesseract" : "Cannot load library tesseract: tesseract: cannot open shared object file: No such file or directory" > This is more closely related from what I can see: > https://bugs.kde.org/show_bug.cgi?id=518008 Well spotted, I'll switch this to that one. Fortunately, that's also fixed in 6.7.0. *** This bug has been marked as a duplicate of bug 518008 ***