What's new

Logic Pro X Articulation Sets seem to no longer really need a third party switcher!

Dewdman42

Senior Member
ps - I just noticed that script is VEP multi port macro stuff in it. It should work fine anyway without that, for up to 16 channels, but I will update it later today to get rid of anything related to the multiport macro, as that is now superseded by AU3.
 
OP
Ashermusic

Ashermusic

Senior Member
OP
Ashermusic

Ashermusic

Senior Member
Thanks looking forward to trying it out.

For ArtZ ID owners though I have confirmation from Peter that both his cloners, Logic and Kontakt (full version), will work without his other scripts.
 

Peter Schwartz

Senior Member
Hi Jay, just to be clear... I have temporarily suspended the sale of my system, not discontinued it permanently.

Also, FWIW, both the Logic and Kontakt versions of my cloners provide on/off and filtering options for each channel so the number and type of CC's being cloned can be reduced/restricted.

@Dewdman42, I've experimented with creating a cloner that only provides CC cloning on active notes ("technically active" in terms of Note On and Off) and discovered a downside which I don't really like... Say you've got a passage that switches between different flavors of sustain and/or legato on different channels, and you're using CC1 to create a descrescendo across the entire part. Now, typically there will be some degree of overlap or release tail connecting all of those notes. But when CC1 is cloned in such a way as to only affect the "technically active" notes, the ends of overlapping notes can be left hanging with a brighter sound than desired.

Best,

Peter
 
Last edited:

Dewdman42

Senior Member
Not the way I did it. The CC1 will be cloned to ANY channels where there are sustaining notes, or about to be and it chases. Try the script I made and let me know what you think. Wait a minute though, I'm modifying it to get rid of VEP multiport crap
 
Last edited:

Dewdman42

Senior Member
@Dewdman42, I've experimented with creating a cloner that only provides CC cloning on active notes ("technically active" in terms of Note On and Off) and discovered a downside which I don't really like... Say you've got a passage that switches between different flavors of sustain and/or legato on different channels, and you're using CC1 to create a descrescendo across the entire part. Now, typically there will be some degree of overlap or release tail connecting all of those notes. But when CC1 is cloned in such a way as to only affect the "technically active" notes, the ends of overlapping notes can be left hanging with a brighter sound than desired.
Actually on this point there is one aspect which you bring up a good point, which is that if the subsequent notes have slow releases where there is still sound after the NoteOff event, and CC's are supposed to be effecting them, but as you pointed out...aren't anymore. I think this could still be solved by simply having a reasonable amount of time after the NoteOff where CC's should still be propagated to a channel. Let's call it "propagation release" for now. The script I linked to above does NOT do that yet, but I already had a note to myself to do something about that in my script code, so maybe I will soon. It wouldn't be that hard to add. Could provide a slider to tweak the propagation release time easily enough too.

I reckon the above should not be an issue for PitchBend and Aftertouch propagation though right?
 
  • Like
Reactions: rlw

Dewdman42

Senior Member
So I'm going to spend a few days working on my ChannelizerClone script to make it better and will let you guys know when its ready...have a busy weekend, so it might not happen until next week. Too swamped to deal with it today. The one that is there on that link will work anyway right now, just leave the VEP slider set to OFF. It will both channelize and clone CC's, so you need to not channelize anything in the articulation Set. Just set the articulation ID and let this script both channelize and clone the CC's. I'd appreciate feedback from anyone on that one before I get too far with improving it for general use in case I can make my free script the most useable for folks, especially those that are trying to use the factory ArticulationSet feature and just need this.

Some ideas for improvement:
  1. Absolutely no mention about VEP multiport macros.
  2. Able to channelize more than 16 articulations and channelize across AU3 ports while doing so when AU3 is in use.
  3. PitchBend and Aftertouch propagation
  4. Propagation release time, to catch the issue mentioned by Peter above. Or maybe a different as yet un-engineered solution.
  5. An alternative version might make some sense, which doesn't do the channelizing, but rather just propagates CC, PB and AT messages to any channels that have notes sounding across any channels. Then you'd still use the Articulation Set editor to configure the channelizing and just rely on this script for the propagations.
  6. A further alternative would be to write something that basically does what Peter's CC cloner does so that people have an option when its not for sale. That's actually easier to do, in fact I may have already done it, but I didn't want to float it out there without some kind of value-add as long as Peter is trying to sell his.
 
