[PD] smallest possible value of a delay-time
matju at sympatico.ca
Sun May 16 19:25:15 CEST 2004
On Fri, 14 May 2004, Roman Haefeli wrote:
> i had a discussion with a teacher today. the topic was the smallest
> delay-time possible. in his opinion one sample is the atom of signal
> and cannot be divided anymore. in my opinion it should be possible to
> get shorter delays than 1 samples with interpolation. my argument was:
> it should be possible to set the values of each sample so, that the
> resulting signal would be similar to a digitized analogue signal with
> a shorter than 1 sample delay.
Suppose you have a signal at exactly the Nyquist frequency and
RMS=sqrt(2). Then its data is like +1,-1,+1,-1,...
Delaying the signal by 0.5 positions, using linear interpolation, yields:
(+1-1)/2,(-1+1)/2,... = 0,0,0,0,...
so your signal got mangled down to complete silence.
Delaying the signal by 0.5 positions, using fourier interpolation, goes
like: [fft~] finds a single peak, at Nyquist frequency. Then given a turn
= 2*pi radians = 2 samples at Nyquist, then a 0.5 sample delay is a pi/2
phase shift to the Nyquist bin, so you do [ifft~] on sqrt(-1)*pi/2 times
the Nyquist bin and then it depends on how [ifft~] is implemented.
The big problem is that, at Nyquist freq, if you want to preserve
Parseval's identity ("the RMS of the signal = the RMS of its spectrum"),
then there are only two possibilities of phase: 0 and pi. All the others
inevitably reduce the RMS. So if [ifft~] rounds the phase towards the
nearest of two values, you have a delay of either 0 or 1 sample, and if it
doesn't round, then it doesn't support Parseval's identity.
Proof: the signal has period of 2 samples. So it alternates between two
values, call them A and B. If A+B is nonzero, then the signal has a DC
component, but we said it only has a Nyquist component, so B=-A. We
supposed RMS=sqrt(2). RMS is computable as A^2+B^2=RMS^2 (Pythagoras'
Theorem ;-]) In this case it's also A^2+(-A)^2=sqrt(2)^2, so 2*A^2=2, so
A^2=1, so A=+1 or A=-1. so phase is either 0 or pi.
is there anything still unclear?
Mathieu Bouchard http://artengine.ca/matju
More information about the Pd-list