Articulation management

I’m trying to understand how articulation management is done in Ardour. If an instrument has multiple articulations, how do I select which one to use for each note? I can’t find any way of doing it other than sticking raw control changes and keyswitches into the MIDI data, and that’s unmanageable for anything but the simplest cases. Am I missing something?

What are you expecting?

FWIW, I’ve mostly been using a “track per articulation” workflow with VPO, BBC SO, etc.

If a single instance of the instrument plugin itself is capable of handling multiple articulations (e.g., based on the MIDI channel, then I put it on an audio bus, and route input from multiple MIDI tracks to it, one per channel. @x42’s excellent setBfree works well this way: each console on a separate MIDI track, as well as another for the pedals. I toyed with this pattern briefly with BBC SO (its plugin can be convinced to map channels to articulations).

Other DAWs have much better ways of handling it. For example, Logic Pro associates an articulation with every note. It automatically sends whatever MIDI commands are needed to ensure each note is played properly. Or REAPER has the Reaticulate plugin that provides sophisticated articulation management.

What Reaticulate and similar approaches do is called MPE (MIDI Polyphonic Extension). Each MIDI note uses a dedicated MIDI Channel with different settings for the given note (MIDI channels are reused in a round robin fashion).

Ardour can record and play back such data (e.g. from a Linnstrument or Seaboard), but there is no dedicated Editor available for this at this time.

1 Like

I don’t believe MPE is the method used because most instrument plugins don’t respond to MPE and usually only “listen” on a single channel.

Usually you have an articulation lane which sends out either a CC or a keyswitch (depending on the target instrument) just before the note. You could probably do this using two MIDI tracks in Ardour, one for the instrument and one for the articulation switching, assuming you can route MIDI data from one MIDI track into another?

Sounds possible but tedious. What I think the original poster wants is for an articulation object to automatically exist for every note, not to have to create (and place) one for every note.

1 Like

From the user’s point of view they place an articulation (key switch or CC) and it applies to all notes until the next articulation. So they don’t need to manually place individual articulations for each note.

The only thing on the DAW side is when using keyswitches the DAW needs to be aware that these are key switches and trigger the previous one closest to the playback position when playback is started. This used to be called “chasing” back when I was into this stuff, not sure if the terminology has changed now.

Just speaking of the user interface, I really like the system used by Logic Pro. There are no extra tracks to deal with. Articulation is a property of each note. You don’t need to memorize what control value or what key corresponds to each articulation. Instead, you select the one you want from a menu. In the piano roll you can color notes by articulation. In the list editor, articulation is another column. You can control-click to select several notes (for example, every down bow in a passage) and set the articulation for all of them at once. It’s very convenient to work with, especially with complex instruments where the articulation can change with almost every note.

It also avoids all the problems that happen with other methods. If you copy and paste some notes, their articulations get copied along with them. If you adjust the start time of a note, there’s no risk of changing the articulation in the process. If you transpose a passage, there’s no risk of it changing articulations. You can start playing from any point in the score and it always plays with correct articulations.

If someone decides to implement proper articulation management in the future, I’d recommend considering that model.

1 Like

What happens if you don’t assign an articulation to a note? Does it default to the last articulation in the sequence? How are the articulations mapped to keyswitches/CCs for each virtual instrument?

There’s an editor for creating articulation sets for instruments. See Use the Articulation Set Editor in Logic Pro for Mac - Apple Support.

Every note has an articulation, by definition. It’s set to a default value for newly created notes.


FWIW, the “track per articulation” workflow is not just an Ardour-specific workaround: it is used by some large-scale media composers. E.g., see Guy Michelmore’s YouTube video on articulations:

The bit where he explains track-per-articulation starts around here:

Mostly he uses a separate VST intstance (Kontakt, whatever) per track, and he sometimes has upwards of 1000 tracks in a single session.

1 Like

I’m not a fan of that workflow, unless I’m blending different articulations. I’m usually coming from sheet music where I have one instrument per staff/track.

De gustibus, etc. Given my lack of hand independence on the keyboard (fifty years ago I could play well with both :frowning: ), options like key switches interfere with my ability to play a part in with any feeling.

One could still use MIDI channel as the selector for articulations, and assign the channel after-the-fact in the MIDI editor. In this case, setting the track’s “Color Mode” option to “Channel Colors” would probably be useful.

I see key switches as no different from channel switching. You can assign both after you’ve completed your performance.