jliljebl / flowblade

Video Editor for Linux
GNU General Public License v3.0
2.67k stars 181 forks source link

Program quits after GPU test when running in Wayland #1130

Closed Disaster2life closed 1 year ago

Disaster2life commented 1 year ago

Please include the following information. 1) Flowblade version: Development branch 2) MLT version: 7.18.0 3) Your distribution: Debian (Unstable) 4) If possible, try to provide step-by-step instructions on how to reproduce the issue. From developer point of view this is the easieast way to understand what is happening.: the window starts up and everything seems to work fine until the terminal prints out the results for GPU test result, after which the windows quits.

Log from the terminal:

/flowblade/flowblade-trunk$ ./flowblade 
FLOWBLADE MOVIE EDITOR 2.11-dev
-------------------------------
Launch script dir: /home/disaster/Projects/flowblade/flowblade-trunk
Running from filesystem...
MLT found, version: 7.18.0
numpy version: 1.24.2
Application version: 2.10.0
OS: Debian GNU/Linux trixie/sid
Python 3.11.6 (main, Oct  8 2023, 05:06:43) [GCC 13.2.0]
GTK+ version: 3.24.38
XDG Config /home/disaster/.config/flowblade
XDG Data /home/disaster/.local/share/flowblade
XDG Cache /home/disaster/.cache/flowblade
Locale: en_IN
Found translations at /home/disaster/Projects/flowblade/flowblade-trunk/Flowblade/locale/, using those.
Use OS locale language.
Valid shortcut files found: ['flowblade.xml', 'premiere.xml']
Keyboard shortcuts file: flowblade.xml
Using Full Screen size for layout: 1920 x 1080
Small height: False
Small width: False
Detecting environment...
---
video_codecs:
  - a64multi
  - a64multi5
  - alias_pix
  - amv
  - apng
  - asv1
  - asv2
  - avrp
  - avui
  - ayuv
  - bitpacked
  - bmp
  - cfhd
  - cinepak
  - cljr
  - dnxhd
  - dpx
  - dvvideo
  - exr
  - ffv1
  - ffvhuff
  - fits
  - flashsv
  - flashsv2
  - flv
  - gif
  - h261
  - h263
  - h263p
  - hap
  - huffyuv
  - jpeg2000
  - jpegls
  - ljpeg
  - magicyuv
  - mjpeg
  - mpeg1video
  - mpeg2video
  - mpeg4
  - msmpeg4v2
  - msmpeg4
  - 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
  - libtheora
  - libvpx
  - libvpx-vp9
  - libwebp_anim
  - libwebp
  - libx264
  - libx264rgb
  - libx265
  - libxvid
  - h263_v4l2m2m
  - av1_nvenc
  - av1_qsv
  - h264_nvenc
  - h264_omx
  - h264_qsv
  - h264_v4l2m2m
  - h264_vaapi
  - hevc_nvenc
  - hevc_qsv
  - hevc_v4l2m2m
  - hevc_vaapi
  - mjpeg_qsv
  - mjpeg_vaapi
  - mpeg2_qsv
  - mpeg2_vaapi
  - mpeg4_omx
  - mpeg4_v4l2m2m
  - vp8_v4l2m2m
  - vp8_vaapi
  - vp9_vaapi
  - vp9_qsv
  - vnull
...
---
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
  - libcodec2
  - libgsm
  - libgsm_ms
  - libmp3lame
  - libopus
  - libshine
  - libspeex
  - libtwolame
  - libvorbis
  - anull
...
---
formats:
  - a64
  - ac3
  - adts
  - adx
  - 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
  - f4v
  - ffmetadata
  - fifo
  - fifo_test
  - filmstrip
  - fits
  - flac
  - flv
  - framecrc
  - framehash
  - framemd5
  - g722
  - g723_1
  - g726
  - g726le
  - gif
  - gsm
  - gxf
  - h261
  - h263
  - h264
  - hash
  - hds
  - hevc
  - hls
  - ico
  - ilbc
  - image2
  - image2pipe
  - ipod
  - ircam
  - ismv
  - ivf
  - jacosub
  - kvag
  - latm
  - 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
  - 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
  - w64
  - wav
  - webm
  - webm_dash_manifest
  - webm_chunk
  - webp
  - webvtt
  - wsaud
  - wtv
  - wv
  - yuv4mpegpipe
  - chromaprint
  - alsa
  - caca
  - fbdev
  - opengl
  - oss
  - pulse
  - sdl,sdl2
  - video4linux2,v4l2
  - xv
