Bug 364318 - git master: regression: effect is totally "ineffective" (with regression project)
Summary: git master: regression: effect is totally "ineffective" (with regression proj...
Status: RESOLVED FIXED
Alias: None
Product: kdenlive
Classification: Applications
Component: Effects & Transitions (show other bugs)
Version: unspecified
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Vincent PINON
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-06-14 14:50 UTC by Wegwerf
Modified: 2016-10-09 17:15 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
regression project where blur effect doesn't work (10.89 KB, application/xml)
2016-06-14 14:51 UTC, Wegwerf
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Wegwerf 2016-06-14 14:50:07 UTC
While working on a recent project I noticed that some effect (blur effect, but also others) gets totally ignored by Kdenlive in a certain project setup. I managed to reduce it and am attaching the regression project to this bug report. When you open this project you should notice that the blur effect on the png clip on the screencast track doesn't get blurred. It happens only in this combination; trying to substitute with a title clip results in proper operation.

On another note, trying to work with keyframes for the blur effect currently also brings up a lot of problems, such as the keyframe position not starting at 0:0:0:0, and the keyframe end position often confined to some other clip end as it seems.

Reproducible: Always
Comment 1 Wegwerf 2016-06-14 14:51:20 UTC
Created attachment 99497 [details]
regression project where blur effect doesn't work
Comment 2 Wegwerf 2016-06-14 18:36:03 UTC
While I tried to work around this bug I found out...

1. it seems to affect png clips -- but not exactly sure.
2. when I drag the png clip again onto the timeline and then apply the effect, the effect works.
3. keyframes are not correctly working for effects, so it's almost impossible to set more than a keyframe at the beginning and at the end. When doing so, please notice the odd timecode slider setting after adding the second keyframe. If you play around and add more keyframes, the slider as well as the timecode input field usually reflect the previous keyframe, but not the one currently selected in the keyframe table of the effect.
Comment 3 Wegwerf 2016-09-18 15:45:47 UTC
I've did some more tests: when I delete both the timeline clip and its effect, next drop the bin clip into the timeline again, and then add the blur effect, the difference of the project XML document boils down to this ... remember that I did drop the offending clip into the exact place in the timeline!

regression project:
<entry out="232" producer="1" in="83">
  <property name="Amount">83=0;93=0,641;220=0,641;232=0</property>

recreated:
<entry out="149" producer="1" in="0">
  <property name="Amount">0=0;10=0,7;144=0,7;149=0</property>

So, could this mean that the keyframes of the effect never get correctly regenerated?
Comment 4 Wegwerf 2016-10-08 16:36:40 UTC
This issue is still present with recent git master: loading the example project and playing the center clip in the timeline, the first ramp-up of blur works correctly. But the ramp-down at the end doesn't work at all. All attempts at editing, changing, removing, and readding the corresponding keyframes does not yield any sensible result, as far as the final keyframe is concerned. The last but one keyframe behaves correctly, though.
Comment 5 Wegwerf 2016-10-08 21:03:30 UTC
More testing reveals that resizing the clip helps, but only if I resize the clip a lot by dragging the end of the clip, then resize it back to its original size. Next, some "careful research" shows that I need to resize the image clip beyond its current length. When loading, you can see the length of the title clip to be 00:00:12:05. The timeline clip instance starts at position 00:00:03:08 and has a length of 00:00:06:00, giving a total(!) length=end of 00:00:09:08. Now, resize the clip in the timeline only one or two seconds: doesn't change the incorrect blurring.

Next, resize beyond a right end of 00:00:12:05, that is, a timeline clip length of around 00:00:12:08. Now the animation gets correctly updated, so scrubbing the timeline shows the proper blur ramp-down.
Comment 6 Wegwerf 2016-10-08 21:04:58 UTC
This is with the recent last keyframe fix (commit https://quickgit.kde.org/?p=kdenlive.git&a=commit&h=2c7f4bca78e8b65b339ebdc585637e4c256e3cbe) in place, this does not fix this issue.
Comment 7 Jean-Baptiste Mardelle 2016-10-09 13:06:09 UTC
Ok, I finally found the problem. Image and title clips duration is not correctly updated when expanding a clip in timeline. So if you look at your project  xml, the master title producer has an out point of 149:

<producer id="1" title="Anonymous Submission" out="149" in="0">

But when used in timeline we have this:

 <entry out="232" producer="1" in="83">

So when in timeline we have an out of 232, but since master producer has an out of 149, all keyframes after 149 were discarded. I have to change the way we update duration of title/images when we resize them to use the same mechanism as color clips that store default duration in a property called: "kdenlive:duration" and then update their length and out point on each timeline resize.
Working on it...
Comment 8 Jean-Baptiste Mardelle 2016-10-09 13:20:55 UTC
Git commit 9621c8f5a89d746341edc1c66fb4d452003c8b39 by Jean-Baptiste Mardelle.
Committed on 09/10/2016 at 13:20.
Pushed by mardelle into branch 'Applications/16.08'.

Fix broken keyframes on image/title clips

M  +9    -0    src/mltcontroller/clipcontroller.cpp

http://commits.kde.org/kdenlive/9621c8f5a89d746341edc1c66fb4d452003c8b39
Comment 9 Wegwerf 2016-10-09 17:15:23 UTC
Many thanks for fixing this, Jean-Baptiste! It great to see a fix that even works on existing projects, fixing them.