Wednesday, October 7, 2015

Improving Playback from
MuseScore 2 Piano Scores

This article looks at ways to improve the musical quality of playback from piano scores engraved with MuseScore 2. It isn’t a tutorial: it assumes a working knowledge of MuseScore 2, familiarity with the JACK audio connection kit, and the basics of music theory. Completed scores demonstrating the principles discussed can be found on YouTube:


Getting the best playback from MuseScore piano scores is largely a matter of deconstructing the things we do reflexively as pianists and turning them into instructions that can be understood by a musically brain dead performer, namely the computer. We’re scarcely aware when we play a simple tune with chordal accompaniment that we’re playing the right hand louder than the left, and emphasizing individual notes within the chords to make them euphonius. It’s only when we hit the Playback button in MuseScore for the first time that we hear how much performance information isn’t communicated in the score. The literal interpretation of the notes as they appear generally sounds ghastly.

The MuseScore development team set out to create a music notation program, not a tool for generating digital/audio performances. Playback therefore lacks the sophistication evident elsewhere in the program. Only the most basic parameters of note control are provided: pitch, duration, and loudness. Attack and release, the defining features of pianistic “touch”, are absent. Pedalling merely extends the length of notes; there is no corresponding change in tone colour. Half- and quarter-pedalling are impossible.

Just the same, remarkably good performances can be coaxed from MuseScore, provided you’re willing to invest the time. It’s painstaking work. Every note needs to be individually adjusted and there are no magic bullets.

The goal of tweaking a score for playback is not to achieve life-like piano sound, but a life-like interpretation. Limitations in the sampling technology used by MuseScore put truly realistic piano sound out of reach. A satisfactory approximation with no obvious flaws is what you should be aiming for. Once that is achieved, you have an adequate instrument with which to express yourself musically from the score. In much the same way as Bach sounds great on Aunt Sadie’s old upright when it’s played by an expert (assuming she keeps the thing in tune), MuseScore doesn’t need perfect Bösendorfer Imperial to generate sensitive digital performances.

Soundfonts

None of the freely available piano soundfonts is perfect. Some are just plain dreadful. Others come fairly close to what you want but exhibit flaws: no brilliance in the lower octaves, or too much of it at the high end, or resonance that sounds decidedly canned, or a few notes here and there that are always too loud or soft.

Of the free piano soundfonts, the Salamander Grand Piano listed in the MuseScore handbook isn’t half bad. There are some fairly decent Steinway soundfonts out there, too—again, not perfect, but usable. It’s a good idea to spend time scouring the Web for piano soundfonts, testing them one by one, and keeping any with promise. Having a library lets you choose which pianos are best suited to particular styles and genres. I have yet to come across a one-size-fits-all.

Equalization, Compression and Reverb

Creating a musically-satisfying performance from MuseScore mostly involves adjusting note velocities, i.e. the loudness of each note. In order to do so effectively, equalization and compression need to be applied to your audio output while you’re working on your score, not as an afterthought.

MuseScore does not provide equalization and compression. This means setting MuseScore’s I/O to use JACK and connecting MuseScore’s output, via qjackctl(1) or ladish, to external software. I use the JACK mastering software, JAMIN, which provides equalization, compression, and a look-ahead limiter. A really good tutorial on JAMIN, informatively written for the uninitiated, is Mastering with Jamin.

■ Equalization

Equalization allows you to adjust the overall timbre of your soundfont, making it richer, brighter, sweeter or more mellow according to your needs. How you adjust equalization is a matter of personal taste. Furthermore, each soundfont has differing requirements. Some need only a little help, others require a major facelift.

For piano soundfonts, adjusting the equalization curve for frequencies between 130Hz and 880Hz (approximately C3–A5) has the most effect. If the overall tone colour is too bright, emphasizing frequencies in the range of 294Hz–880Hz in a “mountain” curve whose peak is around 500Hz–525Hz will make the sound less brash. Conversely, a “valley” curve will enliven the timbre if it’s dull. A modest moutain curve between 880Hz–1800Hz may add a little sparkle, while a mountain curve between 155Hz and 330Hz can introduce some needed richness. A low-end shelf ending at around 130Hz can be used to add depth or remove boominess. A high-end shelf starting at around 3150Hz allows you to add to or trim the overall brightness of the sound.

■ Compression

