Insert, extract, overwrite and lift with 3 points edit
Open, Needs TriagePublic


These feature must be improved if we want to speed up the workflow mostly by using the keyboard. At today the insert and overwrite operations are very rigid and not too useful.

Related Objects

Mentioned In
R158:48d8e21a9687: Add black frame at end of project, allowing to properly insert a zone at…
R158:2cfa9e644337: Set default target tracks to Audio1 and Video1 tracks, save value in document…
R158:147858b7dba0: Fix insert at project's end, and fix compilation Ref: T1961
R158:8804b85a419d: Do not allow audio clips in video track on split mode Ref: T1961
R158:2daad93b89ee: Click on track Led to toggle track target Ref: T1961
R158:01ca98e45679: Fix several issues when inserting clip in split mode, add 'G' as default…
R158:187acbd603a0: Do not split audio clips Ref: T1961
R158:9dd4a5298c6f: Add button to toggle use of timeline zone in insert editing (next to…
R158:4d06ce302b8c: Fix Insert adding audio clip when no audio target is set Fix Non audio clips…
R158:cdaef0817296: Return expands Bin folders Ref: T1961
R158:8bb7b80e229a: When performing Insert with no target track, simply insert blank space Ref…
R158:fa8a72604d21: Add Lock all tracks but current Ref: T1961
R158:9e26a1e97447: When in split audio mode, use target tracks (Shift+T) Ref: T1961
R158:a88d8769d766: Fix audio split on Insert/Overwrite Ref: T1961
R158:8f5f90292bf9: Fix Lift/Extract broken by recent change Ref: T1961
R158:470dfee4a976: 3 point edit Insert/Overwrite Ref: T1961
R158:3e636e7e5d7b: Better integration of split audio when adding clip in timeline (1 step undo)…
R158:a043dbf11522: Add shortcut for locking current track, trash ripple delete Ref: T1961
R158:754f94abaad8: Fix again extract with group in locked track Ref: T1961
R158:9f630e16fbb3: Fix Extract corrupting clip keyframes Ref: T1961
R158:cf23802e536d: Fix Extract moving locked clips Ref: T1961
R158:f837e987ae4b: Extract and Lift now also operate on transitions Ref: T1961
R158:1526861788a8: Fix Extract corruption found by thediveo Ref: T1961
R158:f96892b216c1: Lift and Extract now operate on all non-locked tracks Ref: T1961
Mentioned Here
T1953: Advanced trim tools and trim window.
There are a very large number of changes, so older changes are hidden. Show Older Changes

Insert, Overwrite, Lift and Extract are now implemented in git master. They only work on the selected track, and will fail if a grouped clip is later on the track.
Theses options are available from the timeline menu (under Insert and Remove).
Some feedback is welcome.

Jean-Baptiste, do you intend to support moving groups later? I regularly have trailing titles clips grouped together with a background clip, any my understanding is that these would either block 3-point-insert or get torn apart as I would need to leve them ungrouped?

Yes, but we need to decide how to operate when there is a group across several tracks in the case of Insert and Extract.
By default, should we move all unlocked tracks instead of just the active one ?

I would think that we should move the unlocked tracks. Maybe Massimo can say more on the expected behavior; I think I remember him writing about armed tracks, but that may be not related to groups but instead to moving all armed tracks without the need for groups. In this case I could imagine a fith track icon, a chain/link icon signalling that these tracks will move together for insert, delete, lift, ...

massimostella added a comment.EditedApr 23 2016, 7:20 PM

First of all I'm glad to see how fast JB is implementing ideas we have.
I'll try to be easy, brief and useful.
It's important to divide the action in two groups:

  1. Actions which regard the timeline: Extract and Lift
  2. Actions which regard the clip monitor: Insert and Overwrite

The first group ( Extract and Lift) is almost implemented. I suggest to perform the action on all the tracks so you can lock what you don't want to change. If some grouped audio and video clips loose their sync (it's rare to make mistakes by performing these actions but it can happen) if it's not too complicate to code, I suggest to show the number of the shifted frames on the audio clip as it happens in all video editing software.

The second group (Insert and Overwrite) can work on all not locked tracks but needs a target.
For eg: when we perform an insert action we split all the not locked tracks and we move all them of the same number of frames but we fill with the clip only the target track.
When we perform an overwrite action we fill with a blank space all the not locked tracks of the same number of frames and we overwrite the clip only in the target track.

This can work but we have still have a couple of problems:

We can't perform a 3 point edit based on a selection of time made on the timeline (and this is very very very useful when you edit news, documentaries and music videos - you select on the timeline a lenght based on the audio track (some music beats, a part of a speech, etc) and you need to fill it starting from the IN point you setted on the clip you loaded in the clip monitor.
Other softwares have 2 way to select areas on the timeline: one is the range, the area you use for rendering actions (as it is now on Kdenlive), the other one are the standard IN OUT points (similar o the one you use inside the clip monitor) you use for performing editing actions.
So when you perform an Insert/Overwrite action you can indicate the lenght on the timeline or, if you remove the IN and OUT points, you can use the lenght you setted in the clip monitor and perform the action starting from the point the edit line is located.

The second problem is related to the fact that you have not a target for the audio. As I wrote in the handbook I guess that embedded audio inside video tracks creates more problems than the one it is supposed to fix.
I guess that is for this reason that, except for the MLT based FLOSS video editing software, I never found a professional software which use this approach. In the timeline settings I turned on the feature for always separating the audio but, when I performed an Insert or an Overwrite action, Kdenlive didn't work on the audio in the timeline and it puts the new audio track in the first free track.

A final suggestion:
once all these features will be completely implemented I guess that can be good for usability to put 2 buttons for Insert and Overwrite on the clip monitor and the the ones for Extract and Lift on the timeline monitor even if probably the majority will use the keyboard shortcuts

thediveo added a comment.EditedApr 24 2016, 4:40 PM

Would it be possible to also add a variant of the extract operation in form of extract-to-current-clip-end? Or would that later be covered by a ripple edit?

The rationale for my feature request here is that this is an operation I need a lot in my screencasting projects, yet the simple extract would require me to first move the timeline head, next set the timeline in point, then move the playhead to the end of this clip, set the out point, then execute the extract. With an extract to current clip end this would be easier, only two clicks instead of 5 operations before the extract can be executed. This extract variant could even be mapped to a mouse operation on the clip, see below.

