Old 12-17-2015, 08:22 PM   #1
dmoss74
Human being with feelings
 
Join Date: Oct 2009
Posts: 336
Default i'm a midiot...i need help

background: i have been playing vsts on and off for a decade or so, and mainly in reaper. what i do is open up one instance of whichever instrument i want, and do my thing, to the best of my ability.

i mainly used some analog synth keys, and bass or drum instruments. i recently got kontakt 5 (i should have taken a course on it, first), and a couple instruments to run on that platform.

i know there has to be a way of doing what i'm attempting, that isn't the way i am going about it.

i need to know if there are any good online resources to really get into the nuts and bolts, but that also go over the basics as well. and i mean for all midi stuff, not just kontakt.

i saw one video about how to setup templates with kontakt, that will in effect make out 32 tracks, that can be edited in only one open version of kontakt. there was a template someone made at the stash, and i grabbed that, but i have no idea how to implement it.

one thing i'm trying to accomplish (don't know if it will work with these templates) is having a session horns setup, but something where i can send the midi data to separate "channels", so that specific articulations can be applied. rather than having to go back in and write them all in after playing. i've done a few of these like that, and it's tedious.

anyway, if there are good online midi/kontakt (within reaper) tutorials, i'm all ears/eyes.

thanks
dmoss74 is offline   Reply With Quote
Old 12-18-2015, 08:25 PM   #2
dmoss74
Human being with feelings
 
Join Date: Oct 2009
Posts: 336
Default

thanks for all the replies! that info was very helpful.

anyway, this is what i discovered, as far as kontakt and session horns goes.

i can load a single instance of kontakt (in reaper), and load up a ton of the same presets of session horns. from there, i change the default articulation to whichever ones i want, then assign each instance to a separate midi channel.

that accomplishes what i want, since from there, once i have my data recorded, i can select notes (in any order), then assign those notes to whichever channel i want the specific articulation to play.

man, there's got to be a different way.

plus, if i decide i want to change the group of horns, i would need to go back to each individual track (or lane, whatever you call them in kontakt), and change them all out.

again, there HAS to be an easier way.

i'll keep scouring the net. the session horns manual doesn't even come close to addressing these scenarios.

i haven't even opened up my strings library, and it's dozens of articulations. i'm too scared.
dmoss74 is offline   Reply With Quote
Old 12-19-2015, 09:27 AM   #3
Tod
Human being with feelings
 
Tod's Avatar
 
Join Date: Jan 2010
Location: Kalispell
Posts: 14,759
Default

Quote:
Originally Posted by dmoss74 View Post
i can load a single instance of kontakt (in reaper), and load up a ton of the same presets of session horns. from there, i change the default articulation to whichever ones i want, then assign each instance to a separate midi channel.

i'll keep scouring the net. the session horns manual doesn't even come close to addressing these scenarios.

i haven't even opened up my strings library, and it's dozens of articulations. i'm too scared.
Hi dmoss74, I don't know anything about session horns, but a friend of mine wrote a multi script in Kontakt that works very well if the articulations are spread out across several nki instruments. It uses keyswitches and you can load up to 64 nkis in one instance of Kontakt.

http://forum.cockos.com/showthread.php?t=165310

If that doesn't work, maybe you can better explain how the session horns work.
Tod is offline   Reply With Quote
Old 12-19-2015, 12:23 PM   #4
Tod
Human being with feelings
 
Tod's Avatar
 
Join Date: Jan 2010
Location: Kalispell
Posts: 14,759
Default

I just got to thinking dmoss74, if you're talking about NIs Session Horns, I do have Session Strings and I'll bet they're quite similar.

If so, that link I provided just might be the thing.

If I get a chance latter today to experiment with this, I'll do that.
Tod is offline   Reply With Quote
Old 12-19-2015, 01:49 PM   #5
dmoss74
Human being with feelings
 
Join Date: Oct 2009
Posts: 336
Default

Quote:
Originally Posted by Tod View Post
I just got to thinking dmoss74, if you're talking about NIs Session Horns, I do have Session Strings and I'll bet they're quite similar.

If so, that link I provided just might be the thing.

If I get a chance latter today to experiment with this, I'll do that.
hey tod, yeas, i'd imagine the session 'family' members are similar. i watched some of that video. that's quite extensive. thanks for the links. it'll be quite a learning curve for me to get all that figured out.

i kind of dove into the kontakt thing, without really understanding how it works. my prior midi experience was more in just performance stuff, with individual vsts.

