Feature Request: Expression Maps - Additional Conditions for Playback


One feature I would like to see is more advanced conditions in expression maps, to help to be able to do specific things based on the context of the note in the phrase. For instance, if the note has a rest before, or a rest after, or a note before, or a note after, or the note before or the note after has a slur over it. In other words, contextual clues that could be used to construct expression maps that can handle a wider variety of situations.

I have a few use cases in mind for this:

  • Quite a few libraries that generally work quite well in Dorico (ex. Sample Modeling) use a specific method for communicating note attack - in the case of Sample Modeling, velocity is used. Other libraries like Infinite Series, Garritan GPO, and others have similar features. Most situations with attack can be handled by shaping the velocity based on existing conditions that are already in the expression maps, such as note length (ex. faster notes usually require a faster attack). However, one particular situation cannot be handled by this, and that is the note that begins a phrase. A note following a rest has to have a lower velocity than you would normally have, otherwise you get a noticeable “bump” on the new phrase, which sounds like an accent. This necessitates a bunch of manual edits to sound OK, by going in and reducing the velocity manually for the first note of each phrase, to prevent each phrase from beginning with an unnatural-sounding accent. If you reduce the velocity of all notes by constraining the velocity range then you get sloppy-sounding phrases instead because the legato transitions are too slow. If there was a condition to match such as “note follows rest” or “note follows end of slurred phrase” then the expression map could be programmed to decrease the velocity in these situations by mapping it in a lower range, just for this initial note of the phrase.
  • Some string libraries like Duality Strings have “soft releases” that are useful for the ends of phrases. If a note has a rest following and is not accented, probably the soft release can be triggered to taper off the phrase ending. Again, a condition here could solve this with “rest follows note: true”
  • Some string libraries have separate bowed legato and slurred legato patches. The problem with bowed legato is that it is not always marked, it’s just obvious from looking at the passage that bowed legato is called for if the notes are normal or have a tenuto mark and there are no rests, and there are slurred notes before or after. I know you can add hidden markings to adjust for this, but it would be nice if Dorico could detect that that passage was intended to be bowed legato based on context. For instance if a note does not have a slur but is preceded and followed by slurred notes, it is probably part of a bowed legato passage and so this articulation can be used.


1 Like

yes, some libraries I use such as BBC Core or CSS require this sort of adjustment all the time in legato phrases. Soft releases would also be very useful

Interestingly, NPPE has gone the other way and made the attack on these initial notes too weak but has included a certain amount of tapering off at the end of phrases.

1 Like