git @ Cat's Eye Technologies kinoje / 0.2

Tree @0.2 (Download .tar.gz)


Version 0.2. Subject to backwards-incompatible changes without notice.

kinoje is a templating-based animation tool. A provided template is filled out once for each frame of the animation; the result of the template expansion is used to create a still image; and the resulting sequence of images is compiled into the finished movie.

Quick Start

The following are required:

You might also find VLC useful, for viewing the final movie file.

On Ubuntu 16.04, you can install these with:

pip install --user Jinja2 PyYAML
sudo apt install povray povray-includes inkscape ffmpeg imagemagick vlc

You can then run the tool from the repository directory like so:

bin/kinoje eg/moebius.yaml

Since no output filename was given, kinoje assumes MP4 format and automatically picks a reasonable filename, in this case moebius.mp4.

You can also ask it to create a GIF by specifying an output filename with that as its file extension:

bin/kinoje eg/squares.yaml -o squares.gif

Theory of Operation

The kinoje executable actually calls 3 other executables:

These executables can also be called directly, if you e.g. already have a directory of instants you want to render and compile into a final movie.

File Format

The input config file must contain, at the minimum, a key called template containing the template, and a key duration which specifies the duration in seconds of the movie. It may also contain the following keys, or if not, the following defaults will be used:

The template is typically a multi-line string in Jinja2 syntax, which will be filled out once for each frame. The context with which it will be filled out is constructed as follows:

Other configuration options:

No further documentation on how to use the tool will be given, as it is all very subject to change right now.