...
MLT detection succeeded, 184 formats, 126 video codecs and 85 audio codecs found.
694 MLT services found.
Loading render profiles...
ffmpeg version 6.0-7+b1 Copyright (c) 2000-2023 the FFmpeg developers
built with gcc 13 (Debian 13.2.0-4)
configuration: --prefix=/usr --extra-version=7+b1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libdav1d --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libglslang --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librabbitmq --enable-librist --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libsrt --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --disable-sndio --enable-libjxl --enable-pocketsphinx --enable-librsvg --enable-libvpl --disable-libmfx --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-chromaprint --enable-frei0r --disable-libsvtav1 --enable-libx264 --enable-libplacebo --enable-librav1e --enable-shared
libavutil      58.  2.100 / 58.  2.100
libavcodec     60.  3.100 / 60.  3.100
libavformat    60.  3.100 / 60.  3.100
libavdevice    60.  1.100 / 60.  1.100
libavfilter     9.  3.100 /  9.  3.100
libswscale      7.  1.100 /  7.  1.100
libswresample   4. 10.100 /  4. 10.100
libpostproc    57.  1.100 / 57.  1.100
['ffmpeg', '-version']
return code: 0
ffmpeg available
Loading filters...
Loading transitions...
RGB Adjustment dropped for Color Adjustment
Hue dropped for Color Adjustment
Gamma dropped for Lift Gain Gamma
Adding full track compositors
restacking compositors!
Adding full track compositors DONE
active_vault 0
[]
G'MIC found
Player initialized with profile:  HD 1080p 30 fps
Traceback (most recent call last):
  File "/home/disaster/Projects/flowblade/flowblade-trunk/Flowblade/app.py", line 342, in on_activate
    launch_player()
  File "/home/disaster/Projects/flowblade/flowblade-trunk/Flowblade/app.py", line 539, in launch_player
    editorstate.player.set_sdl_xwindow(gui.tline_display)
  File "/home/disaster/Projects/flowblade/flowblade-trunk/Flowblade/mltplayer.py", line 119, in set_sdl_xwindow
    os.putenv('SDL_WINDOWID', str(widget.get_window().get_xid()))
                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'GdkWaylandWindow' object has no attribute 'get_xid'. Did you mean: 'get_width'?
Traceback (most recent call last):
  File "/home/disaster/Projects/flowblade/flowblade-trunk/Flowblade/utilsgtk.py", line 57, in _update
    self.action(self.data)
  File "/home/disaster/Projects/flowblade/flowblade-trunk/Flowblade/mltplayer.py", line 318, in _ticker_event
    if (self.consumer.is_stopped() or self.producer.get_speed() == 0):
        ^^^^^^^^^^^^^
AttributeError: 'Player' object has no attribute 'consumer'
GPU test results {'NVENC H.264 High Profile / .mp4': -11, 'NVENC HEVC / .mp4': -11, 'NVENC HEVC HDR / .mp4': -11, 'VAAPI H.264 / .mp4': 0
jliljebl commented 1 year ago

File "/home/disaster/Projects/flowblade/flowblade-trunk/Flowblade/mltplayer.py", line 119, in set_sdl_xwindow os.putenv('SDL_WINDOWID', str(widget.get_window().get_xid())) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'GdkWaylandWindow' object has no attribute 'get_xid'. Did you mean: 'get_width'?

This is the wayland thing, see F.A.Q https://github.com/jliljebl/flowblade/blob/master/flowblade-trunk/docs/FAQ.md#wayland

So, to be more precise, you'll need the full path when running from repository code.

GDK_BACKEND=x11 /home/yourhomefolder/some/path/flowblade