This sentence in timer-help helped me find a bug in one of my envelope generators made with [vline~]:
I was wondering why [timer] sometimes returned fractions when set to [tempo 64 samp(--now I know. But hold on--bangs are only processed between audio blocks, so that implies that the bang must carry with it some attribute that indicates its actual timing, one which might be within the next audio block.
Awright, then maybe [vline~], being all sophisticated and stuff, takes a peak at that attribute? Holy smokes, yes it does:
So my mistake was assuming that [vline~] always started at block boundaries, and that made it misaligned with other audio processing that was initiated at block boundaries. How have folks dealt with this? I suppose I could look for a way to use [vline~] to potentially delay the other audio processing. Is there a way to zero out that bang timing attribute, so that the bangs are quantized to block boundaries? Or some other way to force [vline~] to start at the beginning of the next audio block?
Edit: it's not just bangs that have that intra-block timing attribute--you can see in my example that it's preserved through the message that's sent to [vline~]