FreeFrame – a framework for developing video effects plugins.

Sample code is provided which compiles in Delphi, MSVC, GCC, Project Builder and Kylix.

The plugins are initially intended for use in VJ (‘Visual Jockey’) applications. The project was initiated by developers from VJamm, Resolume and EffecTV. Some great plugins have been written. Freeframe support is now available in a large number of video applications.

We decided to set up FreeFrame because after extensive research we were not able to find a video effects plugin system that satisfied the following criteria:

Open – i.e.. not governed by a commercial organisation. We want to bring together a large number of media applications here, so independence of the format is important for developers to be confident in putting in the work needed to support the format. Openness should also encourage plugin developers in their involvement. We have been very happy with the enthusiasm

CrossPlatform & CrossCompiler – Many formats use object interfaces and other compiler / platform specific interfaces which prevent those formats from reaching the widest audience, and thus stifle collaboration between developers.

Standardised – The plugin system features heavily standardised interface structures designed to facilitate the implementation of the standard in the widest possible variety of applications. eg. standard ieee 32bit floats running from 0-1 for the plugins parameters

Technical independence – Many of the plugin formats we looked at were only really designed for use with their native host app. FreeFrame intends to address the many considerations of technical independence of the plugin .dll/.so from the host app that are required for a robust format suitable for a wide range of existing host applications.