# ARTzID: Scripts Cinematic Studio Strings & Cinematic Strings 2



## Peter Schwartz (May 20, 2016)

*Cinematic Studio Strings Users:* please see information starting on page 7 of this thread for info on the fixit Script I made for CSS that overcomes the current problem with vibrato depth and volume being linked with the sustained patches. This is something that occurs only under certain conditions, but the fixit Script takes care of abating that problem for now.






Peter "Ski" Schwartz and http://www.skiswitcher.com (SkiSwitcher.com) are proud to announce the release of the first articulation-switching system to tap into Logic's native Articulation ID infrastructure: *ARTz•ID*

*Now available for purchase with promotional pricing in effect!*

*ARTz•ID* writes Articulation ID information directly to the notes you play in realtime. In plain English, this means that every note you play and record contains information about your articulation choice. During playback, notes self-select their own articulations. Not only does this ensure perfect playback of your samples from any start point, but when you copy, move or quantize notes, the articulation information moves right along with them. And when you click on notes in the piano roll, score or event list, they instantly sound with the right articulation.

"Sticky" articulation selection means that the articulation you select to play live cannot be changed by what plays back from your track. Freely overdub different articulations on the same track, or get each note in octaves or chords to play with a different articulation in all patch types, even keyswitching patches.

These are just some of the core features of SkiSwitcher2 which customers have enjoyed since its release nearly a year ago. So what makes *ARTz•ID *different? Well, hold on to your hat...

With *ARTz•ID* we blow past the 16-articulation ceiling of SkiSwitcher2. Now you can switch between *up to 126 articulations per instrument* (up to 144 in Vienna Instruments).

A suite of sophisticated Scripts drive multiple patch types: Keyswitching, UACC (Spitfire), Vienna Instruments, EXS-24, Kontakt Quick Load, and Multi-Timbral MIDI patches (16 articulations, naturally).

Specialty Scripts let you combine up to 4 keyswitching patches and seamlessly switch between them as though they were one giant patch. There's a similar Script for combining Vienna Instruments patches (matrices). And of course, *ARTz•ID *works with Vienna Ensemble Pro.

Setup for each instrument is entirely menu-based from the Scripter GUIs or from Smart Controls.
*





100% backward compatible with existing SkiSwitcher2 installations. *And yes, SkiSwitcher2 will continue to be sold and supported!

Please visit *http://www.skiswitcher.com (www.skiswitcher.com)* for more information.



*
*


----------



## OleJoergensen (May 20, 2016)

Did I really read 126 articuallations pr track?? Hm, I think I drank to much port..
I sounds amazing mr. Schwartz!


----------



## Silence-is-Golden (May 20, 2016)

Sounds like another step in the skiswitcher possibilities.

Is it similar in use/setup?

And, do your current customers get a nice enticing upgrade/crossgrade offer?


----------



## Peter Schwartz (May 20, 2016)

Thanks Ole! Yup, 126 articulations.

S-I-G, yes, the two systems are very similar in use. It's "keyswitch-based" articulation switching where the keys you hit are just a means for informing the system as to which articulation you want, regardless of the actual type of articulation-switching technique used by the patch you're playing. Basically, each key represents a different Articulation ID.

Setup is a tad different from SS2, but like SS2 the setup process is a one-time operation. Also, instead of loading a Script directly into an instrument channel, you load a Channel Strip Preset containing the desired Script. This way the Smart Controls and Script load up together all nicely pre-configured.

And yes, current customers most definitely get a nice enticing upgrade price.


----------



## Peter Schwartz (May 20, 2016)

I just thought of another difference, SIG... With SS2 you need to keep the Scripter GUI open to monitor your articulation choices. With ARTz•ID you can see that display in the Smart Controls, which is a whole lot more convenient.

Other differences/improvements include two articulation name menus instead of just the one. The *Standby Articulation* showing the one you select to play live (that articulation is "sticky") and the *Live+Track* display which is a realtime monitor of what's playing (whether live or from the track).


----------



## stonzthro (May 20, 2016)

Oh, I like this Peter - very nice - I'll be checking this out as soon as it is available!


----------



## ulrik (May 21, 2016)

Beautiful Peter


----------



## Heinigoldstein (May 21, 2016)

Great, long time waiting for this. Will it work in hybrid mode too with more than 16 channels ?


----------



## Peter Schwartz (May 21, 2016)

Hi Heiningoldstein, can you give me a specific scenario, i.e., are you talking about crossing ports in Kontakt or VEPro to provide the ability to get more than 16 channels? Thanks!


----------



## Heinigoldstein (May 22, 2016)

Hi Peter,

most of the time I'm very happy with the 16 channels of SkySwitcher 2. Only with Strings I'ld need more. Right now I got one keyswitch patch with 12 art. and four single patches combined in hybrid mode in one Kontakt instance. Will I be able to expand this with ARTz to, let's say a keyswitch patch with 24 art. and still use single patches on top or will I still stuck with 16 ch. as long as single patches are involved. Or did I get some thing completely wrong and I will be able to get 100+ all the time ?!?

And, will I be able to use both, SkiSw. and ARTz in the same session ?

Thanks a lot for your great support and I'm looking forward to your new tool !


----------



## Peter Schwartz (May 22, 2016)

Hi Heinigoldstein,

Thanks for your reply and for describing your scenario. I think I have some good news...

First, there is always going to be a limitation of "addressing" more than 16 articulations in a multi-timbral setup if we only use the MIDI channel of notes to determine which ones they play. This is certainly a limitation of Play, for example. But with that in mind...

Before you posted about this, I didn't have a Script that would do what you described. But since getting your reply... now I do! I just made this: the Heinigoldstein Hybridizer.






Here's how it works...

Within Play or Kontakt, start by loading up a keyswitching patch (on ch1) of up to 36 articulations (this value can be increased) and 15 additional individual articulations on ch2 - ch16. With this Script you can then articulation-switch between all of these articulations as though it were one giant keyswitching patch.

So... let's say your keyswitching patch has 12 articulations. You'd set *# of KS Articulations* to 12. These would be addressed by articulation ID's 1 - 12. If you select articulation #13 or higher, those MIDI notes will output from the Script on channels 2, 3, 4, etc. up to ch 16. So with this scenario, 28 articulations.

If I increase the # of KS articulations range to 110, the total number of articulations you could switch between with this Script would be 126.

If you can please confirm that this is what you want, I'll add this to the release, name it in your honor (if that's OK), and give you a free copy of the system.


----------



## Peter Schwartz (May 22, 2016)

Heinigoldstein said:


> And, will I be able to use both, SkiSw. and ARTz in the same session ?



Yes. You can selectively run some instruments using ARTzID and others using SkiSwitcher2. You can even run plugins without the use of either system. It's totally modular in that way. There's just one thing you'll have to do: to play a patch using ARTzID you'll switch the Macro to ARTzID mode. To run a SkiSwitcher2-based sound you'll switch the Macro to whatever mode you usually use for that.

I had a feeling that some people might want to switch back and forth, so I added a feature where a MIDI CC message of your choice can be used to switch between the two modes. So if you have a free button on your MIDI controller, you can use that to switch between the modes quite easily.


----------



## Silence-is-Golden (May 22, 2016)

Hi Peter,

A question regarding the 'installation'( from the ss2 website)
If you load it as a preset on your track, does it 'overwrite' in?
I.o.w. How does that work with already created templates?
Thanks


----------



## Heinigoldstein (May 22, 2016)

Hi Peter,

Heinigoldstein Hybridizer......what a great name 

Yor're a master ! But maybe it's not that difficult at all and I'm just not used to articulation IDs. In any case I'm sure ARTzID will solve my problems and I can go back to 1 track for my strings. 

Once again thanks !


----------



## resound (May 22, 2016)

Thank you for adding the Smart Control feature, that is super convenient. Looking forward to this!


----------



## Peter Schwartz (May 22, 2016)

Silence-is-Golden said:


> Hi Peter,
> 
> A question regarding the 'installation'( from the ss2 website). If you load it as a preset on your track, does it 'overwrite' in? I.o.w. How does that work with already created templates?
> Thanks



The procedure: let's say you have a track already loaded with a Kontakt/Spitfire setup (UACC). To get the system to drive it, you'd create a new software instrument on an adjacent track. Then you'd load the channel strip preset containing the Script you need to drive it -- in this case the Multi-Purpose Script. Loading that preset will load the scripter plugin, the script, and configure the smart control layout, bam. Then in the Mixer, grab the Kontakt plugin and slide it over to the instrument plugin slot on the new track.


----------



## Peter Schwartz (May 22, 2016)

Hey HG, you're welcome!



Heinigoldstein said:


> But maybe it's not that difficult at all and I'm just not used to articulation IDs.



Just think of Articulation ID's as MIDI channel numbers that can go higher than 16. And instead of looking for those numbers in the MIDI channel column of the event list you'll see them in the Articulation ID column.


----------



## resound (May 22, 2016)

Capsule, the Kontakt script used with Orchestral Tools instruments, allows you to switch articulations with a CC. Is there a way to assign articulations to a CC in ARTzID?


