Expression Maps

I am sympathetic to the request for clarity on what works and what doesn’t in the Expression Maps dialog.

The options in the group that contains the ‘Transpose’ option are all as yet non-functional, except for ‘Transpose’, which is functional. The ‘Has exclusion group’ controls are non-functional. Otherwise, all of the controls in the dialog are functional: however, this is not in itself massively helpful information, as the real complexity comes in the way that the various playing techniques are actually generated and played back in the score. You cannot, for example, create expression maps for dynamics as you can in Cubase. The options for whether an expression should apply only to the current note or ongoing until a countermanding expression aren’t yet implemented. Dorico can’t currently make the connection between a playing technique you enter in the score, like a harmonic, and the durations of the notes underneath it in order to create the appropriate playback region. And so on.

I know this is very frustrating, because it’s hard to tell what works and what doesn’t. We are just as frustrated as you are about it: we are giving work on the playback side of the program a very high priority, but there is still a limit to what we can achieve. We have added so much useful functionality on the playback side of the application recently (NotePerformer support, video, MIDI automation, swing, etc. etc. etc.) and there is more to come, but at the moment, for example, I can tell you that working on real-time input from a MIDI keyboard has a higher priority than working on the expression maps side of the program. It’s easy for me to ask for patience, and I understand that you are paying customers who want and need functionality that doesn’t yet exist, but I hope you can see that we are at least not sitting around twiddling our thumbs, and even if you may not agree with every one of our prioritisation decisions, we are working hard to add features as quickly as we can while still doing a good job.

Regarding a list of features to vote on, here is a simple and short answer: no.

I know I’m a little late to this party, but as a user mentioned earlier in the thread, I am also an owner of large amount of spitfire’s libraries and would be over-the-moon happy to be able to write in Dorico with my spitfire libraries.
I know what expression maps are, but I have absolutely zero idea about the workings under-the-hood.

What often seems to happen in discussions like these is that the conversation jumps to an advanced level very quickly, and leaves us unlearned folks out.
I would be very willing to make expression maps for Dorico, and share them on the forum, of many Spitfire products, but I would need a nice, concise primer on the subject.

If anyone can point me to a good resource, or spend the time to write one, I’ll get down to spitfire libraries.


This is really good place to start.

That’s useful information, thanks Daniel!

At no point did I complain that Dorico did not have what I want. Did you read what I said before ADMONISHING me with your ALL CAPS? I asked for clarification as to what does and does not work because, in spite of reading all the threads on expression maps here, it’s still unclear.

As to what’s promised - this is from the Dorico_21_Deatiled_Feature_List.pdf (which I read)

§ Playing techniques result in changes of VST Expression Map
§ Built-in editor for creating and editing VST Expression Maps, including import of existing
Cubase Expression Maps

And in the documentation, (which I also read), there are many imprecise caveats:

Although the format of expression maps in Dorico is similar to Cubase, Dorico cannot handle expression maps in exactly the same ways as Cubase. For example, Dorico allows you to use more playing techniques, but Cubase can reproduce more combinations of multiple playing techniques.

During playback, Dorico does not currently support all fields in the Expression Maps dialog. This is planned for future versions.

Although settings are imported into the Technique Controls and Exclusion groups from Cubase, Dorico does not currently implement all the information. This is planned for future versions


Asking for clarification is not complaining. It’s trying to develop a shared understanding, in an effort to reduce frustration and manage expectations.

Finally, Daniel has acknowledged the lack of clarity and the resulting frustration, on both sides.

What does your post add? Nothing.

Rich: you’re right, I failed to read your post carefully, and in doing so, misrepresented your position. Apologies.

That’s gracious of you - accepted!

Hi there

has anybody adapted a Cubase expression map for VSL Apassionata Strings?

I have had a quick look at the cubase expression map import from VSL and see there is a lot to do so thought it would be best to ask here first



I’ve found that I’ve needed to use “nat.” to reset keyswitches in other Notation softwares that allow custom “expression maps” (like Notion 6). The ultimate tool for me was moving from Keyswitches to Midi channel and CC patch changes. The issue is that Dorico does not yet allow for CC and Midi Channel changes for individual expressions. Once Midi channel switching and Midi CC triggers are implemented then I can see some of these issues being solved on their own.

As has been mentioned the ability to change midi note length (for slurs, etc.) is also important for triggering different sample patches.
This could be set to

set flag: legato/port. etc.
unset flag: …
send midi channel: 2
Midi CC #3, 127
change note length: +50%

Convoluted, but that’s what gets these things functioning properly

Any news on when these abilities might be implemented in expression maps?

I posted a version in this thread in July of last year.

It contains more than just the strings maps. Also, the strings expression maps will work with any of the VSL string libraries except for Dimension Strings.

