Yohan Chalier Blog RSS

Painting Over Videos

Recently, I was approached by someone making a music video, with a composition issue. The video showed a grid of multiple clips turning on and off, shot from the same location with different angles, in a city. He felt the grid alone lacked of inner structure, each clip feeling too independent from the others. His idea was to add a trailing line representing an eye tracker, hovering and highlighting features in those clips.

My first thought was to rely on an actual eye tracker: there are some libraries doing that, such as WebGazer.js (though it won’t be maintained anymore), but first attempts were lacking precision. So, I switched to a simpler approach, solely relying on the mouse cursor. The video plays back in a Qt GUI, the movement of the mouse is recorded and drawn as a fading trail. That trail can then be exported as a MOV video file encoded with QT RLE, a format that supports transparency in videos, to later be overlaid in an editing software.

The simplicity of the approach and the aliased aesthetics of the trail made me call that tool Video Paint in reference to mspaint. The idea itself is really simple, but one may think of many features to add in order to make this a fully featured drawing software. If you are interested in contributing, head over to the Codeberg repository and submit your changes.