I’ve been wanting to clarify this for a long time, but I’ve only just gotten around to it.
So, I think many people know what a continuous controller “CC11” (Expression) in MIDI is. Like other CC’s, it can have values from 0 to 127.
The question is as follows: how should the values (from 0 to 127) of this controller be interpreted with dynamics (mp, p, f, etc.)? How does Dorico interpret this?
I saw a Wikipedia article about this a long time ago, but I’m not sure if the information provided there is relevant at the moment, especially since not a word was written there for the Steinberg technoligy (see here). It is also unclear with what values accents are interpreted (accent, marcato, etc.). I also want to clarify what range of values dynamics change with a crescendo/diminuendo, with and without poco/poco a poco.
Please note that I am talking specifically about Expression. It is clear that each note also has a Velocity value. I would also like to clarify how dynamics is interpreted with Velocity.
I would be very grateful if someone from the development team would share up-to-date information about the relevant interpretations.
IIRC, Dorico first splits the 0-127 MIDI range into groups, one per intensity marking (the number of groups is adjustable). Additionally it also applies a dynamic curve that modifies the relative “weight” of the groups around the center point (this weight is also adjustable):
This is great for out of the box playback of dynamics (e.g. piano). I think everything is described quite well in the manual. If you want to map Dorico’s values of each dynamic to those used by a sample library, that’s more complicated - and you’d have to disable humanization.
I recommend also playing around with the dynamic curve under playback options, with a key editor open and a sampling of test music which shows CC11 (and CC1 and velocity) lanes visible. I did this one day, playing with the curve settings and visualizing what the affect was on those lanes. I found this to be a helpful and illuminating exercise to see what’s going on under the hood.
This doesn’t even go into the issue of how various libraries interpret dynamics on their end… so one library set to the same value of f (let’s call that 100) may sound entirely different, quieter or louder, than another library of the same instrument.
With that in mind, most libraries respond with true dynamic timbral differences of the instrument using CC1 ( typically how most libraries fade between sampled dynamic layers), not CC11 (which essentially behaves more like an overall volume fader). But they are often tied together depending on the library and expression maps. Either way viewing the dynamic curve changes on these lanes can give you a better idea of the interpretation.
Thanks for the diagram, but unfortunately it doesn’t answer my question.
To make it more clear to you, I will say the following.
I have a midi file. It contains several tools with different settings.
I want to import this MIDI file into Dorico, and convert each instrument to notation.
The problem is that when importing MIDI, Dorico doesn’t specify things like accents, dynamics, phrasing, and other notational subtleties in the notation. Although accents and dynamics are one of the main things in notation (at least I think so).
In the end, all I have is the Velocity of the notes that are in the MIDI, the CC11 Expression controller. And with this data, I need to set the dynamics (including crescendo/diminuendo) and accents. And for that, I need to know the exact ratios (interpretations).
And I also want to know what the final dynamics are of a mixture of Velocity and Expression. For example, a note sounds for 3 seconds (its Velocity value is 77). At the same time, within three seconds, the Expression curve changes from 44 to 110. That’s how to interpret it in dynamics? (This is just as an example)
I just tried it, and as a result, I got articulation on absolutely every note.
This method does not work. Moreover, I’m already saying that the dynamics are not represented there.
I think importing midi with CC info for dynamics is not very helpful in Dorico. As Dima -S mentions if you import midi you do not get any dynamic markings nor articulations in your score except maybe some staccato markings.
If you have imported such a file, entered the instruments for each player and linked them with your VST library of choice and then start adding dynamics in the score nothing will happen if the CC channel for e.g. modulation is the same for the library as in the CC lane in the imported file. The info in that lane will be interpreted as manual overwrite and the Dorico interpretation of the dynamic for that CC will be ignored…
So the only option I think is to delete all imported dynamic overwrites related CC info (can be than all at once under automation) and subsequently enter dynamics, slurs and articulations manually hoping you have anpdf score from the imported Midi file.
By the way there might also be key switches in the imported midi file which you also have to delete.
For me, the main thing is the interpretation of dynamics with things like Velocity and Expression, as well as their combinations. The notation.
The main thing is to make it clear with what dynamics all this is interpreted.
nothing will happen
It’s okay, the main thing is to understand the dynamics
Hi Dima-S in general you need two controls. Velocity and Expression are in fact the same parameter i.e. volume of the note for most libraries.
The volume related one often called Expression. It is actually a sub-control of the overall volume of your instrument often using CC7. Dependent on the VST library you use for the playback this could be CC11 or also note velocity. Check in the manual of the library you are using if expression or velocity are used for this control. If it is velocity it is important to leave CC11 on the maximum 127 and let Dorico vary velocity for each note. If it CC11 Dorico will vary that parameter and in most cases you will have identical velocity for all notes in your score (except when velocity is used to change articulations as in some Spitfire libraries).
Second parameter is often called Modulation which is important if your library has multiple layers with samples recorded at different dynamic levels. This could be just 2 layer, soft and loud (maybe recorded playing pp and ff) or very many 8 (which could be recorded playing more or less at ppp, pp, p, mp, mf, f, ff, fff). To move between those layers the modulation parameter is used which is indeed often CC1 but it can also be CC2. It does not really matter important is that the value of the CC smoothly crossfades between the different layers.
Overall to get the most natural sound the two controls should be adapted more or less in parallel. It makes little sense to play a fff horn layer sounding very harsh (cuivré) at a very low volume value where the real instrument sounds “silky”. Or a ppp string sample more or less sounding flautando at maximum volume.
I don’t have any but there also might be libraries which use only one CC to vary these two parameters at the same time but the principle is the same the sample layer should be more or less adapted to the volume level for a natural sound.
I hope this explanation helps. If you have set the two controls correctly in your Dorico expression map for your libaray whefre you also define the key switches for the articulations. you do not have to worry about the actual value as they are set automatically when you enter a dynamic symbol in your score. If you do not like the result you can locally overwrite the values.
@mavros, I’ll give you an example to clarify something for myself.
Let’s say we have a note whose Velocity is 70. But at the same time, the Expression is 100. In the end, what kind of dynamic should this be interpreted with?
I’m asking because it’s still unclear to me how to interpret combinations with dynamics (not to mention how only the velocity of a note with dynamics and accents is interpreted)
And anyway, as far as I know, Expression (CC11) is a percentage of Volume (CC7), and you’re telling me that Velocity and Expression are in fact the same parameter, even though Velocity is not set by any of the continuous controllers (CC), but is kind of part of the note itself
The question you ask cannot be answered. It depends on the VST library you use for the playback and the expression map you use with it.
Examples:
If. you use BBCSO, you should indicate CC11 and CC1 as controllers in the expression map and Dorico will write values into the lanes for these CC’s based on the dynamics you entered and the curve mentioned higher up in this theead. The velocity value will have no influence on the playback volume or layers used in this library.
If you use VSL SY Pro Strings with the expression map for Dorico provided by VSL, Dorico will use velocity and CC1. You should not touch CC11 in that case and set it to 127 (or 100%) and leave it there.
CC7 is seldom used for dynamics it is often used to balance volume (at the same dynamic setting) of similar instruments from different libraries if you want to use them in the same Dorico project.
Why??? Look, there’s a scale: from 0 to 127. Is it really hard to tell which ranges are interpreted with which dynamics/accents?? Is it so difficult to distribute the dynamics on this scale?
Relatively speaking, let’s take mf. Let’s assume that its velocity value is approximately 80. You’re saying that my question cannot be answered. So you’re saying that in some libraries it can be 100, and in some 68? Well, this is nonsense! I am sure that every notation software has its own well-established basic interpretation of dynamics.
I no longer know how to explain myself properly so that I can be understood. And since English is not my native language, I also have to spend time translating and carefully checking every word.
If I knew English well, I would have recorded a video long ago with the smallest details of what I’m trying to figure out
Again, this is the simple 1-to-1 in Dorico. How one interprets accents and other articulations is a much more complicated algorithm.
If you have a DAW at your disposal, using Dorico, create a solo piano piece and just type a note for every single dynamic, export MIDI and see how the values correspond to the dynamics.
Also, regarding libraries, yes, different ones respond differently to the dynamic curve setting because of a myriad of factors, one particular one is the dynamic layers. Library A transitions to a different layer from p->f at CC11=65 while library B with CC11=75 … you can see how this can get ugly quickly. Another example with sample libraries are how they were recorded: A pizzicato velocity=80 may sound completely different with another library’s pizzicato sample.