How would you imagine identifying compressors and deessers? Or any plugin, for that matter? Some plugin APIs, like AudioUnits, have no real plugin type information at all.
yes you can script this. For each Track, for each Plugin on that track: check name + bypassed status. toggle bypass.
for t in Session:get_tracks():iter() do -- use Session:get_routes():iter() to iterate over all tracks+busses
local i = 0
repeat
proc = t:nth_plugin (i)
if not proc:isnil () then
-- see http://manual.ardour.org/lua-scripting/class_reference/#ARDOUR:Processor
local name = proc:display_name ()
if name:find ("Calf") then
if proc:active () then proc:deactivate() else proc:activate() end
end
if name == "a-Reverb" then
if proc:active () then proc:deactivate() else proc:activate() end
end
i = i + 1
end
until proc:isnil()
end
Paste it in Menu > Window > Scripting. Press “Run” there… Edit to you needs and then make an Action Script (Button/Keyboard shortcut) out of it by adding a boilerplate header to the script.
I was able to edit the script for the plugin I needed and it works when pressing run. However, I’m a bit lost on what “boilerplate” is needed in order to save it.
I’ve read over Lua Scripting in the manual but was unable to grok what was needed to save it.