X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=_manual%2F24_lua-scripting%2F01_brain_dump.html;h=529b70f7a960d63e34e2dc38b6f2dc44c81f68d0;hb=34e37256d144dd89dfba32cc9489465966293492;hp=c73fa4de9b8411814d618803d08c6e799fe0275f;hpb=ef07095586ef14e1d61ef5e1e56b1f3b9b88cb75;p=ardour-manual
diff --git a/_manual/24_lua-scripting/01_brain_dump.html b/_manual/24_lua-scripting/01_brain_dump.html
index c73fa4d..529b70f 100644
--- a/_manual/24_lua-scripting/01_brain_dump.html
+++ b/_manual/24_lua-scripting/01_brain_dump.html
@@ -1,10 +1,10 @@
---
layout: default
-title: Lua Scripting Documentation
+title: Scripting Documentation
---
-This Documention is Work in Progress and far from complete. Also the documented API may be subject to change.
+This Documentation is Work in Progress and far from complete. Also the documented API may be subject to change.
Preface
@@ -95,9 +95,9 @@ There are is also a special mode:
Ardour searches for Lua scripts in the scripts
folder in $ARDOUR_DATA_PATH
,
Apart from scripts included directly with Ardour, this includes
- GNU/Linux | $HOME/.config/ardour4/scripts |
- Mac OS X | $HOME/Library/Preferences/Ardour4/scripts |
- Windows | %localappdata%\ardour4\scripts |
+ GNU/Linux | $HOME/.config/ardour5/scripts |
+ Mac OS X | $HOME/Library/Preferences/Ardour5/scripts |
+ Windows | %localappdata%\ardour5\scripts |
Files must end with .lua
file extension.
@@ -307,6 +307,7 @@ Fully functional, yet still in a prototyping stage:
convenience methods (wrap more complex Ardour actions into a library). e.g set plugin parameters, write automation lists from a lua table
Add some useful scripts and more examples
Documentation (Ardour API), also usable for tab-exansion, syntax highlighting
+ bindings for GUI Widgets (plugin UIs, message boxes, etc)
@@ -332,7 +333,7 @@ for t in Session:get_tracks():iter() do print(t:name()) end
for r in Session:get_routes():iter() do print(r:name()) end
-Session:tempo_map():add_tempo(ARDOUR.Tempo(100,4), ARDOUR.BBT_TIME(4,1,0))
+Session:tempo_map():add_tempo(ARDOUR.Tempo(100,4), Timecode.BBT_TIME(4,1,0))
Editor:set_zoom_focus(Editing.ZoomFocusRight)
@@ -340,18 +341,19 @@ print(Editing.ZoomFocusRight);
Editor:set_zoom_focus(1)
-files = ARDOUR.StringVector();
+files = C.StringVector();
files:push_back("/home/rgareus/data/coding/ltc-tools/smpte.wav")
pos = -1
Editor:do_import(files, Editing.ImportDistinctFiles, Editing.ImportAsTrack, ARDOUR.SrcQuality.SrcBest, pos, ARDOUR.PluginInfo())
#or in one line:
-Editor:do_import(ARDOUR.StringVector():add({"/path/to/file.wav"}), Editing.ImportDistinctFiles, Editing.ImportAsTrack, ARDOUR.SrcQuality.SrcBest, -1, ARDOUR.PluginInfo())
+Editor:do_import(C.StringVector():add({"/path/to/file.wav"}), Editing.ImportDistinctFiles, Editing.ImportAsTrack, ARDOUR.SrcQuality.SrcBest, -1, ARDOUR.PluginInfo())
# called when a new session is loaded:
function new_session (name) print("NEW SESSION:", name) end
+# read/set/describe a plugin parameter
route = Session:route_by_remote_id(1)
processor = route:nth_plugin(0)
plugininsert = processor:to_insert()
@@ -365,10 +367,16 @@ _, t = plugin:get_parameter_descriptor(2, x) -- port #2
paramdesc = t[2]
print (paramdesc.lower)
-ctrl = ARDOUR.EvoralParameter(ARDOUR.AutomationType.PluginAutomation, 0, 2)
+ctrl = Evoral.Parameter(ARDOUR.AutomationType.PluginAutomation, 0, 2)
ac = plugininsert:automation_control(ctrl, false)
print (ac:get_value ())
ac:set_value(1.0, PBD.GroupControlDisposition.NoGroup)
+
+# the same using a convenience wrapper:
+route = Session:route_by_remote_id(1)
+proc = t:nth_plugin (i)
+ARDOUR.LuaAPI.set_processor_param (proc, 2, 1.0)
+