Home Company Information Site Map
Italiano English
 
 

PM Video Editor

An Open Source Non-Linear Video Editor. Light Weight: less memory used by binary, more memory available for rendering

FLTK as Cross Platform GUI, SPRINT for general Cross Platform development and FFMPEG for Video and Audio Input and Output

License: GPL

No Yet released

Plugin Documentation

////// a Generic Video Filter Plugin ///////////////////
struct ConfigElement {
       const char *name; ///< [in] name
       int type;         ///< [in] frameno, slider, image coordinate
       int min, max;     ///< [inout] range
       int value;        ///< [inout] Default Value (in), Value (out)
       };

/// A filter who process single frame indipendently
///  animation is handled by framework
/// Video Filter, Moving Path are made using this filters
struct ImageFilter {
       /// Unique FilterName (it is used to save configuration in project file)
       const char *name;
       
       void *(* Init)();
       int (* Done)(void *);
       AVFrame *(* Process)(void *, AVFrame *input, const ConfigElement *config, int nElement);
       int (* GetConfig)(void *, ConfigElement *pElementList, int elementListSize);
       };

/// Filter who merge two different image frame, or 
///  to create an Overlay Clip
struct TransitionFilter {
       /// Unique FilterName (it is used to save configuration in project file)
       const char *name;
       
       void *(* Init)();
       int (* Done)(void *);
       AVFrame *(* Process)(void *, AVFrame *a, AVFrame *b, const ConfigElement *config, int nElement);
       int (* GetConfig)(void *, ConfigElement *pElementList, int elementListSize);
       };