How to automate video creation?

I am having several videos, images, and sounds that I want to compose (with some effects) to wrap a raw video (in the beginning and in the end) to produce the final video.

Because I am going to do the same wrapping for at least tens of videos, I want to automate this task. I tried to search how to do scripting in kdenlive, but found nothing relevant. Can you help me? At least, where to start?

If kdenlive does not provide such a feature(s) (in a good way), can you recommend me another Linux software?

Hi, and welcome to the forum and community.

TL;DR: There is no scripting interface available for users to automate tasks in Kdenlive.

Based on your short description of what you are trying to do, I think you may be able to achieve this using the Library. Select all the wrappings (clips, effects, compositions) and add them to the Library. It will show up there as a single clip. Then move that to the project(s) for the wrapping, expand it, and then - and that’s the tedious manual part, sorry - move it in place in the timeline.

Otherwise, depending on your scripting skills and capabilities, you could create a (Python) script to manipulate the .kdenlive project file. It is a plain text XML format and documented here. As long as you know what you (or your script) are doing feel free to add to that file.

FWIW, it’s on the roadmap for python scripting or something like that as a core part of kdenlive.

Indeed, but long term means a few years out - just didn’t want to get everybody’s hopes up

And realistically, if you’re talking about “tens” of videos, and you want the result to be something people won’t cringe at watching. you can probably do this with some nested sequences faster and better than you could write the “automation” script in the first place.

You’re going to need a step like that to clean up your “raw video” to prepare it for ‘automation’ anyway.

Otherwise, the best way to “automate” this is probably to hire a skilled editor to do it for you. There are some things you can replace with a very small shell script and get good or even better results - but this isn’t really one of them.