Version 19+ crashes when adding default composition between video tracks
Steps to Reproduce:
- Use MLT 6.18.0
- Compile kdenlive from source at SHA1 526314a6 (tag v19.12.2)
- Open the attached archived kdenlive project kdenlive-crash-example.tar.gz
- Click on the bottom left corner of the image block (example2.png) in the upper video track, to attempt to add the default composition (Wipe)
Note: Also attempted with MLT 6.20 and source at 8af30d4e (v20.03.70)
Actual Behaviour
- kdenlive crashes with the following printed to stdout/stderr:
Inserting compo track 10 pos 74 length 1208
XML parsing of "wipe" . found : 6
= = SET EFFECT PARAM: "luma" = "linear_x.pgm"
= = SET EFFECT PARAM: "geometry" = "0%/0%:100%x100%:0;-1=0%/0%:100%x100%:100"
WARNING: Unknown type : "fixed"
WARNING: Unknown type : "fixed"
END parsing of "wipe" . Number of found parameters 4
Requesting composition move 10 , 74 ( 3 / 8
qml: loaded composition: 74 , ID: 12 , index: 0
-------------- ATRACK ----------------
3 = 10
Planting composition 12 in 3 / 4 IN = 74 OUT = 74 ret= 0
trying to move 10 pos 74 success true
compo request resize to 1208 , ACTUAL SZ: 1 , true -1207
compo resize 12 74 - 1281 / 74 - 74
// CURRENT COMPOSITIONS ----
std::map(std::pair(74,12))
--------------
compo resize 12 74 - 74 / 74 - 1281
// CURRENT COMPOSITIONS ----
std::map(std::pair(74,12))
--------------
trying to resize 12 length 1208 success true
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
===================================================== Requested rowCount QModelIndex(-1,-1,0x0,QObject(0x0)) 4
KCrash: Application 'kdenlive' crashing...
KCrash: Attempting to start /usr/lib64/libexec/drkonqi from kdeinit
sock_file=/var/run/user/1000/kdeinit5__0 [49/8160]
QSocketNotifier: Invalid socket 12 and type 'Read', disabling...
QSocketNotifier: Invalid socket 32 and type 'Read', disabling...
radeon: Failed to allocate a buffer:
radeon: size : 4096 bytes
radeon: alignment : 4096 bytes
radeon: domains : 2
radeon: flags : 0
radeon: Failed to allocate a buffer:
radeon: size : 4096 bytes
radeon: alignment : 4096 bytes
radeon: domains : 2
radeon: flags : 0
radeon: The kernel rejected CS, see dmesg for more information (-9).
radeon: Failed to allocate a buffer:
radeon: size : 8749056 bytes
radeon: alignment : 4096 bytes
radeon: domains : 2
radeon: flags : 4
radeon: Failed to allocate a buffer:
radeon: size : 8749056 bytes
radeon: alignment : 4096 bytes
radeon: domains : 2
radeon: flags : 4
EE ../mesa-19.2.8/src/gallium/drivers/r600/r600_texture.c:1442 r600_texture_transfer_map - failed to create temporary texture to hold untiled copy
radeon: Failed to allocate a buffer:
radeon: size : 4096 bytes
radeon: alignment : 4096 bytes
radeon: domains : 2
radeon: flags : 0
radeon: Failed to allocate a buffer:
radeon: size : 4096 bytes
radeon: alignment : 4096 bytes
radeon: domains : 2
radeon: flags : 0
radeon: The kernel rejected CS, see dmesg for more information (-9).
ALSA write failed (unrecoverable): Input/output error
Qt: Session management error: Could not open network socket
zsh: suspended (signal) build/bin/kdenlive
Expected Behaviour
- kdenlive does not crash or freeze
- the default composition is added
Notes
- The project shows one track with a PNG with alpha transparency in it overlaying another track having another image.
- Observe that the playback head is situated in the middle of the project, such that the Project Monitor is rendering the images overlaid, with the transparency rendering correctly.
- If the playback line is moved such that the PNG is not rendered (e.g. move it to the beginning of the project, timestamp 0:00), then clicking the corner successfully adds the Wipe composition
- Putting the playback line back into the middle of the project reinstates the crash conditions.
Other library versions of potential interest:
- ffmpeg 4.1.3
- frei0r-plugins 1.6.1
- libv4l 1.16.6
- qtcore 5.13.2
- mesa 19.2.8
I advise not using the "recover files" crash recovery feature of kdenlive in this case, so that you're not altering the project files in ways that would impact the debugging and investigation.