i saw some video (i'll look for it) where what the guy was doing was randomly selecting notes from a project, then assigning articulations (keyswitches, whatever the actual jargon is), and then assigning those notes to channels, that the articulations were accessed from.

playing around with kontakt and session horns, i was able to duplicate that. but it seemed odd that i had to open 7 different instances of the same instrument bank, and send the main articulation (C0) to a different midi channel. with each instance of the horns, i would change the main articulation to whichever one i wanted to access on that channel.

i was hoping that there was a way to do these, without having to add all those notes for the articulations, but it appears (from your video), that that's not possible.

your way is probably the best, but like i said, it'll be a pretty steep learning curve for me.

thanks for all the help.

here's the video i saw. i know it's in logic, but was wondering if there's a similar way to do this from reaper/kontakt.

https://www.youtube.com/watch?v=5oEUc5g3FD4
dmoss74 is offline   Reply With Quote
Old 12-19-2015, 02:59 PM   #6
Tod
Human being with feelings
 
Tod's Avatar
 
Join Date: Jan 2010
Location: Kalispell
Posts: 14,759
Default

Quote:
Originally Posted by dmoss74 View Post
your way is probably the best, but like i said, it'll be a pretty steep learning curve for me.

here's the video i saw. i know it's in logic, but was wondering if there's a similar way to do this from reaper/kontakt.

https://www.youtube.com/watch?v=5oEUc5g3FD4
Hi again dmoss74, I took a quick look at that video but couldn't tell exactly what he was doing.

Actually I think the multiscript would be almost perfect for this. I DLed the Session Horns manual and it appears you basically have 4 separate horns with each having 12 articulations. They would fit perfectly in the 4 Kontakt pages and you could load all 4 horns with all their articulations into one instance of Kontakt. You would end up with 48 nkis loaded.

You could put all the articulations for Trumpet-1 on page-1, Trumpet-2 on page-2, Sax on page-3, and Trombone on page-4.

Then you would end up with 4 keyswitches and 12 velocities per keyswitch.

I rather like those Session Horns and wish I'd have picked them up during the Black Friday days.

The Session Strings are a little different but I could experiment with them to see how it might work with the Session Horns.

There is another way you can do this but it would require you to go in and edit all the Group Starts and assign them keyswitches. You would end up with 12 keyswitches for each of the 4 horns for a total of 48 keyswitches.

I'll play around some with the Session Strings today and see what happens.

Also check your Session Horns and let me know what the lowest note is for all 4 horns.
Tod is offline   Reply With Quote
Old 12-19-2015, 04:10 PM   #7
dmoss74
Human being with feelings
 
Join Date: Oct 2009
Posts: 336
Default

hey tod,

from what i gather, the guy in the video had some way of assigning the articulations (alone) to separate midi channels. from there, he could just select any combination of notes, then apply whatever articulation he wanted, that way. your way seems far more complex (which, in the long run, is probably better), but i was just trying to see if i could get away with having to write the notes in the midi piano roll. it gets kind of tricky with ss. you have to place the note (articulation) before the note(s) you want effected. this gets a little tricky with close arrangements.

and there's a tuba in session horns that goes all the way down to c3, but i don't use that. the lowest horn i use is the bari sax, and it's low note is c2. those numbers coming from reaper's midi piano roll.
dmoss74 is offline   Reply With Quote
Old 12-19-2015, 04:27 PM   #8
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 1,619
Default

Quote:
Originally Posted by dmoss74 View Post
i saw one video about how to setup templates with kontakt, that will in effect make out 32 tracks, that can be edited in only one open version of kontakt. there was a template someone made at the stash, and i grabbed that, but i have no idea how to implement it.
Getting your head wrapped around the routing can be a bit of a steep hill to climb. But the struggle is worth it.

On the subject of routing multiple tracks to a single shared Kontakt instance, I will say this: I have a fairly large orchestral template and used to do this, and have since moved away to a single Kontakt instance per track. I then offline the Kontakt instances on all tracks in my template, and only enable them when I need that instrument.

This does result in a proliferation of Kontakt instances which does eat up more memory. But if you have a nontrivial template with a lot of instruments you don't use much but want accessible in your template, the memory used by all the extra Kontakt instances is more than recovered by offlining those unused instances.

In exchange, you get MUCH simpler routing, and the ability to consolidate MIDI and audio on a single track, which means controlling envelopes is also vastly simpler.

And so, if you have a fair amount of system memory, or you think your will have either a simple template or a fairly comprehensive template (and can benefit from offlined instruments) then I'd encourage you to Keep It Simple, and use a single Kontakt instance per instrument. (Definitely use multiple articulations within the same instrument, however.)
tack is offline   Reply With Quote
Old 12-19-2015, 05:56 PM   #9
dmoss74
Human being with feelings
 
Join Date: Oct 2009
Posts: 336
Default

thanks, guys. there's a lot to digest.
dmoss74 is offline   Reply With Quote
Old 12-19-2015, 05:59 PM   #10
Tod
Human being with feelings
 
Tod's Avatar
 
Join Date: Jan 2010
Location: Kalispell
Posts: 14,759
Default

Quote:
Originally Posted by dmoss74 View Post
and there's a tuba in session horns that goes all the way down to c3, but i don't use that. the lowest horn i use is the bari sax, and it's low note is c2. those numbers coming from reaper's midi piano roll.
Aah, so this isn't the NI Session Horns, or do they have another version?

Quote:
Originally Posted by tack View Post
In exchange, you get MUCH simpler routing, and the ability to consolidate MIDI and audio on a single track, which means controlling envelopes is also vastly simpler.
Hi tack, could you explain this a little better. How do you access the different channels for the articulations?

When you talk about envelopes, are you actually talking about the CC lanes?
Tod is offline   Reply With Quote
Old 12-19-2015, 06:08 PM   #11
Tod
Human being with feelings
 
Tod's Avatar
 
Join Date: Jan 2010
Location: Kalispell
Posts: 14,759
Default

Also dmoss74, I've been working on this with the Session Strings and it will take me a little while to set it up. I want to do this anyway for myself.

At any rate, once I get it set up, and if you'd like to at least try it, I'll help you in any way I can, I wouldn't just leave you hanging. It just looks more complicated than it is.

As far as making a smaller footprint, Kontakt has "Purge". That will basically take all samples out of memory that you're not using.
Tod is offline   Reply With Quote
Old 12-19-2015, 06:30 PM   #12
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 1,619
Default

Quote:
Originally Posted by Tod View Post
Hi tack, could you explain this a little better. How do you access the different channels for the articulations?
Yes, that's the question, isn't it. If you ask two people how they control different articulations for an instrument, you'll get three different answers.

There many ways to skin this cat, but I prefer to avoid exploding track counts that occurs when using separate tracks per articulation -- I'd rather have my template look as close as possible like a score pad.

So it's no surprise that I will now give you two answers -- or maybe 1.5.

My template is very Spitfire heavy, so I have standardized on Spitfire's UACC to switch articulations, even for non-Spitfire instruments. Or rather, a variation of UACC: I use notes on channel 16, and the note number corresponds to the UACC value. So e.g. note 1 would be the longs articulation, note 20 is standard legato, etc.

I use a Kontakt multiscript I wrote called FlexRouter to translate these channel 16 notes to the CC32 events (per the UACC spec) that Spitfire's instruments expect. Keyswitch routers are a dime a dozen of course, but I had some esoteric needs, plus I needed some excuse to learn KSP. (My eyes cannot unsee what I have now seen, unfortunately.)

Similarly, for non-Spitfire instruments, I use FlexRouter to remap the the channel 16 notes to whatever keyswitch or CC trigger the instrument in question expects. This allows me to standardize on a single interface, so to speak, to access articulations for any instrument.

Then I use a tablet running TouchOSC as an interface to actually trigger the keyswitches, either while performing or step-recording.

This video may help explain what I mean. Or it might make it more confusing.

https://www.youtube.com/watch?v=FddWrEwaNmM&t=493

Ah, I just noticed your signature. So you'll probably not be too confused by the above.


Quote:
Originally Posted by Tod View Post
When you talk about envelopes, are you actually talking about the CC lanes?
No, I mean track envelopes, such as volume, pan, or any of the FX parameters. So for example, suppose I have 1st violins as an instrument track and I want a bit of EQ on that track, so I drop an instance of Pro-Q2 on it. Now I find I want to automate one of the bands slightly during a passage.

With the Kontakt instance per track approach, this is easy and intuitive: your audio and MIDI is all managed by the same track, so I simply add the envelope for the band gain and I can automate that as usual.

When you use a shared Kontakt instance and have multiple tracks routing MIDI to it, doing the above use-case is much harder. You need to make sure that for each MIDI track coming in, you have the stereo channels in Kontakt routing to a *separate* dedicated audio track, and it's on *that* separate audio track that you do your envelope automation. (You cannot route audio from Kontakt back to the same track the MIDI came from because REAPER considers this a routing loop and gets angry, even though MIDI and audio seem like they should be different.) I had wanted only MIDI tracks in the TCP and my audio tracks in the MCP, but needed to make exceptions for the cases I wanted to automate envelopes like this use-case.

It all got terribly ugly and confusing and I just had an explosion of tracks, because my "Kontakt 16 Instrument Group" track template actually had 32 tracks -- 2 tracks per instrument, one for MIDI and one for audio -- which was necessary to allow for envelope automation and also just controlling individual instrument levels from the MCP.

Because of the removal of this complexity, I am so much happier with the separate Kontakt instance per track approach. My template has every instance disabled by default, so it loads very quickly, and I just use simple actions (with the help of SWS) to online/enable the instruments when I need them. Kontakt samples are purged before offlining, so bringing it online is fairly quick also. I think my heaviest instruments (Mural sections each with 3 heavy combination patches) takes 3 seconds, which isn't enough time for me to lose an idea.

I hope this all made sense.

Last edited by tack; 12-19-2015 at 07:52 PM.
tack is offline   Reply With Quote
Old 12-19-2015, 09:50 PM   #13
Tod
Human being with feelings
 
Tod's Avatar
 
Join Date: Jan 2010
Location: Kalispell
Posts: 14,759
Default

Thanks tack, that was very interesting. At this point I don't totally understand what the UACC is, but from what little I gather, you're using Channel 16 to send the articulation switches. Is this correct?

I'll take a closer look at this tomorrow, I commend you on a nice video.

Quote:
Originally Posted by tack
No, I mean track envelopes, such as volume, pan, or any of the FX parameters. So for example, suppose I have 1st violins as an instrument track and I want a bit of EQ on that track, so I drop an instance of Pro-Q2 on it. Now I find I want to automate one of the bands slightly during a passage.

With the Kontakt instance per track approach, this is easy and intuitive: your audio and MIDI is all managed by the same track, so I simply add the envelope for the band gain and I can automate that as usual.
So what are you using for the other CC controllers, like CC11, CC1,cc64, etc.?

First of all using track envelopes don't give you the up close, intimate, control of the CC controllers, and when you use the envelopes like this, they are very dependent on the buffer settings.

And if you've only got one output track, how do you apply different EQ settings for the various articulations. I guess in this case they would be pretty much the same, but there are other FX that could be quite different.

Don't get me wrong tack, I'm very impressed with what you've presented here. But for truly creating midi tracks to control an instrument and all it's articulations, I personally could never narrow it down to 1 track, there are just too many parameters.

Heh heh, I'm an old fart and I might be wrong or missing something, but you'll have to show me. If I am wrong it wouldn't be the first time.
Tod is offline   Reply With Quote
Old 12-19-2015, 11:37 PM   #14
dmoss74
Human being with feelings
 
Join Date: Oct 2009
Posts: 336
Default

man, it's glaringly obvious they you guys are way above my pay grade, as far as all this stuff goes. for now, i'll go ahead and just load up seven "instances" (not even sure if that'd the right nomenclature) of session horns in kontakt, and assign each articulation to an individual midi track.

from there, i can swap articulations by highlighting specific notes, and assign them to whichever "track" has the particular articulation i'm looking for. that should keep me happy, for now.

there is obviously a wealth of information available to me, to make these things easier, especially if i want to add more instruments; but for now, i think (hope) this will work.

guys, i really appreciate your efforts. the links, and the input, have been very helpful. like my threat title says, i am a midiot. i'm probably trying to dive into the deep end, when i should be in the wading pool.

muchas gracias, amigos.

and ftr, sorry about the bad emoji placement. i thought they'd follow the cursor...not so.
dmoss74 is offline   Reply With Quote
Old 12-20-2015, 12:25 AM   #15
dmoss74
Human being with feelings
 
Join Date: Oct 2009
Posts: 336
Default

well, i loaded up one version of kontakt (in reaper), one version of session strings (but with four of the same npk (or nki, i can't remember) ""pro keyswitch" instruments. from there, i changed the default C#1 articulations to whatever i wanted to, then assigned that particular "instrument" to different midi output channels (1, through 4).

i recorded a short four bar test, and it all worked out. but still, i know there has to be a better/easier way of doing this. or at least, i'd like to think. i i could select any notes, and assign them to the "channels" i wanted. the last half bar has two notes playing one articulation, while the other note plays another.

this is more or less what i am trying to accomplish.

thanks again, guys.

https://app.box.com/s/58k58yq6fv33x95n4guug51pv2de0t53
dmoss74 is offline   Reply With Quote
Old 12-20-2015, 10:12 AM   #16
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 1,619
Default

Quote:
Originally Posted by Tod View Post
At this point I don't totally understand what the UACC is, but from what little I gather, you're using Channel 16 to send the articulation switches. Is this correct?
Yep, exactly. That's my particular workflow anyway. I just wanted to standardize on keyswitches on channel 16, mainly because I can color code notes by channel in the MIDI editor, so it gives me a convenient way to highlight keyswitches. When paired with a custom note names file for the track that names the articulation keys, it makes it a lot easier to read what's going on. A poor man's expression map, I suppose.


Quote:
Originally Posted by Tod View Post
So what are you using for the other CC controllers, like CC11, CC1,cc64, etc.?
Oh there is no substitute for CC lanes. Of course all CCs are controlled as usual. I'm not changing that. The only point I'm making is that by keeping MIDI and audio on the same track, for those times when envelope automation is needed, it's much more straightforward than the kind of routing you end up with when you share a single Kontakt instance for multiple instruments.



Quote:
Originally Posted by Tod View Post
And if you've only got one output track, how do you apply different EQ settings for the various articulations. I guess in this case they would be pretty much the same, but there are other FX that could be quite different.
You know, that's never come up. I've never felt the need to EQ (or have any other processing) differently for articulations on the same instrument.

But it's an interesting thought experiment. Well, the obvious easy way out would be to indeed use a separate track. It's worth pointing out BTW that another benefit of the single-Kontakt-instance-per-instrument approach is that when I *do* want a second copy of an instrument (maybe I want to fake some divisi on a non-polyphonic legato patch), I just hit ctrl-d on the track to duplicate it and I'm done. No messy channel routing to concern myself with.

There are alternatives if I really wanted to keep it on the same track. I could load up a dedicated patch in Kontakt for the articulation(s) in question and have them output to a different channel, say 3/4. Then have the FX listen on 3/4 and output back to 1/2. Oh, hold up -- no, this won't work. FX unfortunately can't "passthrough" channels, so the EQ instance after Kontakt would end up blocking 1/2. That's something that's always annoyed me about REAPER.

Ok, so the other option would be to automate the FX (either through an envelope or MIDI learn if the FX supports it), activating it only when the articulation is engaged. This doesn't work if you want to layer articulations and only EQ one of them.

In my case, if it came to that, and since it's not yet come up for me, I would probably indeed end up just duplicating the instrument and EQing the tracks differently. If for some reason that became a common occurrence for me, then I could see revisiting the routing strategy for articulations.


Quote:
Originally Posted by Tod View Post
Don't get me wrong tack, I'm very impressed with what you've presented here. But for truly creating midi tracks to control an instrument and all it's articulations, I personally could never narrow it down to 1 track, there are just too many parameters.
I guess the question isn't really how many parameters there are, but how many do you need to control simultaneously for different articulations. So far, at least, I haven't felt limited by this approach -- if anything, I've felt liberated.

But it just goes to show you many possible solutions there are to a given problem. It is both a blessing and a curse.
tack is offline   Reply With Quote
Old 12-20-2015, 10:20 AM   #17
tack
Human being with feelings
 
tack's Avatar
 
Join Date: Jan 2014
Location: Ontario, Canada
Posts: 1,619
Default

Quote:
Originally Posted by dmoss74 View Post
i recorded a short four bar test, and it all worked out. but still, i know there has to be a better/easier way of doing this. or at least, i'd like to think. i i could select any notes, and assign them to the "channels" i wanted. the last half bar has two notes playing one articulation, while the other note plays another.
I personally would use 4 separate tracks for this. Because "solo horn" is an instrument in my template philosophy.

But if you like this basic approach (different channels for different articulations) and you're not looking at a huge pile of articulations for any of your instruments, you should definitely take a look at Blake Robinson's BRSO Articulate:

http://www.syntheticorchestra.com/articulatereaper/

I don't use it because some of my Spitfire instruments have well more than 16 articulations, but if I didn't have more than 16, I expect this what I'd use.
tack is offline   Reply With Quote
Old 12-27-2015, 11:14 AM   #18
aspiringSynthesisingAlch
Human being with feelings
 
Join Date: Feb 2014
Posts: 309
Default dynamic midi mapping? midiot support!

hi sorry for hijacking but this thread has lots of info from knowledgeable contributors, so I wondered if anyone here could clarify something.

Is it possible to configure a custom action that's mapped to a cc (or even via osc if necessary) so that, for example, when a rotary is mapped to it, the 'last touched' dial in your vst (in your project) is controlled ?
aspiringSynthesisingAlch is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 05:12 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.