Trigger Mixer scene from OSC or MIDI

Hi,

I’m looking to use Ardour together with a multi-channel soundcard to replace my aging Yamaha 01V.

I need a way to recall mixing presets automatically from external control sources such as OSC or MIDI Control Change messages.

I’ve looked into Mixer Scenes, and they seem to match what I need for storing mix snapshots. However, I have a few questions:

  • The number of available scenes (8–12 in the UI) seems too limited for a full live show.
  • I’m not sure how to trigger scene recall from external sources like MIDI or OSC (or possibly a WebSocket API, if one exists).

Could someone point me in the right direction regarding:

  • whether Mixer Scenes can be addressed beyond the UI limit
  • and how they can be triggered externally (MIDI/OSC or otherwise)?

Thanks in advance for any advice.

Under the hood there is no limit (well, 2^64). Scenes > 12 can currently be triggered via Lua scripting or select ctrl surfaces only.

OSC allows the following messages:

/store_mixer_scene i
/recall_mixer_scene i

e.g. on Unix Terminal, one can run

oscsend osc.udp://localhost:3819 /store_mixer_scene i 12345
oscsend osc.udp://localhost:3819 /recall_mixer_scene i 12345

Perfect ! That I did not find in the documentation .

As our show controller can send arbitrary osc messages, it’s what we need.

However, a small lua script allowing to store (and recall) scenes directly from would be useful. Any idea were to start ?

Ardour comes with a session script (Menu > Edit > Lua Scripts > Script Manager) to recall scenes as you roll through markers on the timeline. That may also serve as example:

As for general API, search for “mixer_scene” in the reference manual: The Ardour Manual - Lua Bindings Class Reference

I hope that helps to get you started and don’t hesitate to ask if you need more information.