Hi Fons,
On Sun, 13 Jun 2010, fons(a)kokkinizita.net wrote:
So I have a simple question:
What is the absolute minimum required to define an LV2
plugin (in other words, which files, and what do they
need to contain) assuming the following:
Minimum to define an LV2 plugin is here:
http://lv2plug.in/docs/index.php?title=Writing_Plugins
http://lv2plug.in/plugins/Amp-example.lv2
- The plugin requires one 'extension'.
- This extension defines everything except whatever is
required to enable a host to discover the existence
of the plugin on a system.
- In other words the extension defines how the host is
supposed to instantiate and call the plugin, the way
ports and parameter are described, etc. etc.
When you start adding extension requirements, this
documentation is currently buried in the bowls of lv2.ttl
(
http://lv2plug.in/spec/lv2.ttl). You declare it in your
plugin's .ttl file. Here's an example from zynadd, with the
lv2:optionalFeature and lv2:requiredFeature lines:
==========================================================
<http://home.gna.org/zyn/zynadd/1>
a lv2:Plugin;
doap:maintainer [
foaf:name "Nedko Arnaudov";
foaf:homepage <http://nedko.arnaudov.name/>;
foaf:mbox <mailto:nedko@arnaudov.name>;
];
doap:name "zynadd";
doap:homepage <http://home.gna.org/zyn/>;
doap:license <http://usefulinc.com/doap/licenses/gpl>;
lv2:optionalFeature <http://home.gna.org/lv2dynparam/v1>;
lv2:requiredFeature <http://home.gna.org/lv2dynparam/rtmempool/v1>;
lv2:port [
....
=============================================================
-gabriel