Summary: | Kdenlive 20.08.1 freezes when opening some projects created by 19.08.1 but not others | ||
---|---|---|---|
Product: | [Applications] kdenlive | Reporter: | ahiijny |
Component: | User Interface & Miscellaneous | Assignee: | emohr <fritzibaby> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | fritzibaby, jb, vds.jeroen |
Priority: | NOR | Flags: | fritzibaby:
Brainstorm+
|
Version First Reported In: | 20.08.1 | ||
Target Milestone: | --- | ||
Platform: | Other | ||
OS: | Microsoft Windows | ||
Latest Commit: | Version Fixed In: | 20.12.0 | |
Sentry Crash Report: | |||
Attachments: |
Projects that freeze when opened in 20.08.1
Debug output when opening projects with nightly build 520 Project created in 20.04.0 which freezes Debug output when opening projects with nightly build 544 An mkv file with 33 streams Bug_426640_Crashlog |
Description
ahiijny
2020-09-17 13:51:26 UTC
Please upload the three (3) 19.08.1 project files here (maybe you have to zip it because of the size). Seems to be similar to Bug 409477 which contains pictures as well. With 20.08 we made some change about locals. Created attachment 131728 [details]
Projects that freeze when opened in 20.08.1
First one is the one that segfaults in Qt5Core.dll
Second one is the one that segfaults in avcodec-58.dll
Third one is the one with images that just hangs
Sometimes these freeze while loading clips, and other times they freeze shortly after the timeline loads (if I click around for a bit)
Password is "the three"
Please try with nightly build https://binary-factory.kde.org/job/Kdenlive_Nightly_mingw64/520/ which contains a fix. I could load all 3 files with placeholders. Created attachment 131814 [details]
Debug output when opening projects with nightly build 520
Hm, I'm still getting the same freezes with the latest build.
1 and 2 freeze while loading clips. With project 3, the timeline and bin load, but when I click "play" on the timeline, nothing happens. And it freezes after I try playing a bin clip.
I attached a copy-paste of the debug output (when running the exe with gdb), just in case it helps (same password).
I have the same problem in 20.08.1 (installer version). Application freezes at "Loading clips" when opening my project. Tested with nightly build 524 as well (standalone), with the same result. https://binary-factory.kde.org/job/Kdenlive_Nightly_mingw64/524/ I also removed the local cache folder, but that did not help. Windows 10 1809 What output would be helpful to debug this problem? I assume loading the clips lead to a freeze as I can load projects with placeholders. Please upload the project file here which leads to the freeze. Created attachment 131892 [details]
Project created in 20.04.0 which freezes
I have added my project file which leads to the freeze as well
Seems to be fixed with build #544. ahiijny can you check as well? @ahiijny@gmail.com Please check with the actual daily build if the issue is solved. Created attachment 132370 [details]
Debug output when opening projects with nightly build 544
I tried it with build 544.
My 1.kdenlive and 3.kdenlive load successfully now, and I can confirm that playback in the timeline works as expected without any freezing.
My 2.kdenlive still crashes when I try to open it, though.
When I tried running it through gdb, it shows the same segfault error last time, in avcodec_flush_buffers() from bin\avcodec-58.dll.
When I try to open 2.kdenlive in 19.08.1, it opens fine, so I don't think the project file is corrupt or anything like that.
Tried it with build 546 as well. Same as above. 1.kdenlive and 3.kdenlive load successfully. But with 2.kdenlive, kdenlive freezes during the load, and then a short while later, the kdenlive process terminates. Dear Bug Submitter, This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information. For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging If you have already provided the requested information, please mark the bug as REPORTED so that the KDE team knows that the bug is ready to be confirmed. Thank you for helping us make KDE software even better for everyone! Info provided above. 2.kdenlive has box brackets "[ ]" in the file name more than ones. If you remove these box brackets "[ ]" in the file name Kdenlive still crashes? I tried renaming and moving my files so that they didn't have any square brackets in the path, but it was still crashing. I managed to build kdenlive locally using Craft, but for some reason the UI wouldn't appear if I ran kdenlive.exe using gdb. So I did the hacky thing of copying the kdenlive.exe.sym file to the bin folder of the kdenlive-20.08.3_standalone folder that I downloaded from the kdenlive website. I managed to get a backtrace: Thread 132 received signal SIGSEGV, Segmentation fault. [Switching to Thread 4224.0x1aac] 0x00007ff90aed10ee in avcodec_flush_buffers () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\avcodec-58.dll (gdb) bt #0 0x00007ff90aed10ee in avcodec_flush_buffers () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\avcodec-58.dll #1 0x0000000069689fe0 in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\lib\mlt\libmltavformat.dll #2 0x0000000069ac37fd in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\libmlt-6.dll #3 0x000000006a3cec39 in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\lib\mlt\libmltcore.dll #4 0x0000000069ac37fd in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\libmlt-6.dll #5 0x000000006a3cf1be in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\lib\mlt\libmltcore.dll #6 0x0000000069ac37fd in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\libmlt-6.dll #7 0x000000006400327c in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\libmlt++-3.dll #8 0x0000000000559664 in KThumb::getFrame (frame=0x73a076e0, width=256, height=144, scaledWidth=256) at C:/CraftRoot/build/_/3377f5a/kdenlive-20.08.3/src/doc/kthumb.cpp:113 #9 0x00000000005c0a96 in ThumbJob::startJob (this=0x57d43020) at C:/CraftRoot/build/_/3377f5a/kdenlive-20.08.3/src/jobs/thumbjob.cpp:125 #10 0x0000000000842e92 in QtConcurrent::FunctionWrapper1<bool, std::shared_ptr<AbstractClipJob> const&>::operator() (this=0x73440af8, u=std::shared_ptr<AbstractClipJob> (use count 2, weak count 0) = {...}) at C:/CraftRoot/include/qt5/QtConcurrent/qtconcurrentfunctionwrappers.h:78 #11 QtConcurrent::MappedEachKernel<__gnu_cxx::__normal_iterator<std::shared_ptr<AbstractClipJob> const*, std::vector<std::shared_ptr<AbstractClipJob>, std::allocator<std::shared_ptr<AbstractClipJob> > > >, QtConcurrent::FunctionWrapper1<bool, std::shared_ptr<AbstractClipJob> const&> >::runIteration (result=0x5db6aa68, it=..., this=0x73440ac0) at C:/CraftRoot/include/qt5/QtConcurrent/qtconcurrentmapkernel.h:175 #12 QtConcurrent::MappedEachKernel<__gnu_cxx::__normal_iterator<std::shared_ptr<AbstractClipJob> const*, std::vector<std::shared_ptr<AbstractClipJob>, std::allocator<std::shared_ptr<AbstractClipJob> > > >, QtConcurrent::FunctionWrapper1<bool, std::shared_ptr<AbstractClipJob> const&> >::runIterations (this=0x73440ac0, sequenceBeginIterator=..., beginIndex=<optimized out>, endIndex=1, results=0x5db6aa68) at C:/CraftRoot/include/qt5/QtConcurrent/qtconcurrentmapkernel.h:185 #13 0x0000000000945caf in virtual thunk to QtConcurrent::IterateKernel<__gnu_cxx::__normal_iterator<std::shared_ptr<AbstractClipJob> const*, std::vector<std::shared_ptr<AbstractClipJob>, std::allocator<std::shared_ptr<AbstractClipJob> > > >, bool>::threadFunction() () at C:/CraftRoot/mingw64/lib/gcc/x86_64-w64-mingw32/8.1.0/include/c++/bits/stl_iterator.h:801 #14 0x000000006a2c1a15 in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\Qt5Concurrent.dll #15 0x000000006889da8c in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\Qt5Core.dll #16 0x0000000068898f5a in ?? () from C:\CraftRoot\kdenlive-20.08.3_standalone\bin\Qt5Core.dll #17 0x00007ff95a6e7c24 in KERNEL32!BaseThreadInitThunk () from C:\Windows\System32\kernel32.dll #18 0x00007ff95c12d4d1 in ntdll!RtlUserThreadStart () from C:\Windows\SYSTEM32\ntdll.dll #19 0x0000000000000000 in ?? () Backtrace stopped: previous frame inner to this frame (corrupt stack?) I used the "The project file contains missing clips or files" dialog to remove clips and try and isolate which file was causing the problem. I eventually narrowed it down to one file, the one GX mkv video file. When I dragged that single file into the project bin of a brand new Kdenlive 20.08.3 project, it crashed shortly afterwards. This happens reliably every time. Which is very strange, because this doesn't happen in 19.08.1. Created attachment 133701 [details]
An mkv file with 33 streams
Okay, I think I managed to get a minimal working example of a video file that can reproduce the crash
I used ffprobe on my video file that was causing the crash and noticed it had an abnormally high number of streams (33, mostly TrueType fonts) compared to my other video files that didn't cause crashes.
So I tried creating a video file with a similar number of streams using this command:
$ ffmpeg -i chirp.mp4 -f srt -i subs.srt -map 0:0 -map 0:1 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -map 1:0 -c:v copy -c:a copy -c:s srt out.mkv
And if I try to load this mkv file into a new project, it crashes too!
Steps to reproduce:
1. Open a new Kdenlive project
2. Drag the attached mkv file into the project bin
3. Kdenlive will crash
Created attachment 133702 [details]
Bug_426640_Crashlog
Super, I didn't manage to run gdb! So you just put kdenlive.exe.sym into the bin folder of 20.08.3, change to that directory and run gdb?
I can reproduce the crash. Out.mkv contains 33 text streams. Attached the console crashlog.
> So you just put kdenlive.exe.sym into the bin folder of 20.08.3, change to that directory and run gdb?
Yeah, pretty much.
I have no idea why gdb seems to work well with the official release kdenlive.exe but not the CraftRoot kdenlive.exe though
Thanks for your investigations. The video file triggers a bug in MLT that doesn't correctly handle files with more than 32 streams. I will send a patch for MLT in the next days and will try to implement a workaround in Kdenlive. WIll keep you informed. This is fixed with MLT commit https://github.com/mltframework/mlt/commit/378e3c78a37592b71b1a04a1734505ce9324d027. Please try with the daily build. I tried it with Windows nightly build #606 and can confirm that the project opens fine now :D |