In answer to your previous statements about how you thought articulation set was supposed to work:
1. The articulation set in this case simply indicates to Logic which articulations are on which channels. There is no setup for the output because the script will take care of that.
If you don't want to use Channelizer then yes. If you want to use Channelizer then you should specifically NOT use the articulation set to set any channels. Channelizer will do that work for you, based on articulationID. Read my original post again.
2. The script knows which articulation is on which channel because of the articulation set file and automatically switches the channel based on the chosen articulation.
Nope, the script doesn't know anything about the articulation set. it only knows what channel the incoming note is on and if it has an articulationID or not. For this script to work properly, you should not be using the articulationSet to change the channel. The script is assuming that it needs to set the midi channel and port for each event, based on the articulationID. You should also not use the OUTPUT section of the articulation set for keyswitches because LogicPro will strip the articulationID away from the notes before sending through the script to the instrument. The script depends on being able to see the articulationID. So do not set the channel in the articulationSet and do not use the output section for anything.
3. In addition, in the Piano Roll, the script changes the channel of the selected notes and controllers already recorded when a new articulation is selected.
As noted in the original docs, the script will increment the channel of each note, based on the articulationID. if your original track or the articulation set is changing the channel before hitting the script, then the script will increment the channel even more based on the articulationID, resulting in probably something you don't want. If incremented channels overlap with other detected source channels, then you get error message, as expected.
That's all I thought it did. I thought it essentially worked the same way that a key switch based instrument would work but would use MIDI channels instead.
Yes it can, but you need to make sure not to set the channel per articulation in your track nor in the articulation set. Let the script do it. Just set the articulationID of each note.
When you ask why I have one track with more than one MIDI channel I'd have to answer - I thought that was the entire point of this script! Are you saying that I'm supposed to have all the different articulations on different tracks? That's what I'm trying to avoid
no, the point of the script is to allow you to have one source track per instrument, regardless of how many articulations. But the script needs to set the channel of each note based on articulationID.
Whenever I see a demo of articulation sets, the big advantage is that we can pick any note on a single track and easily change the articulation of that particular note or set of notes after we've already recorded.
Definitely. Exactly why you should not have to worry about also setting the channel of each note there.
In the case of EW instruments, this unfortunately means changing MIDI channels also,
No. The script will set the channel for you automatically during playback.
It is explained pretty well in the original post of this thread. Try reading that again after reading all these comments and try what I suggested for fixing your project.
Just remember, the script is doing the channel changing. All you have to do is make sure the notes have the articulationID you want and let the script do the channel-changing during playback. Then you have to make sure that your source channels do not overlap their ranges. for example if you have two instruments on two tracks with 8 articulations each, then the first one would be on channel 1 and the second one needs to be no lower then channel 9.