From Markdown to Video

Video Puppet makes it easy to script videos using plain text (Markdown) files.

Getting started

You can use Markdown, YAML or JSON format to create the script. We recommend using Markdown for manually created files (as it’s human-friendly), and JSON or YAML for automatically created script files (more machine-friendly). When working with Markdown files, make sure to name the file so it has the .md or .mkd file extension.

Note: If you are not familiar with editing plain text files, create videos from PowerPoint presentations instead.

Start by creating a .md text file and add some images or text into it. Upload the script file and the assets to Video Puppet.

Quick example

Check out this sample script file. Video Puppet created the video below based on that script. Tweak the file then create a new video by uploading the modified file to the script wizard.

Check the examples on GitHub for ready-made demonstration scripts for key features.

Common tasks

Here is how to perform some common tasks as you start experimenting with Video Puppet:

How to adding videos or images?

You can add images or videos by using the standard Markdown syntax.

![](london.jpg)

Add voice to video

Video Puppet automatically generates narration from the text in the markdown file. The following scene will include an image, and automatically generated voice narration:

![](london.jpg)

Welcome to London

Set the voice-over language

Video Puppet supports adding voice to video in many languages. To change the language, just change the active voice. Check out the available voices for an up-to-date list of supported languages and voices. Use the voice header to set the voice for the whole video. Use the voice stage direction to set it for a particular scene or a paragraph.

Control pronunciation and add pauses in the narration

Add a pause stage direction between the paragraphs. The instruction should be in brackets, followed by a colon (:) and a number of seconds you want to wait. It’s important to add this into a separate paragraph, so there needs to be a blank line between the instruction and the rest of the text. For example, to add a pause of 3 seconds between two sentences, add this to speaker notes:

First sentence, something very
interesting and amusing.

(pause: 3)

Second sentence, even more amusing.

Check out the Narration format reference for more information.

Use your own voice over video

Instead of automatically generated narration, you can add your own audio files, with recorded voice, music or something else to play during a scene. To do so, just add (audio: file) in a separate paragraph. For example, this scene will show an image from london.jpg and play the audio from london-audio.mp3:

![](london.jpg)

(audio: london-audio.mp3)

Change the voice for a particular paragraph

Add a voice stage direction between the paragraphs in your speaker notes to set the voice for the following text. The instruction should be in brackets, followed by a colon (:) and a number of seconds you want to wait. It’s important to add this into a separate paragraph, so there needs to be a blank line between the instruction and the rest of the text. For example:

First sentence, in the main video voice.

(voice: Brian)

Brian will read this sentence.

Check out the Narration format reference for more information.

To preview the voices, check out the available voices page.

Change the voice for the whole video

You can add global video properties in the script header, starting the script file with a scene separator (---). The following script file sets the global voice for all scenes:

---
voice: brian
---

![](london.jpg)

Brian will read this scene

Set the video size

Unless you request otherwise, Video Puppet creates videos in 16x9 aspect ratio, with the 720p resolution that is useful for most online services today. You can change the video size easily by using the size header.

Crop, resize and position images

When you add images or clips to your video, they will be automatically resized and cropped according to the target video size. You can control many aspects of this, such as covering or containing the image, centering it or aligning with a particular edge. Check out the image format reference guide.

Add more scenes

To add more scenes, use three or more dashes (---) as a separator. The following script file creates two scenes:

![](london.jpg)

Welcome to London

---

![](berlin.jpg)

Welcome to Berlin

Add text on top of images or videos

Video Puppet can put text on top of images or videos, both to caption videos and to create textual slides (such as headings, bullet point lists or even show syntax-highlighted code snippets).

For more information on creating subtitles or captions, check out the subtitles format reference.

For information on creating text slides, check out the text slides format reference.

More examples

This is just a start. For a detailed list of things you can achieve with Video Puppet scripts, check out the format reference. Also, check the examples on Github for ready-made demonstration scripts for key features.