Jump to content

Articulations and MIDI CC continuity. (Or: "What'd I miss?")


MikeShapiro

Recommended Posts

Here's a tricky issue I'm running into concerning practical use of Logic's articulation management system.

 

Imagine you're playing a solo violin that switches between "long" articulations - for example, from sustain to legato to tremolo to sul tasto, etc. Ideally you'd like a single set of (say) CC1 data to control dynamics across all these articulations. That is, each articulation should be "aware" of the last modulation value sent to any of the other articulations, so that if you have a sudden crescendo while playing legato, then switch to tremolo, you don't have to create another CC1=127 to "tell" the tremolo articulation what's been going on dynamically since the last time it was played.

 

However, if the mechanism of articulation switching - as set in the "Output" section of the articulation set editor - is to play different articulations on different MIDI channels, it seems as if this is impossible. If over in Kontakt legato is listening to MIDI channel 1 and sul tasto is listening to MIDI channel 5, they'll appear to only get the CC data when tagged with their respective MIDI channels.

 

Any suggestions for how to work around this?

Link to comment
Share on other sites

In simplest possible terms, I'm trying to track CC1 while changing articulations. This seems to be a problem if the mechanic of changing articulations is a MIDI channel change.

 

I've been researching the UACC standard and think this might solve my problem. If I understand how it works, then every articulation will stay on the same MIDI channel (and respond to the same CC1 messages) but only play when needed.

Link to comment
Share on other sites

At the moment I'm focusing on Spitfire. Imagine one Kontakt multi with several Spitfire individual articulation instances. How do you get only the right one to respond? (Here I'm referring to the protocol for changing articulations - the "Output" part of the Articulation Set.)

 

- Different MIDI channel per Kontakt sub-instance: works but then we can't track MIDI CC1, as described above.

- Key switch: doesn't work if you're splitting articulations across different Kontakt sub-instances. No way to get one instance to stop playing when another's keyswitch comes in.

- UACC, a.k.a. CC32: I *believe* this will work with the proper setup. (Not sure yet.) Every Kontakt sub-instance will simultaneously respond to the same CC1 message, so we're tracking dynamics properly across articulations. And each articulation will play if and only if the proper CC32 values are received.

Link to comment
Share on other sites

I believe UACC was invented by Spitfire, in fact. And yes that should work. You could also write a script that shuffles CC events to the correct midi channel so that Spitfire will get them. If you check with skiswitcher I believe he has your problem solved already in his artzid product. Or perhaps he is just cloning the CC to all channels that might need it basically. I think that's what his stuff does, but I know he specfically addressed the needs of the spitfire stuff, including UACC support if desired.
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...