Last edited:

A.G

Active Member
Logic Pro X Articulation Sets seem to no longer really need a third party switcher!
I do not agree with you Jay. There are quite a lot reasons for a good 3rd party Art System like AG one:

• A perfect Software Art Maps EDITOR (like AG EDITOR) with tons of batch editing and multi selection functions, key commands, iOS teleport etc.etc.etc. Logic X Art Sets Editor is just a poor table.

• Region based automation Text points which are shown in the timeline - similar to Cubase "Direction" type. AG supports Text points + Art IDs (equivalent of Cubase Direction + Attribute types).

• Intelligent CC cloning during Channel switching (CPU saving). It is well shown in the AG official Video.

• More than three articulation "Output Mappings". AG offers up to 11 Output Mapping assignments which are ideal for Instruments such as VSL Synchron series.

• Ignoring the 16 Channel DAW limitation for Kontakt Instruments. AG system offers a Kontakt 64 system (ABCD Ports single track direct access) and a brand new VEP MULTI Instance system which can address up to 49152 Kontakt MIDI Channels per a single VEP Instance.

• Dynamic KS Switching. The Logic Art Sets system does not work with Software Instruments which require dynamic KS switching where the articulation must be changed during the Note sustaining (Sample Modeling for example). The AG system supports dynamic KS switching via Text points mode.

X-DAW Articulation Maps EDITOR & Convertor (Coming in August).
- The X-DAW EDITOR will offer 100% of the current AG Art EDITOR batch functions.
- You will be able to open any Logic Art Set (Plist file) in the AG Editor, edit it, and store as a Cubase Expression Map preset, teleport to iPad or export to Logic AG Scripter (Text Points + IDs).
- You will be able to open any Cubase Expression Map in AG Editor, edit it, and store as a Logic Art Set, teleport to iPad or AG Scripter.

As you see Jay, there are tons of needs required by the modern Articulation Instruments offered every day.
Do not worry - AG is here...


 
Last edited:
OP
Ashermusic

Ashermusic

Senior Member
Absolutely good reasons AG, no doubt. And yours is excellent so I certainly am not trying to discourage people from buying a more complete solution.

But in the past a third party solution was essential and now for more basic needs, like mine, it seems not to be.
 

A.G

Active Member
Absolutely good reasons AG, no doubt. And yours is excellent so I certainly am not trying to discourage people from buying a more complete solution.

But in the past a third party solution was essential and now for more basic needs, like mine, it seems not to be.
Thanks for your kind feedback Jay!

I agree that in the past a third party solution was essential (as you remember AG started as the very first 3rd party Logic Articulation developer back in 2014). Now a third party solution is more essential than in the pass, because there are a lot of modern Instruments and systems which are updated every day, and only a 3rd party development is able to follow the new tendencies.

On the other side, the 3rd party developers are "Hands Free". I do not believe that Steinberg will implement Expression Maps conversion for Apple Logic and vice versa. AG is working on such X-DAW ART system, and I do believe it will become the most essential tool for every composer in our days.
We plan to release X-DAW ART next month if everything goes well. Stay tuned.
 
Last edited:
OP
Ashermusic

Ashermusic

Senior Member
Thanks for your kind feedback Jay!

I agree that in the past a third party solution was essential (as you remember AG started as the very first 3rd party Logic Articulation developer back in 2014). Now a third party solution is more essential than in the pass, because there are a lot of modern Instruments and systems which are updated every day, and only a 3rd party development is able to follow the new tendencies.

