Skip to content

Repository files navigation

svgsequencevideo

svgsequencevideo is a Python library and CLI for generating drawing reveal videos from SVG files: every shape appears one after another, in the order it is drawn in the SVG, as if the artwork were being drawn live.

puppyTmMoonlight_FABV.mp4

Progressive reveal of a vector illustration generated from SVG.

See documentation: https://svgsequencevideo.readthedocs.io.

Quick overview

(venv) $ pip install svgsequencevideo

Generating a video is split into two independent steps: a slow render of the SVG into PNG frames, done once, and a fast video build from those frames, run as many times as needed while tuning the reveal timing.

(venv) $ svgsequencevideo render drawing.svg --width 1920
(venv) $ svgsequencevideo video --revealduration 15 --heuristic complex

Development

Install the dependencies

(venv) $ pip install -e ".[dev]"

Create wheel

(venv) $ python -m build

Generate full coverage report

(venv) $ coverage run
(venv) $ coverage html

Then open htmlcov/index.html.

Documentation

Generate documentation:

(venv) $ make html

Then open docsBuild/index.html.

Coding style

Some Visual Studio Code settings from visualStudioCodeSettings.json should be used to ensure consistency in the coding style.

In Visual Studio Code, install these extensions:

  • isort to sort Python imports automatically
  • Pylance for type checking

About

Python library and CLI for generating drawing reveal videos from SVG files

Resources

Stars

Watchers

Forks

Contributors

Languages