mltframework / shotcut

cross-platform (Qt), open-source (GPLv3) video editor
https://www.shotcut.org
GNU General Public License v3.0
11.06k stars 1.14k forks source link

Shotcut crashes at startup using AMD Catalyst driver on Linux #54

Closed ghost closed 9 years ago

ghost commented 9 years ago

I tried to run Shotcut, but it crashes anytime I start, causing segfault. Here's the output from the terminal:

ib64/ladspa/sine.so'; using version in '/usr/lib/ladspa/sine.so'
[Info   ] <MLT> Plugin 1047 exists in both '/usr/lib/ladspa/sine.so' and '/usr/lib64/ladspa/sine.so'; using version in '/usr/lib/ladspa/sine.so'
[Info   ] <MLT> Plugin 1041 exists in both '/usr/lib/ladspa/filter.so' and '/usr/lib64/ladspa/filter.so'; using version in '/usr/lib/ladspa/filter.so'
[Info   ] <MLT> Plugin 1042 exists in both '/usr/lib/ladspa/filter.so' and '/usr/lib64/ladspa/filter.so'; using version in '/usr/lib/ladspa/filter.so'
[Info   ] <MLT> Plugin 1043 exists in both '/usr/lib/ladspa/delay.so' and '/usr/lib64/ladspa/delay.so'; using version in '/usr/lib/ladspa/delay.so'
[Info   ] <MLT> Plugin 1048 exists in both '/usr/lib/ladspa/amp.so' and '/usr/lib64/ladspa/amp.so'; using version in '/usr/lib/ladspa/amp.so'
[Info   ] <MLT> Plugin 1049 exists in both '/usr/lib/ladspa/amp.so' and '/usr/lib64/ladspa/amp.so'; using version in '/usr/lib/ladspa/amp.so'
[Info   ] <MLT> Plugin 1050 exists in both '/usr/lib/ladspa/noise.so' and '/usr/lib64/ladspa/noise.so'; using version in '/usr/lib/ladspa/noise.so'
[Debug  ] <Mlt::Controller::Controller()> end 
[Debug  ] <Mlt::GLWidget::GLWidget(QObject*)> begin 
[Debug  ] <Mlt::GLWidget::GLWidget(QObject*)> end 
[Debug  ] <void MainWindow::setupSettingsMenu()> begin 
libDeckLinkAPI.so: cannot open shared object file: No such file or directory
[Error  ] <MLT> [ 0x1d2d268] The DeckLink drivers not installed.
[Debug  ] <void MainWindow::setupSettingsMenu()> end 
[Debug  ] <void MainWindow::readPlayerSettings()> begin 
[Debug  ] <void MainWindow::readPlayerSettings()> end 
[Debug  ] <void MainWindow::configureVideoWidget()> begin 
[Debug  ] <void MainWindow::configureVideoWidget()> end 
[Debug  ] <ScopeController::ScopeController(QMainWindow*, QMenu*)> begin 
[Debug  ] <ScopeWidget::ScopeWidget(const QString&)> begin true 
[Debug  ] <ScopeWidget::ScopeWidget(const QString&)> end 
[Debug  ] <AudioPeakMeterScopeWidget::AudioPeakMeterScopeWidget()> begin 
[Debug  ] <AudioPeakMeterScopeWidget::AudioPeakMeterScopeWidget()> end 
[Debug  ] <ScopeDock::ScopeDock(ScopeController*, ScopeWidget*)> begin 
[Debug  ] <ScopeDock::ScopeDock(ScopeController*, ScopeWidget*)> end 
[Debug  ] <ScopeWidget::ScopeWidget(const QString&)> begin true 
[Debug  ] <ScopeWidget::ScopeWidget(const QString&)> end 
[Debug  ] <AudioWaveformScopeWidget::AudioWaveformScopeWidget()> begin 
[Debug  ] <AudioWaveformScopeWidget::AudioWaveformScopeWidget()> end 
[Debug  ] <ScopeDock::ScopeDock(ScopeController*, ScopeWidget*)> begin 
[Debug  ] <ScopeDock::ScopeDock(ScopeController*, ScopeWidget*)> end 
[Debug  ] <ScopeController::ScopeController(QMainWindow*, QMenu*)> end 
[Debug  ] <RecentDock::RecentDock(QWidget*)> begin 
[Debug  ] <RecentDock::RecentDock(QWidget*)> end 
[Debug  ] <PlaylistDock::PlaylistDock(QWidget*)> begin 
[Debug  ] <PlaylistDock::PlaylistDock(QWidget*)> end 
[Debug  ] <TimelineDock::TimelineDock(QWidget*)> begin 
[Debug  ] <TimelineDock::TimelineDock(QWidget*)> end 
[Debug  ] <FiltersDock::FiltersDock(MetadataModel*, AttachedFiltersModel*, QWidget*)> begin 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_balance" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Balance" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_channelcopy" "meta.qml" 
[Debug  ] <FiltersDock::FiltersDock(MetadataModel*, AttachedFiltersModel*, QWidget*)> end 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Copy Channel" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_fadein" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Fade In Audio" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_fadeout" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Fade Out Audio" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_gain" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Gain" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_loudness" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Normalize" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_mono" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Downmix" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_pan" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Pan" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "audio_swapchannels" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Swap Channels" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "blur" "meta_boxblur.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Blur" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "blur" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Blur" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "color" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Color Grading" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "color" "meta_frei0r_coloradj.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Color Grading" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "color" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Color Grading" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "crop" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Crop" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "crop" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Crop" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "dynamictext" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Text" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "fadein_brightness" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Fade In Video" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "fadein_movit" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Fade In Video" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "fadeout_brightness" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Fade Out Video" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "fadeout_movit" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Fade Out Video" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "glow" "meta_frei0r.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Glow" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "glow" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Glow" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "invert" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Invert Colors" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "mirror" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Mirror" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "mirror" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Mirror" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "movit_diffusion" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Diffusion" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "opacity" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Opacity" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "opacity" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Opacity" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "rotate" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Rotate" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "saturation" "meta_frei0r.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Saturation" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "saturation" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Saturation" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "sepia" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Sepia Tone" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "sharpen" "meta_frei0r.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Sharpen" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "sharpen" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Sharpen" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "size_position" "meta_affine.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Size and Position" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "size_position" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Size and Position" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "stabilize" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Stabilize" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "vignette" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Vignette" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "vignette" "meta_oldfilm.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Vignette" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "wave" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Wave" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "webvfx" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Overlay HTML" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "webvfx_circular_frame" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "Circular Frame (HTML)" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "webvfx_threejs_text" "meta.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "3D Text (HTML)" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "white" "meta_frei0r.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "White Balance" 
[Debug  ] <void FilterController::loadFilterMetadata()> reading filter metadata "white" "meta_movit.qml" 
[Debug  ] <void FilterController::loadFilterMetadata()> added filter "White Balance" 
[Debug  ] <EncodeDock::EncodeDock(QWidget*)> begin 