So, the extract to clip end would work with only...

  1. the timeline cursor specifying the start of the extract region, and
  2. with the currently selected clip specifying the end of the extract region.

This operation could even be carried out using the mouse by dragging the clip end while holding a modifier key, such as Ctrl. When using the mouse, then range should be limited to this clip only, so the extract would cover only the currently selected clip -- which probably should be sufficient.

Generally the action you're speaking about is performed by using the ripple trimming functions.
By using this method you can achieve the risult you talked about in just one operation.
Advanced trimming functions is the feature ideas T1953.

Massimostella, thank you very much for your explanation! So I will need to wait for T1953.

I have now modified Lift and Extract to operate on all non locked tracks. In case a group has clips in locked and non locked tracks, it breaks the group and performs operation.

JB compliments for the great and very fast job, as usual. :-)
I found some issue with undo function after I performed both Extract and Lift actions on a big complex project. Actually this project was created by the version 0.9 of Kdenlive so maybe these bugs depend on this.
I'll do more tests asap.

I thought about how to improve the Insert/Overwrite functions.
I guess that both must be based on the area selected on the timeline instead of the edit line position.
For 3 points edit we can just do it:

  1. If the selected area on the timeline is longer than the one you selected in the clip monitor you'll insert/overwrite only the portion you selected in the clip monitor. (So you have just set the IN point on the timeline)
  2. If the selected area on the timeline is shorter than the one you selected in the clip monitor you'll perform the action only in the area you selected on the timeline. (So you have just set the IN point in the clip monitor)

If this approach it's not too complicate to implement it could work.
So we avoid the problem to have rendering area selection (the so called work area bar) and IN OUT point on the timeline as different objects as other software have.

For which concern the target I though that, untill there is not an audio target feature, Kdenlive can work this way:

  1. If you set your target on one audio track you'll perform the action on all unlocked tracks but you put the new clip only as audio in the track you selected as target.
  2. If you set your target on a video track but you lock all the audio tracks you'll just insert the video in the target video track and you'll perform the action on all unlocked video track.
  3. If you work with the embedded audio inside the video you perform the action on all unlocked tracks and you'll put the video/audio clip on the target track.

4.If you work with always separate audio video feature turned on, it should be better to have enabled also the audio track target but, as Kdenlive at today it's not working this way, I think that to insert the audio on the first unlocked audio track could be a reasonable solution.

Just for complete my opinions about issues that come with audio embedded in the video track I made a list of all major problems we have through this approach:

  1. Missing audio target while you are performing Insert/Overwrite actions.
  2. Timeline check issues when you have big projects with several audio and video tracks. (for eg 6 video tracks and 6 audio tracks) if you have to find some problem you have to check 12 tracks instead of just 6.
  3. If/when in future we'll have the audio cross fade transition on a single track will we be able to use it together with video transitions on a single track?

Today if you don't want to separate audio from video when you perform one audio cross dissolve you have to use 2 video tracks and sometime when you have graphics, titles and animation it becomes too complex.

  1. To create audio splits you have anyway to put the audio in one other track than video.
  2. When/if we'll implement the audio mixer we'll find all the video tracks even if they will not contain any audio information.
  3. When you dissolve a video with embedded audio inside you dissolve audio too.

I think that when you select the automatic audio/video separation in the project settings the option to put audio clips on the video tracks must be disable .

Just one more thought:
I used the new extract/lift feature for put audio out of sync. I have to say that a reference for this situation is pretty important. of course an indication is useful for tracks which were grouped before you perform the operation and that are gone out of sync after it. Probably a change in color could be enough even if I remember one time when I was in hurry because we were in late in delivery for broadcasting and in one hour lenght project on AVID one audio track went out of sync of around 3500 frames (140 seconds). The time indication was very useful for understanding where the problem was and for fixing it quickly in a couple of actions.

I see corruption of the undo stack too. Also, transitions seem not to be handled at all, so when you extract a region that contains transitions the transitions don't match the intended outcome.

Example extract regression Kdenlive project:

-- open this project and you should see three clips on the top video track. Below is a track with only a white clip, spanning all three clips above it. Notice the in and out points in the timeline span from inside clip#1 to clip#3.

Now do Timeline>Removal>Extract Timeline Zone. The timeline now is messed up: Clip#1 and #2 are gone while Clip #3 has been shortened as expected, instead of a shortened Clip#1 and Clip #3 and #2 removed.

Next, try an undo: clip#1 is not correctly restored.

In my configuration after the update Extract and Lift work perfectly.
No issues even on transitions and undo function restores the timeline exactly as it was before.
Insert and overwrite are still as they were before: they don't act on all tracks but just on the target and you can't select the area on the timeline where to work but you can just do it starting from the point the edit line is placed as it was in older version of the program.
I hope suggestions I wrote yesterday create some discussion about how to arrange this functions to make them improved and more useful.

Update on Extract Lift:
In my configuration when an audio and a video clip are grouped (I grouped them from the right click menu) if I lock one the track (the video or the audio) which contains one of the grouped element and I perform the Extract action this is applied also on the grouped clip on the locked track. The rest of the track, as it's locked, doesn't change.
If I perform the Lift action everything is ok and I have not this issue.

Update on Insert Overwrite:
I always keep the audio video separation turned on in the project settings. When I perform one of these actions the undo not always works properly and I have these issues:
I have to perform the undo action 2 times for restoring the timeline. After the first undo Kdenlive removes the audio from the audio track and embeds it inside the video clip. Then, when you perform the second undo, it removes the video clip and it restore the timeline. Sometimes Kdenlive is not able to restore the situation as it was even if I perform the 2 actions.
Other issues are:

  1. I have a timeline with 5 video and 3 audio tracks. One of the audio track is empty where I want to perform my action. I set my target on a video track and I lock the empty audio track because I don't need the audio track inside the video clip. After I performed the action Kdenlive puts the video clip with audio embedded on the target track.
  2. If I set the target on a video or audio track but I lock it Kdenlive puts the clip (video with embedded audio inside) on the locked target. If the target is a locked video track and I have a free unlocked audio track it ignores it and it puts the video with embedded audio clip in the locked target. (I remind you I set the audio video separation in the project settings)
  3. If I set the target on a audio track Kdenlive puts the clip (video with embedded audio inside) on the target not just the audio.

