A way to ensure that...
1) song sections will always start from the beginning even if they are different lengths, and also
2) all the loops within each song section will always stay synced with each other
THE PROBLEM: PHASE-LOCK VS FREE TRADEOFF
While phase-lock is great for keeping loops synced, it doesn't work for songs that have multiple sections of differing lengths because when switching sections, the new section won’t necessarily start from its beginning. For example, if the verse is 4 bars and the chorus has an 8 bar loop, switching to the chorus after one verse means that the chorus will start playing from halfway through.
While turning phase-lock off (aka "free looping") solves this problem and ensures that loops always start playing from their beginning, the user can no longer start loops at any time within that section and ensure that they stay synced. This is musically limiting and introduces risk of accidentally playing loops out of sync from each other. It’s especially problematic for sections with long loops. For example, if the verse is a 12 bar non-repeating chord progression, any of the 12 bar loops that aren’t started at the beginning of the verse can’t be added until the entire 12 bar verse comes back around to the beginning or else the loops will play out of sync.
PROPOSED SOLUTION: INTERNALLY PHASE-LOCKED PLAY GROUPS
Play groups should have the option of being "internally phase-locked", which would mean...
1) Whenever the play group is inactive (meaning none of its clips is currently playing or recording)...
-All of the clips' playheads wait at the beginning and don't move
-This is "non-phase-locked" aka "free" behavior
2) Whenever the play group becomes active (meaning any of its clips starts playing or recording)...
-All the playheads of this play group start moving from the beginning (including for clips that aren't currently playing) and they all continue moving as long as any clip in that play group is still playing
-This is essentially "phase-locked" behavior except for one important difference: rather than the playheads being synchronized from when the transport became active, they are instead synchronized from when the play group became active
BENEFITS: NO MORE PHASE-LOCK VS FREE TRADEOFF
Users no longer have to choose between the following benefits- they can have them all!
-Song sections can be any length
-Song sections will always start from the beginning
-Loops within a song section can be started and stopped at any time, not just at the cycle boundary
-Loops within a song section will always stay synced to each other
While "Internal phase-lock" is probably most useful for mutually exclusive playgroups that "play and stop independently" (as in the verse/chorus use case described above), it could also be useful for “one at a time” play groups. For example, a “one at a time” play group might be made up of variations of a musical part (e.g. bass line variations) to be switched between but not played at the same time. Internally phase-locking this group would ensure smooth, synced switching even mid-loop.
Note: “internal phase-lock” is not applicable to "all at once" play groups because by definition, they always start playing together so they can’t get out of sync