---
formats:
  - a64
  - ac3
  - adts
  - adx
  - aiff
  - amr
  - asf
  - ass
  - ast
  - asf_stream
  - au
  - avi
  - avm2
  - bit
  - caf
  - cavsvideo
  - crc
  - data
  - daud
  - dirac
  - dnxhd
  - dts
  - dv
  - eac3
  - f4v
  - ffm
  - ffmetadata
  - filmstrip
  - flac
  - flv
  - framecrc
  - framemd5
  - g722
  - g723_1
  - gif
  - gxf
  - h261
  - h263
  - h264
  - hds
  - hevc
  - hls
  - ico
  - ilbc
  - image2
  - image2pipe
  - ipod
  - ircam
  - ismv
  - ivf
  - jacosub
  - 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
  - null
  - nut
  - oga
  - ogg
  - oma
  - opus
  - alaw
  - mulaw
  - f64be
  - f64le
  - f32be
  - f32le
  - s32be
  - s32le
  - s24be
  - s24le
  - s16be
  - s16le
  - s8
  - u32be
  - u32le
  - u24be
  - u24le
  - u16be
  - u16le
  - u8
  - psp
  - rawvideo
  - rm
  - roq
  - rso
  - rtp
  - rtsp
  - sap
  - segment
  - stream_segment,ssegment
  - smjpeg
  - smoothstreaming
  - sox
  - spdif
  - speex
  - srt
  - swf
  - tee
  - 3g2
  - 3gp
  - mkvtimestamp_v2
  - truehd
  - uncodedframecrc
  - vc1
  - vc1test
  - voc
  - w64
  - wav
  - webm
  - webm_dash_manifest
  - webvtt
  - wtv
  - wv
  - yuv4mpegpipe
  - alsa
  - fbdev
  - oss
  - pulse
  - sdl
  - v4l2
