Playback problems on repeat
In this score En_el_Portal_de_Belén_Piano.mscz playback skips all measures affected by the second volta because the start repeat is under the 2nd volta from the first repeat. An open volta such as that should not prevent a repeat from working. What do others think? @jeetee?
Comments
It seems to me that there exists a 'nested' volta. That is, the open 'volta 2' in measure 11 includes a 'volta 1' in measure 18.
Nested voltas (and nested repeats) tend to be problematic.
Here are 2 alternatives:
En_el_Portal_de_Belén_Piano_2.mscz
En_el_Portal_de_Belén_Piano_3.mscz
I prefer the first alternate.
(Changing the G4 note in the treble staff of measure 18 from a quarter note to a half note (as in measure 19) would further simplify the 'roadmap' and would eliminate the '1 volta' in measure 18.
In reply to It seems to me that there… by Jm6stringer
I and the person who reported this are aware that if you remove the volta it will play back correctly. I don't think it is unreasonable for a second volta to be ignored when an otherwise legal repeat goes into it.
The issue is indeed the start repeat being covered by the 2nd volta which is also linked with the first start-repeat. The non-obvious workaround, which might break in the future is to give that 2nd volta a repeatlist of "
1, 2
", see attached.@Jm6stringer: the volta's aren't nested in the interpretation by MuseScore. The open volta ends when the next volta starts.
As much for myself as a future reference, as for anyone interested into how this score is processed:
In this score that means we discover the end repeat of m10 and then stop looking because of the start repeat in m11. The resulting count for this start repeat is evaluated as
2
.We compare its repeatlist (2) with the playbackcount of the start repeat reference measure (still m3 at this point!). It is a match, so the volta is taken.
2
.This is where the current logic is flawed with the current scenario
2
while the referenced start repeat measure playbackcount (m11) is still 1 → the volta is skipped.Thus by changing the repeatlist of that volta to also include 1 we make it so that m11 can be found after the first volta. This way it gets played back a 2nd time, so that by the time we arrive at m18/19 the referenced measure playbackcount is the expected 2.
The difficulty with interpreting this notation is thus to know that the volta of m11 is actually only in effect when evaluating with reference to the start repeat of m3 and not compared to the start repeat of m11 itself. And I currently can't yet come up with a good way of detecting that, without breaking other scenarios..
In reply to The issue is indeed the… by jeetee
One possible improvement-idea could be to link the volta with the first start repeat barline it is evaluated against. Not sure about the implications for other scenarios though...
In reply to One possible improvement… by jeetee
Thanks for all of the info. That was a solution I had considered and have passed your recommendation.