Compression acts to normalize volumes and prevent clipping (i.e. when the volume exceeds 0dB and introduces distortion). It also affects timbre. Piano sound is rich in overtones, and compression may act on a range of overtones without affecting the volume of the fundamental, thus influencing tone colour. It’s best to use a three-band compessor (JAMIN provides this) with the low/medium crossover set at 116Hz and the medium/high at 1320Hz (approximately B-flat2 and E6, which corresponds to the cross-stringing of many grand pianos). Thresholds should be set between 10dB – -20dB, and makeup gain used to “finish” the sound. Weakness in the lower end can be fixed by raising the low compressor’s makeup gain, while adjustments to the high compressor’s makeup gain increase (or decrease) the prominence of high notes and overtones. Adjustments to the middle compressor’s makeup gain largely affects the “presence” of the sound without significantly altering tone colour.

■ Reverb

MuseScore provides a good reverb plugin, zita-rev1(1), in the “Master Effects” tab of the Sythesizer (View=>Synthesizer). Besides imparting realism to many piano soundfonts, reverb is an important aid in overcoming MuseScore’s simplistic pedalling. Careful adjustments to the zitz-rev1 controls also mitigate the default portato articulation of many soundfonts, resulting in smoother legato, especially in rapid passages. (See the next section for information on fixing excessive portato introduced by MuseScore.)

• Fixing the gate time

Gate time refers to when a note starts (ontime) and stops (offtime). MuseScore 2 sets the offtime for the Piano instrument a little short. While this may be useful if you want a very clean, détaché articulation throughout the whole score (think Glenn Gould), it is generally not what you want unless your music is highly contrapuntal.

To fix the shortened note length for the entire score, save the score as .mscx rather than .mscz. Open the .mscx file with a text editor and search for <Articulation> (i.e. just <Articulation>, not <Articulation name="type">). Two lines lower, you’ll see <gateTime>95</gateTime>. Change the 95 to 100, save, and quit. If you subsequently want to work on an .mscz version of the score, open the .mscx version and save it as .mscz. Alternatively, you can edit the default gateTime in the Piano section of the instruments.xml file. All subsequent piano scores will use the new default.

MuseScore v.1 allowed setting ontime and offtime as a function of Note Properties, but this capability is not present in the current release. It is to be hoped this oversight will be corrected. Controlling gate time is essential for natural, non-mechanical-sounding phrasing. At present, the only way to control it is with the Piano Roll Editor, which is implemented poorly and lacks even basic editing functions like group-selecting notes.

Setting the dynamics

Before fine-tuning a score, you need to set the overall dynamics. Musescore observes the somewhat arbitrary MIDI standard for dynamic levels, which may or may not be appropriate for your chosen soundfont. Check the volume of all dynamics in your score by right-clicking on the dynamic markings and adjusting the “Velocity” field in the Inspector. Don’t assume the velocity for a given dynamic will be the same throughout the whole score. Dynamics are relative to each other. Texture and tempo furthermore influence how they’re perceived.

The Inspector allows you to choose whether a dynamic mark or hairpin applies to the grand staff (i.e. both staves, which the Inspector calls “Part”) or an individual staff. When setting overall dynamic levels, pay attention to places where one staff or the other needs to be more prominent. Attach a dynamic marking to each staff and choose “Staff” for both in the Inspector. Make one of them invisible (the keyboard shortcut is “v”), then adjust the velocities of both until the correct balance is achieved.

Pedalling

Pedalling is often left to the discretion of the performer, but for the purposes of digital playback, the score is the performer. Complete pedalling instructions must therefore be included. Those you do not want appearing in the printable version of the score can be hidden (made invisible).

Conversely, visible pedal markings may not produce exactly the effect you want during playback. Depressing or releasing the pedal a note earlier or later than marked may achieve a better result. In such cases, use Shift+ArrowLeft/Right to attach the pedal anchors to the notes that work best, then click-drag the ends of the pedal lines to the desired visual position.

In some instances, you may find that required pedal markings for a real-world interpretation of your score don’t sound right in digital playback. Either they need to be removed entirely for playback, or changes of pedal introduced to prevent muddiness where a real performer wouldn't need them marked in the score. The solution to this situation is to hide the pedal marks needed for digital playback, then to create fake visible pedal lines that have no effect on playback. This is done by attaching a plain line from the Lines Palette to the appropriate notes on the lower staff, right-clicking on the line and editing the Line Properties. Enter <sym>keyboardPedalPed</sym> in the text field, check “End=>Hook”, and adjust the vertical placement of the text (Ped.) so it’s flush with the line. The button to the right of the text field in Line Properties calls up the formatting dialogue where vertical adjustment is set.

Adjusting note velocities

■ Melody