...

---
audio_codecs:
  - comfortnoise
  - s302m
  - aac
  - ac3
  - ac3_fixed
  - alac
  - dca
  - eac3
  - flac
  - g723_1
  - mp2
  - mp2fixed
  - nellymoser
  - real_144
  - sonic
  - sonicls
  - tta
  - vorbis
  - wavpack
  - wmav1
  - wmav2
  - pcm_alaw
  - 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_u8
  - pcm_u16be
  - pcm_u16le
  - pcm_u24be
  - pcm_u24le
  - pcm_u32be
  - pcm_u32le
  - roq_dpcm
  - adpcm_adx
  - g722
  - g726
  - adpcm_ima_qt
  - adpcm_ima_wav
  - adpcm_ms
  - adpcm_swf
  - adpcm_yamaha
  - libmp3lame
  - libopus
  - libvorbis
...

---
video_codecs:
  - a64multi
  - a64multi5
  - alias_pix
  - amv
  - asv1
  - asv2
  - avrp
  - avui
  - ayuv
  - bmp
  - cinepak
  - cljr
  - dnxhd
  - dpx
  - dvvideo
  - ffv1
  - ffvhuff
  - flashsv
  - flashsv2
  - flv
  - gif
  - h261
  - h263
  - h263p
  - huffyuv
  - jpeg2000
  - jpegls
  - ljpeg
  - mjpeg
  - mpeg1video
  - mpeg2video
  - mpeg4
  - msmpeg4v2
  - msmpeg4
  - msvideo1
  - pam
  - pbm
  - pcx
  - pgm
  - pgmyuv
  - png
  - ppm
  - prores
  - prores_aw
  - prores_ks
  - qtrle
  - r10k
  - r210
  - rawvideo
  - roqvideo
  - rv10
  - rv20
  - sgi
  - snow
  - sunrast
  - svq1
  - targa
  - tiff
  - utvideo
  - v210
  - v308
  - v408
  - v410
  - wmv1
  - wmv2
  - xbm
  - xface
  - xwd
  - y41p
  - yuv4
  - zlib
  - zmbv
  - libtheora
  - libvpx
  - libvpx-vp9
  - libx264
  - libx264rgb
  - libx265
...
[Debug  ] <EncodeDock::EncodeDock(QWidget*)> end 
[Debug  ] <JobsDock::JobsDock(QWidget*)> begin 
[Debug  ] <JobsDock::JobsDock(QWidget*)> end 
[Debug  ] <void MainWindow::readWindowSettings()> begin 
[Debug  ] <void MainWindow::readWindowSettings()> end 
[Debug  ] <MainWindow::MainWindow()> end 
[Debug  ] <void Mlt::GLWidget::initializeGL()> begin 
/usr/bin/shotcut-bin: line 14:  2862 Segmentation fault      (core dumped) "$INSTALL_DIR/bin/shotcut" "$@"

Here's my detailed specs: Distro: Arch/Antergos Linux Kernel: 3.19.2 Desktop Environment: MATE

ddennedy commented 9 years ago

There is an OpenGL compatibility problem on your system. Are you using the AMD Catalyst driver? That is known to be incompatible. At the command line, run glxinfo | grep OpenGL and report the results here.

ghost commented 9 years ago

@ddennedy Here's the result:

OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: AMD Radeon HD 7600G
OpenGL core profile version string: 4.4.13283 Core Profile Context 14.201.1006.1002
OpenGL core profile shading language version string: 4.40
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.4.13283 Compatibility Profile Context 14.201.1006.1002
OpenGL shading language version string: 4.40
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:

For reference, here's the GPU deatils on my laptop: 03232015095536383

ddennedy commented 9 years ago

Related to #23. In earlier versions of Shotcut, the compatibility problem was limited to certain functions. I think since v14.09, when I added the on-screen controls capability (VUI), it broke all compatibility for AMD Catalyst on Linux. The developers do not currently have machines with AMD running Linux. I will buy a card soon with the donations received.

ddennedy commented 9 years ago

Needs to be retested on v15.09.

ddennedy commented 9 years ago

To be clear, we would like the bug reporter to re-test and confirm resolution.

ddennedy commented 9 years ago

Works for me now.