This projection effects color distortion using green levels, to which the eye is particularly sensitive.

The video is loaded as a texture, colors are sampled and snapped to pink or green in the fragment shader.

The sample clip is a ~3hr video of Rotterdam from the north-west of the Erasmus bridge, looking south-west.


Full-size sample: original.mov

Loop Projections

This video-based projection is a branch of the Loop repository.

Rapidly varying pixel values and motion physics constrained by the of holding a camera make video a good base for experimentation. No movement is unaturally fast, and the scenes are complex.

Loop projections use ffmpeg which is included and linked with the project at compile time resulting a lengthened build. Though not fatally long, build speed could be restored by separating video decoding into a separate process. However, sharing frames between processes is a potential bottle-neck and puts the projection in a similar role to the compositor of a windowing system.

Further work on using videos as textures Instead the video could be decoded in a separate process and exchanged via shared memory or a socket. This function is similar to that of the compositor component of a windowing system, so some research should be done first.