Dynamics and pedalling having been taken care of, you’re ready to attack your score in earnest. Just as in a live performance, ninety percent of “interpreting” a score with MuseScore involves getting the loudness (velocity) of each note right. For melodies, this means adjusting velocities to reveal phrasing and clarify rhythmic figurations. For harmonies, it means adjusting chord notes to achieve a proper balance in the vertical sonorities.

I find it’s best to work phrase-by-phrase. Begin by selecting the melody notes and increasing their velocity by at least 10. Leave the Velocity type at “Offset” (in the Inspector) since this ensures the new value is added to the prevailing dynamic. “10” is somewhat arbitrary. The amount of emphasis needed depends on many factors, including register, prevailing dynamcis, tempo, texture, and “busy-ness” of the accompaniment. Play around with the value until the melody notes stand out clearly.

Melodies don’t always live in the right hand or the top voice, so be sure to select and increase the velocity all significant melodic fragments and motifs.

If emphasizing the melody makes a passage or phrase too loud, group select all notes not in the melody and decrease their velocity rather than adjusting the settings for your dynamic markings. Your goal is to balance the planes of sound (i.e. melody and accompaniment) within dynamics you’ve already established. Fine-tuning dynamic settings should be left for a final step.

At this stage, playback of your score should make more sense musically, but most likely still sounds as if the performer is a hamfisted hack. The reason is that other than the distinction between melody and accompaniment, adjacent notes are being played at a uniform volume. A live pianist never plays adjacent notes identically unless the score demands it.

“Adjacent” means adjacent both horizontally (melodies and rhythmic figures) and vertically (triads, chords). Getting the relative velocities right for either relies on a few general principles.

■ Strong and weak beats

• Meter

Consider the meter of your score. If it’s 2/4, bars are divided into two beats, one strong and one weak. Therefore, a simple melody composed of quarter-notes would need the velocity of every second quarter reduced to produce the characteristic DAH-dah DAH-dah pulse of 2/4. 4/4 is similar in that it has a strong-weak-strong-weak arrangement. The difference is that beat 3 receives slightly less emphasis than beat 1; the two off-beats (2 and 4) generally receive approximately the same weight: DAH-dah-DUH-dah DAH-dah-DUH-dah. 3/4 usually has a strong first beat followed by two noticeably weaker beats: DAH-duh-duh DAH-duh-duh. It is this that produces the characteristic lilt of 3/4 time. 6/8 meter, like 2/4, is divided into two beats (two dotted quarters), strong-weak, but with three subdivisions of the beat that should be treated the same as 3/4, such that a regular progression of eighth-notes in 6/8 produces DAH-duh-duh-DUH-duh-duh.

• Regular subdivisions of the beat

The principle of strong and weak beats applies to subdivisions of the beat as well. Thus, two eighth-notes side-by-side in 2/4 or 4/4 are strong-weak, assuming the first falls on a beat. Three-note groupings—triplets, or three eighths in 6/8—follow the strong-weak-weak pattern, and four note groupings—four eighths or four sixteenths— should exhibit the strong-weak-medium-weak pattern of 4/4 time.

The faster the tempo, the less need there is to adjust the individual velocities of 4-note groupings. It is often enough to emphasize only the first note. The remaining notes may be set to a uniform lower velocity and still sound musically satisfactory.

• Dotted rhythms, long-short-short groupings

At moderate to fast tempi, pianists reflexively play dotted rhythms (e.g. dotted-eighth/sixteenth) strong-weak. What’s surprising about the reflex, when translated to note velocities, is how much softer the short note needs to be. Given that, in melodies, the short note frequently lands between the cracks of the accompanying figuration, it doesn’t take much volume for it to stand out. Furthermore, the short note almost never plays a significant harmonic role. It’s usually a non-chord note: passing tone, échappé, or cambiata. Therefore, don’t be afraid to reduce the velocity by quite a bit. Let your ears be your guide. A proper balance in the loudness between long and short makes dotted rhythms skip. Improper balance makes them limp along like someone with a sprained ankle.

Reversing the sense of a dotted rhythm (e.g. sixteenth/dotted-eighth) also observes the strong-weak profile, but in many cases, the velocity of the short note needs to be strongly emphasized rather than the velocity of the long note reduced. The reason is that reverse dotted rhythms usually imply an accent on the short note.

Long-short-short groupings (e.g. eighth-sixteenth-sixteenth) are similar to dotted rhythms in that the final short note usually needs to be quite soft, relatively speaking. Conversely, like reverse dotted rhythms, short-short-long (e.g. sixteenth-sixteenth-eighth) groupings usually benefit from emphasizing the first short note.

