Guy Rowland
Senior Member
Wow, it's all coming back to me scanning these posts...
*shudder*
Crazy system.
*shudder*
Crazy system.
I’m confused about track offset. I use it with expression maps and I only need to nudge the expression slightly ahead of the note. Works quite well, what am I missing?
Wow, it's all coming back to me scanning these posts...
*shudder*
Crazy system.
Wow, it's all coming back to me scanning these posts...
*shudder*
Crazy system.
Make sure you send the expression map change before the MIDI note. I think you can attach the expression map data to the note and maybe that's what you're doing. That's not a good idea because, remember, it's just MIDI data and you can't be sure how the instrument will react to simultaneous MIDI data. That problem has nothing to do with expression maps, that's a MIDI timing problem.
It's like quantizing a keyswitch to the note it's affecting: sometimes it works, sometimes it doesn't. You have to send the keyswitch in advance of the note. Same thing with Expression Maps.
Again, Expression Maps are just a MIDI mapper. They work as well or as badly as MIDI. So yeah they're not perfect, but they're no worse than MIDI.
This is just misinformation that is going to confuse people.
First - MIDI is a serial protocol and there is no such thing as 'simultaneous MIDI' on a single channel. If there is a CC message and a note on message, one comes before the other.
Second - Cubase expression 'attributes' are on the notes, so there's nothing the user can do re: sending them first. Cubase sends them first. Even a little ahead, to deal with one of the two things that break this system (and cause people to blame concurrency, phases of the moon etc):
1) Kontakt has a bug that causes it to process notes before CCs, so if you are trying to use e.g. Spitfire UACC you can get articulation change CCs after the notes. https://www.native-instruments.com/forum/threads/kontakt-wrongly-reorders-cc-events.345041/
2) VST3 (and only 3) separates CCs from notes, breaking the serial MIDI stream into two parts in a way that can't be reconstructed in order. https://www.steinberg.net/forums/viewtopic.php?f=246&t=174160&p=931253#p931251
Its probably CC's before notes, but we don't know for sure the internals
/*
test kontakt event order
*/
var NeedsTimingInfo = true;
function HandleMIDI(event) {
if(event instanceof NoteOn && event.velocity > 0)
{
var info = GetTimingInfo();
var cc = new ControlChange(event);
cc.number = 2;
cc.value = 42;
cc.send();
event.sendAfterMilliseconds(0); //increase this until order is stable, 5-6ms
}
else
event.send();
}
This and change the color in the midi editor to sound slot. Then every midi event has its own color per articulation. No better way to get a fast overview IMO.Use attributes, and if you have any question send me a PM...if I know I will help you
Haha, I know what you mean.The more I read about it the more I am very, very glad I just use on articulation per track.
Once in my career, I dealt with huge templates and expression maps and Lemur on an iPad and all that jazz... until I realized I was putting much more time into maintaining a template and all the technical hufflepuff that comes with it instead of making music.
It was at that moment that I threw all of that overboard. It's really freeing not having to deal with what is essentially lipstick on a pig. It's fluff. Very technical fluff. And it has zero to do with actually making music. Which is what we all want to do, right?
Hmm, that's interesting. I do get this same results now.
I don't think it used to do that, did it change with Kontakt6 or something?
The thing is, Spitfire UACC would totally break if this was actually happening, and CSS too; so it makes me wonder whether the KSP engine is just reporting it wrong. It makes absolutely no sense that NI would process the noteOn's before CC's on the same beat... and actually for this mode, it makes no sense that they would be on separate queues either.
Well anyway if that's true, then CC keyswitches should really be avoided at all costs...both for VST3 instruments and for any Kontakt instruments even if not not VST3.
when using cubase as well.Babylon Waves suggesting people use UACC KS (which don't get reordered) instead, when using Logic.
Haha, I know what you mean.
Having previously detested old school keyswitching methods, I've found Logic's own home-brew effort to be just the right balance of tech and "not having to fuss with it." Although I have been tempted to add TouchOsc on the iPad into the mix. Thanks for reminding me not to!
Absolutely, 100%.The thing is, the more tech you incorporate into your setup, the more room for technical problems. Each and everyone of these things has to work perfectly or your flow is disrupted.
I tend to think about flow as a delicate thing. Once you have it, you don't want to stop. There's nothing more frustrating as to have to stop in your tracks to fix your Ipad, or your internet connection drops out and you can't connect, or Cubase suddenly throws out your controller mapping (has happened to me before), or your VEPro project is corrupted and you have to grab a backup, or... I guess you know what I mean.
Because flow is so delicate and breakable, I tend to minimize the things that can break. I have Studio One, it's rock solid, and what I use are track presets. I type CTRL+F, search for HS 1st VLN Leg, and boom, there's your preset, you press enter and you can immediately start recording.
There are numerous ways you can improve save and loading times, or times where an instrument has to load, or workflow improvements. The danger, however, is to way too easily fall into the trap of thinking about shaving off a couple seconds for so long and spending so much time working on shortcuts, that you are busy doing technical busywork instead of what you are actually supposed to do: focus on notes, and expression and orchestration, because those are the cornerstones of what we actually do.
I know my workflow could be faster. But the thing is, I don't care. I know my workflow works now, and tomorrow, and the day after that. I know the chance of technical problems is minimized because I do not work with three different pieces of software and hardware at the same time. But the most important thing is, I do not have to think about expression maps, about articulations triggering or not, about loading order of my software, about whether I should EQ inside VEPro or inside my DAW, about my internet connection, about the fact that VEPro only takes VST2 not VST3 instruments, and my DAW accepting both, about latency, about which instruments has it's keyswitches where, about disabling or enabling instruments in order of importance, about incoming or outgoing midi ports and channels, and all that.
CTRL+F, type name, enter. Play in notes. If wrong, undo and repeat. Rinse and repeat. Again and again and again. Dive into the midi editor. Transpose notes, try different combinations. Massage the CC's a bit. Not with difficult and unwieldy tools, just by drawing freeform.
Having less ability to think about shortcuts forces you to become better at playing stuff in, to become better and be able to rely on your knowledge of musical instruments and how they are going to sound. A free mind is open to experimentation. And an experimenting mind is a focused one.
Not all that is new is automatically an improvement. While my save and load times may be a little longer than most, I think my time spend on actual composition is actually bigger.
Unless of course I am procrastinating by posting lengthy replies on an internet forum!
Spitfire users should make use of UACC KS (not UACC). That's the most reliable way. And, from what I can see, KS messages which consist of a Note and a single CC are also fine, you just have to know how you build the Expression Map in this case. What's not so fine is multiple CCs in certain configurations, because Kontakt will not deal gracefully with those situations.
I'm still using Kontakt 5 and it is broken there too. Not fixed (yet) in 6.
And yes, if you do a search you'll see people have plenty of problems/gremlins with UACC - e.g. Babylon Waves suggesting people use UACC KS (which don't get reordered) instead, when using Logic.
It is my understanding (but I have not tested) that Cubase sends expression map attribute CC messages ahead of time specifically to accommodate this and similar behavior by plugins. That's why other people will say it works fine for them (mostly).
Note this is not a problem with UACC, it's a problem with Kontakt. For me, it made working with OT Berlin series and notation programs/DAW emaps quite difficult. That's why, for all their growing pains, I welcome the dedicated players from these companies. At least they can support them themselves.