Scripting videos using Video Puppet

Video Puppet can automatically synchronise video and audio timelines, generate life-like narration tracks and create slides from text. To get full control of all those features, you’ll need to create a video script.

A video script is a simple text file with properties. You can use YAML or JSON format to create the script.

Here is a very simple example, adding a single scene with an image:

size: 720p
scenes:
  - image: london.jpg

This structure has the following properties:

  • size property specifying the dimensions of the video (720p is a standard size for 16x9 videos usual on Youtube and social networks, but you can also use values in the Width x Height format, for example 800x600)
  • a list of one or more scenes, each containing assets to show.

You can easily add create scenes from image files, as you’ve seen in the previous example. But you can also do a lot more:

Generating narration

Video Puppet can automatically generate narration from text, using a life-like audio track:

size: 720p
scenes:
  - image: london.jpg
    narration: Welcome to London

More scenes

Add additional scenes by creating more elements in the scenes list:

size: 720p
scenes:
  - image: london.jpg
    narration: Welcome to London
  - image: berlin.jpg
    narration: Welcome to Berlin

Use your own audio

If you want to use your own voice, just add the audio sub-property:

size: 720p
scenes:
  - image: london.png
    audio: london-audio.mp3

Use pre-edited video clips

You can also provide videos as scenes:

size: 720p
scenes:
  - video: my-first-scene.mp4
  - video: my-second-scene.mp4

More examples

This is just a start. For a detailed list of things you can achieve with Video Puppet scripts, check out the Examples on Github.