Scenario: I have random sequence going to an oscillator. The oscillator envelope is triggered by the same clock as the sequence. Occasionally the sequence will repeat a note, and I get the envelope triggered more than once for the same note.
My want: To have the envelope triggered only when the note changes.
Solution tried: So far the best solution I’ve used is to send the note v/oct to a shift register and send the first two outputs to a comparator and only trigger when the comparator inputs are different (i.e. the note has changed).
Is there a better way? A ‘on note change’ type module?
I suspect the solution is dependent on whether your envelope requires a trigger (like an AD envelope), or a gate (like an ADSR). I believe a gate requires a bit more work. If all you need is a trigger then you can ignore the clock and simply fire a trigger whenever the V/Oct changes. I think there are a number of comparators that can fire a trigger whenever they see a CV change.
Grande Quant is a great choice for a quantizer that fires a trigger whenever it sees a note change. It has a bunch of other nice tricks up its sleeve as well.