I created my first percussion map. Now how can I manually swap midi notes / keys?

So I’ve been getting pretty far along with my understanding of how to set up my own expression maps for various Kontakt instruments. However now I’ve reached percussion and find there are many layers to this onion…

First I’ll start by stating my goals: I have a few percussion libraries including CinePerc and Spitfire Perc. They each have numerous options for how things are struck, as well as different sizes for drums and cymbals.

One use-case might be this: CinePerc has a suspended cymbal patch which offers rolls, hits, scrapes, rakes, swells, etc. but with a few different-sized cymbals:

So I set up my first-ever percussion map and created some new custom playing & playback techniques to connect to those samples in CinePerc, like so:

Luckily these work as expected! However I soon realized what would I do if I wish to access the other suspended cymbals in this patch which are on different keys? Ideally I would rather be able to switch cymbals by simply moving the midi note up and down, so if the playing technique says “mallet roll” then as I move the selected up and down it finds and swaps the other ones connected to that playing technique in the percussion map.

In order to address this, I thought maybe the approach could be to create a percussion kit to consolidate all the cymbals but each on their own line, like so:

However, I’ve discovered that when I move to the secondary staff (lower one), it only triggers one sound.

Is a percussion kit the best option? Or is there a way of using one staff and then using a playing technique label or sorts to switch instrument?

And one final question: When I set up a new VST percussion instrument and select it in the rack, it appears that you can do a percussion map and an expression map. In what cases would I use either or both in combination?

I’m attaching my Dorico project here as well if you can take a look. It’s connected to CinePerc (Kontakt), not sure if it matters to have that patch or not for opening the file, let me know.

Thanks!

CinePerc_SusCym.dorico (1.0 MB)

If you need to trigger different sounds for different instruments, e.g. cymbals of different sizes, then it makes sense to define separate instruments. It shouldn’t then matter whether those instruments are combined together in a percussion kit, or held as individual instruments by the same player, or held by separate players. The important thing is that you have, say, a Suspended cymbal (large) instrument, and a separate Suspended cymbal (medium) instrument, created via Library > Instruments.

For your percussion map, you then use the correct combination of large or medium instrument for each note, and map the right playing technique for each one. That way you will have, say, notes between C5 and B5 for the large cymbal, and notes between C4 and B4 for the medium cymbal.

Provided you then define the right playing techniques in the Edit Percussion Playback Techniques dialog for each of your custom instruments, everything should work as it should.

You only need to define an expression map for use with your percussion instrument if the library, for example, allows you to use velocity for regular hits, but uses a continuous controller for rolls or other sustained sounds to allow you to play changes of dynamic. In that case, you need just a simple expression map that defines the appropriate volume type for Natural (i.e. velocity) and for Roll and Tremolo (i.e. whatever MIDI CC is specified in the documentation for your library).

2 Likes

Hi Daniel,
I’m following this post because I’m also working on adding new instruments w/its PM, EM and End Point, along with the percussion playing techniques.
I appreciate your answer because it’s giving me more clarity as to how to approach all this.
I’m using VSL SYzd Percussion Cymbals. It has many different ones. I chose one to work on (Cymbal A).
1- I created the instrument


2- I created a PM (it’s not complete yet)

3- I created an EM for the beaters available (stick & mallet). Based on what I got from your reply, I would add another base for the roll and one for the tremolo. Correct?

4- I set up the Percussion Playback Techniques.

Here is the VSL view of the Cymbal

So far the beater triggers with single strokes seems to work. Now when I add the Mutes, only the stick mute works but the mallet one doesn’t.
Is there anything you can see that may explain this behavior, or lack of?

Hi Daniel, thank you, it’s been very helpful. I’ve made a lot of great progress today using your advice, and isolating them onto different instruments and then assigning them accordingly is working great for the many articulation options.

Also thanks for explaining the difference between percussion maps and expression maps, that has been helpful for programming the rolls and swells.

However, I’ve run into a few snags.

