hi all,
i've got a basic question about the dsp internals of pd ... i heard about block delays in several dsp objects ... but how is it working exactly ...
if i've got something like this:
| hip~ | hip~ | hip~ | hip~ |
would this have a delay of 4 dsp blocks? and would this have a delay of 2 dsp blocks:
| hip~ | hip~ |
would i have to add 2 nop~s to sync in with the first 4 filters?
thnx...
Tim mailto:TimBlechmann@gmx.de ICQ: 96771783 -- The only people for me are the mad ones, the ones who are mad to live, mad to talk, mad to be saved, desirous of everything at the same time, the ones who never yawn or say a commonplace thing, but burn, burn, burn, like fabulous yellow roman candles exploding like spiders across the stars and in the middle you see the blue centerlight pop and everybody goes "Awww!" Jack Kerouac
Tim Blechmann wrote:
hi all,
i've got a basic question about the dsp internals of pd ... i heard about block delays in several dsp objects ... but how is it working exactly ...
normally you will not have block-delays. so chaining 2 or 1000 [hip~]s will give you exactly 0 samples delay.
block-delays appear only in very special cases, e.g. when using [delread~]/[delwrite~]. there is some documentation about how to avoid this in doc/3.audio.examples/J07.execution.order.pd
would i have to add 2 nop~s to sync in with the first 4 filters?
no. (see above)
i am *very* sorry that i ever introduced this stupid [nop~] object that does delay the signal by one block. this should be considered a bug! probably i'll change the behaviour in future versions of zexy to a real [nop~] (which does exactly *nothing*)
i guess a lot of confusion about block-delays might come from the wrong behaviour of [nop~]
mfg.a.sdr IOhannes
Hallo, IOhannes m zmoelnig hat gesagt: // IOhannes m zmoelnig wrote:
i am *very* sorry that i ever introduced this stupid [nop~] object that does delay the signal by one block. this should be considered a bug! probably i'll change the behaviour in future versions of zexy to a real [nop~] (which does exactly *nothing*)
You mean like:
[inlet~] | [outlet~] ;)
Frank Barknecht _ ______footils.org__
i am *very* sorry that i ever introduced this stupid [nop~] object that does delay the signal by one block. this should be considered a bug! probably i'll change the behaviour in future versions of zexy to a real [nop~] (which does exactly *nothing*)
i see, so the nop~ that is used in the limiter help-patch isn't really necessary?
cheers...
Tim mailto:TimBlechmann@gmx.de ICQ: 96771783 -- The only people for me are the mad ones, the ones who are mad to live, mad to talk, mad to be saved, desirous of everything at the same time, the ones who never yawn or say a commonplace thing, but burn, burn, burn, like fabulous yellow roman candles exploding like spiders across the stars and in the middle you see the blue centerlight pop and everybody goes "Awww!" Jack Kerouac
Tim Blechmann wrote:
i am *very* sorry that i ever introduced this stupid [nop~] object that does delay the signal by one block. this should be considered a bug! probably i'll change the behaviour in future versions of zexy to a real [nop~] (which does exactly *nothing*)
i see, so the nop~ that is used in the limiter help-patch isn't really necessary?
no, it IS necessary, but this is even more a problem.
the [limiter~] does some interpolation of the signal to get the real maximum. eg, if you have a digital signal "... 0 0 0 0 0 0 1 1 0 0 0 ..." the digital maximum is one, while the maximum of the d/a-converted signal would be higher (somewhere between 1.0 and 2.0), due to convolution with a sinc(). now [limiter~] tries to get the "real" maximum (inbetween samples). due to the nature of signals, the [limiter~] object cannot look into the future and thus has to delay the signal a bit (9 samples or so) thus the signal that has to be limited should be delayed too. i (unfortunately) have used the [nop~] object for this (because it was at hand and there was no [z~] then) you might argue, that 64 samples is a bit to much (if the limiting-signal is delayed by 9 samples only) but this is about masquarading and psychoacoustics...
so probably i'll change the help-patch to *not* use [nop~] but [z~] to acchieve the delay.
mfg.a.sdr IOhannes