What's new

CSS (Cinematic Studios) Control Panel - CSS/CSSS/CSB/CSW legato delay solution + other features (1.8, now with Winds!)

Thanks for the great tool!

But all of this just infuriates me to the point that I'm thinkng of dropping CS series altogether.

So here what is going on:

1. Don't use this and accept that I have to carefully move every note which is super tedious and off putting.

2. If I use this tool, I have to offset everything by 330 ms. That messes somehow with my expression map work or rather "musical variations" or whatever it's called in studio one. Negative offset messes with that so say I set "legato" to note B. Then whatever note A is played within 330 ms before note B is triggered with legato keyswitch. Basically variations are firing off early because of track delay. I haven't find a way to solve it..

3. For some reason this tool always start in "disabled" state. I have to go to every kontakt instance and click "start" button for this to work.

Despair.
Studio One is generally not that great at handling track delay. There's a lot of issues with it that I've run into. The script does work really well in Logic and Cubase though. I believe the "disabled" start state could be changed by the scripter - I haven't looked at the code in depth though.
 
Studio One is generally not that great at handling track delay. There's a lot of issues with it that I've run into. The script does work really well in Logic and Cubase though. I believe the "disabled" start state could be changed by the scripter - I haven't looked at the code in depth though.
That used to be the case, but track delay issues were fixed in a recent update of Studio One.
 
That used to be the case, but track delay issues were fixed in a recent update of Studio One.
How recent? Still have the same issues that I've reported over a year ago in the latest version. Timing has never been a strong suit of S1. Playback can randomly be all over the place.
 
How recent? Still have the same issues that I've reported over a year ago in the latest version. Timing has never been a strong suit of S1. Playback can randomly be all over the place.
I've been working with S1 & CSS for a while - this control panel has been a life saver. I haven't encountered track delay issues; created Sound Variation presets & typically ensure they trigger just before the next note on the midi roll - so far so good! Although this is all post midi input; not sure how to manage changes if you're inputting & 'sound varying' live.

The main issue I have is the '1st legato note'. Changing the delay in the control panel doesn't seem to make a difference, and I often have to artificially shorten the first note of a phrase to avoid an early or bizarrely loud start (sometimes automating modulation to 0 with a steep curve is the only way to avoid this).

Re the disabled state - I've noticed this too. All my kontakt instances load with the control panel apparently disabled, but when I begin playthrough & arranging, I've noticed it seems to be working just fine. Almost like the Start button just triggers the UI rather than the tool itself.

Sorry if none of that's useful, interesting to hear from other S1 + CSS users!
 
Apologies if this has been covered, but what's the correct way to go about using this with the new low latency mode? I know it's much less necessary with low latency mode, but I'd still like to benefit from shorts and most legato notes lining up on the grid all in one patch, even if the legato delay isn't as extreme as the expressive/advanced mode.
 
the script has to be re enabled everytime you launch a kontakt instance, makes it very tedious
This is incorrect. If I ever find the energy to update this script for a library I no longer use to deal with the things people have mentioned (primarily 1.7.1 legato patches, new default keyswitches for those patches and legato note count), I need to update the "Start" button as people confuse this with starting the script. This is wholly inaccurate as whether the script is delaying notes, and what articulation it is in, as well as all customisations to note delays per articulation are remembered per Kontakt instance and saved. Whether the UI is showing or not has not bearing on if the script is doing it's job. "Start" should really read "Edit".
 
I'm currently using the Flexrouter script for managing the key switching , may I use it together with this Control Panel script? Thank you.
 
I'm currently using the Flexrouter script for managing the key switching , may I use it together with this Control Panel script? Thank you.
I would probably recommend putting this script after Flexrouter, but I will attest that this script is not tested for compatibility with anything other than the instruments mentioned.
 