One thing I still notice: when a transition gets cuts as the region gets extracted, it gets correctly broken into the remaining pieces. However, the keyframes doesn't seem to get updated as necessary?

BTW, the old ripple delete (intended to work on timeline region) is broken ... and probably not required anymore since we now have extract? See also bug report

mardelle added a comment.EditedApr 27 2016, 8:11 PM

Ok, I still need to take care of transition keyframes, and I think the Lift and Extract features will be ready. I still have a few related questions for you though:

Track locking and groups:
What do you think should happen if I lock a track containing a clip that is grouped with another clip on another track ?
Currently, Kdenlive's behavior is not really reliable:

  • locking the track locks all clips in the goup in all tracks. But when saving and re-opening the project, group containing locked items are lost.
  • Using Extract, if there is a locked group, the group is destroyed and its clips that are not in a locked track are moved.

I cannot decide what is the most coherent behavior when mixing all these 3 things: locked tracks, groups and extract function.
So if any of you has a proposal...
Another question raised by Jesse is the default shortcut for Extract function. Currently "X" is assigned to razor tool. Do you think we need a default shortcut for Extract, and if yes which one ?

Once these questions get sorted out, I will start working on Insert/Overwrite

Ok. My opinion is:
if Kdenlive has to be a professional software we must think the way a professional video editor thinks and to which tools he really needs.
The first thing a professional video editor has to do is to keep his job well organized and he doesn't let things going random, mostly on big and long projects.
So, as he organizes all the bins in the project window, he gives to each track in the timeline a precise function (for this reason I always complain about the audio embedded inside the video clips in the audio tracks and the lack of the audio target track)

Just for eg: I'm working on a documentary. I'll have a main video track on the track 1 where I'l put my interviews and the major part of my materials. Then I'll have a upper track (track 2) with coverage images. Then another upper track (track3) with graphics, captions and titles.
On the audio side I'll probably have, on the audio track 1, the audio of the interview (if we recorded it with 2 voices we'll use audio track 1 and 2) and the speech. On the audio track 2 (or 3) the live recorded sounds effects and on the track 3 (or 4) the music track.
In this situation if I want to group some clips together probably I'll group a finished block of interviews with coverage images.
If I want to insert or remove some material from the timeline probably I'll just lock the music track.
So my grouped interview will not be broken.
If I decide to lock just the audio track 1 I'll loose all my sync with all the interviews (and this is no sense)
If I'll decide to lock the video track 4 I'll loose the sync with all my captions. (and this is no sense again)
So if I'll decide to lock some track and perform an action which will break groups maybe I need these groups no more.
My responsability as editor is to lock the right tracks. If I'll work in a correct way I'll never have problems. And achieve it it's part of my job skills. (In AVID, audio and video are always independent but if you know how to use the program even if you go very fast you very rarely you loose their sync)

So: I don't think that if I lock one track all the clips of a group in all tracks must be locked.
The fact that when you perform one Extract action and there is a locked group, the group is destroyed and its clip are not in a locked track are moved it's a perfect behaviour.
Always for this same reason I guess it's important to have frames references for the syncronized audio and video clips which loose their sync.
What makes a video editing system fast and smooth is its ductility not it's rigidity.

Sorry for all these words but I hope my suggestion is clear: Extract function work on all tracks except the one you lock. If you by performing the action break a group probably you made some mistakes when you organized your work so you cannot use the extract function (and you'll have to use a manual way or you'll fix the organization of you project by moving the clips which create the problem on the right tracks) or the group is no more useful.

For which concern shortcuts attribution X is a very common key for this function. We can use a different key for me it's not a problem. I guess that everybody can customize it.
In the major software with the X you can perform what in Kdenlive is the Shit+R or the Extract function.
Maybe we can just use the Shift+X shortcut for Kdenlive. ;)

I checked the program after the last update (but I didn't check the way you managed the keyframes) and for me now the Extract feature works as it is supposed to be.
I just think that when we have and audio and video clips which were grouped before to perform the action the frame shift indication (as I shown you for the other programs in the links I pasted in one of my previous post) could be useful. Of course I don't know if this is simple or complicate to code.
Even if this is not the place where to remark it I found a bug in my installation: if I modify a project when I shutdown Kdenlive it doesn't ask me what I want to do and it just closes but it doesn't save the new version of the project.
I hope as always to be useful.
Let me know (if you like) how do you want to manage the Insert/Overwrite features. :)

Today I was setting some shortcuts on Kdenlive trying to figure out which is the best way for working without touching the mouse.
The first thing I though is that we have to privilege the keys for working without mouse and then keys combination for selecting tools we will use by the mouse. (if you use the mouse the shorcut for choosing a tool we'll use by the mouse can be a comfort but probably you'll use to select it the button on the GUI by the mouse itself)
The other thing I found is that we have not the chance to set a key for locking tracks on the timeline.
I must admit that the up an down arrow keys for selecting the target track is an excellent way. If we add a key for turning on and off the lock function for the track the workflow could be already very fast.
Eg: you select by the T key the monitor you want to use. When you are in the clip monitor you can choose a clip from the project by navigating it by up and down arrows and then you set the portion of the clip you want to use by using I and O keys. At that point you press T and you move to the timeline. You set where to perform the action by setting the In and Out points or by moving the edit line, you lock or unlock the tracks you need to lock or unlock by moving from one track to another by using the up and down arrow keys and then you left the track selection on the target track. At that point you perform the insert/overwrite action.

I apologize for not telling my point of view about trashing the ripple delete function when I read that someone proposed it.
If ripple delete feature doesn't create issues in coding other functions I don't think we have to trash it for these reasons:

  1. Exists people that use Kdenlive who already takes habit to use it.
  2. It's a feature which exists in Premier Pro and FCP (though not in AVID)
  3. If you don't want to edit by using keyboard but you are not in rush and you use just the mouse. ripple delete function can be very useful.
  4. For removing empty space using the mouse by the extract function you need to set the IN and OUT points on the timeline and then perform the action. By the ripple delete feature you need just a mouse right button click.
  5. If Kdenlive has more features, giving to users the chance to use different and personal approachs, makes the application richer.

I hope it's not to late and that to reintroduce it you just need the time of a copy and paste.

mardelle added a comment.EditedApr 29 2016, 10:51 PM


