Simplify video producer handling
AcceptedPublic

Authored by mardelle on May 10 2018, 9:48 AM.

Details

Reviewers
alcinos
Summary

Use an instance of the master producer for video tracks instead of a complete clone

Diff Detail

Repository
R158 Kdenlive
Lint
Lint Skipped
Unit
Unit Tests Skipped
mardelle requested review of this revision.May 10 2018, 9:48 AM
mardelle created this revision.
alcinos added inline comments.May 11 2018, 1:05 AM
src/timeline2/model/clipmodel.cpp
453

Well but we can't really do that, can we? I agree that if it works we can deal with disabling video by just setting the test_image to the right value, but if it's an audio we really need to grab a new master producer, otherwise we're going to hit that audio clicking bug again.

Yes I think we can. What matters is that every clipmodel for an audio track should have it's own cloned producer. But then the clipmodel can set the state on its own producer, it doesn't matter. If I am correct, a video clip cannot be turned in an audio clip.

Yeah I guess that's a choice we need to make. If you have a group Audio + Video, then you cannot drag the audio in the video, for sure (and vice versa). However, we need to decide what we want to do for video only clips that have a sound track on the producer (for eg that were inserted, then the audio was degrouped and removed):

  • First option: we don't allow the move to the audio track. In that case, we don't need to support the clip reloading (note that we also don't need to support clip state switching besides disabling since the state is known at creation time). In this scenario, the only way to retrieve the audio of a clip is to split the audio again, then degroup, and remove the video part if we don't need it.
  • Second option: we allow some flexibility, and decide that a video clip moved to an audio track is transformed to its audio counterpart. This is slightly more flexible in my opinion.

What do you think is the best? Note that Premiere for eg doesn't support option 2

Following Nicolas invitation here I'm.
The option 2 is very interesting (I personally like it) but I think is not too intuitive.
I don't know which is the easiest way to implement the feature we are talking about.
The option 1 is still the best one, in my opinion. I guess you can drop down the audio all the time you want, so if you lost, for eg, some sync you can trash the previous audio and drop it again from the original clips.
I think it could be interesting, if it's not a pain to produce, that you can split also the video from the audio too (it happens that you just keep the audio stream of a clip and later you need the video again. Generally you use the locate clip in the bin feature or the match frame to recover it)

alcinos accepted this revision.May 11 2018, 10:43 AM

Ok let's go for option 1 then.

Splitting the video from the audio should be rather easy to do, so that way we can also retrieve the video if we lost it.

This revision is now accepted and ready to land.May 11 2018, 10:43 AM