Thanks for this dbudde, I really appreciate you making that available.

I have imported the expression maps and hooked everything up right I think, but I am having a bit of trouble getting dorico to switch the VSL patches properly, for example, legato is not getting activated by slurs, and pizzicato doesn’t change back once a new articulation is expressed

Is there something I still need to set up? I have imported the Cubase expression maps presets in to the VSL player. Are those the ones which match up to your Dorico expression maps?

The problem seems to be with non special-edition libraries, as those seemed to switch fine. Its the full libraries such as Apassionata Strings I standard that I am having an issue with.

You need to use the presets that VSL provides for each library that are located in your VSL Custom Data folder. So for instance, with the Appassionata extended library, for AS violins, you would use this preset:
VSL Custom Data/Expression maps/VSL_Str._Expressionmaps_v/Strings VI-Presets VST-Expression/Appassionata Strings/AS I+II - extended/AS_Violins_L2+II.fxp.

I have not had problems with Legato using these presets and the Doricolib file I posted.

For pizz. and nat. you may need to add some nat. techniques in judicious places. This is because exclusion rules don’t yet work in Dorico. Also, if you are using VE Pro, there was a bug that articulations on the first note of flow did not get recognized all the time. I think this has been fixed, but since I have worked around this bug, I am not certain this is the case.

Ah brilliant, that has got it, it was the use of ‘Nat.’ that I was missing, and that has solved it.

Thank you very much for making those expression maps dbudde, I really appreciate it and it has saved me a lot of time

Hi there

Does anybody have an expression map for Vienna Synchronised Appassionata Strings? I am guessing this would be the same as any of the other synchronised products in the Vienna range



I’ve done some simple work on the Spitfire strings, which might be a good starting place for a lot of people.
Spitfire Symphonic and Chamber (2.33 KB)
It’s rough still, and not fully tested, but I thought it might work to get people going.

This attachment includes Expression maps for both the basic Symphonic and Chamber strings, and Extended Core techniques for the Symphonic strings.

I know not everything is implemented yet, but here are some thoughts, comments to be aware of:

These are using the default settings. If you have your short notes mapped to cc1 instead of velocity for dynamics, you will need to go in and change the expression map to use the controller.

On the Chamber strings, if you want to use the legato keyswitch instead of the long, you should change natural to keyswitch 0.

On all of the bass sounds in Symphonic strings, there is no con sordino, so it is mapped to flautando.

A lot of possible sounds have not been used yet, because I don’t see a way to do the following things:

  1. Doubled expressions - e.g. con sordino staccato
  2. Alternative Short notes
  3. Trills (due to not being able to pick between major and minor 2nd trills) - (I do see this is possible in some of the default sounds… so there must be someway to make this happen…)
  4. Vibrato controls on a cc controller - The vibrato in Spitfire uses CC21 on a continuous crossfade… I don’t see a way to implement something like this (other than just program it in) – Same could be true for using expression cc11 to control volume, since dynamics are mapped to cc1.

    Just one question… what are the exclusion groups? I know they aren’t working, but I don’t understand what the plan is for them.

The idea behind exclusion groups is that they allow you to specify which other playing techniques must be removed when another is added: at its simplest, “pizz.” removes “arco” and vice versa, or “mute” removes “open” and vice versa, but it gets a lot more complicated when you consider that e.g. “col legno” needs to remove “pizz.” which needs to remove “snap pizz.” which needs to remove “left-hand pizz.” which needs to remove “sul pont.” which needs to remove…

Hi Daniel and others,

Re: Programming a Con Sordino effect in the Chris Hein Solo Strings

I have put together an experimental expression map for Chris Hein Solo Strings Extended. Its based on the Cubase Expression Map which comes with the Library but I have extensively modified it to be more comprehensive of the many string techniques and to match it to the techniques that already exist in Dorico. I can say that its a great library if strings are important to you and you want use them all the various possibilities of these instruments. There are many types of short and spiccato/jeté/sautillé sounds and you can program a change in a sound in context by simply altering the attack on the note head using MIDI CC. As well there are many other effects even including a jazz doit and fall. Nice!

However I do not understand what I would to program in the con sordino function of this library. The CH solo strings uses an audio filter instead of samples to create the Con Sordino string mutes (as others have done), which is smart programming and saves a lot of sampling space. It uses CC 48 for Sordino on/off which I presume is a MIDI value of 127 for on and 1 for off. Dorico is using a mute glyph/symbol (looks a bit like an M) instead of the words “Con Sordino” or “Senza Sordino.”