■ Hairpins (crescendi, diminuendi)

Hairpins are executed by MuseScore 2 during playback. If you put a two-bar crescendo between a note marked piano and a note marked forte, the volume rises steadily from piano to forte. I can’t be certain, but my ears tell me the algorithm for determining the change in volume is s=(d2-d1)/n, where s is the velocity step, d1 and d2 are the velocities of the dynamic markings, and n is the number of notes affected by the hairpin. The result is that the change in velocity is uniform from note to note, which sounds artificial because that is not how hairpins are executed in real life.

Overcoming the artificiality is a matter of trial and error. Many factors influence the impression of crescendo and diminuendo. There is no algorithm that can be applied to every instance. If the overall effect of the hairpin is less, or more, than expected, click on the hairpin and use the Velocity change field to in/decrease it. "0" in the field means the default behaviour described above. Any other number means that a user-set velocity change is applied progressively to the notes affected by the hairpin. Once the overall effect is to your liking, adjust the velocities of every affected note until your ears tell you the hairpin sounds natural.

■ Balancing chords

Adjusting vertical sonorities is even more time-consuming than getting melodic lines right. For any given chord, all of the notes need to be adjusted in relation each other. The texture of the chord, the voicing, the register, the prevailing dynamic, and the voice leading all play a part.

Start by getting the volume (velocity) of the principle chord note correct in relation to the rest of the musical texture. Principle chord notes are often melody notes, so if you’ve already taken care of emphasizing the melody, you can focus on the supporting harmony.

Generally, the bottom note of a chord, whether root position or an inversion, needs to have the most weight. Since lower notes on the piano resonate more than upper notes, it’s rare their velocity needs to be increased. If anything, it usually needs to be decreased slightly in order not to be too prominent. A useful trick is to click-select all the chord notes but the lowest and highest, which is probably a melody note, then uncheck Play in the Inspector. This allows you to experiment with the balance between bass and treble.

Once the bass note is correct, click-select the fifth of the chord and make it audible. Unless a chord is in second inversion, the fifth should be slightly softer than the root. Over-emphasized fifths make chords sound clunky. Experiment with the velocity of the fifth until it achieves its role as a significant supporting tone while still “singing” clearly.

The thirds of chords determine their mode, major or minor. They are also the most unstable note in a chord and need to be treated with care. Select and make audible the third of the chord and decrease its velocity (sometimes by up to 10 or more steps) until it “locks” in place with the rest of the chord.

Extensions (sevenths, ninths, etc.) should be dealt with last. If thirds give chords their mode, extensions give them their colour. Since extensions are always dissonant in relation to the base triad, they stand out on their own so, like the third, their velocity should be decreased until they fulfil their colour role without overtaking the whole chord.

Be careful of doublings. If a chord note is doubled at another octave, you have to determine which octave contributes best to the sonority of the chord. Start by giving both doublings the same volume (not necessarily the same velocity), then play around with the velocities of both until you’re satisfied with the balance. This advice applies primarily to roots and fifths, since thirds and extensions are less likely to be doubled.

Overall, open voicings are easier to deal with than closed. The reason is that the more jammed together a chord is, the greater the likelihood of conflicting overtones. Even when the tuning of a soundfont is flawless, close-voiced chords can sound out-of-tune, usually a little sharp. This is especially true of chords the lower down the keyboard you go. The guilty party is usually the third. I suspect Beethoven’s fondness for thick, close-voiced chords in the lower register of the piano stems from his not being able to hear the conflicting upper partials owing to his deafness.

Alterations of tempo

■ Rubato

Rubato does not always mean the Horowitzian extremes of pushing and pulling the tempo for exaggerated expressivity. Even the simplest piece exhibits minute changes in tempo when executed sensitively, for example the natural tendency toward relaxing the tempo at the ends of phrases, or giving important melody notes agogic accents.

The tool for introducing rubato into a score is the Time stretch parameter associated with articulations in the Inspector, not actual changes in tempo. Click-select notes whose length you wish to modify, add an articulation from the Palette, and make it invisible. It doesn’t matter which articulation you choose. I use the tenuto mark but it could as easly be a fermata.

Click-select the articulation and begin adjusting the time stretch. Use very small increments. Depending on the tempo and the duration of the note, even a 0.01 change in the middle of a phrase can be audible. At phrase ends, the natural caesura can be accomplished with a time stretch of as little as 0.1.

