donât use the loop0 parameter. leave the loop at something large. it is your buffer size. the metro is basically your âloopingâ method, and having two âloopingâ methods overlapping each other (one independent of phasor speed, one not) will indeed cause complex/glitchy effects.
the metro value corresponds to your echo time.
the metro period is how often the read head is âre-synchronizedâ to the echo time. if you think about it, you canât have an echo with pitchshift without such a âre-syncâ method, and without losing some information (in the case of down-shift):
lets say your input is: ABCDEF⊠- each letter is some input audio occupying a unit of time, like 1/4s. you re-sync every 1/2s. your output at 1/2 speed is: AACCEEâŠ
in other words: yeah, in between re-syncs, the delay drifts out of sync; since you have requested the read/write phasors to run at different rates, it canât be any other way. so pitchshifted echo (in the simple, time-domain sense) can only be âgranular.â the metro is âgenerating grains.â i would experiment with modulating and/or randomizing its rate. (also with the fade parameter)
the grains module is a little more sophisticated for this kind of stuff.