On the other side, the 3rd party developers are "Hands Free". I do not believe that Steinberg will implement Expression Maps conversion for Apple Logic and vice versa. AG is working on such X-DAW ART system, and I do believe it will become the most essential tool for every composer in our days.
We plan to release X-DAW next month if everything goes well. Stay tuned.
I get it your point but it really depends on the libraries you choose and how you complexly you want/need to work. If you are going to use Orchestral Tools capsule or some of the more complicated Spitfire stuff UACC , yes, a third party solution like yours is pretty much essential. It you want a ton of articulations in a single instance of an engine like Kontakt, yes, again, pretty much essential.

I am not that guy. With my keyswitched libraries, I am finding I can do it efficiently with just Logic's Articulation Sets. When I use a multi-timbral instrument, e.g Hollywood Strings Violin 1 with 16 articulations (and that is 99% of the time fine for the work I am getting) I can also do it fine as long as I have some kind of cc cloner.

Again, in no way am I trying to discourage anyone from buying a third party solution like yours. I was just excited at the progress in Logic's native implementation. For instance, if one of my beginning MIDI orchestration clients or students buys the Amadeus Symphony Orchestra for $149, a great starter set IMHO, I can now give them my Logic template with my Articulation Sets for each instrument and now they can key switch to their hearts' content and know that they will always hear the correct articulation at any starting point in the project with no Scripts involved and frankly, not understand what is going on "behind the curtain" all that deeply. That will be huge for them.

That said, the idea of a non-DAW specific solution really sounds like a winner for people who use more than one, so good luck with that.
 

A.G

Active Member
That said, the idea of a non-DAW specific solution really sounds like a winner for people who use more than one, so good luck with that.
Yep, I missed to mention that we have prepared tons of brand new features for the X-DAW ART release which are 100% related to Logic Pro X. If you follow my ideas, the X-DAW will be updated according to each DAW Articulation specifics. In fact, X-DAW ART will be next AG Toolkit 7.

I do believe that many AG Logic users will be happy with the brand new AG Logic ART features implemented in that release (it does not matter that some of the users do not use Cubase).
 

Dewdman42

Senior Member
Asher and others...

Here is a quick fix for you to try for free CC Cloner replacement.

The following link has a freely available script called CloneEvents. It is highly configurable, though there is no GUI. The following features are supported
  1. clone CC, PitchBend and Aftertouch

  2. configure which events, including specify CC#'s, to clone and which channels to clone them too.

  3. Possible to have different sets of events cloned to different sets of channels independently.

  4. Possible to handle multi-timbral instruments from multiple source tracks, such as to VEP AU3

  5. Handles AU3 multi-port.

https://www.logicprohelp.com/forum/viewtopic.php?f=45&t=143299

