Noj ·
In order to make my filter work, I just need a 1 sample delay function on double streams. Is this possible or do I have to wait for 64bits instructions?
Jean
From the original SynthMaker forum (2004–2014), with its members’ names and dates.
Noj ·
In order to make my filter work, I just need a 1 sample delay function on double streams. Is this possible or do I have to wait for 64bits instructions?
Jean
stefan ·
Noj wrote: In order to make my filter work, I just need a 1 sample delay function on double streams. Is this possible or do I have to wait for 64bits instructions?
Jean
If it's for feeding back the signal then you always get a one sample delay. If it's for feeding the signal forward I don't think it's doable atm.
TheAudiophileDutchman ·
Noj wrote: In order to make my filter work, I just need a 1 sample delay function on double streams. Is this possible or do I have to wait for 64bits instructions?
Jean
This dirty trick actually works (hold CTRL+SHIFT to make connections); Been there, done that 🙂
...but I wonder about poly-streams (which I think Stefan is referring to).
TAD
rl ·
I think Jean is referring to a "1 sample delay" module with double precision.
Currently there is only limited support for doubles (+,-,*, round) - just enough for the higher precision index calculation for the wave player module. Having a double precision "1 sample delay" at least biquad structures could be built with better precision. For example the famous vowel formant filter from the archives at musicdsp.org needs double precision math. Using floats the filter is unstable. Should be a topic for the "ideas and requests" area.
Noj ·
stefan wrote: If it's for feeding back the signal then you always get a one sample delay. If it's for feeding the signal forward I don't think it's doable atm.
Yeah, I forgot that SM used single sample feedback. My filter is kind of simple IIR filtering, so you need previous outputs, but also previous inputs.
Do you thing it would be possible to get previous input by cascading a (+), followed by a (-) with a feedback loop in the middle? The idea is to get the previous sample with the feedback loop and to add and subtract current sample. I will try later this evening.
stefan ·
Noj wrote: stefan wrote: If it's for feeding back the signal then you always get a one sample delay. If it's for feeding the signal forward I don't think it's doable atm.
Yeah, I forgot that SM used single sample feedback. My filter is kind of simple IIR filtering, so you need previous outputs, but also previous inputs.
Do you thing it would be possible to get previous input by cascading a (+), followed by a (-) with a feedback loop in the middle? The idea is to get the previous sample with the feedback loop and to add and subtract current sample. I will try later this evening.
I would venture a guess at a "no". I don't see how it could work, but maybe I'm suffering from some kind of brain blockage? 🙂
Noj ·
Yeah Stefan,
I guess you're right. The feedback value never appears (only inside the primitives when needed) and I can't think of any integration form (feedback) that leads to pure delay.
Jean
stefan ·
Noj wrote: Yeah Stefan,
I guess you're right. The feedback value never appears (only inside the primitives when needed) and I can't think of any integration form (feedback) that leads to pure delay.
Jean
Does it not work to use the regular 1 sample delay primitive with a forced connection? Ugly, I know, but sometimes a hack is what one has to resort to 🙂
Noj ·
Hmm... looks like the forced connection is ok (even with mono4), the filter seems to work well. I need to verify if it keeps double precision and does not truncate signals...
Wrote something here? To have a post removed or your name hidden, write to [email protected].