----------



## Peter Schwartz (May 22, 2016)

Hi resound,

Generally speaking, Articulation ID numbers can be translated into any kind of MIDI message you might want to send to a patch. It's just a matter of writing a Script to do it, and what you're asking for sounds very easy.

Before I go on... I already have a Script that outputs CC#32 messages ("UACC codes") in response to Articulation ID's. If you can get your patches to select articulations based on different CC#32 *values* then yes, this capability is already there.

But... Are you talking about a situation where each articulation is selected by a different CC *number*? Just to be clear, do you want something like this:

CC#1 (any value) selects "sustain"
CC#2 (any value) selects "staccato"
CC#3 (any value) selects "pizz"

...or like this this?

CC# (could be 32 or a CC# of your choice)

value 1 selects "sustain"
value 2 selects "staccato"
value 3 selects "pizz"

Best,

Peter


----------



## resound (May 22, 2016)

Yes, the UACC script is exactly what I need. One CC with articulations set to different values. I haven't used UACC so I wasn't sure exactly how that worked but I had a feeling that would be the answer. Thanks for clarifying!


----------



## JamesIV (May 23, 2016)

This is what I've been waiting for! Will there be presets for UACC libraries, i.e. BML range? Happy to set it up myself, but time consuming. Looking forward!


----------



## thesteelydane (May 23, 2016)

Does this mean I can now use midi channel in my polyphonic staff styles, and still have polyphonic articulations playing? And if so, can those individual articulations still have their own individual CC data, for example modwheel? Because that would blow my mind...


----------



## Peter Schwartz (May 23, 2016)

@ the steelydane -- Yes to all.

@ JamesIV -- No presets at the moment...


----------



## mc_deli (May 23, 2016)

Very excited to see video. Seems very cool. Nice work!


----------



## thesteelydane (May 24, 2016)

Peter Schwartz said:


> @ the steelydane -- Yes to all.
> 
> @ JamesIV -- No presets at the moment...


Sign me up!


----------



## OleJoergensen (May 24, 2016)

thesteelydane said:


> Sign me up!


Me too!


----------



## Peter Schwartz (May 24, 2016)

This is what you guys are talking about, right? Here I've got a multi-timbral plugin on one track (no "parts"). The music is for 3 solo violins. Think of it as a divisi part for a larger ensemble, but just 3 players get to perform this little waltzy thing.

From the one plugin I've got arco, staccato and pizz playing simultaneously (par for the course for a multi-timbral setup anyway), with each one getting its own volume rides with CC#11, and each articulation (in this case, each part) is on its own staff. Articulation ID determines which articulations are being played, and the MIDI channel determines what staff they appear on in the score. Here I'm using a 3-part polyphonic staff style, and explode polyphony is enabled.

I quickly entered in score markup just for the 2nd and 3rd violins (stacc and pizz) which sort of mirror the CC#11 volume rides for those parts.

All of this could play from one track, but of course that would make it hard to record each volume ride separately. So to facilitate this I just created 3 duplicate tracks and performed a pass on each with my controller's CC#11 slider.

Lemme know if this is what you are after.


----------



## Peter Schwartz (May 24, 2016)

BTW, that part plays back exactly the same (simultaneous articulations) from a keyswitching patch from the same library with those sounds, minus (of course) the individual CC#11 control over each one because... it's... a keyswitching patch.


----------



## samphony (May 24, 2016)

@Peter Schwartz
The genius is at work again!


----------



## Peter Schwartz (May 26, 2016)

For anyone interested... *ARTz•ID* is now available for purchase at http://www.skiswitcher.com (www.skiswitcher.com). Promotional pricing is in effect!


----------



## Ashermusic (May 26, 2016)

As always, the Schwartz is with us.


----------



## Matt Riley (May 26, 2016)

What possibilities does this open up in the score editor?


----------



## Peter Schwartz (May 26, 2016)

Matt Riley said:


> What possibilities does this open up in the score editor?



Hi Matt,

There are two... The first is what I explained above. Since the articulation ID value of each note determines what articulations they'll play, it leaves the MIDI channel free to let you allocate notes to different staves or voices when using polyphonic staff styles. Furthermore, you can change the articulation of any note OR the staff it lives on after-the-fact while editing.

The second is letting you expand the range of articulations that you can express on any one track because of the system's ability to let you combine patches. Let's say you have a keyswitching violin section patch (24 articulations) that you like to use a lot, but it doesn't have harmonics. There's another patch that does, but it has to be hosted on its own track. When you want to produce notation for the violin section as a whole, you now have to wrangle notes from across two tracks. Most of the sounds from track 1, and just the harmonics from track 2.

With ARTzID you can load both patches up in the same plugin (or in VEPro). Keyswitch notes 1 - 24 let you select those 24 articulations from your fave violin patch, and keyswitch #25 gives you the harmonics from the other patch. All on one track.

HTH

Peter.


----------



## Peter Schwartz (May 26, 2016)

BTW, this extra "add on articulation" of harmonics in my example above can come from a keyswitching patch, or, an individually loaded patch of harmonics. And they can be from two different libraries too. For example, if your fave string sound is Kontakt-based, then of course the harmonics "add on articulation" would have to be Kontakt-based too but it doesn't have to be from the same library. But... if you're using VEPro, you can pull off this same stunt using a mixture of plugins (fave strings = Kontakt, harmonics = Play).


----------



## samphony (May 26, 2016)

May the Schwartz be with you....
Always


----------



## Malo (May 27, 2016)

I bought ARTzID yesterday, and now I am finally down to 5 keyswitchable tracks of Hollywood Strings. Much better than the 32 tracks I had prior to yesterday.

The installation and setup instructions are very easy to follow. All the included screen captures really make the setup painless. Thank you, Peter!

Very happy customer here!


----------



## Peter Schwartz (May 27, 2016)

