Freezing on startup in Arch Linux and Wayland with Nvidia
I've been experiencing this issue for a few months now. The app image and portable version freeze on startup. The version installed with the package manager works, but only with GPU effects disabled. When I enable GPU effects, the program crashes when I move a media file into the timeline. It also crashes when I try to open a project. I'm using an Nvidia GPU with the proprietary drivers installed. It only happens in Wayland. X11 works fine.
OS: Arch Linux (EndeavourOS) Shotcut version: 25.01.25 (same issue with older versions)
I have the same issue on Ubuntu with KDE Plasma on Wayland and NVIDIA GPU
It works when starting it like this:
QT_QUICK_BACKEND=software QT_OPENGL=software ./shotcut
but it won't render any imported images, only the interface renders
Version: 25.05.11
Please report how you are installing Shotcut, and try the Flatpak if you have not yet. The AppImage and portable packages contain a rather old version of Qt 6 for binary compatibility, but Wayland works better with more recent versions of Qt.
installed it with AUR v.25.05.11 and it crashes like this:
Speicherzugriffsfehler (Speicherabzug geschrieben)
[marcel@marcelpc ~]$ shotcut
libDeckLinkAPI.so: cannot open shared object file: No such file or directory
---
formats:
- a64
- ac3
- ac4
- adts
- adx
- aea
- aiff
- alp
- amr
- amv
- apm
- apng
- aptx
- aptx_hd
- argo_asf
- argo_cvg
- asf
- ass
- ast
- asf_stream
- au
- avi
- avif
- avm2
- avs2
- avs3
- bit
- caf
- cavsvideo
- codec2
- codec2raw
- crc
- dash
- data
- daud
- dfpwm
- dirac
- dnxhd
- dts
- dv
- eac3
- evc
- f4v
- ffmetadata
- fifo
- filmstrip
- fits
- flac
- flv
- framecrc
- framehash
- framemd5
- g722
- g723_1
- g726
- g726le
- gif
- gsm
- gxf
- h261
- h263
- h264
- hash
- hds
- hevc
- hls
- iamf
- ico
- ilbc
- image2
- image2pipe
- ipod
- ircam
- ismv
- ivf
- jacosub
- kvag
- latm
- lc3
- lrc
- m4v
- md5
- matroska
- matroska
- microdvd
- mjpeg
- mlp
- mmf
- mov
- mp2
- mp3
- mp4
- mpeg
- vcd
- mpeg1video
- dvd
- svcd
- mpeg2video
- vob
- mpegts
- mpjpeg
- mxf
- mxf_d10
- mxf_opatom
- null
- nut
- obu
- oga
- ogg
- ogv
- oma
- opus
- alaw
- mulaw
- vidc
- f64be
- f64le
- f32be
- f32le
- s32be
- s32le
- s24be
- s24le
- s16be
- s16le
- s8
- u32be
- u32le
- u24be
- u24le
- u16be
- u16le
- u8
- psp
- rawvideo
- rcwt
- rm
- roq
- rso
- rtp
- rtp_mpegts
- rtsp
- sap
- sbc
- scc
- film_cpk
- segment
- stream_segment,ssegment
- smjpeg
- smoothstreaming
- sox
- spx
- spdif
- srt
- streamhash
- sup
- swf
- tee
- 3g2
- 3gp
- mkvtimestamp_v2
- truehd
- tta
- ttml
- uncodedframecrc
- vc1
- vc1test
- voc
- vvc
- w64
- wav
- webm
- webm_dash_manifest
- webm_chunk
- webp
- webvtt
- wsaud
- wtv
- wv
- yuv4mpegpipe
- alsa
- fbdev
- opengl
- oss
- pulse
- sdl,sdl2
- video4linux2,v4l2
- xv
...
---
audio_codecs:
- comfortnoise
- s302m
- aac
- ac3
- ac3_fixed
- alac
- aptx
- aptx_hd
- dca
- dfpwm
- eac3
- flac
- g723_1
- mlp
- mp2
- mp2fixed
- nellymoser
- opus
- real_144
- sbc
- sonic
- sonicls
- truehd
- tta
- vorbis
- wavpack
- wmav1
- wmav2
- pcm_alaw
- pcm_bluray
- pcm_dvd
- pcm_f32be
- pcm_f32le
- pcm_f64be
- pcm_f64le
- pcm_mulaw
- pcm_s8
- pcm_s8_planar
- pcm_s16be
- pcm_s16be_planar
- pcm_s16le
- pcm_s16le_planar
- pcm_s24be
- pcm_s24daud
- pcm_s24le
- pcm_s24le_planar
- pcm_s32be
- pcm_s32le
- pcm_s32le_planar
- pcm_s64be
- pcm_s64le
- pcm_u8
- pcm_u16be
- pcm_u16le
- pcm_u24be
- pcm_u24le
- pcm_u32be
- pcm_u32le
- pcm_vidc
- roq_dpcm
- adpcm_adx
- adpcm_argo
- g722
- g726
- g726le
- adpcm_ima_amv
- adpcm_ima_alp
- adpcm_ima_apm
- adpcm_ima_qt
- adpcm_ima_ssi
- adpcm_ima_wav
- adpcm_ima_ws
- adpcm_ms
- adpcm_swf
- adpcm_yamaha
- libgsm
- libgsm_ms
- libmp3lame
- libopencore_amrnb
- libopus
- libspeex
- libvorbis
- anull
...
---
video_codecs:
- a64multi
- a64multi5
- alias_pix
- amv
- apng
- asv1
- asv2
- avrp
- avui
- bitpacked
- bmp
- cfhd
- cinepak
- cljr
- dnxhd
- dpx
- dvvideo
- dxv
- exr
- ffv1
- ffvhuff
- fits
- flashsv
- flashsv2
- flv
- gif
- h261
- h263
- h263p
- hap
- huffyuv
- jpeg2000
- jpegls
- ljpeg
- magicyuv
- mjpeg
- mpeg1video
- mpeg2video
- mpeg4
- msmpeg4v2
- msmpeg4
- msrle
- msvideo1
- pam
- pbm
- pcx
- pfm
- pgm
- pgmyuv
- phm
- png
- ppm
- prores
- prores_aw
- prores_ks
- qoi
- qtrle
- r10k
- r210
- rawvideo
- roqvideo
- rpza
- rv10
- rv20
- sgi
- smc
- snow
- speedhq
- sunrast
- svq1
- targa
- tiff
- utvideo
- v210
- v308
- v408
- v410
- vbn
- vc2
- wbmp
- wrapped_avframe
- wmv1
- wmv2
- xbm
- xface
- xwd
- y41p
- yuv4
- zlib
- zmbv
- hdr
- libaom-av1
- libjxl
- libopenjpeg
- librav1e
- libsvtav1
- libtheora
- libvpx
- libvpx-vp9
- libwebp_anim
- libwebp
- libx264
- libx264rgb
- libx265
- libxvid
- h263_v4l2m2m
- av1_nvenc
- av1_qsv
- av1_amf
- av1_vaapi
- h264_amf
- h264_nvenc
- h264_qsv
- h264_v4l2m2m
- h264_vaapi
- h264_vulkan
- hevc_amf
- hevc_nvenc
- hevc_qsv
- hevc_v4l2m2m
- hevc_vaapi
- hevc_vulkan
- mjpeg_qsv
- mjpeg_vaapi
- mpeg2_qsv
- mpeg2_vaapi
- mpeg4_v4l2m2m
- vp8_v4l2m2m
- vp8_vaapi
- vp9_vaapi
- vp9_qsv
- vnull
...
[ac3 @ 0x7f3bb407b100] Could not update timestamps for skipped samples.
[ac3 @ 0x7f3bb407b100] Could not update timestamps for skipped samples.
malloc(): unaligned tcache chunk detected
Abgebrochen (Speicherabzug geschrieben)
I can restart it 2-3 times and suddenly it works.
Retest on the latest version (25.08 at this time) with one of our builds. The latest portable and AppImage includes a much newer Qt version 6.8 or 6.9.
I reproduced it with the Snap (also portable and AppImage) on KDE Neon with nvidia). It was working when using the non-nvidia binary with mesa and whatever. The Flatpak is working fine on nvidia. Both are using the same version of Qt.
Today, this resolved itself on my KDE Neon (based on Ubuntu 24.04). In Shotcut's View > Application Log, I see:
[Info ] OpenGLVideoWidget::initialize OpenGL vendor "Mesa" [Info ] OpenGLVideoWidget::initialize OpenGL renderer "zink Vulkan 1.4(NVIDIA GeForce RTX 4070 (NVIDIA_PROPRIETARY))"
This output is new to me. It seems to be some mapping of OpenGL to Vulkan on the nvidia driver. NVENC is working as well. This is with nvidia-driver-580.