Grace notes in the wrong order when playing back

• Dec 7, 2014 - 15:15

Hi guys

I have inserted grace notes after a main note and they appear correctly; however, when playing back, the grace notes sound before the main note.

Suggestions appreciated.

Thanks
Kim


Comments

The standard questions apply: which version of MsueScore, what OS, and please post the score you are havuing trouble with and the steps to reproduce the problem.

In reply to by kim.tame

There is no MuseScore 2.0 yet, just a Beta 1 and many nightly builds. Looking into the score reveals that you are using Beta 1 (1efc609)...
But even the latest build indeed play that grace note before the note rather than after.
And even a score created from scratch in that latest build play those 'grace after' before the note they are attached to, seems you found a bug....

In reply to by Jojo-Schmitz

Indeed, looking at the code, there is no special playback support for "grace notes after". They are mixed in with the ordinary grace notes.

If/when we fix this, would be nice to also tweak playback of acciaccaturas so they don't come out really slow on long notes and/or slow termpos. Collective length of acciaccaturas is always 12.8% (!) of the length of the main note, but that's way too slow for long notes and/or slow tempos.

In reply to by Jojo-Schmitz

But on the other side, just because tempo gets really fast doesn't mean acciaccaturas would be played any faster. Really, they should be a more-or-less fixed amount of real time, regardless of tempo or note length. So there should be a calculation that first turns this amount of real times (say, 100 milliseconds) into a given number of ticks based on tempo, then converts that tick count into 1/1000's of main note value. Or something like that.

And of course, we need to separate out the grace notes before and after. There are functions provided to get each set individually.

In reply to by Marc Sabatella

I have gone ahead and implemented this - making acciaccatura playback speed independent of note length and tempo, so it's always "crushed". Actually, if you crank the tempo up fast enough, or use a short enough note value, any fixed length I choose might end up longer than half the note, so I cap it there. Currently, I'm using a value of 50ms, which I frankly picked out of a hat but it does sound pretty good.

So, grace note length (for acciaccaturas) will be 50ms in most cases, but no more than 50% of the length of the main note.

I have also removed grace notes after from the equation for now - I figure no plyback is better than wrong playback. It should be possible to implement them later.

I'm working on a few other grace-note-related fixes, so I haven't merged this yet; feel free to comment here before I do.

Do you still have an unanswered question? Please log in first to post your question.