The Ripple Delete that I just removed is the one included in Kdenlive 16.04. It was working/doing exactly the same operation as the new Extract but with a few bugs so I don't think we lost anything. I will take care of advanced editing after this current insert/overwrite/lift/extract task is finished.

I have now implemented insert/overwrite as described in your previous comment (using the shorter length between clip and project zone. Can you test and tell me if you think it works correctly ? Have not made much tests yet.

Also I have introduced 'L' as a shortcut to lock/unlock current track (Timeline menu > Switch track lock)

thediveo added a comment.EditedApr 30 2016, 9:02 AM

Massimo, as Jean-Baptiste already explained, the old ripple delete was a broken and inferior version of the newly landed extract. I cross-checked before proposing to remove broken code. In fact, old ripple delete never worked with the mouse, you may have mixed up this with the scissors or something like that. The old ripple delete was solely working on the timeline region.

As far as I understand, there will be some version of ripple delete getting added also as part of advanced editing functions. I myself are waiting for a ripple delete where I don't need to set the region but just can say: ripple delete from timeline cursor to end of selected clip, thus avoiding more complex movement in order to set the region in/out points explicitly. This also seems to be what you are hinting at in your item #4. It would probably good to also have the twin operation for ripple delete from start of clip to timeline cursor position.

Hopefully these advanced ripple deletes will come soon, as in my projects I could benefit from them a lot when I need to get my stop-and-go illustrations synced to the voice over audio... ;)

massimostella added a comment.EditedApr 30 2016, 1:00 PM

Hi everybody. :)
I tested the latest version:

  1. Lift/Extract works no more. (after I set the area when I perform the action nothing happens)
  2. If I lock a track and I set it as target Kdenlive ignore the block and use the target track as it is unlocked. I suggest that if a track is locked is locked, so you can't use it even if it's the target.
  3. Insert/Extract inside the selected area based on shorter or longer selection in my opinion works pretty well. it's different from other professional video editor applications but it's as fast as the 3 point edit and it's simplier because we have just one only selection tool for the timeline areas (as you know other softwares use 2 tools for selecting: In Out points on the timeline, as it's for the clips, and the area selection tool)
  4. Even if I set in my Kedenlive settings that I want always audio and video separate when I perform an Insert/Overwrtie action Kdenlive embeds the audio inside the video.

I'd like to solve this latest "issue" by creating 2 modalities of work. Even if I don't like audio embedded in video (because I think it creates problems in timeline organization) I'm not for removing this approach to which I'm sure a lot of Kdenlive users took already habit to.
My suggestions are:

  1. When you shift to the always separate audio and video mode (in the program settings but also by the button on the right bottom bar in the Kedenlive GUI) you can't put audio on the video tracks, Kdenlive doesn't allow you to do it.
  2. You have also the audio target track.
  3. Target tracks (audio and video) can be selected, as usual, but also enabled or disabled (target on/off feature). This will give us all the options other applications have but in a different and maybe easier way.

About ripple edit it's ok. If it was broken and it works just on the selected area we need it no more.
In Premiere pro and FCP it work this way:
You right click on an empty space between 2 clips and it collapse them if no linked audio (or video, if you perform the action on and audio track) has a shorter gap with the adiacent clip.
So edit line reference or other references are not used.
This tool when you use the mouse it's pratical and fast (and it's the opposite version to "add space") because you just need to right click one time but a lot of programs have not this feature. I just would like we preserve Kdenlive users habits and then manage the Kdenlive approach to improve it and allow the program to do what other applications are able to do even in a different, if it's possible even better, way.

The "track lock/unlock" action reminds me that I often need its cousin, the "lock all tracks except the current track" when working on slightly involved multi-track compositing.

After the new fixes my opinions are:
I have to grow the track dimension to 46 otherwise I can't see timeline head icons
Lift/Extract features are working very good. We always just miss a reference when and audio and video sync is broken. If the timeline is well organized generally out of sync are rare but on a very long project it's better to know if something happened where it happened. Maybe after a audio video sync is broken we can just change the color (for eg red) to the clip which were in sync. The frames indication could be useful but if it too complex to code we can just use a different way to remark the out of sync.

Even if we have finally a separation between audio and video when we perform Insert/Overwrite operation the audio target is fixed on track 1.
The fact that we can't decide the audio target as we do with the video creates these issues:

  1. The only operation you can perform by controlling the audio is to use an audio track as target so you'll have just the audio on the selected track; otherwise if we set a video track as the target we have no control on it
  2. If you want to just insert the video without any audio, if the video clip contains audio, you can't.
  3. You can't lock all the audio track because, I checked it, if you do it we have again the audio embedded in the video track (and this has not to happen in my opinion if you have selected the audio video separation feature). Anyway to lock all the audio tracks for not having the audio on the timeline is something which doesn't work well because you could want to perform the Insert/Overwrite action also on the audio tracks by just moving them or putting an empty space.
  4. Without the option to select where to put the audio, you can't overwite, with the new audio, a track which you need no more or just you can't target the audio on the track you use for a certain kind of material (voice over, interview, music, etc.)

I guess that if you have the option for setting 2 target tracks (one for video and one for audio) and the chance for enable and disable them when you need no audio or video target our Insert/Overwrite features will be complete at 100%
More, if this will be implemented, you'll be able to use a no target situation just for creating an empty space by the keyboard keys instead of to use the add space feature.
The "lock all tracks except the current track" or just "lock all tracks" and "unlock all tracks" features, as suggested by thediveo in his here below post, could be a good idea for a faster workflow if it's not too complicate to code.

I just forget to say that locked tracks which turn to red is a great idea! :)

Ok, we now have target tracks (Timeline > Tracks > Switch Track target, or Shift + T), but only when in split audio mode.
Target tracks have a green Led next to track name, and should behave the way you described it with respect to Insert/Overwrite actions.
I also added a "Un/Lock all but current" action (Shit+Ctrl+L)

Great job! I'm impatient to test it.
If we find a way to create a reference signal for broken audio/video sync for clip which were synced, Insert/Extrac/Lift/Overwrite - 3 point edit feature is closed and it works as good as it's on AVID (which is considered the fastest and best video editing software for the keyboard approach ever). Probably it's even better because Kdenlive timeline head is simplier and easier to understand and you can set it before to perform the operations in less moves.
By the way I remarked 2 things that, even if they are not the most urgent, must be considered:
we need a way, when we are browsing folders in the project monitor by the keyboard, to open and close them by a keyboard shortcut.
I guess it's time to finally implement the Insert Mode, as indicated by the disabled button on the bottom tool bar. It could just perform the same action it's performed by the V shortcut.
As soon as the update will be ready, I'll test the new features I'll send you a feedback.

