Overhauling/Fixing Hairpin definitions
Good afternoon, MuseScorers!
As I've been digging into a large-scale project for the Main Office, I'm finding that our definitions of hairpins (crescendos/diminuendos) needs to be overhauled and vastly improved.
Here's a screen shot of how MuseScore imports hairpins from an XML:
Here's what the hairpins SHOULD look like, per the original PDF of the score:
Here's the problem:
in MuseScore, the hairpins are defined as graphic lines, attached loosely to the nearest note head. This is similar to Finale's dynamic definitions: they're simply graphics, rather than musical data attached to specific musical time - rather than just a note head as an anchor.
In the specific case shown here, the hairpins should create a simple dynamic swell. However, because of the way hairpins are defined, the program doesn't know how to place the dynamics.
In other cases, a crescendo may only be defined to begin on count 3 of a whole note. The way MuseScore defines the hairpin, there's no way to accurately, consistently, and cleanly place a hairpin beginning halfway through a duration. To accomplish this, the user must place the hairpin at the note head, then manually drag the ends to begin at the correct place in time. To change the starting point presents an additional problem: it's a multi-step process with unpredictable results.
If the user has several instruments for which they wish to have the same dynamic, every hairpin needs to be placed and manipulated individually. In the end, it's not possible to quickly, efficiently, and accurately have all the hairpins defined exactly the same way. As a composer, I expect to have my score have this level of professional accuracy.
In Dorico, a user can insert a hairpin to begin at any point in a measure. The hairpin is attached to musical time in the bar, rather than to a note head. This makes it quick and easy to define a crescendo to begin halfway through a whole note. Once one hairpin is placed, it can be copied and pasted to other measures. The specific place within a measure is defined with a cursor and, when in a measure, a small timeline showing beats and subdivisions appears to see where each beat or sub-beat occurs.
Having this level of accuracy with dynamics (not just hairpins, but also immediate dynamics) will greatly, greatly enhance the quality of output from our program!
Have at it, friends! Let me know your questions!