(Can't help it, I just love emoticons).

Malo, thanks for posting about your experience!


----------



## Ashermusic (May 28, 2016)

I got to play with this yesterday, with Peter's help.

What he has achieved with this is remarkable, just brilliant, and if you need more than 16 patches in an instrument, a great choice.

But for me I am sticking with the SkiSwitcher 2 because through no fault of Peter's, it doesn't work in Folder Stacks and they are an important part of my Logic Pro X workflow. Also, 7-10 articulations for an instrument in the libraries I use allow me to compose 95% of what I ever need to compose.


----------



## wbacer (May 28, 2016)

+1 with ARTzID
I just got it up and running last night as well.
Also as a SkiSwitcher 2 user, the transition was pretty seamless.
I'm confident that with the next iteration of ARTzID and/or the next Logic upgrade the folder stack issue will soon disappear. Good news is that depending on your needs, you can use ARTzID on one track and SkiSwitcher 2 on a different track in the same Logic project.
Great work Peter


----------



## Ashermusic (May 28, 2016)

wbacer said:


> Good news is that depending on your needs, you can use ARTzID on one track and SkiSwitcher 2 on a different track in the same Logic project.
> Great work Peter




Very valid point! I would just have trouble remembering which was using which


----------



## Peter Schwartz (May 28, 2016)

Thanks for the +1 Wayne!

Regarding stacks, there's nothing I can do about Logic being incompatible with its own features! *[EDIT: With ARTz•ID version 1.1 this problem has been solved. This means some of the information that follows may no longer be relevant]. *

But there is an alternative/workaround: use *Hide Groups* instead. Voila! 

I'm hopeful that the Logic Boyz will find a way around this. Meanwhile, it's not that I don't appreciate the problem, but it has to be put in perspective. I've brought a hidden feature of Logic out of the shadows and made it accessible. It adds huge numbers of capabilities for composers. Formerly, the only plugin that responded to Articulation ID was EXS-24. Now you can drive any sample library with it. In effect, I've found a way to "universalize" Articulation ID. So when you bring up an issue with track stacks, again it's not like I don't appreciate the problem. But it has to be put in perspective, especially with respect to the price. Dot dot dot...


----------



## Ashermusic (May 28, 2016)

Once again, what Peter has achieved is nothing less than marvelous.


----------



## OleJoergensen (May 29, 2016)

"Hide Groups" Thank you for inspiration. I didnt even know that one. Normally I group sections with the "simple" Stack.


----------



## samphony (May 29, 2016)

OleJoergensen said:


> "Hide Groups" Thank you for inspiration. I didnt even know that one. Normally I group sections with the "simple" Stack.



Logic also lets you toggle show/hide group 1-9 via key command/midi/osc from the available 32 groups.


----------



## resound (May 29, 2016)

This came at the perfect time. I recently added a PC slave to my system so I have to rebuild my template. Now I'll be able to reduce my track count even more with the use of ARTzID  

I tested it out yesterday and everything worked great! I am excited that I can use TouchOSC to change articulations and the Smart Controls window is super convenient. There is only one downside for me with the new system. With SkiSwitcher2 I could easily change the articulation of a previously recorded note by pressing C or Option+C (Event Channel +1/-1), but the key commands related to articulation IDs seem to be quite lacking. The only way of changing the articulation ID of a note I have found is to either right click on the note in the piano roll, or manually change the ID in the event list. It's not a huge inconvenience, but I wish there was a key command that could do this.

I wonder if there could be a way to alter the articulation ID of a previously recorded note inside the Smart Controls? For instance, clicking on a note in the piano roll and then selecting a different articulation in the Live playback drop down menu would change the articulation of that note.


----------



## Peter Schwartz (May 29, 2016)

I know, it's a drag that there aren't equivalent key commands for articulation ID. The ones we have are:

• Select Same Articulation ID's
• Separate MIDI Region by Articulation ID
• Articulation ID (display toggle)

I may have a little solution for you. It's far from perfect, but it's better than nothing though I'll let you be the judge...

There are four key commands. They are:

• Last Clicked Parameter +1/-1
• Last Clicked Parameter +10/-10

Of course, you can just assign key commands to use these. Just click on the articulation id field and go to town. But if you want some kind of MIDI-based solution...

Do you have two (possibly four) assignable buttons your controller available to be put to use? Or possibly (this is a stretch) four keys on your main controller that you could allocate towards serving a very non-musical function? You could learn those functions to MIDI events and change the articulation id using buttons or keys on your controller. So now on my controller, one button is learned to the +1 function, the other to the -1 function. By clicking on the articulation id field, I can use the buttons to inc/dec the values, either singly or several at once. Exactly the same as the key commands.

There's a trick to making this work aside from just learning the functions to external MIDI which I'll be happy to share. But first, let me know if you think this would be a viable alternative.


(it may say that the content has to be viewed directly on YouTube)


----------



## resound (May 29, 2016)

That certainly looks like it could be a nice alternative and I've got room for a couple extra buttons on my TouchOSC screen  What's the trick? Does this only work in the event list or is it possible in the piano roll as well?


----------



## Peter Schwartz (May 29, 2016)

It's mostly local to the window in which you clicked on something. If you're working in the piano roll and you have the event float displayed, you can click on the art. id field in there and use those functions.

Being that you're doing the TouchOSC thing, no special tricks required! For the +1 and -1 functions, just create two buttons programmed that transmit a generally unused CC like 33 or something. If possible, program the button action so that it's only when you hit a button that it sends the CC message. 

Values: they're totally your choice, but for example, send the CC with a value of 1 for the +1 function, and a value of 0 for the -1 function. 

Then you can do the same for the +/- 10 functions if you want.


----------



## Peter Schwartz (May 29, 2016)

I'm playing around with this some more, and the behavior is better than I thought. So...

If you have both the event list and piano roll open in the main window, click on an articulation id in the event list. Then, regardless of what region you display in the PR you can continue to use those functions to change the id of any notes you select in the PR. But keep in mind that it's still the articulation id value _in the event list_ that's changing.

By default, the event list is set to "content link" so when you click on a region, the piano roll and the event list will both display the same content. That's why this seems to work.


----------



## resound (May 29, 2016)

Thanks Peter for your time and insight! I've got it pretty much working, although it is working slightly differently on my system. Are you just single clicking on the ID in the event list? I have to click and drag up or down to first change the value and then it will recognize what I clicked. So essentially it is working like "Increase/Decrease Last CHANGED Parameter" rather than Last Clicked...but once I've got it set, I can click on different notes in the piano roll, even groups of notes, and it continues to work. This is pretty close to what I was looking for, thanks for the tip! Now I should see if I can bug the Logic team to add in some more key commands for Articulation IDs


----------



## Peter Schwartz (May 29, 2016)

You're welcome! Sometimes all I have to do is click on the parameter. Other times I have to change it. Haven't found a pattern yet. And yeah, definitely bug the Logic Boyz on this if you can!


----------



## wbacer (May 30, 2016)

resound said:


> I am excited that I can use TouchOSC to change articulations and the Smart Controls window is super convenient.


Now you've peaked my interest. How did you get TouchOSC to change articulations?
Did you have to create a custom TouchOSC template?
Thanks


----------



## Peter Schwartz (May 31, 2016)

(Pssst... See p.7 of the *How It Works Guide*).


----------



## hazza (May 31, 2016)

Just to add my voice to the chorus of praise for this amazing tool. It really is a game-changer. This functionality has been lying untapped within Logic for ages and at last Peter has cracked it so it's actually usable. No more tedious keyswitch CC editing, no more keyswitch notes littered around the parts, the articulation is now indelibly linked to each note and the scripting takes care of everything else under the hood. And I don't have to redo my template - all 16 channels are usable concurrently.

Good to hear these ArtID editing tricks, will get onto those. Let's hope the Logic devs take note.

Thanks again Peter!


----------



## resound (May 31, 2016)

wbacer said:


> Now you've peaked my interest. How did you get TouchOSC to change articulations?
> Did you have to create a custom TouchOSC template?
> Thanks


Yea, all you need are push buttons that send CC32 values.


----------



## wbacer (May 31, 2016)

Thanks resound and Peter, I just built my first TouchOSC template and for some strange reason it actually works.
Beginners luck.


----------



## Peter Schwartz (May 31, 2016)

Careful with "the OSC". It's highly, highly addictive because it's insanely powerful for this kind of appliation. For one thing, you could set up custom articulation-switching buttons for each patch and switch articulations from that instead of from a keyboard. And it's by far the easiest way to create layouts where you have consistency in terms of button placement & what articulation each one selects. For example, a layout for strings might have tremolo on a certain button. Of course there's no direct equivalent articulation for flute, but it would make sense to use that same button to select a flutter-tongue articulation. For brass, same thing. For timp, tremolo. For harp, bisbigliando. Etc.

Of course with the plethora of articulations possible on each instrument of the orchestra, the extent to which your libraries reflect them, and the total lack of consistency between libraries regarding how they position their articulations in keyswitching or UACC layouts, you'll have your work cut out for you! Of course, the UACC protocol has taken a major stab at codifying the association of a number with a particular type of articulation. But whenever anything is codified you start to lose flexibility, or introduce new complications. The saving grace here with articulation ID (and specifically ARTzID) is that there are 126 possible selections for any given instrument. (Zero is not used, and if I'm not mistaken it's not allocated in UACC either. And the value of 127 is "reserved for the system" in ARTzID). Still, 126 is a truly huge number to play with.


----------



## Nick Batzdorf (May 31, 2016)

Another brutal upgrade! Broooo-tal.


----------



## Peter Schwartz (May 31, 2016)

Et tu, Brutal? 
<--- Eh, watch me put some English on this...


----------



## wbacer (May 31, 2016)

Yes, lots of choices. I think I'm gonna need a bigger hard drive, the one between my ears is getting full and slowing down.


----------



## Peter Schwartz (Jun 1, 2016)

*Promotional pricing* for ARTzID has been extended through *June 15th*! See http://www.skiswitcher.com (www.skiswitcher.com) for details.


----------



## PJMorgan (Jun 1, 2016)

Peter Schwartz said:


> *Promotional pricing* for ARTzID has been extended through *June 15th*! See http://www.skiswitcher.com (www.skiswitcher.com) for details.



Great! I thought I missed it. Love Skiswitcher2 & really like the visual feedback & extra switching options ARTzID Has to offer.



Ashermusic said:


> But for me I am sticking with the SkiSwitcher 2 because through no fault of Peter's, it doesn't work in Folder Stacks and they are an important part of my Logic Pro X workflow. Also, 7-10 articulations for an instrument in the libraries I use allow me to compose 95% of what I ever need to compose.



Does this mean it won't work on individual tracks within a track stack or just the folder track itself? I use Track stacks a lot for bussing/grouping/FX.


----------



## Peter Schwartz (Jun 1, 2016)

PJMorgan said:


> Great! I thought I missed it. Love Skiswitcher2 & really like the visual feedback & extra switching options ARTzID Has to offer.



Thanks PJ!



> Does this mean it won't work on individual tracks within a track stack or just the folder track itself? I use Track stacks a lot for bussing/grouping/FX.



Here's the whole situation (including a workaround!)

• If you select a track that lives in a stack or folder, a disconnect occurs where ARTzID can no longer communicate to Logic's Articulation ID system and let you switch articulations _live_ from your articulation-switching device (mini keybooard, Lemur, TouchOSC device, etc.). I can see exactly how and where the disconnect occurs, but it's at a level that can't be fixed except by the Logic devs. But now for the good news...

• This is exclusively an "input problem", not a playback problem. If you record on an ARTzID track that lives outside of a stack or folder, and afterward move that track into a stack or folder, it will play back 100% fine. And that's because the input stage (where ARTzID writes different ID's to notes) is separate from the output stage -- where notes on different ID's play back all the right articulations.

And that leads me to the workaround...

• Temporarily move a track outside of a stack or folder to record. When you're done, pop it back in.


----------



## PJMorgan (Jun 1, 2016)

Peter Schwartz said:


> ......But now for the good news...
> 
> • This is exclusively an input problem, not a playback problem. If you record on an ARTzID track that lives outside of a folder or stack, and then move it into one, it plays back 100% fine. And that's because the input stage (where ARTzID writes different ID's to notes) is separate from the output stage -- where notes on different ID's play back all the right articulations.
> 
> ...



I definitely think I can work with that workaround until the logic team sorts it out, thanks for that Peter 

When using Skiswitcher I sometimes go the lazy route, draw in the midi & then change the midi channel per notes, I assume this is also doable for ID's within a stack via the list editor?


----------



## samphony (Jun 1, 2016)

@Peter Schwartz like ze Germans say > Brutal


----------



## Peter Schwartz (Jun 1, 2016)

PJMorgan said:


> When using Skiswitcher I sometimes go the lazy route, draw in the midi & then change the midi channel per notes, I assume this is also doable for ID's within a stack via the list editor?



Yes. MIDI & ID's are always editable in any region on any track.

BTW, I edited my post above to explain the situation a bit more clearly.


----------



## OleJoergensen (Jun 4, 2016)

Hello Peter.
Im in the installation process and have some troubles. When I try to open the ARTz-ID Multi-Purpose Channel strip I can't see it in Logic. It is a script? I believe I did copy the channel Strip presets to the right folder..

kind regards Ole.


----------



## Peter Schwartz (Jun 4, 2016)

Hi Ole. You've got the install exactly right.

I think you might be trying to apply SkiSwitcher2 setup to ARTzID, but they're different.

With SS2, you add a Scripter plugin to the instrument channel and then select the Script you want to use to drive the type of patch you're playing. ARTzID is different. To load the kind of Script you want to use, just load the Channel Strip Setting with the same name.

Example: if you want to use the Multi-Purpose Script (the "MP Script") load the MP Script channel preset. That's it! 

When you load any of the ARTzID Channel Strip Settings, the system does three things for you: it loads the Scripter plugin(s) (sometimes two are installed), loads the Scripts into them, and configures all of the Smart Controls for you. So unlike with SS2, you'll never have to load Scripter plugins and then load Scripts into them. The Channel Strip Settings do all of that work for you.

Since the Channel Strip Settings are the method for loading Scripts in ARTzID, they won't show up individually in the Scripter's menu as do the SkiSwitcher2 Scripts.

You can reference this information on page 11 & 12 of the User Manual.

Cheers!


----------



## OleJoergensen (Jun 4, 2016)

That was quick reply! thank you Peter.
But it is still night or very early morning over there. Did the "producer" wake you up?


----------



## Peter Schwartz (Jun 4, 2016)

You're welcome! Yes, it's late here but I always work the graveyard shift. Regarding the producer, he was given an "early retirement package".


----------



## OleJoergensen (Jun 4, 2016)

Sorry Im back again. Im a page 11-12 in the installation manual. When I click the pencil to open the controller Assignments panel, the panel does not look like the one in the manual.
Im not sure if I should contact you at your email or if its ok here? Maybe there are some other "slow brain" persons here, who could have use of it.....


----------



## Heinigoldstein (Jun 4, 2016)

This maid be a stupid question, but did you scroll to the top of that window ? That's what I missed the first time. Definitely another slow brain here


----------



## OleJoergensen (Jun 4, 2016)

Heinigoldstein said:


> This maid be a stupid question, but did you scroll to the top of that window ? That's what I missed the first time. Definitely another slow brain here


Thank you for replying. It turned out to be a system setting 
System settings- Advanced- Control Surfaces...


----------



## Peter Schwartz (Jun 4, 2016)

Hi Ole, 

<---- _This one's heading straight for the Advanced Settings. I need a new monitor anyway._

You can always contact me via the contact page or tech support link on the website.


----------



## Nick Batzdorf (Jun 4, 2016)

Okay, I've moved the competitive posts for discussion with other moderators.

As a general rule, please don't step on competitors' commercial announcement threads. It's distasteful under any guise.


----------



## Peter Schwartz (Jun 5, 2016)

A lil' gift for my ARTzID customers: a simple but effective Articulation ID -to- UACC value mapper. Lets you remap up to 126 ID's. 

Totally menu-driven. Includes built in Articulation ID monitor and reset function. And to help keep track of all the ID's, they're visually grouped in "octaves" (every 12 notes) by way of colored dots and... well, you'll have to get it to find out the rest of the story! Free for all ARTzID customers. Visit the contact page at http://www.skiswitcher.com (SkiSwitcher.com website) to request your copy.


----------



## rap_ferr (Jun 10, 2016)

Hello Peter,

I'm trying to buy it but when I click on button buy the page doesn't load.


----------



## Peter Schwartz (Jun 10, 2016)

Hi rap_ferr, I see you got through. Thanks!


----------



## Peter Schwartz (Jun 11, 2016)

*Summing Stack and Folder Stack Problem: SOLVED!*

Backstory: if an ARTzID-enabled track lived in a summing or folder stack, you couldn't select articulations using your switching device (mini-keyboard, TouchOSC, Lemur, etc.) Tracks had to be moved outside of a stack to let you choose articulations in the normal fashion. Not ideal.

But that was then. *I've found a way around this and the problem is solved! *

_Details to come..._


----------



## clisma (Jun 11, 2016)

Fantastic Peter! This was the only thing holding me back, as I employ folder stacks a lot. Looking forward to your magic solution...


----------



## OleJoergensen (Jun 11, 2016)

Peter Schwartz said:


> *Summing Stack and Folder Stack Problem: SOLVED!*
> 
> Backstory: if an ARTzID-enabled track lived in a summing or folder stack, you couldn't select articulations using your switching device (mini-keyboard, TouchOSC, Lemur, etc.) Tracks had to be moved outside of a stack to let you choose articulations in the normal fashion. Not ideal.
> 
> ...


Thats great news.......


----------



## Ashermusic (Jun 11, 2016)

Of course he did. My boy Peter is relentless and wicked smart.


----------



## rap_ferr (Jun 11, 2016)

Guys,

I'm having trouble to use it with my ipad running touchosc.

I think the part related to artzid i got it and did everything acording to the manual.

Now, could you guide me the steps to program buttons that would work as keyswitches in touchosc?


----------



## rap_ferr (Jun 11, 2016)

clisma said:


> Fantastic Peter! This was the only thing holding me back, as I employ folder stacks a lot. Looking forward to your magic solution...


Thank YOU!


----------



## Peter Schwartz (Jun 11, 2016)

Aw shucks Jay!

I estimate it will take me a few days to finalize everything and update the documentation. I'll post here again when it's ready.



rap_ferr said:


> I'm having trouble to use it with my ipad running touchosc.



Hi Rap,

Program the buttons to output CC#32 messages. Each button should be set to "momentary" and output a MIDI message only when you press it. For example, your first button should output CC#32, value = 1. Releasing the button should output nothing. But if that's not possible, program both the press and release to be the same. Per this example, CC#32, value = 1 for press and release.

You don't need to program actual MIDI notes into these buttons. Just use CC#32 messages.


----------



## rap_ferr (Jun 11, 2016)

Hi Peter, thanks for the info.

In OSC Editor, we have a choice of push and toggle buttons, which one should I use?

Also, do I have to check the OSC box? What about the value range field? Shoul I let it from: 0 / to: 1?

On the midi tab, sould I choose value, touch or color for the enabled?

The last: should I choose any channel or let it on 1? What about the range (the default is 0 to 127)?


I'm sorry for so many questions, but I've already tried a bunch of different configurations and nothing worked.


----------



## Peter Schwartz (Jun 11, 2016)

•Push
•OSC box checked
•Range = the same for high and low. These values should be different for every button you create.
•MIDI Tab = value
•Channel = 1

Every button needs a different high/low value. I think that will be enough to get you started.


----------



## rap_ferr (Jun 11, 2016)

Thanks Peter, I'll try it later tonight!


----------



## chomeaso (Jun 14, 2016)

I had few difficulties while installing but was able to get them work  I like it very much, thanks peter.
I did read about track stack not working right now, I was stupidly not remembering that while I was trying to set this up on my existing template with sooooooo many tracks within stacks. I got angry with myself, Wow... I did read it was not working in this thread and didn't take long to forget. haha


----------



## Peter Schwartz (Jun 14, 2016)

Hi Chomeaso,

Thanks for getting the system!  Please write to me privately about your installation difficulties. I'm always interested in making any possible improvements to the instructions.

The fix for Track Stacks will be done in a week or less. I've re-engineered a lot of things to make this work, so I just want to test it a bit more and of course revise the documentation. There are some additional features that I was able to put into this version too, and I'll reveal them when I officially release it.

For the time being, the easiest solution is to slip the track you want to record out of the stack. Record your part, then slip it back into the stack.


----------



## resound (Jun 15, 2016)

Looking forward to the track stack fix!


----------



## Peter Schwartz (Jun 22, 2016)

ARTzID version 1.1 with track stacks compatibility has been officially released! I've attached the release notes to this post. In addition, it's now possible to switch articulations using notes on your main controller. Many other improvements and new features too. 