Rubato is largely a question of taste and judgment, so listen to your scores critically. The best way to determine where rubato is needed is to conduct your score while it’s playing. Doing this, I’m immediately disturbed when phrases barrel toward their ends instead of coming to rest, or when subsequent phrases begin without enough breathing time between, or when an important note doesn’t have time to speak properly. Singing the score helps, too.

I often find that rhythmic figures comprising two short notes leading to a longer one sound slightly uneven, for example ♪ ♬ ♪ ♬ ♪ ... The second short note seems to be rushed, despite respecting the beat. Lengthening it by a tiny amount corrects the problem. Whether or not this merely reflects my playing style is impossible to judge, but it is worth considering whenever rhythmic figures of this sort strike you as inexplicably uneven.

■ Ritardando

MuseScore does not provide a way to achieve automatic gradual changes of tempo during playback (analogous to hairpins). As with rubato, the trick is to use hidden articulations whose time stretches adjust the length of each note during the speed-up or slow-down. This is much more efficient than making a series of tempo changes, and provides finer-grained control.

Ritardandi (and accellerandi) are notoriously difficult to get right. The impression of a uniform, gradual change of tempo is partly an illusion when sensitively executed by a live performer. For this reason, simply increasing the time stretch uniformly for each note in a ritardando passage will not work. In live performance, some note groupings are played pretty much at speed. Others, depending on the length of the ritardando, are played for a while at a uniform slower tempo before slowing again. Significant notes may require agogic accents. Dynamics are also a consideration: ritardando combined with diminuendo means that the length of time each note needs to “sing” plays a role in how much time stretch it needs. The most important thing to remember is that ritardando means a slowing of the beat or pulse, not merely the slowing of individual notes.

The best way to work on ritardandi is to establish a less-than-ideal regular slowing down first. This is accomplished by click selecting all the affected notes, adding hidden articulations, and adjusting the time stretch of each note arithmetically, for example by steps of .01 (.01, .02, .03...) or .02 (.02, .04, .06...) depending on the amount of slowing down required. That done, play the passage over and over and, using your ears as your guide, tweak each individual time stretch until you’re completely satisfied you hear the ritardando the way you want. Don’t rely on some sort of regular progression of incremental time stretch changes to convince you you've achieved a realistic result.

Supplementary Hidden Staves

When setting up a piano score, it’s a good idea to include a supplementary, hidden staff. An extra grand staff isn’t usually necessary, just a single staff that uses the piano soundfont. Staves are hidden by unchecking the “Visible” checkbox in Edit=>Instruments. Note that Musescore 2 has the peculiarity that you have to close and re-open the Instruments dialogue in order to see the “Visible” checkbox the first time time you add an instrument.

The reason for a hidden staff is to spell things out literally when MuseScore’s default playback of certain musical gestures, notably ornaments, doesn’t produce the results you want. For example, you may want a mordent snapped out as 64ths rather than 32nds, or to give a pulse to a particularly long trill. In these cases, click-select the visible ornamented note and uncheck “Play” in the Inspector. Then, on the staff that will be hidden, write the ornament out in full the way you want, applying whatever velocity changes and time stretches you need. When you’re done, hide the staff. For layout purposes, MuseScore completely ignores hidden staves, so a trill over a whole note in the visible staff takes up the same space it did before you wrote the trill out in full on the supplementary staff, once the staff hidden. Caveat: Don’t make changes to your score’s layout while the supplementary staff is visible.

■ Broken Chords (arpeggiando)

A hidden, supplementary staff is essential for broken chords. MuseScore 2’s default playback of an arpeggiando is to start on the beat. Furthermore, the speed of the arpeggiando is determined by the duration of the chord to which it is attached. A broken whole-note chord is arpeggiated very slowly, while a broken eighth-note chord is arpeggiated much more rapidly.

To get the right speed, it isn’t necessary to write the arpeggiando out in full on the supplementary staff. Rather, uncheck “Play” for the whole chord in the visible staff, then copy and paste it (along with the arpeggiando marking) to the supplementary staff and make it playable there. Now all you have to do is change the duration of the chord to one that plays the arpeggiando at the speed you want, then tie it so the chord so it lasts as long as the visible score directs.

Unfortunately, getting broken chords to start before the beat does require writing the arpeggiando out in full.

Conclusion

I cannot overemphasize how much time is required to turn a beautiful MuseScore score—and the scores are indeed very beautiful—into a musically satisfactory digitial audio interpretation. It takes commitment, dedication and patience to tweak every one of the thousands of notes that may make up a score, but it’s time well spent if you share audio versions of your scores publicly.