-
Obineg
all of these things can be done with various combination of addition and multiplication.
-
Obineg
i just read the starting post again - and as it seems i did not do that before asking that question.
it would have been my next question why you do not use coefficients which somebody else made already.
no i havent tested those yet, but i might come back one day with proposals.
-
Obineg
in my opinion the usual 16x oversampling is almost unavoidable for FM or PD synthesis.
the attempt to take care of the bandlimiting with prior components has to fail everywhere, where even sinewaves as sources will already hit the nyquist barrier.
-
-
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.