BTW, promotional pricing is still in effect through July 1st.



​


----------



## chomeaso (Jun 22, 2016)

Fantastic! Great work Peter. Thanks for the update, can't wait to try


----------



## wbacer (Jun 22, 2016)

Just finished integrating the update into my full orchestral template and it works perfectly, track stacks and all.
Thanks Peter.


----------



## Peter Schwartz (Jun 22, 2016)

Thanks for letting me know wbacer, and thanks also to chomeaso -- especially for the inspiration to create the Combinatrix!


----------



## OleJoergensen (Jun 23, 2016)

That is great news Peter. Where/ how do I update ArtzID?
I look forward to try it out.
Thank you.


----------



## Ashermusic (Jun 23, 2016)

Great, just great, Peter.


----------



## Peter Schwartz (Jun 23, 2016)

Thank you Jay!

@ Ole, I'll send you a link for the update.

To all ARTz•ID v1.0 customers --- you can request the v1.1 update via the contact tab at http://http//www.skiswitcher.com (www.skiswitcher.com). Later this week, after I've recovered a bit from sleep deprivation (there was a _lot_ of re-engineering, manual re-writing and coffee involved) I'll be sending out a newsletter about the update too.


----------



## OleJoergensen (Jun 23, 2016)

Thank you Peter! Take your time.
I wish you a Peaceful sleep


----------



## resound (Jun 23, 2016)

Awesome! I was just going to ask if it would be possible to display just the ID number and articulation name, but it looks like you already beat me to the punch  Speaking of that, it seems that the displays reset to the default (ID number + MIDI note + Art. Name) each time you open a project. Is there a way for the display setting to save with the project?


----------



## Peter Schwartz (Jun 23, 2016)

Hi Resound,

It's not possible to save the display settings with the project. But... what I might be able to do is make that the default display style. Would that work? It would just be a matter of re-coding the Scripts a little bit. I'll definitely give that some thought!


----------



## Ashermusic (Jun 25, 2016)

I set up, with Peter's help of course, Touch OSC to switch articulations with Peter's new Articulation ID version of the SkiSwitcher. It just keeps getting better,


----------



## resound (Jun 25, 2016)

Peter Schwartz said:


> Hi Resound,
> 
> It's not possible to save the display settings with the project. But... what I might be able to do is make that the default display style. Would that work? It would just be a matter of re-coding the Scripts a little bit. I'll definitely give that some thought!


I don't know about everyone else but that's what I would prefer. I have a TouchOSC template that looks pretty much the same as what Jay just posted, so all I need to see is the Articulation number and name. It's not a big hassle though, just a couple of clicks


----------



## wbacer (Jun 25, 2016)

Variation on Theme
If anyone would like the TouchOSC file, see attached.


----------



## OleJoergensen (Jun 26, 2016)

wbacer said:


> Variation on Theme
> If anyone would like the TouchOSC file, see attached.


Thank you! It was just what I was looking for. Im new to this OSC and I just bought the new iPad pro 12.3. I look forward to use it


----------



## Ashermusic (Jun 26, 2016)

But mine is prettier


----------



## Peter Schwartz (Jun 26, 2016)

Hi resound,

Thanks for your input on this. Making that the default is certainly do-able with a little juggling of the code. BTW, which Script are you using the most?



resound said:


> I don't know about everyone else but that's what I would prefer. I have a TouchOSC template that looks pretty much the same as what Jay just posted, so all I need to see is the Articulation number and name. It's not a big hassle though, just a couple of clicks


----------



## resound (Jun 26, 2016)

Peter Schwartz said:


> Hi resound,
> 
> Thanks for your input on this. Making that the default is certainly do-able with a little juggling of the code. BTW, which Script are you using the most?


Sweet! Let me know if you end up doing that. 

I'm mostly using the MP script and multi-keyswitch script in my template. It's probably about half and half.


----------



## clisma (Jun 30, 2016)

Question: the new Cinematic Studio Strings uses velocities in conjunction with keyswitches, and my current solution, ArtConductor, does not allow for such usage. I'm looking to pick up CSS soon and would need to jump ship. Does ARTzID cater to this function somehow? Apologies if the question is elementary, I'd appreciate an answer anyway. Thanks!


----------



## Peter Schwartz (Jun 30, 2016)

Hi Clisma, I'm currently working on a script that will drive CSS. Stay tuned!


----------



## clisma (Jun 30, 2016)

Thanks Peter, I appreciate your quick responses and diligent work! Will pull the trigger on migrating...


----------



## Peter Schwartz (Jun 30, 2016)

You're welcome!

BTW -- and this goes out to anyone interested -- is there anything about CSS that you'd like it to do but can't? Here's an example based on something I built in to my Cinematic Strings 2 Script for SkiSwitcher*...

With that library, if you're playing pizz basses but you play too hard, you end up triggering the snap pizz. So I built in a "pizz limiter" (on/off). When enabled, you can play the pizz basses over their full velocity range but no matter how hard you play, you can't possibly trigger the snap pizz.

That's just a simple example. But if there's something along those lines which you'd like to be able to do, but which CSS can't do natively, post here and I'll see what kinds of tricks I can pull off with the Script. 

* a version of this for ARTzID will be coming soon.


----------



## Themisto (Jun 30, 2016)