I just tested the new version. Everything is great.
The idea of use leds with different colors (I found every one of them - yellow, red and green) it's wonderful.
I guess we can pass to another feature and mark this one as complete though the out of sync reference is still something we have to think on how to implement.
Do you have any suggestions about it?

thediveo added a comment.EditedMay 1 2016, 4:25 PM

May I ask for a quick summary how to use insert and overwrite? And what the LEDs are good for? Some impression has been formed already in my head, but as this was an extensive discussion, may I get a summary?

Of course you can.
I'll try to be synthetic and complete.
Of course I guess you already read this:
When we perform an Insert/Overwrite action we have to choose what to insert/overwrite and where to do it.
For answering to the first need we decide that you can insert/overwrite your clip in the clip monitor starting from the IN point you set on the timeline.
For deciding which lenght to insert/overwrite you have these strategies: If you want to Insert/Overwrite a clip zone you selected in the clip monitor, the selected area on the timeline must be longer than the clip zone lenght (you just set the IN point on the timeline and the OUT point can be set at the end of the timeline). If you want to fill a selected area on the timeline, the clip zone selected in the clip monitor must be longer than the area selected on the timeline (you have just to set the IN point of the clip in the clip monitor. Generally if you haven't yet selected any zone of the clip, the OUT point is set on the clip's end frame)
For answering to the second need (where to insert/overwrite) you have these tools: if you want just to insert a video with embedded audio you have just to act as it was before. You have to deselect the audio/video separation feature, then set the target track and lock the tracks you don't want to modify.
If you want to use the audio/video separation feature you have to set both the target tracks for video and audio. So you can do it by moving your track selection bar and press Shift+T shortcut for enabling and disabling the track you want to use as target. If a track is set as target the Led indicator will turn green. If the track is locked the Led will turn Red. If some of the mute options (mute video or mute audio) is turned on the Led will turn yellow.
More, as you asked, by pushing the Shit+Ctrl+L you can "Un/Lock all but current" track.
I hope I was clear. If I was not, just ask me for more details.

Update after a more deep test:
I see that when no audio track is set as target, Kdenlive inserts anyway the audio in the audio track 1.
When no video track and no audio track are selected everything is ok and Kdenlive puts just an empty space on the unlocked tracks.
When all audio tracks are locked, no audio is inserted anywhere but as we already told this is not a practical situation (it can happen that we want to lock all the audio tracks but this has not to happen just for not insert/overwrite an audio source)

Should the timeline menu items read "toggle..." instead of "switch..."? In my humble opinion "switch" doesn't indicate what is going to happen. The Oxford Advanced Learners Dictionary says that switch is usually followd by over, from, or to; or on or off. In contrast, toggle refers to something that takes on opposite positions when invoked repeatedly.

I don't know if you prefer that I open each time official bugs signalations or if we can continue to use this more informal way .
Let me know.
In the new version I didn't found issues in the insert/overwrite feature.
I was happy to see that the ripple delete has came back.
I found that you enabled the insert mode button in the bottom tools bar. :)

If I use the mouse and the insert mode, in my configuration, I have these issues:

  1. when you put a clip in any point of the timeline, except than the starting point, the beginning of the project moves forward of the same lenght of the clip you inserted. If you put the clip at the beginnig of the timeline everything works smooth: you have no project time shift.
  2. If the audio doesn't found any empty track it is embedded in the video even if you are in always separate audio mode. I thought about these 3 possible solutions:
  • a. when it found another audio clip in its automatic target also audio is able to split audio clips. Eg: it can be useful if you want to insert another audio/vdeo clip in the middle of a synced audio/video clip.
  • b. as the latest option but by using as target the enabled audio track target if it's turned on.
  • c. when the audio doesn't find a free space it's not inserted

Update on Insert/Overwite feature:

I think I not well projected how this feature works. I'm sorry.

I like the idea to haven't both In/Out point and work area on the timeline.
I find that the fact that the In/Out point and the work area are the same thing in Kdenlive is very good.
For saving this way I proposed the longer/shorter approach and I found that it works very well when you are editing in the middle of a timeline or if you are working on a long audio track (for eg. a music tune)
I found issues when I'm creating a timeline from scratch or when I'm working at the end of the audio tune.
The problem is that you can't set by keyboard the Out point of the work area beyond the end of the timeline.
This means that each time you are close to the end of the timeline the clip you'll insert/overwrite will be no longer than to match the lenght of the project.
So you can't add new clips to the timeline. (if the clip zone you selected is longer than the work area you'll clip will be trimmed at the work area out point)

After some minutes of a small panic I imagined this solution:

A way for temporary removing the work area, as you can do, in the other applications, with the IN OUT points we find on the timeline. (Eg.: when you open a new project no selected work area exists. During the job you can select a work area by inserting the In Out point and you can remove them when you need it) When no work area is set you insert/overwrite the clip zone you selected in the monitor window.

massimostella added a comment.EditedMay 3 2016, 12:11 AM

I just forgot one thing:
When the work area is not present on the timeline Insert/Overwrite position references are the target tracks and the edit line.

Why not using the timeline cursor instead of the timeline region for these cases? The existing insert/overwrite would be kept as is and there would be another insert/overwrite using only the clip region and the timeline cursor (playhead). Could this be a way to solve the problem of insert/overwrite near the end of the project?

As for bugs: while I'm not the developer I personally prefer bug reports. Bug reports have a clear state, such as open, confirmed, resolved. In contrast, a Phabricatot discussion entry quickly gets lost in the discussion. How do you know there is a bug note and how do you find it later when discussion moves on. Thus, please keep discussion and bug reports separate, I think there's many a good reason why we do have separated bug tracking tools and Phabricator. I wouldn't do bug tracking on G+ or PhraceBook either.

Disabling the "Timeline zone" seems the best idea. Trying to figure out what is the best way to implement it...

Maybe pressing I and O on the same position could set the zone in a disabled mode (or dragging on end past the other). Then you would need set again I or O (or mode/resize zone with mouse) to re-enable it ?

