Accessibility: Line endings not spoken for overlapping chordrests
Enter a whole-note and place a line (e.g. hairpin crescendo) below it. During navigation, the screenreader will say the following:
Note... Start of hairpin crescendo. End of hairpin crescendo.
This correctly indicates that the hairpin starts and ends on this note.
Now, in a different staff (or different voice) enter a shorter note or rest. Speech for the original whole-note will become just:
Note... Start of hairpin crescendo.
The fact that the hairpin ends on the whole-note is no longer announced.
It appears that the speech alorithm stops looking for line endings at the first ChordRest it encounters, even if the ChordRest belongs to a different voice/staff. The algorithm should look for line endings only at the ChordRest that belongs to the next note in the same staff and same voice as the current one.
Comments
Relates to #277496: [EPIC] Accessibility issues/suggestions
Though the symptoms are quite different, the cause seems very related to what is explained in https://musescore.org/en/node/295348#comment-953799.
Hmm, #295348: [Musicxml Export] - Missing spanners caused by spanner stop not in the first track ia about MusixXml export though
It seems the origin of both problems is the lack of an ending for the spanner being detected.
PR: https://github.com/musescore/MuseScore/pull/5425
In addiition to fixing the bug, the PR also optmizes for the case where a line starts and ends on the same note. The output for the OP's example would now be:
Note... Start and end of hairpin crescendo.
Amd the fix for that other issue doesn't help here, and doesn't collide?
Edit: no, apparently they don't, and both fixes are entirely separate from one another, so apparently have an entirely different root cause
Fixed in branch master, commit 1682468b6f
_Accessibility: Improve speech for chordrests with spanners
Automatically closed -- issue fixed for 2 weeks with no activity.