ok, @SmashedTransistors, here is my simple gr-300 approach in axolotiland.
i only did a simple pitch to "midi" conversion, not a model of the gr-300. but i took the conversion straight from the gr-300 schematic. look in the p to v object, it is a very simple approach. basically i fill a capacitor (a simple counter in axoloti) with a voltage and reset the circuit when a zero crossing occurs. this creates a sawtooth wave with an amplitude that is dependant on the input frequency. i then simply measure that amplitude before i reset the phase (the counter) and do a conversion to create "midi" notes from it.
it is crude, and not totally accurate but very fast and reactive. if you have time to look at the (quite bad) code maybe you can improve its accuracy or the frequency conversion part (from hertz to midi) that part actually eats up almost 15% CPU since its done in floats and uses log etc.
i tried the axoloti log object code, but it is not accurate enough for this.
the adaptive filtering seems to work pretty good, at least i get no octave jumps with my voice.
the p to v module outputs garbage if no periodic signal is input, hence the env-follower on the input to mute it.
maybe we could combine the responsiveness of this approach with the accuracy of yours
thanks, for getting me back into this...
gr-300WIP.axp (6.6 KB)