If all notes are length one on a track than applying the Symmetry Algo w/Time and Duplication works as expected. However, note lengths greater than one are not correctly mirrored.
To see this, create a half bar as shown below where “x” indicates note on and “~” indicates lengths greater than one:
x x x~~
12345678
After applying the Symmetry Algo you get the full bar:
x x x~~ x~x x
1234567890123456
Is this expected behavior?
From my persepctive, the natural expectation would be:
x x x~~ x~~ x x
1234567890123456
i.e I expected that when mirroring the notes the “ends” would become “starts” and vice versa
While it is usually expected for the start of a note to be ‘on time’, the end is seldomly something one can expect to be perfectly on the grid, especially when dealing with recorded material. So this was a deliberate design decision.
I can see the benefit of a time symmetry with the intuitive interpretation as well, it could be an additional mode
I love that you guys at Squarp program these great boxes with musicality in mind! Not just pure mathematics.
I agree that it would be more intuitive to do the thing pmags suggested, but it I think you’re right and this would probably produce more musical results than a “perfect mirror” would.
However, if you do implement a new “intuitive” (“mirror”) version of this algo, you might want to add a pre-quantize option, to first quantize the note ends (while keeping the note lengths) before you flip them. This would maybe be the best of both worlds?