Doh, just missed out on the special intro price :( I was going to order last night but got tied up with family visit.


----------



## djrustycans (Jul 1, 2016)

Themisto said:


> Doh, just missed out on the special intro price :( I was going to order last night but got tied up with family visit.



Same issue here - the intro price was supposed to be carried through until today (July 1st) but when checking out with Paypal it says $79 rather than $59!

I've only discovered this today so I'm late to the party!


----------



## Peter Schwartz (Jul 1, 2016)

Hi Themisto and DJRusty,

The discount is alive and well and active through the end of today, July 1st, 11:59 PM Pacific Standard Time. Just be sure to enter the discount code RTZ in the box above the purchase button and you'll get the discount. I just tried it and it comes up at $59, as it should. Let me know if for any reason it doesn't work for you and I'll get you sorted, no problem.


----------



## djrustycans (Jul 1, 2016)

Peter Schwartz said:


> Hi Themisto and DJRusty,
> 
> The discount is alive and well and active through the end of today, July 1st, 11:59 PM Pacific Standard Time. Just be sure to enter the discount code RTZ in the box above the purchase button and you'll get the discount. I just tried it and it comes up at $59, as it should. Let me know if for any reason it doesn't work for you and I'll get you sorted, no problem.



Ahhh, thanks - I was missing the discount code!


----------



## Themisto (Jul 1, 2016)

Peter Schwartz said:


> Hi Themisto and DJRusty,
> 
> The discount is alive and well and active through the end of today, July 1st, 11:59 PM Pacific Standard Time. Just be sure to enter the discount code RTZ in the box above the purchase button and you'll get the discount. I just tried it and it comes up at $59, as it should. Let me know if for any reason it doesn't work for you and I'll get you sorted, no problem.


Hi Peter,

Thanks for guidance, I now see the RTZ code above the buy button , completely missed it before you replied.

Just purchased it 

Thanks,

Andrew.


----------



## JohnBMears (Jul 1, 2016)

Peter Schwartz said:


> You're welcome!
> 
> BTW -- and this goes out to anyone interested -- is there anything about CSS that you'd like it to do but can't? Here's an example based on something I built in to my Cinematic Strings 2 Script for SkiSwitcher*...
> 
> ...



Hey Peter, Do you have CSS yet? I am wondering if all of the patches also come split out-- ready for me to load in separately since I am still using SS2.

Thanks!

JOHN


----------



## Peter Schwartz (Jul 1, 2016)

Hey John, Yes, I have CSS. My preliminary Script works, does its thing nicely. Now I'm futzing around with additional features. Will have a Script for this soon for ARTzID, and then for SkiSwitcher2 too. Stay tuned!


----------



## Peter Schwartz (Jul 5, 2016)

Hey Everyone,

*Cinematic Studio Strings! Fantastic, right?* Gotta love the energy of the sFz's alone, not to mention all of the more obviously lovable articulations. And now I've got an ARTzID Script for CSS that should be ready to go out this week after a bit more testing. For now, a little preview...

The CSS Script offers numerous features that actually extend the native capabilities of CSS. Here's the short list:

*One Finger Trills and Polyphonic Trills:* Normally with CSS you select the trill articulation and then play either a half or whole step interval to get the respective trill. This is cool, but not great for notation -- as you'll have two notes in the score where you only really want one. Plus, it's extremely difficult to play chords or mix trills in the same passage -- let alone have two different trills play simultaneously.

With the ARTzID CSS Script you can now play trills with one finger! Select ID#15 for half step, ID#16 for whole step. One finger trills! But on top of that, you can now play trills polyphonically, and half & whole step trills can sound simultaneously.

But just in case you like the original Trill setup, I've included ID's to access the normal CSS scheme (non-legato and legato).

*Con Sordino*: I gotta say, the CSS guys did a bang-up job simulating sordino! But now you can say goodbye to hitting the velocity-sensitive keyswitch to turn it on and off. This Script allows you to select any CC of your choice to turn Sordino on or off remotely, recording those changes as MIDI -- or -- you can do it from the Smart Controls and write your moves to automation.

*Re-Mapped Articulations*: All possible articulations and articulation combinations (with or without legato, including the advanced legato sustains) each have their own ID, twenty three in all. The Articulation List follows.






1 Sustain NL (non-legato)
2 Sustain Legato
3 Sustain Legato Advanced
4 Trem Leg
5 Trem NL
6 Measured. Trem
7 Staccato
8 Staccatissimo
9 Spiccato
10 sFz
11 Pizz
12 Marcato NL
13 Marc+Acc ("overlay")
14 Marc Leg
15 Marc Leg+Acc
16 HT Trill
17 WT Trill
18 Original CSS Trill (2 notes) NL
19 Original CSS Trill (2 notes) Leg
20 Harmonics NL (G3)
21 Harmonics Leg (G3)
22 Bartok Pizz
23 Col Legno


----------



## clisma (Jul 5, 2016)

You're simply a whiz, Peter! The trill function sounds way easier... good thinking. Picked up both, ARTzID and CSS over the weekend, but haven't had a chance to install and test ARTzID yet. I did notice in CSS, however, that the samples fade to _niente_ when the mod wheel nears values under 10, and the sound becomes somewhat "shaky" before disappearing in that range. Right now I've set my breath controller's range to avoid that lowest bit and I suppose I could use a MIDI modifier for the mod wheel. Any thoughts on how best to do this? Apologies if it's beyond the scope of ARTzID, as mentioned, haven't had a chance to load it yet.


----------



## Peter Schwartz (Jul 5, 2016)

Thanks Clisma.

A Script-based solution would work, but there's an easier way to do this, I believe, within Kontakt itself. I'll experiment with this at some point and post with any positive results I come up with.

But while investigating what you're talking about, I found what I believe is a major flaw in the CSS internal scripting. Try this:

Violins: hit C0, normal sustain. Move the modwheel all the way up and then using a CC#2 slider or similar, push CC#2 all the way up in value and then bring it all the way down to zero. The sound should be non-vibrato at this point. Now re-strike C0 and play just one note. Do you hear anything?


----------



## clisma (Jul 5, 2016)

You're right Peter. When following your outlined set of actions, I only hear the release samples.


----------



## Peter Schwartz (Jul 5, 2016)

Thanks for testing this out Clisma.
Funny, I'm not getting the release samples here. Just... nothing. Very interesting...


----------



## clisma (Jul 5, 2016)

Just double-checked the procedure, Peter. It seems you have to strike with a velocity higher than 100 to get the release trails to trigger.


----------



## Peter Schwartz (Jul 5, 2016)

Confirmed. Thank you!


----------



## Peter Schwartz (Jul 6, 2016)

Hi Clisma,

I poked around CSS to see if there was a way to smooth the bumpy road on the way to niente and... As far as I can tell, unlike other libraries it's not possible to go into a patch and tweak or amend the programming (there's no wrench icon). What I had in mind was to use Kontakt's stock Lag parameter to smooth the response in the vicinity of zero, but alas without a way in the door.... sigh.

It's possible to simulate this with Scripting, though the best place for this to happen would be on the Kontakt side, not the Logic side. I'll keep this issue on my radar, as I'd like it for myself, but it's not something I'm likely to get to right away.


----------



## tack (Jul 6, 2016)

It'd be pretty easy to do in a multiscript, clamping the CC1 range to 1-127. If the CC1 value where CSS vanishes is higher than 1 then it'd probably be better to scale the value instead of a naive clamp, but either way it'd be pretty easy to do with KSP.


----------



## clisma (Jul 6, 2016)

Thanks for checking, Peter. I'd thought of the same process, but my lack of deep Kontakt knowledge had me believe I couldn't do it. Sort of glad to hear you came to the same conclusion. For now I've found a way around it by limiting ranges, however, it's rather ineffective at the bottom of the range, where volume gets shaky. Thank you for keeping it mind in possible future updates!


----------



## Peter Schwartz (Jul 6, 2016)

Thanks Tack. Agreed, using KSP would be the way to go, though KSP programming isn't my forte. The idea I had in mind was to use CC#11 for this purpose, ramping it down from 127 to 0 in "laggy" fashion as CC#1 values descend from around 10 to 0. On the way up the opposite would occur. This would mean CC#11 is used exclusively for this purpose, but that's fine because CC#11 only controls volume in CSS and has no bearing on timbre (it's not exactly "expression"). And then for volume control you can simply use Logic's volume automation. Thoughts?


----------



## tack (Jul 6, 2016)

Ah, so the goal wouldn't be to _eliminate_ niente, but to remove the sudden jump to silence. Yes, your basic idea makes perfect sense. In fact, a multiscript could automatically scale CC11 from _n_ to 0 (where _n_ is the last received MIDI input CC11 value) as CC1 transitions 10-0 (or 20-0, or whatever makes sense).

This would allow the user to continue to use CC11 for any other arbitrary volume adjustment, and still benefit from a smooth transition using only CC1.

I can script something up tonight, unless someone beats me to it.


----------



## thesteelydane (Jul 6, 2016)

I also have the non-vib legato issues here, but Alex was made aware of this in the announcement thread, so there will probably be a bug fix soon. And I'm seriously looking forward to the ARTzID script!


----------



## tack (Jul 6, 2016)

This is about as good as I think I can do without getting extremely clever.

I settled on a CC1 threshold of 30 and quadratic scaling so that there was increased CC11 resolution toward the lower CC1 values, as this where volume changes start to get more noticeable. In the uncompiled source on Github you can see how to change that to linear scaling if you want to experiment. Otherwise, the threshold is easily changed by tweaking the const.

Original source is here.

Here is the compiled source which you can paste directly into a multiscript slot in Kontakt:


```
{ This is compiled code. Original source at https://gist.github.com/jtackaberry/cc28f6d974e632c6e0e9c6f1635afb7b }
on init
    declare const $CC1_MIN_THRESHOLD := 30
    declare %last_cc_in[128] := (127)
    make_persistent(%last_cc_in)
    read_persistent_var(%last_cc_in)
    declare $last_cc11_out := 127
    make_persistent($last_cc11_out)
    read_persistent_var($last_cc11_out)
    declare $value
end on

on midi_in
    if ($MIDI_COMMAND=$MIDI_COMMAND_CC and ($MIDI_BYTE_1=1 or ($MIDI_BYTE_1=11)))
        %last_cc_in[$MIDI_BYTE_1] := $MIDI_BYTE_2
        $value := %last_cc_in[1]*%last_cc_in[1]*%last_cc_in[11]/($CC1_MIN_THRESHOLD*$CC1_MIN_THRESHOLD)
        if ($value>%last_cc_in[11])
            $value := %last_cc_in[11]
        end if
        if ($MIDI_BYTE_1=11)
            ignore_midi
        end if
        if ($value # $last_cc11_out)
            set_midi($MIDI_CHANNEL,$MIDI_COMMAND_CC,11,$value)
            $last_cc11_out := $value
        end if
    end if
end on
```


----------



## Peter Schwartz (Jul 6, 2016)

Tack, that's very generous of you to offer this!


----------



## clisma (Jul 6, 2016)

Thanks for your work on this, Tack! I will give it a try as soon as I get in tomorrow morning.


----------



## clisma (Jul 8, 2016)

Tack, works like a charm for me... Thank you!


----------



## tack (Jul 8, 2016)

clisma said:


> Tack, works like a charm for me... Thank you!


Great to hear!


----------



## Peter Schwartz (Jul 9, 2016)

OK, it's done (for now...) I added some new features, but here's the full rundown:

*Con Sord*: the CC of your choice can be used to sordino on/off via MIDI. You can also write sordino on/off to automation directly from the Smart Controls. And if that's not enough, you can do the same from the Scripter's front panel as well.

*Portamento Volume*: provides direct control of the volume of the portamento samples. You can automate the amount from the Smart Controls or from the Scripter's front panel.

*Sustain NL Velocity Response*: It seems there are essentially 3 velocity-switching layers in CSS's non-legato sustain samples. At low velocities, the samples have a medium attack -- not quick enough for fast playing but regardless, very nice! At high velocities, the samples sound more aggressive and a staccato accent sample is blended in. But then... at middle-range velocities (64 - 99) the attack of the samples sounds waaaaay truncated and, to my ears, not all that pleasant or even very useful. (And that's with all due respect to CSS because I do really love the sound of this library and their great customer support.) So... now to the feature: via a menu you can select to simply skip these middle-velocity samples and just access the "soft" or "loud" samples. When active, velocities between 64 and 99 get you the "soft" samples. Now, on paper it may seem like this feature will cause you to miss out on something, but I find the opposite to be true -- which is why I built the feature into the Script . And of course its action is entirely non-destructive. Software, baby! 

*Patch Menu*: This single Script handles all of the CSS patch types. Just select the one you're playing from the menu on the Smart Controls or the Scripter GUI.

