Juan Ramírez JUAN RAMÍREZ
video-as-code logo

video-as-code

In development

Describe video edits as YAML and build Kdenlive/MLT projects from them, so videos can be versioned with Git like code.

  • Python
  • YAML
  • Kdenlive / MLT
  • CLI

Visit project repository

video-as-code generates Kdenlive projects from a declarative YAML description. The YAML file is what you keep under version control; the .kdenlive project is regenerated from it deterministically.

From the command line you can build the project, validate it, render it straight to video with melt, or import an existing Kdenlive project back into YAML. Clips, fades, speed changes, titles, transitions, colour grading, Ken Burns effects and picture-in-picture are all supported.

It is also designed to run on modest machines: it can render in segments within a memory budget and preview from light proxies of only the parts of each clip the timeline uses.

Read the documentation, including a gallery where every effect and transition plays.

Comments

Back to portfolio