As for bugs, if they are about the feature in progress that we are discussing in a phabricator task, ok put them here, however if you see it is not being picked up or has larger implications than the task, better to open a real bug, this way other users can see it and its status.

Yesterday when I was in my short moment of panic I thought about this solution for disabling the timeline zone:
Put the edit line at the latest frame position on the timeline then set the In and Out point on the same frame.
I don't think that is ok to just set the In Out point on the same frame in another position on the timeline because sometimes you need to select just one frame for inserting or overwriting purpose when you work with images sequences.
In AVID there is a removal feature you can have as a button on the timeline preview monitor and on the clip monitor (actually on AVID the 2 monitors button panel can be customized by adding and removing functions) or you can use, same as you can do on Premiere Pro, the G key shortcut.
When you use this command the In/Out points you setted on the timeline are removed and you have no timeline zone selected.
Of course once you have enabled this enable/disablle timeline zone feature we'll need no more the shorter/longer approach: if the timeline zone is selected you'll fill it. If it's not selected you insert/overwrite the selected clip zone on the target tracks starting from the point where the edit line is.

I don't know if I have to consider this as a bug or just part of the job of improvement of the insert/overwrite feature:
I found that when you are in audio video separate mode if you insert, overwrite or drag an audio clip on the timeline (I done it with a wav and an mp3 files) in a video track we have this results:

  1. If you set as target just one video track (not the audio one) Kdenlive insert one empty video clip (with no audio and no video inside) on the video track
  2. If you set as target both one audio track and a video track selected Kdenlive insert/overwrite the audio clip in the audio track and an empty video clip on the video track.
  3. If we drag in all the mouse mode the audio clip on the video track Kdenlive put the audio clip in an audio track but fill the video track where we dropped the clip with an an empty video clip.

Great job as usual. :)
These are my notes after my daily fast test.

When you are in always audio video separate mode I find these issues:

  1. If you insert an audio clip and you have both the video and audio target turned on Kdenlive inserts/overwrites the audio in the video track instead of in the audio target
  2. If you use the mouse (on all modes) and you lock all the audio tracks, when you insert/overwrite clip which contains audio and video, audio is emebedded into the video
  3. If you set as target just one video track (not the audio one) Kdenlive inserts/overwrites one empty video clip (with no audio and no video inside) on the video track
  4. If you insert a clip with audio and video on an audio track Kdenlive inserts/overwrite a video clip with embedded audio on the audio track instead of just the audio.
  5. I think that when you are in this mode it could be correct to disable the audio mute toggle from video tracks timeline head.

For users who likes to use mouse and keyboard together I think that:

  1. the option to set target tracks by clicking on the led button could be a good idea.
  2. The toggle for enabling and disabling insert/overwrite based on timeline zone is the perfect idea but when you work by keyboard you need to have a key for using it. I set in my system the G key as it is on Premiere pro and on AVID for removing IN/OUT point for inserting/overwriting on the timeline. I guess this could be the correct key.
  3. An "All Tracks lock/unlock" toggle put side to the "Use timeline zone for insert" button could be very useful.
  4. Two buttons on the the monitor windows or on the right click contextual menus for Insert/overwrite (in the clip monitor window) and for Extract/Lift (in the timeline monitor window) as we find in AVID, Premiere and FCP are important.

Today daily fast test result update:

  1. By the mouse (in normal and overwrite modes but not in insert mode where everything works perfect) if you drop or overwrite in the timeline a clip which contains audio and video and all the audio tracks are locked, audio is inserted in the audio target track though it's locked.
  2. Now it's still possible to drop/insert/overwrite by the mouse an audio clip on video tracks in always audio video separate mode. In my opinion it's better to disable this option. If a person choose to work in always separate audio video mode means that he wants to organize the timeline by separating audio from video by using appropriate tracks for each kind of material. Probably he will never put audio on video tracks but if it happens just for a mistake it can create confusion in who is Kdenlive newbies.

It's getting difficult for me to understand what the desired behavior is and whether the current git master behavior is in line with this desired behavior.

I noticed that insert behavior seems to have changed considerably, but I'm not able to deduce the desired behavior from the previous discussion. :( With git master insert seems to always insert at the timeline playhead position, not caring about the timeline in/out points anymore. Is this correct?

Now there is a toggle button which enable/disable timeline zone reference for insert/overwrite actions. When timeline zone is enabled you insert/overwrite by filling its lenght. When it is disabled you put the clip zone on the target tracks starting from the edit line. The export feature always exports the timeline zone no matter if it's enabled or disabled.

So there is no differentiation between...

  • clip zone < timeline zone,
  • clip zone > timeline zone


