I'm totally confused by enpoints, expression maps, and other midi commands

I have searched the forum and the online manual but am as confused as ever. I apologize if this question is one that’s been answered many times but apparently I am not using the proper search terms.

I want to use my EastWest/QuantumLogic sounds in Dorico. Using EastWest’s Play VST I can load different patches at the same time manually (I don’t have a problem doing that) and can then assign each of the different patches to its own midi channel. I am working on a piece for string orchestra, with 5 staves: violin 1, violin 2, viola, cello, bass. If necessary I can load 5 instances of the same patch and assign each instance to midi channels 1, 2, 3, 4, 5. The particular patch I wish to use does not have keyswitches and does not have any effects like pizzicato. What I want to be able to do is to load a string ensemble pizzicato patch also and assign it to midi channel 6. Then for the short pizzicato section which occurs only in cellos and basses, I would like to enter a midi command to change the channel for the cello staff and the bass staff to use channel 6 and then when that brief pizzicato section ends enter a midi command for those two staves to change back to midi channels 4 and 5.
Is this possible? How do I do it? Explain it please as if I were 5 years old. :slight_smile:
Thank you.

It is possible, though I’m afraid I don’t have the time to write the entire recipe out for you just at the moment.

The basic gist of it is that when you use a pizzicato playing technique, this causes Dorico to look for a pizzicato playback technique in the expression map assigned to that endpoint (i.e. the combination of device and channel being used to play back that instrument). So you will need to build an expression map (in Library > Expression Maps) that adds a switch for the pizzicato playback technique and produces a channel change that will cause it to go to the channel that has your pizzicato sound loaded.

An Endpoint is one or more VSTs, with all the patches and settings that they contain, assigned to a given Dorico instrument.

Endpoints can be saved – so you could save your manual config of patches for your string orchestra, and it would then be available as part of a Playback Template. You could create Playback Template that includes your Endpoint for strings, and falls back to, say, HALion or NotePerformer for all other instruments.

Then, you can apply that template to any project file (or have it as the default for new projects), and you’ll automatically get your patches as you want them.

As Daniel says: Expression maps are the link between notation concepts and the MIDI commands in the sample library that are needed to trigger them. (They are also included in the saved Endpoint.)

I’d recommend sitting down with a cup of hot beverage and watch John Barron’s excellent tutorial video, which explains the process thoroughly.

Thank you very much Daniel and benwiggy! I had thought that might be the way and I’m prepared to do as benwiggy says and watch that video and try to make sense of things. I know that in other notation programs there are ways to simply enter a midi command in the music with unprinted text which was what gave me the idea to ask about entering a midi command separate from expression maps, etc. But I can see I need to do a lot of learning about this!
Thanks again for the help and link to the video!

Dorico mis different from other notation programs, in that you have to set-up stuff in possibly more complex ways; but once you’ve set it up, you can use it again and again; instead of having to re-do a small manual thing over and over.

Dorico is quite strict about separating notation (instructions on the page) from playback (how instructions are interpreted). Which, incidentally is a strength. Just imagine loads of unseen (and frankly unintelligible) midi messages being propagated between parts…

I don’t understand how a midi command entered for a single part would be “propagated between parts.” Sibelius and Finale handle it well so I had assumed that Dorico might have some sort of midi command entry potential.
In any event, in Play mode I can specify which channel a staff should play through, so obviously midi messages are being sent to the VST. I’m just wondering why at some point further along that same staff I can’t change the channel. When I load the proper sounds in the Play VST and assign different channels to them, in Play Mode in Dorico, I can change the channel a staff starts with to the one with the pizzicato strings sample and I hear the pizzicato strings perfectly.
Guess I need to do a lot more digging – that video link deals with Playback Templates and not so much with expression maps (the presenter says as much at the start) so I’ll go hunting for other videos concerning expression maps.

Say you copy a passage from violins to violas, Dorico will copy the playing techniques too. The viola expression map will set the correct parameters to playback those techniques. If you did the same using embedded midi messages you would likely have to edit it to get the correct patch to trigger.

If you want to have different styles of pizzicato played by the same instrument, it is simplest to create new playing techniques (you can hide these if needed) and connect them to new playback techniques. The expression maps can handle channel changes for you (tip: include a channel change in your natural switch to ensure you always go back to home base!)

Daniel -

