1 ardour { ["type"] = "Snippet", name = "Vamp Plugin List" }
2 function factory () return function ()
4 local plugins = ARDOUR.LuaAPI.Vamp.list_plugins ();
5 for id in plugins:iter () do
6 local vamp = ARDOUR.LuaAPI.Vamp(id, Session:nominal_sample_rate())
7 local vp = vamp:plugin ()
8 print (" --- VAMP Plugin ---")
9 print ("Id:", vp:getIdentifier ())
10 print ("Name:", vp:getName ())
11 print ("Description:", vp:getDescription ())
13 local progs = vp:getPrograms();
14 if not progs:empty () then
16 for p in progs:iter () do
21 local params = vp:getParameterDescriptors ()
22 if not params:empty () then
23 print ("Parameters(s):")
24 for p in params:iter () do
25 -- http://manual.ardour.org/lua-scripting/class_reference/#Vamp:PluginBase:ParameterDescriptor
26 print (" * Id:", p.identifier, "Name:", p.name, "Desc:", p.description)
27 local i = 0; for vn in p.valueNames:iter() do
28 print (" ^^ ", i, " -> ", vn)
34 local feats = vp:getOutputDescriptors ()
35 if not feats:empty () then
37 for p in feats:iter () do
38 -- http://manual.ardour.org/lua-scripting/class_reference/#Vamp:Plugin:OutputDescriptor
39 print (" * Id:", p.identifier, "Name:", p.name, "Desc:", p.description)