*One Finger, Polyphonic Trills. *You can also have notes playing both trill types simultaneously, e.g., a divisi part playing a major third trill. The lower note would play a whole step trill, the upper note a half step. One part, one track, two simultaneous notes, two different trills. Shows up in notation as you'd expect (sans the tr marks of course).

*Individual ID's* for each of the 23 possible articulations and articulation combinations (for example, marcato legato and non-legato, with/without overlay).

*This is a free Script for all ARTzID customers. *Please write to me via the http://www.skiswitcher.com (www.skiswitcher.com) website (contact tab) to request a copy.


----------



## Ashermusic (Jul 9, 2016)

I just got CSS and can't wait to try this out with it.


----------



## Peter Schwartz (Jul 10, 2016)

For anyone interested, I've just finished an adjunct Script for ARTzID that fixes -- for now -- the problem with CSS where vibrato amount becomes linked to volume in the sustained articulations (non-legato, legato, legato advanced.)

Send me a PM or write to me via the http://www.SkiSwitcher.com (www.SkiSwitcher.com) website to get a copy.


----------



## Shad0wLandsUK (Aug 8, 2016)

You guys are on fire here :D

Once again Peter...you master the art of simplicity for writing!!


----------



## OleJoergensen (Aug 13, 2016)

23 articulation- very nice.
I cant figure out how to change the articulation by TouchOSC. When I change the ID in the event list in Logic the articulation change perfect but my touchOSC template(inspired by the 2 templates on this thread) , which works well with HS strings does not work with CSS. Anyone who can help?


----------



## wbacer (Aug 13, 2016)

For CSS, Vn1, Vn2, Va, Vc, Cb, your ARTzID Scripter windows should look like this.
If you are using this with Full and Lite Ensembles, you'l need to change the Patch setting in the first Scripter window.


----------



## Peter Schwartz (Aug 13, 2016)

Hi Ole,

It's exactly what Wayne said. But also, if your tracks live in track or folder stacks, make sure the Macro is set to Staxx mode. 

A couple of fine points... First, you don't really need to have the Fixer script visible. That's there only to overcome one of the major bugs in CSS. If they ever fix it, you'll be able to delete that entire Scripter plugin from your channel strips.

Next... remember that you can adjust the Script parameters in the Smart Controls instead of having the Scripter plugin open.

Cheers!


----------



## OleJoergensen (Aug 13, 2016)

Thank you for help 
I already forgot about track stack. I deleted the track stack and now it works fine. But how can I choose Staxx mode? I dont see it in the smart control artzid window in Logic with CSS script.


----------



## Peter Schwartz (Aug 13, 2016)

Staxx Mode is selected from the menu on the Macro.

Backstory: the Staxx modes (there are 2) are "variations on a theme" of the two normal ARTzID operating modes. Please see the documentation for ARTzID v1.1 for the details. But here's the short story:

There are two basic ARTzID operating modes. The first mode is just your everyday normal working mode. When selected, ARTzID responds to MIDI notes from a dedicated MIDI device (hardware or virtual) or CC#32 messages from any device, including Lemurs. The second mode, ARTzID MK+Prg, was added so that people could use keys from their main keyboard (MK) or program change messages (Prg) to select articulations. This mode was added in response to a few customer's requests, though I think the majority of ARTzID customers are using a dedicated 2nd keyboard or iPad/TouchOsc/Lemur. So if you're not using main keyboard keys or program changes to select articulations, just ignore the MK+Prg mode.

Then, both of those modes are duplicated. These are the "Staxx Modes" which I added to overcome an inherent incompatibility Logic has with itself (!!) where certain Smart Controls crucial to the operation of ARTzID break when tracks live in track or folder stacks. 

So, rule of thumb...

If you're working with tracks that don't live in track or folder stacks, and you're using an iPad-based device (as you are) to select articulations, just select the regular ARTzID mode. But if your tracks live in stacks, select the regular Staxx mode.


----------



## 5Lives (Aug 14, 2016)

Is there a walkthrough video of using this in practice? Not sure I fully understand how to set each note's articulation (or for a bunch of notes) compared to say expression maps or some of the other Logic scripts.


----------



## OleJoergensen (Aug 14, 2016)

Peter Schwartz said:


> Staxx Mode is selected from the menu on the Macro.


The macro....  
Thank you for your patience and help Peter.


----------



## Peter Schwartz (Aug 14, 2016)

Hi 5Lives, no, there's no walkthrough video at the moment. But how the system works is very simple to understand. There are two ways to set the ID:

1) *Live Articulation Switching* -- just like operating a keyswitching patch, you can use a range of notes (what you'd normally call "keyswitch notes") to set the ID for what you play live. Or you can use CC#32 messages or program change messages to do the same thing. Articulation selection, regardless of the method you choose, works for all patch types (keyswitching, multi-timbral, UACC, etc.)

BTW, none of those events ever get recorded. All they do is set the ID for the notes you play and then they're discarded. So what you end up with in a track are just notes with ID's. Very simple.

2) *Offline Articulation Switching* -- this is where you manually set the ID for notes in the event list. This is the method composers use to assign articulations to notes imported from MIDI files from Sibelius or Finale, for example. It's also the method you'd use when you want to change your mind about what articulation a note plays.

If you'd like more information, please write to me via the Contact page on my website and I'll be happy to send you the How It Works Guide.


----------



## 5Lives (Aug 14, 2016)

Thanks Peter. For the second method, how are the articulations set / changed? In the event list or in the MIDI editor? Is there a manual available? Just trying to get a sense of everything since it does a cost a bit


----------



## Peter Schwartz (Aug 14, 2016)

You're welcome. Send me a PM with your email address and I'll send you the documentation.

To answer your question, for the second method, ID's are seen (and changed) in the Event List. Shown below is a passage that switches between staccato (ID#5) and legato arco (ID#1). The actual score markup (staccatos and slur) were added for clarity.











The association of ID to articulation will be unique to each patch, though when you're using libraries in which the articulation layouts are fairly uniform (Vienna, many Kontakt libraries) you'll end up with ID's almost always being associated with the same articulations between them.

