breath marks to non-voice 1 notes are placed wrongly
New score in 4/4, add whole note in voice 1, 4 quarter notes in voice 2.
Now select the 1st quarter and double-click the breath mark in the Palette to attach it to that notes.
expected result, the breath marks appears between 1st and 2nd note of voice 2
actual result: the breath mark appears after the 4th note of the 2nd voice (actually after the 1st and only note of the 1st voice, I guess).
It also shows a blue color rather than green, another indication that it doesn't really belong to voice 2
Came up as a MuseScore 1.3 Import issue in https://musescore.org/de/node/85511
MuseScore 2.0.2, and later builds up to at least 60cb031, Windows 7 (Enterprise, 64bit)
Attachment | Size |
---|---|
actual.png | 7.94 KB |
expected.png | 7.95 KB |
Fix version
3.5.0
Comments
I wonder if this is _only_ a 1.3 import issue, or has it reared it's head again? It was fixed in #21257 (and reported in #12943).
It definitly is not only a 1.3 Import issue, as I could reproduce it from scratch in the latest nightly build
Hmm #21257: Pauses and breaths don't stick to last note of a measure after saving and re-opening and #12943: 1.1 & trunk: Breath mark position not correct when not on 1'st voice, seems indeed a reoccurence
Those are a bit different, though - the breath was placed in one location then moved after a reload. Now, it isn't placed as expected in the first place, but at least it does survive a save / reload.
I was thinking this could be a side effect of the change I made to the implementation of breath marks in order to deal with #46401: Breath mark and caesura appears before next note on any staff, not next note on current staff and other issues. When I look at the code for that fix, though, I see a comment suggesting that we do not support breath marks in voice > 1:
https://github.com/musescore/MuseScore/commit/d79bd3a502e92142fa7bddc60…
And sure enough, just a few lines earlier, I can see the track for the breath mark is explicitly set to staffIdx() * VOICES, ignoring the actual voice of the chordrest it is being dropped on. I checked the history, and it is like that going back to the original commit, so it looks like this is *not* a recent change.
Not sure what exactly would be involved in allowing breaths in voices > 1. Changing that track assignment, obviousoy, and enabling that one line with the comment I added. Probably more to it than that though.
Look at the sample score from that German forum topic mentioned above, there in 1.3 it is placed correctly but moves when opened in 2.0
Also the placment of breaths to non-voice 1 notes should probably follow stem direction, i.e. on top line for voice 1 and 3 but bottom line for voice 2 and 4
Came up again in https://musescore.org/en/node/110431 and still happens in 3.0, in a score created from scratch
Changing that #if 0 to #if 1 (as Marc proposed furter up) sort of works, it results in
'sort of' because it moves the full measure rest to the start of the measure so it Looks like a full rest instead. The Status bar though confirms that it stil is a full measure rest.
And judging from the color of the breath, it still is voice 1
Came up again https://musescore.org/en/node/268837
https://github.com/musescore/MuseScore/pull/4220
Would be nice if the PR could be merged
Fixed in branch 3.x, commit 06efd0941e
fix #85876: Breath marks for voices > 1
Fixed in branch 3.x, commit 3951269a24
_Merge pull request #4220 from tobik/85876-breath-voices
fix #85876: Breath marks for voices > 1_
Automatically closed -- issue fixed for 2 weeks with no activity.