What should I do if the CC1 is not at the correct time point
There are delay options for CCs and Keyswitches in the script options that delay CC1 (or whatever you set the dynamics CC to) along with the given articulation. Eg, if the script thinks you are playing a slow legato transition, it will delay the CC1 by 330ms, fast it will delay it by 100ms, shorts 60ms. This behaviour is off by default.

Also note that there is a very small delay the script adds to notes, so that CC messages and Keyswitches always arrive two ticks (smaller than ms) before playable notes, largely to prevent spikes in dynamics when transitioning between articulations. CSS doesn't generally suffer from this behaviour, but I have found it good practice.
 
There are delay options for CCs and Keyswitches in the script options that delay CC1 (or whatever you set the dynamics CC to) along with the given articulation. Eg, if the script thinks you are playing a slow legato transition, it will delay the CC1 by 330ms, fast it will delay it by 100ms, shorts 60ms. This behaviour is off by default.

Also note that there is a very small delay the script adds to notes, so that CC messages and Keyswitches always arrive two ticks (smaller than ms) before playable notes, largely to prevent spikes in dynamics when transitioning between articulations. CSS doesn't generally suffer from this behaviour, but I have found it good practice.

It has no effect after opening delay KS/KS CC. It seems that you need to drag the CC1 backward to be at the correct time point
 
I am having similar problems as mentioned in this post and cant seem to solve the issue. I'm using CSS in Ableton, controlling articulations with the "Key Switch and Expression Map" plugin from Swub, and using the Control Panel mentioned here. The problem I seem to be having is that when I configured KSEM using CC58, the control panel does not correctly load the Advanced legato, and therefore applies the incorrect Delays. The message says "standard mode". But CSS uses the Advanced ("Expressive") legato patch. The only workaround is to include a keyswitch note in the Midi clip, but then I am not able to use KSEM to program legatos. And I cannot use keyswitches because KSEM does not allow setting specific velocities, it seems to always use a 1 or 2 for velocity.
Any ideas? I was.already trying to edit the script to always play Advanced mode (notemode 5) but would prefer a proper solution. Perhaps it's due to the changes that came with 1.7?
 
I am having similar problems as mentioned in this post and cant seem to solve the issue. I'm using CSS in Ableton, controlling articulations with the "Key Switch and Expression Map" plugin from Swub, and using the Control Panel mentioned here. The problem I seem to be having is that when I configured KSEM using CC58, the control panel does not correctly load the Advanced legato, and therefore applies the incorrect Delays. The message says "standard mode". But CSS uses the Advanced ("Expressive") legato patch. The only workaround is to include a keyswitch note in the Midi clip, but then I am not able to use KSEM to program legatos. And I cannot use keyswitches because KSEM does not allow setting specific velocities, it seems to always use a 1 or 2 for velocity.
Any ideas? I was.already trying to edit the script to always play Advanced mode (notemode 5) but would prefer a proper solution. Perhaps it's due to the changes that came with 1.7?
Solved it!
For those that are interested: I found that when switching back from a Short to Expressive Sustain legato mode is always switched off within the script. This seems to be a bug in my opinion. I added a line in the script to always turn on Legato when switching to Advanced (Expressive) mode: $legatoMode := 1
 
Solved it!
For those that are interested: I found that when switching back from a Short to Expressive Sustain legato mode is always switched off within the script. This seems to be a bug in my opinion. I added a line in the script to always turn on Legato when switching to Advanced (Expressive) mode: $legatoMode := 1

Cool! I will check it out, for sure. My experience in adding as much as one boring letter to a KSP – or any script, for that matter – equals scary close to zero. So, if I may ask, is there an exact spot in this particular KSP your line should be pasted?:)
 
Cool! I will check it out, for sure. My experience in adding as much as one boring letter to a KSP – or any script, for that matter – equals scary close to zero. So, if I may ask, is there an exact spot in this particular KSP your line should be pasted?:)
Sure, it's around line 1142 where the section starts that interprets CC messages (case 6 to 10).
See my comment starting with "AP":

