-
-
Obineg
i wonder how you came up with the filter topology and settings and how you were deciding/balancing the filter curve precision vs the LR runtime difference/phase shift.
HRTF FIRs are a beast, and in my experience it already sounds terrible when you take it over to an fft filter.
-
Obineg
@jameslo said:
@PD-Pi Wait, if each clone instance is a voice, then they can't share a single phasor because then they'd all have to play the same pitch, which is not my understanding of a polyphonic synth.
the idea of using a central phasor is not that the frequency must remain the same all the time, rather you would derive sub-phasors from it or use forms of distortion - or clock multiplying - while everything can still be resynced from the master.
that is also how you can realize a naive hardsync oscillator among other things.
the master would be outside the clone patch of course.
-
Obineg
i dont see the need for that "until loop", if 1000 is not present it would just accumulate another 0.
okay, it might get quite long if you do that for 8 or 10 digits. but a pure arithmetic, one-object solution is possible
(int($i1-(int($i1/10)*10))/1) + (int($i1-(int($i1/100)*100))/10) + (int($i1-(int($i1/1000)*1000))/100) + (int($i1-(int($i1/10000)*10000))/1000) + (int($i1-(int($i1/100000)*100000))/10000) + (int($i1-(int($i1/1000000)*1000000))/100000) + (int($i1-(int($i1/10000000)*10000000))/1000000) + (int($i1-(int($i1/100000000)*100000000))/10000000)
feel free to make it a bit shorter using modulo operator - i´d prefer it like so.
-
Obineg
@oid
i wonder what you think what this feedbackloop should be good for. -
Obineg
the image from fishcrystal contains an important, basic part of the answer in that plot: the math required for a multi-point-crossfader is identical to the math in a "equal-power" stereo panner.
using modulation -> list -> modulo -> cos function, as seen above, is a nice short data rate implementation.
if you want to use signals, where you dont have lists, you can optimize that principle further by using buffers and then only use +- offsets when reading out the function for the different inputs. -
Obineg
if you have a function or graph with more than one dimension, like in your example or in the usual chaotic attractors, you would simply take these dimensions individually and derive 3 signals from it.
then you can take only one of them, or mix them against each othe, or sum them, or multiply them squared or whatever you wish.
in order to do so, you would simply rebiuld the code so that it produces values betwee -1 and 1, (which can get tricky when used a low resolution arithmecis before), and when it works, you´d make a version with signal objects (which is often simpler than you thought)
-
Obineg
i would say "no" - there is no known generator or filter which is polyphonic by nature.
even if you code your own external at one point you always have to iterate the list into single values.
for example you could use a vexpr object instead of 4 mtofs, but there is no method how to make a polyphonic phase accumulator.
if you would try to make one, you would soon find out that it does not make too much sense to process accumulators in vectors when you need to have single outlets anyway, since audio connections have a fixed rate and bitdepht and can not be used to carry more than one signal.
of course inside pd you can yourself freely *where *you do that, (as opposed to MIDI, where every communication is serial.)