Feat. Req. Save an INSERT as a Preset/Favorite and make it movable

Long time Ardour user here.

I run a hybrid analog studio and find my self spending a lot of time creating and connecting inserts to their outboard, hardware sends and returns. The obvious workaround is a track template, but I don’t always use my outboard gear the same way every time. However I do have my hardware “hard coded” or half-normalled to my signal chain. For instance my 1176 is always connected to output_13 and input_13 via my patch bay. That never changes.

I might record a kick drum and use a different outboard compressor for some reason. Doing this across 30+ tracks with 13 or 14 hardware compressors ends up taking a LOT of time to set up. And there’s no real way to move the insert once it’s present.

Let’s say I throw a hardware VCA compressor on a kick drum, print it, then want to move that hardware insert to a tom track to do the same thing. Right now I have to delete that insert and start over, creating a new insert on the tom track. I can understand a mono insert not being able to be moved to a stereo buss or stereo track, but stereo inserts should be able to be moved to a stereo buss or track and mono inserts should be able to move to other mono busses or tracks.

I’ve tried everything from lua scripting to seeing if building a VST/LV2 plugin that automatically connects the inputs and outputs was a viable option and it appears that answer is a no. So I thought I would post a request here. I understand there’s probably not a lot of people using Ardour in a hybrid studio, but I thought it’d be worth a shot asking.

1 Like

Totally agree with you!
Added this as a feature request in mantis some time ago. :slight_smile:

Not a plugin, but an Action script can make connections. something like

function factory () return function ()
  local audioengine = Session:engine()
  local t 
  _, t = audioengine:get_ports (ARDOUR.DataType("MIDI"), ARDOUR.PortList())
  -- table 't' has ARDOUR Ports
  for p in t[2]:iter() do
    if p:connected () then
      goto next
    end

    if p:name () == "MIDI Track/midi_in 1" then
      p:connect_to ("system:midi_capture_1")
    end
    ::next::
  end
end end