Gestion des répétitions, y compris avec suivi audio
Suite #798, où on veut aussi pouvoir avoir le suivi audio.
Déjà:
La synchro / gestion du curseur sur une partition qui serait affichée avec des barres de reprises #795 implique que, pour l'audio, on gère un offset complètement développé 1a/2a/3a/4a puis 1b/2b/3b/4b même si c'est deux fois exactement la même chose. À voir si on décorrèle dans ce cas-là les labels (ce serait juste une propriété de l'audio).
Je prends exprès un cas incluant des choses comme le milieu de #798, avec une partition ni complètement développée, ni complètement réduite:
3x 1--------- 2--------
||: 1 | 2 :|| 3 | 4 ||: 5 | 6 | 7a | 8a :|| 7b | 8b | 9... # bar-number
0,8,16 24 32,48 40 56 64 # onset (solution A)
0 8 16 24 32 40 # onset (solution B)
Jeu
1..2 1..2 1..2 3..4 5..6 7a..8a 5..6 7b..8b 9.. # bar-number
0..7 8..15 16..23 24..31 32..39 40..47 48..55 56..63 64.. # onset (solution A)
0a..7a 0b..7b 0c..7c 8..15 16a..23a 24..31 16b..23b 32..39 40.. # onset (solution B)
Solution A
- le jeu audio semble plus simple, offsets croissants
- permettrait de mettre de labels sur une seule des répétitions (mais bon, on peut dire qu'on met toujours cela sur la première)
- mais... bazar inutile sur les onsets quand on ne fait pas l'audio ? les onsets ne sont plus croissants sur la partition
Solution B
- dépend de la partition (différents cas de #798 vont avoir des onsets différents en noires... mais pas si les fichiers de référence sont en "8a")
- nécessite de gérer un onset "pour l'audio" type 5b,
- mais... fait mieux jouer à la partition symbolique le rôle pivot, onsets croissants sur patition symbolique, à part l'audio quasi rien ne change
Pour la solution B:
"meter": [
{
"onset": 0,
},
{
"repeat": { 0: 0, 1: 0},
"onset": 8,
},
{
"repeat": { 1: 16},
"onset": 24,
"bar-number": "7a",
},
{
"repeat": { 0: 16},
"onset": 28,
"bar-number": "7b"
},
{
"onset": 32,
"bar-number": "9",
}
]
'repeat': { 1: 16}
signifierait "à la deuxième fois que l'on passe ici, aller à l'onset 16"
Permettrait de faire des répétitions/coda/....
On prendra le temps de réfléchir aux avantages/inconvénients de la solution A ou B (ou d'autres). Voir ce que font les autres logiciels. Mais en attendant, #1030 (closed) est compatible avec n'importe quelle des décisions ici. (Bref, ici, pas avant 2023 ?)