It's really difficult for others to understand what the insert/overwrite functions are really supposed to do. Yes, people can try. Or others may not be able to really use the new functionality when it's hidden and not obvious. Think about a document writer: what shall s/he document...? :( :( :(

Inserting a shorter clip zone into a longer timeline zone doesn't seem to work anymore. My recent git master Kdenlive is always inserting the complete timeline zone length...???

So I've tested with a video clip where I selected a two seconds zone at the clip's end and inserted this into a fifteen second timeline zone: insert then ends up with inserting a fifteen seconds clip part starting at two seconds off the end. As soon as I grab the end of the inserted clip in the timeline, it correctly snaps back to its maximum length of two seconds.

The fact that the clip ignores its zone and it fills the timeline zone means that the timeline zone bar was active. You can disable/enable it for insert/overwrite purpose by using the G shortcut or the togglr button next to bigger/smaller tracks.
After you disable it Kdeline will insert/overwrite the selected clip zone in the timeline at the edit point position.

Update: the shorter/longer approach was deleted. It has logical flaws. The toggle button is the new approach.

I just fixed the problem when inserting a clip in a timeline zone longer than clip duration described by thediveo as well as the target tracks still active when disabling split audio from settings dialog

Update: the shorter/longer approach was deleted. It has logical flaws. The toggle button is the new approach.

Massimo, this was exactly the answer I was looking for! I suspected from the visible behavior and the discussion but couldn't really be sure on my suspicion. From a newcomer's perspective I wanted to be sure and thus I was asking repeatedly to drill down to the precise expected behavior.

Let's see if I'm now correctly set... there are two ways of inserting some clip content into the timeline, either:

  1. insert the bin clip zone (from in to out) into the timeline starting from the playhead position; this is when use timeline zone is off.
  2. insert bin clip content starting from the clip in point into the timeline zone from in to out; use timeline zone is on.

You understood perfectly. If you read the conversation starting from here: you'll be able to understand why the approach has been modified this way.
Actually I believe that this it's easier than the Shorter/Longer one
Anyway as soon as I'll be able to I'll create some tutorials and documentations about the new features not only for explaining how they work but also for suggesting when and why to use them.

Final considerations about Insert/Overwrite and Extract/Lift features:
This night after I came back home I used the new features just for testing purpose on an interview and I was able to work as fast as by AVID which is considered the faster video editor system. Probably in the time we'll find that there are still some minor tweaks to do on the way Kdenlive works by keyboard (for eg: folder browsing for importing clips) but in general I found it very usable, fast, easy and precise.
I think that we can consider the feature closed and we can move it on the "done" column even if, in my opinion, we can take the 3 days which separate us form the next café for final considerations on it.
For this reason I reflected on some topics I wrote during the work in progress we had and to some I never told about but that came to my mind and I decided to resume them here:

  1. An "All Tracks lock/unlock" toggle put side to the "Use timeline zone for insert" button probably it's not useful as I thought when I ask about it. By the mouse you can lock and unlock tracks in a very fast way one by one. So the keyboard shortcut can be enough. (In Premiere Pro and in FCP I don't think a shortcut or a toggle exists for this function. In AVID you have to drag a square by the mouse on the timeline head for selecting all together the tracks you want to unable/disable, but generally people use or the keyboard or the mouse for toggling tracks one by one)
  2. I wrote that I think that when you are in audio/video split mode it could be correct to disable the audio mute toggle for video tracks in the timeline head. If it's not too compicate to code it, I still believe that this it's a good approach because, when you are in audio/video slpit mode, now you can't insert audio clips in the video tracks. As you don't need anymore to mute the audio on tracks where you can't insert it, I believe that the toggle button on the timeline head can create confusion.
  3. Now when you are in insert mode and you move one clip on the timeline from a position to another you can insert it in the new position but you leave a blank empty space at the position the clip was before. You can collapse this space by using the ripple edit command. This is the way Premiere Pro and FCP work. In Avid when you are in insert mode and you drag a clip from a position to another, the space you left in the timeline where the clip was before, it is automatically removed by collapsing the timeline. It's true that in AVID mouse insert mode you can't left an empty spaces on the timeline but I was just asking to myself which approach is faster and better though I think we can keep things the way they are now.
  4. When you open a new project and you are in audio/video split mode I think that video track 1 and audio track 1 have to be set as target by default.
  5. Sorry if I'm insistent but I have to remark again that two buttons on the the monitor panels for Insert/overwrite (in the clip monitor window) and for Extract/Lift (in the timeline monitor window) as we find in AVID, Premiere and FCP are important.
  6. I'm having the idea that the audio video reference with the frame number for the lost sync are not too easy to code. I thought that maybe it's possible to just add 2 guides with the label, just for eg., "OutOfSync - name of the clip" where the first video clip with broken audio/video sync is located and where its audio is. So you can understand where the issue begin and you can ignore it or correct it, by dragging the part of the timeline which you got out of sync by dragging it back or forward to the right position, and then you can remove the guides.

Re 1. ... same idea over here, keyboard shortcut is alreay enough; we could add a toolbar button as default if really necessary.

Re 2. ... please don't! I have now 20+ Kdenlive projects where I have video clips with disabled audio, and separately processed audio on separate audio tracks (I record audio with video, but later process this audio in audacity and only use a separate audio clip that is in sync). If, by accident, I load such an project with audio/video split enabled it would be a mess. My rationale here is that the audio/video split is a config option that affects placing clips on the timeline. Afterwards, it *must never* affect any placed clips *nor* track states. Your suggestion would break this rule.

Re 5. ... why not creating a new Phabricator item for this?

Well, correctly handling keyframes on transitions may be a reason to keep this item open?

RE.Re 2: Actually I don't know what could already happen now if you turn on the audio/video split mode and you open those old projects. Because already now you can't insert audio clip on video tracks.
Of course nobody asks for delete the standard classical way Kdenlive worked. My first effort is to try to help to create the new feature by modifying Kdenlive less possible and trying to ask to Jean-Baptiste to code less possible too.
The problem here is that if you work in a mode where you can't put audio on video tracks (and I believe that is correct otherwise we can just have unspecified tracks which can contain every kind of material without the need for separating audio from video) why do you need mute toggle for audio on tracks where you can't put audio on it?
The facts that all professional video editing softwares shares materials in two different gender of tracks is that when you have a very big project (in my life I worked on projects which was longer than 90 mins) you have to know where to watch for finding what you are looking for. If you have a project with 6 audio tracks and 6 video tracks, just for eg, where some audio is in the audio trakcs, other audio is embedded in some video clip in the video tracks, you can get an headache for finding some mistake you unfortunately could make in managing the timeline.
I just guess that we can keep the way Kdenlive has always worked side to a new mode where audio and video are splitted for real.
I'm just trying to help to prepare the future of Kdenlive as one of the best professional video editing program ever which people has to choose not only because it's in GPL license but because it's the best choice they have.

Daily update after the usual fast test:

I found that we have a small issue.
When you move the edit line to the latest frame of a clip, the edit line stops inside the clip.
This means that if you insert a clip at the end of another clip in the timeline you'll split and move the latest frame of the clip, which was already in the timeline, at the end of the new inserted clip.
In other softwares the latest frame of the a clip on the timeline or of the timeline itself is considered the first of the following clip or the first empty frame on the timeline end, as you can see in these 2 screenshots I created for this post:

At today for inserting a clip at the real end of the timeline or at the end of a clip you have to use the shotcut Ctrl+Shift+I but I believe that 2 different shortcuts for the same action, just for managing the latest frame, is a little bit too complicate.
I suggest that Kdenlive has to consider the last frame, as other softwares do, as the first following one by moving just one frame forward, than as it's behaving at today, when you send the edit line to the end point of a clip or to the latest frame on the timeline.

thediveo added a comment.EditedMay 8 2016, 5:53 PM

One reason can be that the video clip also contains audio, but you don't want and need to split this audio from the video because you are going to use a separate audio clip. In my projects, the audio part of the video is the raw audio I never use in the Kdenlive project. Instead of splitting audio, then ungrouping, then deleting to splitted audio clip I simply switch splitting off and mute the video track. Simple and fast workflow.

The audio is a completely different file (clip) because I need to postprocess the raw audio from the video clip in order to compensate for the reduced frequency response of my wireless lavalier mics at low frequencies.

Please remember that splitted audio clips aren't separate clips but just the audio tracks of the audio&video clip. But I use really separate audio clips.

I see. The fact is that now you have no more to ungroup and delete or to mute. You can just choose what you want to use of a clip: the video part, or the audio part or both. If you need just the video you'll insert just the video in a video track. if you need just the audio you'll insert only the audio part in one audio track and
if you need both you'll have the video in a video track and the synced audio in an audio track.
This is the way all application works just because it's easier to manage. You choose what you need from a clip and you insert just it. You have not to mute or to remove the audio from the clip or other actions. Then when you manage the audio on the timeline you can choose which kind of material to insert in each audio track: interviews, speech, sound fx, live recorded materials, laught track, music, etc.

Ok, I think I will close this task soon because there are too many topics mixed in this thread and it's becoming too hard to follow. Some quick replies:
First, regarding Massimo's six points in this morning's comment:
1 - ok
2 - I agree with thediveo, and rarely use the audio from my video clips, so I appreciate the current mix. Maybe we should introduce 2 working modes, not related to the "automatic split audio" feature. 1 "mixed" mode, keeping current mixed behavior, and one "strict" mode where audio tracks can only contain audio and video tracks can only contain video.
3 - I guess we can leave it like that for a test phase and see what comes out.
4 - Ok, can do that. Maybe target tracks should also be saved in the project and restored on re-opening?
5 - Yes. We had a longer term UI refactoring that involved adding a toolbar on top of the timeline, and move the tools (currently in statusbar) there, and add some extra editing features in it ( ). That might be a good place for these buttons (monitor toolbars are already very busy)
6 - The problem with this is that if the clips are not grouped, we have no connection between the 2. So if we put an indicator that there is a 100 frames offset in the audio clip, when the video clip is moved, we cannot notify the audio clip that the offset has changed. One way to do it would be that if 2 timeline clips from the same bin clip are selected by the user, we display the offset, and could offer an option to align them, but when the selection changes, this notification disappears ? We should probably open another phabricator issue to think about when and how this is needed.

About the problem with a clip's last frame, there are 2 problems:
1 - Inserting clip at the end of a project is effectively broken, I can add a special rule for that.
2 - About timeline clip's end, Massimo are you talking about the "Home/End" shortcuts moving you to clip start/end ? Do you suggest that the "End" shortcut moves to the frame after clip's end instead of last frame, like it currently does with the ALT+Right Arrow ?

I agree at 127%.
for these points I just want to add this:
2 - I'm not of the opinion we have to delete any "mixed"or "strict" mode. Maybe I'm old stupid guy and I don't understand the improvement it the "mixed" mode represents but now we have already created a second working mode which the user can choose. I guess that it's an improvement in Kdenlive not something bad.
3 - Agree.
4 - Simply WONDERFUL!!!!
5 - I read something about the topic. It's the perfect place.
6 - I see. Before to create the offset the clips are no more grouped. The solution you suggest is interesting. It's easy to use and it's not invasive. What I don't know if it's possible to calculate the offset based on bin membership: if we have more zones of the same clip both audio an video in the timeline, can you tell to the program which is the relation between the different pieces of the same clip?If you want to spend time on it do it by testing one solution otherwise we I'm for opening another phabricator issue about it and we change the priority to this temporarily.

For the clip's last frame issue:

  1. Good.
  2. Yes. It was related to the Home/End buttons. In my configuration I haven't fine ALT+Right Arrow mapped. Anyway it's not important. You just have to know it and to adapt.

I wrote this before to open the new phaìbricator topic about out of sync frames reference because this night I got a suggestion:
Is there a way to create a different approach for linking together video and audio from the same clip before to move them?
If it's possible we can keep the standard way to groups clip just for the "create group" operation and set another way, for video clips which contain audio, which doesn't prevent the audio/video offset but which is able to keep infos about it.

After today fast test I found that now we have a different Timeline end point issue.
Now when you are on the latest frame on the timeline and you insert a clip, the new clip is added after the clip which was already on the timeline. But if you want just insert your clip one frame before the end you can't. If you move the edit line one frame back and you insert a new clip, Kdenlive will insert it not one frame before the end of the latest clip on the timeline but 2 frame before the end, as it did before the fix.
Actually you can't insert a clip just one frame before the end.
Or you perform the operation after the end of the clipo or 2 frames before the end. You can't just select to insert one frame before the end.
I think that the fact that other softwares (as I shown you in the picture I attached here yesterday) set the edit line end point on the first frame after the end of the clip is for avoiding this malfunction.

I would also expect to be able to position the playhead beyond the latest clip in the timeline. It's not necessary to position further. Compare this to your text editor where you are allowed to position the insertion cursor after the last character to add new text.

About the end of timeline problem, so what happens if the cursor can go one frame beyond last clip ? Does it display a black frame in monitor ? What about rendering, does it mean we also have an additional black frame at the end ?

massimostella added a comment.EditedMay 9 2016, 10:11 PM

In all video editing programs, the edit line (the cursor) as I shown you goes one frame beyond the last clip and the timeline monitor shows a black frame. In AVID, instead of the black frame, the latest frame is shown with a marker on it which tells you that you reached the end of the timeline.
The way the cursor is represented in Kdenlive is perfect: you have the vertical line and a horizontal white transparent area which show you which is the frame you are watching. In Premiere and FCP you have exactly the same representation (watch the pictures I attached to this post:
When you set the Out or the In point on the timeline for selecting a zone (for all purposes: rendering or Insert/Extract/Overwrite/Lift) it's placed where the line is. That means that is set at the beginning of the frame selection. (This logic works also correctly when you are at the begin of a clip or of the timeline)
So if you set your cursor one frame beyond the latest frame and you set an Out point the timeline zone selected doesn't contain the black frame.

mardelle moved this task from In Progress to Done on the Kdenlive board.May 11 2016, 7:33 PM
massimostella updated the task description. (Show Details)Sep 1 2016, 1:40 AM