Hi,
My mind has often turned to the subject of plugins for Cinelerra, and
how to make this a true killer feature.
I'd like to suggest a change to the plugin architecture - allow
dynamically loaded plugins, compiled separately from Cinelerra.
I notice that part of Cin's installation is a directory
$PREFIX/lib/cinelerra, which contains shared libs for the plugins.
What would be great is if Cin could also look in ~/.cinelerra/plugins,
where this directory has a bunch of subdirectories, one per plugin. Each
subdirectory would contain the shared libs, plus any data files and
other stuff needed by the plugin.
Also, to have a Cinelerra SDK, which contains:
- a template video plugin and a temporary audio plugin; each of these
would be a directory containing autocrap files and heavily-commented
source code; each of these plugin directories could also contain:
- a README file which explains how to tweak the autocraps to add
any required dependencies etc
- the generated Makefile could have targets 'install' (which
requires root, and installs to $PREFIX/lib/cinelerra), and
'install-user', which installs to ~/.cinelerra/plugins
- full documentation on the plugin API - all classes, methods,
attributes etc - maybe Doxygen-generated
- the ability for plugins to be compiled separately from the main
Cinelerra source tree, and linked against a Cinelerra shared lib;
IMHO, this would strongly support and encourage more Cinelerra plugin
development.
What would also be great is a way to have a plugin architecture which
allows the ability to operate on Cinelerra as a whole, rather than
within specific audio/video tracks.
Such an architecture would allow plugins to be written to provide
scripting interfaces, remote control interfaces via sockets etc. Within
such an environment, a 'super-plugin' could see an API which allows
access to every aspect of Cinelerra through a set of objects, including:
- querying the timeline - finding out what tracks there are, what
effects/automations are applied to these tracks etc
- importing clips
- operating on tracks
- doing renders
- etc
Thoughts?
Cheers
David
_______________________________________________
Cinelerra mailing list
[email protected]
https://init.linpro.no/mailman/skolelinux.no/listinfo/cinelerra