From 7bada83a3f4dccefc10a7e6f3627189654e85a41 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Tue, 7 Mar 2017 00:32:19 +0100 Subject: two new action scripts (no icons yet) --- scripts/bypass_all_plugins.lua | 22 ++++++++++++++++++++++ scripts/mute_all_tracks.lua | 21 +++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 scripts/bypass_all_plugins.lua create mode 100644 scripts/mute_all_tracks.lua diff --git a/scripts/bypass_all_plugins.lua b/scripts/bypass_all_plugins.lua new file mode 100644 index 0000000000..913228101f --- /dev/null +++ b/scripts/bypass_all_plugins.lua @@ -0,0 +1,22 @@ +ardour { + ["type"] = "EditorAction", + name = "Bypass Plugins", + license = "MIT", + author = "Ardour Team", + description = [[Bypass Plugins on selected tracks]] +} + +function factory () return function () + local sel = Editor:get_selection () + for r in sel.tracks:routelist ():iter () do + local i = 0; + while 1 do -- iterate over all plugins/processors + local proc = r:nth_plugin (i) + if proc:isnil () then + break + end + proc:to_insert():deactivate() + i = i + 1 + end + end +end end diff --git a/scripts/mute_all_tracks.lua b/scripts/mute_all_tracks.lua new file mode 100644 index 0000000000..e15c0530c0 --- /dev/null +++ b/scripts/mute_all_tracks.lua @@ -0,0 +1,21 @@ +ardour { + ["type"] = "EditorAction", + name = "Mute All Tracks", + license = "MIT", + author = "Ardour Team", + description = [[Mute All Tracks in the Session]] +} + +function factory () return function () + local ctrls = ARDOUR.ControlListPtr () -- create a list of controls to change + + for r in Session:get_tracks ():iter () do -- iterate over all tracks in the session + ctrls:push_back (r:mute_control()) -- add the track's mute-control to the list of of controls to be changed + end + + -- of more than one control is to be changed.. + if ctrls:size() > 0 then + -- do it (queue change in realtime-context) set to "1" ; here 'muted' + Session:set_controls (ctrls, 1, PBD.GroupControlDisposition.NoGroup) + end +end end -- cgit v1.2.3