1. Choke Issue
CinePerc offers a keyswitch for release which effectively forces a “choke,” obviously great for cymbal and timpani swells. It has made most sense I think to program this within the expression map. I think add-on also makes the most sense here, since when adding the additional ‘choke’ (weinberg) playing technique, I merely want it to add that keyswitch (C#0 in Cineperc). And then I discovered I had set the init and natural to Cineperc’s keyswitch for fully open release (Bb0), so that everything else not marked with a choke will sustain normally.

Initially choke did not work, and I tried everything from base to add-on, mutual exclusion groups, etc. After a lot of trial and error, I discovered that if I set choke in the playback techniques menu to be a ‘direction’ rather than an ‘attribute’ it will work! However, I would much prefer to not have choke as a direction since it’s a one-off thing per-note-basis.

Alternatively, I discovered that if I drag out the ‘continuation line’ for choke as a normal attribute, it will work, but only if I drag it out into the next bar like so:

Screenshot 2024-02-20 at 3.46.59 PM

Then and only then will choke work on that swell, and on other hits and swells the sustain will be fully open. Just wondering if there is a way to fix this so I don’t have to drag out a continuation line every time?

2. Switching midi notes on the same ‘instrument’
Another thing I’ve run into, and this is often the case with libraries of percussion and FX, is they offer different sampled recordings of the same thing but on different keys. This is where it gets hairy setting up a different instrument and playing technique for every key, because effectively it is all the same exact cymbal/drum/etc, but with one small timbral variation for sonic options. This doesn’t exactly matter at all preparing a score for a live player, but in playback it would be nice to select these variations.

So let’s say there’s a cymbal hit on C3, and the same cymbal hit on D3, but with a slight variation to how they recorded the sample. Is there no way of shuffling through the possible available midi notes in the VST? Kind of like how you can with a drum set with a selected note (shift+alt+up/down arrows) to cycle through what is available.

I have mapped the different samples in my percussion map, to the same instrument and same playing technique, so they are “available,” but when invoked in the score it invariably defaults to the lowest midi note as far as I can tell. Hoping this is possible!

@wing, I’m not sure what to suggest regarding the choke issue. In general you will need to make sure that you have defined the appropriate combination of choke plus whatever other playback technique you want to use in your percussion map. If you can add choke by e.g. manipulating a CC value rather than using totally different pitches, that would be well-suited to use add-on switches in the expression map rather than combinations in the percussion map, but if the samples are accessed using different pitches, you should focus on the percussion map instead.

The second question is easier to answer: you will need to define different but equivalent playing techniques to access different but equivalent samples in your patches. You can define e.g. Hit 2, Hit 3, Hit 4 playback techniques and then use them in your percussion map for each of the different but equivalent techniques. In the Edit Percussion Playing Techniques dialog, you can then define the same notehead multiple times to use each of your Hit 2, Hit 3, Hit 4 (or whatever) techniques. These will then look the same in the score, but you can cycle through the different sounds using Alt+up/down just like you would for any other change of technique.

@algae592009, I’m less sure of what might be going on in your example. The use of expression maps and percussion maps together is not fully worked through in Dorico as things stand, and you may well run into things that don’t work as you would expect. Changing the volume type for e.g. rolls versus hits is something that is designed to work and has been tested, so we’re confident that will work, but other combinations of playing techinques and switches in conjunction with percussion maps exist in a kind of unsupported and untested hinterland where things may work, but we can’t guarantee that they will continue to work, and may well work at the moment only as a result of interactions between different playback subsystems rather than because we have actively tried to cover specific use cases there.

As such, my advice would be to do as much as you can for percussion directly in the percussion map, and define the right combinations of techniques there.

So I tried various ways of setting this, including just in the percussion map etc. Interestingly I can look at the keyboard on the Kontakt instrument and when the choke playing technique is present I can see the keyswitch for choke being “pressed” down, however nothing happens - but then when I manually play using my midi controller, and press down the same keyswitch, it definitely chokes. My guess it may have something to do with this library and how it interprets keyswitch latching perhaps. I also tried CC but ironically it does not work on rolls with this library. Oh well - glad I can cheat it using the continuation line.

So I’ve played around with this but it isn’t working yet for me. I defined the playback techniques (using hit1, hit2, hit3), and found the edit percussion playing techniques dialogue for my instrument, defining the same notehead a few times attached to each playback technique respectively. I’ve also added these to my percussion map to the corresponding midi notes. However when I to cycle through the options, nothing changes. I can see at the bottom of the screen it reads ‘Note: B2’, a note which does not correspond to any of those playback techniques within my percussion map.

I have tried setting it up with just hit1, hit2, hit3 etc, and also with combination technique (for mallets), but the result is the same:

If you can have a look at my project file it’s attached here (I assume you can still look at any mapping issues without having the VST?)

CinePerc_SusCym3.dorico (1.1 MB)

Thanks!

Instead of using the Playback of articulations and tremolos section of the Edit Percussion Playing Techniques dialog, add more mappings to the row of techniques at the top of the dialog. Click the + button in the action bar below the row of noteheads, and add entries there using whichever notehead you like (e.g. the X notehead) and choosing each of your new playback techniques for each one.

Ah ok, that seems to have worked. To be honest I wouldn’t have guessed that!

However, I have learned through some trial and error that there’s a bit of a quirk when attempting to combine with techniques:

What I am trying to do is say the overall playing technique is with mallets (which I invoke in the actual score using the playing technique popover). Then I would want hit1, hit2, hit3 to cycle through respective samples as basically children only connected to the parent ‘mallet (hit).’

This would allow me to use the same hit1, hit2, hit3 etc for when I switch the ‘parent’ playing technique, to let’s say sticks or brushes or a scrape. Then I could still just cycle through samples respective to each parent technique.

I can see the note change at the bottom of the screen, and interestingly when I play everything back from the transport it actually works. But when I use the alt+shift+up/down arrows it defaults to the base mallet (hit) sample so I can’t preview them. I suppose that is overriding. Would there be any way of fixing that so I could cycle through samples and hear them while I do it?

Thanks!

There aren’t any options for this at present, no. I was looking at this recently, and found that Dorico seems to prefer to play the playing technique of the previous note that was input on that instrument rather than the playing technique shown on the caret. It needs more investigation, but I don’t have time to dig into this further right now.

1 Like

Great, hopefully that could be fixed in a future update – it would be very helpful in this context to be able to preview the available sounds in a patch before playing.

I appreciate all your help here, it’s sent me off to the races. Cineperc is a large library so I have a long road ahead of me but I think it will be worth it for some of the unique articulations not found natively in Halion or NP. Perhaps as soon as I have maps which are polished and battle-tested I’ll share them here. Until then, off to mapping!

Hi Daniel,
Would you happen to know why in a percussion map I have, there’s one line I’ve been trying to delete with no success.
Here’s a screen shot of it. You can even see that having the line chosen, it doesn’t show any filled fields for it:

Can you attach the project containing the percussion map so I can take a look?

There are two lines that have nothing and do not clear:
Midi note 68 & 72. I’m attaching the project file and a diagnosis file.
SYzd Percussion Study Claves.dorico (1.9 MB)
Dorico Diagnostics.zip (1.3 MB)
Hopefully you can find what’s going on.
Thank you for your time and consideration.

With apologies for the delay in looking at this, the problem is that the playback techniques referenced in the VSL SYzd/Synchron Perc. PM - Claves - Algae Studio percussion map (e.g. Upbeats 1, Upbeats 2, etc.) are not present in the project. They are referenced in the percussion map, but the actual playback techniques themselves are not present in the project, and this means that Dorico is unable to find the correct row in the percussion map when you click Clear, and thus nothing is cleared.

The question then is, of course, why are those playback techniques not present in the project file? How did the percussion map itself come to be in this project file? Did you create it in this project? Did you create the playback techniques here, or were they and the percussion map created in another project? If so, how did you import the percussion map into this project?

Thanks for your reply.
I created the PM from another PM I created for the Castanets. This is why castanets shows up as an assigned instrument in the bottom last midi note 72. The first midi note 68 I created, turned out to be a mistake; that’s why I want to delete it.
This PM is in a project file I created specifically to create/test out new PM & EM’s for a collection of VSL percussion instruments I’ll need to use in the future.
In this project, the playing techniques and playback techniques have been created/assigned to score symbols. I just tested the two clave kits and they both trigger the different samples that come in the VSL percussion instruments. So I’m not understanding what you mean when saying

The playback techniques for Upbeat I believe I created. When hovering over them on the playing technique menu, they show as “pt.user.upbeat…” vs the ones that come with the program that show up as “pt.muffledDampened”.

I created it.

Yes I did.

Yes I did.

I am saving the EM’s, PM’s and instrument kits I create in a folder so I can import them to other projects, when needed. That’s what I understand so far, how to do it.
The playing techniques created are using text to show up in the menu under unpitched percussion, so I’m assuming you would see them. Or is that not true?
I also just tried to change the info on each of the problem lines in the PM, but it didn’t change anything, either.
Here’s the project file the should show all the technique symbols in the score lines of both clave kits.
SYzd Percussion Study Claves v.2.dorico (2.2 MB)
Thank you again for your time and consideration.

Thanks for your patience. I can see now that I was mistaken, and that your playback techniques are all present and correct (I didn’t check all of the categories in the Playback Techniques dialog). So now I have been able to isolate the problem.

The issue is that some of your playback techniques have the plus sign in their names. This won’t work well, because Dorico relies on the + character to work out which combination of playback techniques is being used. So your playback techniques called things like Upbeats 4+ then don’t work properly when Dorico is trying to decompose the percussion map to locate the right playback techniques.

We need to make Dorico more resilient to this kind of thing, which we will do in future. For the time being, I’ve attached a version of your project in which all the playback techniques containing + in their names have been renamed. You should find that this now works as it should. For the time being, avoid using + in the names of playback techniques, and you should avoid this problem.

SYzd Percussion Study Claves v.2.dorico (2.1 MB)

1 Like

OK, thank you. Will do.