Playback of piano notes is non-legato

• Jan 12, 2014 - 03:28
Reported version
Graphical (UI)
S4 - Minor

Windows 7, GIT commit: 2902cf6

See #16887: Slur and phrase end notes should play at 90% length, beginning with comment #20.

Basically, it seems that instruments.xml has long defined the Piano instrument to play "normal" notes at 70% gate time, which is much shorter than how most pianists would normally play - the default touch on piano should be mostly legato. Luckily, instrument-specific gate time settings were always ignored through 1.3. However, it seems 2.0 now honors the instrument-specific gate time settings, with the result that piano scores created in 2.0 sound pretty bad unless you add explicit tenuto markings everywhere. I propose we run a representative sample of pianos through and listen, but I'm thinking a default gate time of around 95 makes more sense.


I have attached a more musical (if I do say so myself) and familiar example to use as a point of reference: the first four bars of "Reunion", entered from scratch into a development build.

This is, I would argue, far too detached. No pianist would play this way, and 1.3 certainly did not. Yes, the original score had slur markings, but even without them 1.3 would have played legato. 2.0 does not. And adding slur markings affects only the voice to which they are applied, resulting in an awkward combination of legato and non-legato.

You can edit the piano.mscx file for yourself and try values other than 70 for the default gate time in the piano. As far as I am concerned - as a professional pianist - anything less than 90 sounds bad to me. I was fine with 100, which was the effective value before. But if someone really wanted to argue there should be a discernible difference between default and legato, I would still insist it should be subtle.

Attachment Size
piano.mscx 30.37 KB

Perhaps the gate time could be set to something like 105% or 110% for legato piano playback (if that is possible) to clearly differentiate between "legato" and "normal". When using the sustain pedal I believe it is standard practice to release and repress the pedal just after a chord change rather than before or during the chord change. This creates a smooth, pleasant transition by allowing the chords to mix for a fraction of a second. Perhaps this principle could be applied here to create a discernible difference between "default" and "legato" playback.

+1 for a legato (slured) gate time.

What about making the default slur gate time configurable (which seems to be the only non-configurable value for articulations):
Currently Score::createPlayEvents(chord) initializes gateTime with 100, which is kept, if there's a slur. Why not add a "slured" articulation, that will be used instead of the hard-coded 100.

This issue about something totally different. I think your problem is you are wanting notes to be tied, but you have used slurs instead. Even though the symbols for tie and slur look similar, they are totally different concepts, created in totally different ways in MuseScore. Ties are created as described in the Handbook under Tie:

In the future, please use the Support forum for support questions like this.