-
LarsXI
if you are holding notes and you bend the pitch upwards, do you want the held notes to switch off and on again as they scan upwards chromatically? or would it be better for the pitch bend message to only transpose when a note is first played?
i think in either case, you will need to store the on/off states and transposition value of all notes in a table so that the transposition doesn't cause note off events to send to the wrong note number and cause notes to hang.
you could have a table with 128 values. when a normal note on comes through, the value of that index changes to 1, then to 0 when the note is released. you could also store transpositions in this table, 1 = no transposition, 2 = +1 semitone, -2 = -1 semitone, etc.
if you want to transpose held notes you would need to scan and update this table multiple times during a pitch bend. it's possible that would be limiting.
-
LarsXI
hi. i finished 5 camomile projects last year. i wanted to wrap them in pd vanilla patches and expose the controls so it would be easier for pd users to port them into other setups.
they can be downloaded individually here, and there are descriptions of the camomile patches on this same page:
https://sympathykeyroom.com/synth.html
the envelopes in these synths function, but i am not satisfied with them any more. i am working on some projects with better envelopes and voice stealing. should be posting that soon.
i am working on a much needed update of Ed Myrol because there are some serious flaws in the voice design. i will post that eventually. for the time being, this version still has a charming sound.
-
LarsXI
I use that method. I've had to add an extra delay in ms to avoid clicks when the dsp switches off in a voice. I adjust while playing until problems stop.
You can do this and still use vline~ in your patch because the output always starts exactly one block after receiving input.
-
LarsXI
yes, you can definitely patch this up.
will you want to queue note offs so that all notes release eventually, or should notes hang after at least two are pressed and then released?
a 128 position array can keep track of which notes are held. you can use a note counter and once it reaches 0, send note offs for each note the array recorded.
you may also want to look at the help file for [bag ]. you can flush it when the note counter reaches 0. i am nervous about using [bag ] for reasons i don't remember.
-
LarsXI
it's messy, but possible, to use a single sample delay with clipped feedback to generate a typical compressor envelope. i don't have this patched up in an intelligible way but i could clean it up if anyone is interested.
-
LarsXI
I've been doing it like this lately, but i'm curious if there's a better way
-
LarsXI
using [rzero~ 1] with [samphold~ ] might be interesting.
or rather, not samphold~ but i'm not sure what...i think a lot of discussions about this either here or on the list end up concluding that it is preferable to just rebuild the LFO using vline~, so you know ahead of time when it will change direction. Are you using an LFO that has too complex a pitch modulation to build it with vline~?