(Note, this is not the auto-propagation thing I am also working on, I still need to work out some bugs in it, its a much larger and more complicated script and I might be running into Scripter bugs again, I'm not sure yet. Anyway, that will come later if I get it working).
 
Last edited:
OP
Ashermusic

Ashermusic

Senior Member
Unless things have changed, unlike the other two ArtConductor doesn’t let you do it in real time as you play, you draw it in In automation.
 
OP
Ashermusic

Ashermusic

Senior Member
Asher and others...

Here is a quick fix for you to try for CC Cloner replacement.

(this is not the auto-propagation thing I am also working on, I still need to work out some bugs in it, its a much larger and more complicated script and I might be running into Scripter bugs again, I'm not sure yet. Anyway, that will come later if I get it working).

In the meantime, here is a script for you called CloneEvents. Unzip the attached file and save it to the following directory in order to see it in the list of Scripter scripts:

Code:
~/Music/Audio Music Apps/Plug-In Settings/Scripter/
There is no GUI. You have to edit a few lines of code at the top of the script. Don't be scared its not that hard. Ask me if you have any questions.

In addition to cloning CC's, this can clone PitchBend and ChannelPressure events as well. You have the option to choose which CC#'s you want cloned and on to what channels you want them cloned. Same for PitchBend and ChannelPressure.

It does result in noticeably more midi events then the other more complicated script that I am still working on, but its here right now. Combine this with ArticulationSet channelizing.

Here is the script for further discussion

JavaScript:
/**************************************************************************
* EDIT CloneParameters array to configure which events you want cloned
**************************************************************************/

var CloneParameters = [];

// clone cc1, cc7, pitchbend and channel pressure to channels 1-6
CloneParameters.push({
    srcChan:    1,
    destChans: [1,2,3,4,5,6],
    cc:        [1,7],
    pb:        true,
    cp:        true
});

// Clone cc11, pitchbend and Channelpressure to channels 7-9
CloneParameters.push({
    srcChan:    1,
    destChans: [7,8,9],
    cc:        [11],
    pb:        true,
    cp:        true
});




/************************************************
* DO NOT EDIT BELOW HERE
************************************************/

function HandleMIDI(event) {
   
   for(var i in CloneParameters) {
      if(CloneParameters[i].srcChan == event.channel) {
          handleClones(event, CloneParameters[i]);
      }
      else {
          event.send();
      }
   } 
}


function handleClones(event, entry) {
   
   if(event instanceof PitchBend 
           && entry.pb == true) {
       sendToChannels(event, entry);    
   }

   else if(event instanceof ChannelPressure 
           && entry.cp == true) {
       sendToChannels(event, entry);
   }

   else if(event instanceof ControlChange 
           && entry.cc != undefined 
           && entry.cc.length > 0) {
           
       for(var ccnum in entry.cc) {
           if (event.number == entry.cc[ccnum]) {
               sendToChannels(event, entry);
           }
       }
   }
   else {
       event.send();
   }

}

function sendToChannels(event, entry) {

   if(event.channel != entry.srcChan) {
       return;
   }

   for(var chan in entry.destChans) {
       var src = event.channel;
       event.channel = entry.destChans[chan];
       event.send();
       event.channel = src;
   }
}
While I truly appreciate what you are doing, since yours lacks a user friendly GUI and since I already own it, I will stick with the one I have.
 

Dewdman42

Senior Member
Scripter's GUI capabilities are simply too limited to provide the flexibility that I am providing in this script. I have gone down the Scripter GUI road numerous times and it always ends up either being a very convoluted Scripter GUI or the functionality of the script itself gets compromised in some ways in order to provide some sliders and dials in a sane fashion. If enough people ask for it, I will try to slide in some GUI support later, but honestly its not that hard to tweak a couple lines at the top of the script and the engine I am using provides a lot of flexibility that would be hard to present in a Scripter GUI.

Eventually I may rewrite it in C++ as a MidiFX plugin, then the GUI would be much better. (but if I do it probably will not be free)

I will point out a couple advantages of this CloneEvent script:
  1. It's free

  2. It can clone PitchBend and ChannelPressure in addition to CC's

  3. You can setup a few different source midi channels with separate channelizing, to support multi-timbral instruments or VEP AU3.

  4. Supports AU3 multi-port

  5. You can get very granular if you want...you can choose which CC#'s get cloned to which midi channels

  6. It's free.
 
Last edited:

babylonwaves

Senior Member
Unless things have changed, unlike the other two ArtConductor doesn’t let you do it in real time as you play, you draw it in In automation.
no, not really. you were always able to control the articulations in realtime. but I don't think what you say really answered the question because these days Art Conductor is a collection of Articulation Sets. what you're referring to was more or less discontinued when Logic 10.4 was released on January 2018.

in a nutshell, with Art Conductor for Logic, you get around 3600 Articulations Sets which support most of the libraries on the market. you just load them up and you're set. the sets use what you can do with Logic's articulation management. if that's good enough for you, the collection might be a great time saver. especially because we've done some things including universal key switches for the most common articulations. and for those, you can drag regions in between instruments of different libraries and those articulations stay intact.

in my personal opinion, for 90% of the users, there is no need to use a third party swither anymore. because 90% of the libraries available simply don't need special treatment. apple has ironed out the bugs and added the missing features and now articulation maps work just fine. unless you have special/custom/exotic requirements. and if you have those, my recommendation is to try out peter's scripts. they're are an excellent choice and indifference to other solutions on the market, they're straight forward and easy to understand.
 
Top Bottom