Though the piano roll offers a contextual menu thingy that shows you a list of Articulation ID values, for some reason (that's shorthand for "Logic bug") it never shows you a consistent number of ID's to choose from. In the screenshot below, you see only ID's 0 - 6 but there are in fact 126 values available. Basically, the problem is that this list doesn't always populate with more than a handful of values. But when Logic does (randomly? ) provide enough values to cover the range of articulations in a given patch, you can use this menu to apply ID's to notes directly.


----------



## 5Lives (Aug 14, 2016)

Thank you Peter! Very helpful. One last question - does the articulation "latch" if you set it say at the beginning of a bar?

I hope Logic continues to expose the articulation id in future versions (like making it easier to set vs. only being in the context menu or event list). Great job taking advantage of it!


----------



## Peter Schwartz (Aug 14, 2016)

You're welcome again!

With my systems, automation is not used at all. The ID's are written directly to the notes, and the ID's you see in the Event List are the only "evidence" that a note is going to play a specific articulation. Actually, that's not entirely true LOL... There are menus that appear in both the Scripters and the Smart Controls that show you what articulation each note is playing. You'll see that in the video -- yes, video!

I said previously that I didn't have a walk-through video, but I just remembered that I did a very quick, down-and-dirty video showing how the system works a few months ago. I wasn't really happy with it because I thought my narration sounded like I was having a bad day or something, so I took it offline. But I've jut revisited it and it's not as bad as I thought. So... I think this will help explain the operation. Just keep in mind that everything I show in terms of selecting articulations using the keyboard can be done with CC#32 messages coming from an iPad (TouchOSC) setup or Lemur. Oh yeah, and program change messages too. So, here goes:


----------



## Peter Schwartz (Aug 14, 2016)

5Lives said:


> I hope Logic continues to expose the articulation id in future versions (like making it easier to set vs. only being in the context menu or event list). Great job taking advantage of it!



Thanks again 5Lives. For sure, it would be awesome if Logic had all this kind of stuff built-in. But who knows when they'll get around to it, if at all. Even if they did, I have the feeling they wouldn't include the kinds of extra features this system offers. For example, I have a Script called the *Combinatrix* which lets you freely combine any combination of up to 8 keyswitching or individual articulation patches so that they all act as one -- all playable from a single track. I have a similar Script for use with UACC instruments (Spitfire) that not only lets you remap UACC values to any ID, but it also lets you combine multiple palettes and brushes in the same instance of Kontakt -- again, letting you play them all from one track.

I also have a similar Script for Vienna Instruments that lets you gang together multiple matrices. You can select any articulation (cell) from amongst any of those matrices and, in addition, never EVER have to move the modwheel to switch between rows of cells.

Stuff like that.


----------



## lucky909091 (Aug 17, 2016)

Could you PLEASE develop this for Cubase 8.5, too?


----------



## Ashermusic (Aug 17, 2016)

lucky909091 said:


> Could you PLEASE develop this for Cubase 8.5, too?



Why would you need it with Cubase Expression Maps? Just asking, no experience with it, but I thought that is what designed for the same purpose.


----------



## lucky909091 (Aug 17, 2016)

Yes, you are right,
but his concept is much cooler than the expression maps.


----------



## Peter Schwartz (Aug 17, 2016)

Hi Lucky,

Thanks for your comments.  I wish I could do this kind of thing for many different DAWs, but ARTzID works by tapping into several Logic-specific functions. I don't believe that Cubase has equivalent functions. :(


----------



## 5Lives (Aug 21, 2016)

Peter - if I purchase ARTzID, do I get SkiSwitcher2 as well? Your website says to start with SS2 for beginners, but I'm wondering if it'll work for the way I usually set up my templates - for example, a single Kontakt instance (to save CPU) with 5 string patches, each on their own MIDI channel, and each with 8-10 articulations. I'm guessing I would need the ARTzID for this?


----------



## Peter Schwartz (Aug 21, 2016)

Hi 5Lives,

SS2 isn't really a beginner system, per se. On the surface it might seem that way because ARTzID lets you do so much more. But on the flip side I have a few A-list composers using SS2 and they have no problem with the 16 articulation limit. By now I've had a gazillion conversations with composers about my systems and though I've found it surprising, lots of them feel overwhelmed by having too many choices. They want their meat and potatoes sounds and don't need a lot of frills. So SS2 meets their needs just fine. Others need more, of course, so that's where ARTzID comes into the picture.

You mentioned a single instance of Kontakt loaded with 5 string patches, 8 - 10 articulations each. If all of these patches are for the same instrument (e.g., something like Hollywood Strings 1st Violins), ARTzID lets you link them together so all 5 patches act as a single, unified patch, and lets you record all of those articulations on one track. In fact, you can gang together up to 8 keyswitching and/or individual articulations by using the *Combinatrix* *Script*.

The *UACC Script* lets you do this for Spitfire Instruments; it lets you gang together multiple palettes and individual articulation "brushes" for a single instrument type and play them on one track.

But it's a different story if the 5 patches you're referring to are the 5 instruments of the string family all packed into a single instance of Kontakt (each on their own channel). Neither of my systems works with that type of setup. In fact, both systems are intentionally designed to avoid that kind of setup. I can get into the details about that in a separate post. But let me put this out there...

I've found that packing an instance of Kontakt with multiple sounds isn't as likely to save CPU as is hosting each sound in its own separate Kontakt instance. The savings you get by using fewer instances of Kontakt is RAM. So it's a tradeoff. More instances of Kontakt mean you'll need more RAM, but overall they'll consume less CPU. That aside, let me get to the rest of your questions...

SS2 and ARTzID Scripts can live in the same project, but each system is sold separately. If you were to get one system, I can offer you the other system at a very nice discount. But to reiterate, both systems are designed to eliminate using Logic's "multi-part", multi-timbral/multi-track setup. So if you're talking about the latter situation (the whole string section in one Kontakt plugin), neither of my systems would work out for you. But if you were to break it out to 5 individual instances of Kontakt, you'd be off and running with either system. And with 8 - 10 articulations max, SS2 might be the way to go. In short, if you don't need to venture beyond 16 articulations, get SS2.


----------



## 5Lives (Aug 21, 2016)

Thanks Peter! Makes sense! How do they work with VEP? Since a single VEP instance can contain multiple instruments?


----------



## Peter Schwartz (Aug 22, 2016)

You're welcome!

VEP... both systems work totally fine with VEP. 

As far as MIDI goes, the VEPro plugin is just a means for getting MIDI to the plugins hosted in a v-frame. And in terms of ganging patches together to act as one, VEPro has the advantage of letting you combine patches from different libraries.


----------



## 5Lives (Aug 22, 2016)

Thanks Peter! Sent you a PM


----------



## Peter Schwartz (Aug 22, 2016)

I'll get back to you later this evening.


----------



## Peter Schwartz (Aug 27, 2016)

Hey Everyone,

The ARTz•ID *Cinematic Strings 2 Script* is now available! This is a free addition for all ARTz•ID customers.

This Script provides a unique ID for every articulation or articulation combination (see chart below). No more struggling with velocity-sensitive keyswitches!

Polyphonic articulation selection is always active. Additional features include a snap pizz limiter and staccato overlay velocity scaling.

Please visit http://www.skiswitcher.com and go to the Contact Tab to request your copy. Existing ARTzID customers only.


----------



## Charlie Mole (Sep 7, 2016)

Hi,

Is there a way of making this script work without setting the Kontakt instruments to omni. I have a patch which has all the sections in one Kontakt and I have changed the instrument ranges to have an ensemble that doesnt overlap too much ( a sort of Lass arranger). I have 6 identical midi versions (1-6) of each instrument so that I can control them from a ROli keyboard and affect the note volume levels vib and expression live from each finger.


----------



## Charlie Mole (Sep 7, 2016)

One more question / If I create a summing track in logic of 5 sections that I want to be able to play from one master track without having to arm all 5 tracks, the script seems to default to sustains only . Is there a way round that too .
ps I have the macro on Staxx Mk+Prog 
Thanks Charlie


----------



## Peter Schwartz (Sep 7, 2016)

Charlie Mole said:


> Hi,
> 
> Is there a way of making this script work without setting the Kontakt instruments to omni. I have a patch which has all the sections in one Kontakt and I have changed the instrument ranges to have an ensemble that doesnt overlap too much ( a sort of Lass arranger). I have 6 identical midi versions (1-6) of each instrument so that I can control them from a ROli keyboard and affect the note volume levels vib and expression live from each finger.



Omni mode is only required to make the one-finger trill feature happen. If you're fine using the normal CSS two-finger scheme for trills you can set the patches to discreet MIDI channels.


----------



## Peter Schwartz (Sep 7, 2016)

Charlie Mole said:


> One more question / If I create a summing track in logic of 5 sections that I want to be able to play from one master track without having to arm all 5 tracks, the script seems to default to sustains only . Is there a way round that too .
> ps I have the macro on Staxx Mk+Prog
> Thanks Charlie



This is not possible due to a limitation in Logic itself.


----------



## molemac (Sep 8, 2016)

Peter Schwartz said:


> Omni mode is only required to make the one-finger trill feature happen. If you're fine using the normal CSS two-finger scheme for trills you can set the patches to discreet MIDI channels.


Hi ,
Last question , how do you change the midi channels ie how could I make cc3 for sordinos change midi channels 1-6 ?


----------



## Peter Schwartz (Sep 8, 2016)

molemac said:


> Hi ,
> Last question , how do you change the midi channels ie how could I make cc3 for sordinos change midi channels 1-6 ?



Hi molemac,

If I understand correctly, you've loaded Kontakt with 6 CSS patches, each on their own MIDI channel. This approach won't work for CSS because the Script can only handle articulation changes for one CSS patch at a time.

On the Script (also reflected in the Smart Controls) is the Patch Type menu from which you select which patch you're driving -- one of the individual instruments, or the large ensemble. The reason you have to make the choice is because the Script needs to be told which range of CSS keyswitch notes to send the patch in response to ID values. (The large ensemble's KS notes are an octave lower than the others). So right there you can see that this Script is designed to drive only one CSS patch at a time.


----------



## Peter Schwartz (Sep 8, 2016)

...hit Return too soon...

It might be possible to achieve the result you want by adding the CC Cloner Script to the instrument channel strip hosting your CSS/Kontakt setup. This Script is not supplied individually but you can easily make it available by creating a new instrument track and loading the MP channel strip preset. That preset loads with the Cloner Script in the second scripter slot (it's bypassed by default). Open that Scripter plugin and use Save As... from the plugin. Now it will be available to you. Add a new Scripter to your CSS channel and load that Script. Voila!

Once you do that, set the first 6 channels to "Clone All", and the rest of the channels to "Filter All".

I can't guarantee that this will work, but then again I suspect it might work just fine. Please let me know.


----------



## molemac (Sep 8, 2016)

I can't guarantee that this will work, but then again I suspect it might work just fine. Please let me know.[/QUOTE]
Sad to say it doesnt work.Not sure why , seemed like a good plan . I have experimented changing the sord midi value in the css script but I can only get it to 1 midi channel at a time . Is there a code shortcut for select channels 1-6 ?


----------



## Peter Schwartz (Sep 8, 2016)

Ultimately, the Script isn't intended to work with multiple CSS patches packed into a single plugin.

The basic idea of the Script is to output the types of MIDI events that the CSS patches normally expect to see in response to each specific ID for a single patch. Regarding the Script's con sord feature, it outputs what the CSS patches normally expect to see in response to the CC of your choice. I thought perhaps the Cloner would duplicate these various messages on different MIDI channels, but obviously that's not working for you.

I think the bottom line is that the Script wasn't intended for this kind of application.


----------



## molemac (Sep 9, 2016)

Thanks for helping ( its a great script in any case ) , maybe Alex will add an overall cc on off facility in an update. Actually maybe I can just do that anyway with Kontakt add remove cc value.


----------