My problem is that I am still not clear on how all this works. I want to program this effect using a CC controller and a value. However there is no sordino glyph to select or match to in the Techniques dialogue box on the Expression Maps page. That also means there is no Technique to select in the Techniques symbol dialogue page. How do I deal with this? Also is it possible to have all the other features of the sound library work along with the Sordino or is there some sort of exclusion principal at work? (Arne Wallander complained about a shortcoming such as this in his introduction to the NotePerformer for Dorico.) There are a lot techniques that you can map to keyswitches in the Chris Hein Solo Strings (and many keyswitches available too) and it would be great if I could just make them all sound as Con Sordino just by putting on the Sordino filter. Its effectively what happens on the instrument too.

I also just wanted to confirm whether basic legato works in Dorico or if notes just always default to 75% of their note value. I have had contradictory information about this.

Can anyone write down in plain English what the technique “Natural” is all about and how it has to be used or can refer me to where it is fully explained in one place? Is is just a stand-in for the basic Arco technique but which can one apply to any instrument?

Warmest regards

Paul Nicholls

HI Daniel,

I deeply respect what has transpired with the development of the Dorico music notation and performance software over the past two years or so. So many great advances! However, I wrote a post with a request a while ago in regards to the need for more documentation on Expression maps. You said in reply that there was no such document ready or one planned at this time and that the Expression maps feature set was not complete yet. You added some explanations on the forum about a few of these matters (which were appreciated) but some of it was a bit confusing for me or presumed some prior knowledge I did not have.

Would it not save time to write a document that clears up some of the more important questions rather than you having to read and reply to all of this stuff on the forum which is also itself partly generated in the first place by the lack of fuller documentation?


Hello Daniel,

Re: Incomplete programming of Performance and Expression Maps Features in Dorico

I would like to express that it seems to me a bit pointless to add features to the Dorico that presume in the first place that the performance and expression maps features work properly, especially when I am increasingly getting the impression that they don’t. Myself and a colleague would really like to use Dorico to score to film. You have added that feature in a pretty comprehensive way to the program. Yet the performance aspect of Dorico needs to be at a critically high level in order to make use of what could be an excellent new video scoring capability. You have even added professional audio output features such as recording to stems. That is not available on Sibelius. Its impressive that you thought of doing this. And you are about to add transcription of real time keyboard playing. Yet you have admitted that the performance aspects of Dorico are incomplete right now. Why not fix this critical aspect of the program first before adding new features that entirely depend on this key aspect of the program?

I admit that I can not possibly understand the complexities of what you are doing so there may be a deeper programming reason for why you are not completing this area at this time. However, I want to just tell you that it is the performance aspect of Dorico that keeps me from switching fully from Sibelius and fully recommending your program to others at this stage. There are complex reasons for this on my part and I am using Dorico for some publishing and part printing - but I can’t ditch Sibelius yet although I really want to. Working with both programs in frustrating partly because I want to make the switch and fully learn all the many lovely streets and alleyways of your product.

However, if NotePerformer could just sound as good in Dorico as it does in Sibelius that would be all I would need right now. Unfortunately my music sounds choppy in the Dorico version and I think I know why. Arne’s critiques make sense to me and truly I do not fully understand some of your response to them. I am hoping this is all a very temporary situation but your recent replies to similar questions and requests on this part of the forum leaves me feeling discouraged.

I hope I am mistaken in what I assert here and would warmly welcome being corrected in these matters.


Paul Nicholls

I’m increasingly under the impression that a specialised “keyswitch” ossia staff would be the best way to work in Dorico in the future, something that you could quickly open with a shortcut, that doesn’t get printed, that you can quickly hide again so it doesn’t interfere with layout and with dedicated clefs that go really low or really high. That, in combination with the already available MIDI CC drawing and the upcoming keyboard transcription would make Dorico as powerful as any DAW for quality Playback.

The reason being notation will never represent a players’ instinct, no matter how sophisticated the program is. For example,

  1. a staccato keyswitch is inappropriate at very fast tempos or slow ones, a real player will play staccatissimo on fast tempo, despite the score having staccato markings and simply cut the note short on a slow tempo (what VSL calls portato), in other words it’s completely tempo dependant.

2.- what we call sustain, most woodwinds will tongue, very delicately, on reasonable passages, but on very fast passages they will always play legato unless you specifically ask for double/triple tonguing.

3.- Legato in real life begins on the second note of a phrase, but it’s notated from the first

4.- SFZ, fp, etc. all need tempo and dynamic context, a one-dimensional keyswitch simply doesn’t cut it.

Most of the necessary tools are already in Dorico (for example the ossia has a Playback start offset, perfect for keyswitches!) It’s just missing this specialised staff that hides and has special cleffs.

I use to work like this in Sibelius when I needed a good playback demo and aside from the extra staves and the lack of proper CC control it was actually quite effective.