{Sets the value of noteMode, based on the values defined by CSS's keyswitch CC}
function SetNoteMode
{There seems to be an inherrant latency with testing the CC's value in the same callback, so wait a moment}
wait (2)

select(%CC[$keyswitchCC])
case 0 to 5
{Standard Legato}
{Test whether we're using CSS, CSB or CSW here}
select ($instrumentMode)
case 0
$noteMode := 4
set_text($statusLabel,"Articulation updated to sustain/standard legato")
case 1
$noteMode := 4
set_text($statusLabel,"Articulation updated to sustain/standard legato")
case 2
$noteMode := 5
set_text($statusLabel,"Articulation updated to sustain/advanced legato")
end select

case 6 to 10
{Advanced Legato}
{Test whether we're using CSS, CSB or CSW here}
select ($instrumentMode)
case 0
$legatoMode := 1 {AP added to turn legato back on after shorts}
$noteMode := 5
set_text($statusLabel,"Articulation updated to sustain/advanced legato")
case 1
$noteMode := 4
set_text($statusLabel,"Articulation updated to sustain/standard legato")
case 2
$noteMode := 5
set_text($statusLabel,"Articulation updated to sustain/advanced legato")
end select
 
I'm at my wit's end with this stuff (CSS, not the script.) I've been tinkering with this here and there for the better part of a year now and I've honestly gotten nowhere. In no way can I develop any workflow with this product. Using Reaper, I absolutely 100% cannot under any circumstances go from a short to a sustain keyswitch. Not with CC58 or with an actual midi note keyswitch. Everything else works fine, but to go from a short to a long I need to find some sort of sweet spot by nudging it left to right. This takes an unreal amount of time and more often then not throws off the proceeding notes articulation.

Does this issue resemble a known or common bug or problem? I just don't understand how people are able to compose with CSS. It's like, if I want to NOT manually nudge every note in place, I have to manually nudge a keyswitch in place for each and every change.

EDIT: The script tells me it's playing a long with all the relevant offset and legato data, but the CSS Instance in Kontakt itself does not change from Staccato.
 
I'm at my wit's end with this stuff (CSS, not the script.) I've been tinkering with this here and there for the better part of a year now and I've honestly gotten nowhere. In no way can I develop any workflow with this product. Using Reaper, I absolutely 100% cannot under any circumstances go from a short to a sustain keyswitch. Not with CC58 or with an actual midi note keyswitch. Everything else works fine, but to go from a short to a long I need to find some sort of sweet spot by nudging it left to right. This takes an unreal amount of time and more often then not throws off the proceeding notes articulation.

Does this issue resemble a known or common bug or problem? I just don't understand how people are able to compose with CSS. It's like, if I want to NOT manually nudge every note in place, I have to manually nudge a keyswitch in place for each and every change.

EDIT: The script tells me it's playing a long with all the relevant offset and legato data, but the CSS Instance in Kontakt itself does not change from Staccato.
Are you triggering with both cc and keyswitch? Sometimes it takes both to activate exactly how you want. I think there are a few posts in this thread about it.
 
You know, I actually think the best way to use the library is to manually nudge by ear till you’ve got it down. It’s actually much easier than I initially thought and you’ll internalize the nudge values - then you can create short cut solutions/hot keys etc. (I’ve been using the note offset in Dorico). I find that I got improvement and more and more comfortable with library much faster than when I tried to jump to scripts right away. Another helpful approach at the beginning is just to select a fast or medium legato and stick with it for the majority of the piece (or focusing on low latency mode), till you’ve mastered using it; then do the same with another one, rather than mixing them. This is all just to say, you can get a lot out of these libraries without getting too far down the legato rabbit hole. In Dorico I actually created playback techniques for the score that assign which legato to use and usually stick with one based on pieces tempo except for solo moments. Then basically the number of needed nudging values is a just 2-3. Anyway, hope this helps and apologies for the many, many assumptions I’m making - just wanted to share how I moved from feeling frustrated with the libraries to loving them.
 
Top Bottom