Is there an end to end flow chart in the documentation that shows the complete sequence of settings that need to be configured in order to get all the different components connected & working properly?

That would help us visually oriented people out here. :grin:

1 Like

Okay, I hadn’t thought about copying one staff to another one and thus propagate unnecessary midi messages. I’ve gotten as far in my understanding of things to see how to create an expression map that would include a single term “pizzicato” which would be an absolute channel change to the channel holding the pizzicato sample, with the “natural” entry edited to change back to the regular string ensemble channel.
I won’t waste any more bandwidth – I very much appreciate the help but my head is spinning with the differences and similarities between playing techniques, expression maps and playback templates. I can see that I need to spend a lot of time looking at youtube videos (thank you, Team Dorico, for providing those – they are life-savers!) and trying to figure things out. I did look at the PDF manual about expression maps, but it was not very clear on what to do. I hope that among the many many things the team needs to be involved in that there might be a separate manual on expression maps and playback techniques and playback templates sometime in the near future.
In the meantime I simply wait for NotePerformer4, which I hope will be even more fantastic with Dorico than NotePerformer3 is!
All this is simply me trying to make use of an expensive but ultimately ill-informed purchase of EastWest/QuantumLeap sounds many years ago.

I think what you need is already available, if you mean EWQLSO:

Please don’t consider this a waste of bandwidth. I too, continue to struggle with expression maps and welcome the insights and experiences of other users.

I see ‘the problem’ as perhaps analogous to the musicXML challenge (it’s an emergent standard, but not every software uses all of the latest… so things don’t always behave as expected). Similarly, there’s a plethora of VST creators out there, each developing their individual ways to control the libraries they create, and an arms race to create ever more articulations, and which is probably never concerned with how notation programs might try to trigger them.

I think Dorico has a promising approach to tame these unruly VST beasts. But the insoluble(?) conundrum is that the marks on score, which all players understand, can never map to a definitive sound in all libraries. Not least because every creator/player/composer has a different sound in their head when confronted with the same score!

1 Like

Thank you very much. It’s definitely a step in the right direction, but instead of smooth string sounds I get very very staccato (marcato?) playback even though there’s nothing in the music to indicate that interpretation… It’s as if, comparing it to Sibelius, I had “live playback” enabled where the playback follows whatever timing was used to enter the notes (quick, choppy duration/pitch manual entry). In Sibelius I can turn off “live playback” and it will play the notation as it is in the score. I don’t see how to do that in Dorico.
But you have definitely gotten a lot closer than I’ve been able to do! And the pizzicato section actually gives me a pizzicato sound! If I can figure out how to get a full, smooth string sound I’ll be all set.
Thank you very much for sharing that!

Further followup, using wcreed’s playback template, when I look at the Play instance and check the keyswitches, some of them are not the “normal” ones, so changing all of those back to normal and I now have the correct sounds!

And further followup, when I start playback at the beginning of the score, there is no sound at first but gradually it creeps in after 3 measures. Once it gets going, it’s great! All the sounds are loaded, the dynamics at the start for all 5 staves are set to MF. There is no difference in dynamics for about 30 measures, so it’s not as if there’s a crescendo from niente. Hmmm . . .

See if adding a short pre-roll will help set your initial dynamics.

Thank you! I would never have thought of that! There is so much to learn!


You shouldn’t need a pre-roll in order to have dynamics work correctly from the start of the flow. Pre-roll is only necessary if you want to play back grace notes before the start of real rhythmic time, i.e. before the very first beat of the flow.

I suspect that there’s something not quite right about the way the dynamics are set up in the expression map. Even though I don’t have the EW sounds, I should be able to see what MIDI Dorico is outputting if you want to attach the first handful of bars from your project here, assuming they still reproduce the issue.

Here are the first 6 bars – the sound doesn’t start until the 4th bar and it sneaks in. I’ve tried this original file on a couple of different computers. It does not exhibit this problem if I use the Halion or the NotePerformer playback templates, only the EastWest/HSO playback template that wcreed shared.
Capriol Suite - 1. Basse-Danse.dorico (2.7 MB)
Daniel, thank you for taking a look at it. With each reply to this thread I’m creeping closer to a better understanding of expression maps and playback templates and such.

The problem is that the Solo Violin, Solo Viola, Solo Cello and Solo Contrabass expression maps don’t have a “Natural” switch defined. Try adding one and things should spring into life a little more fully!