# Philosophy of perfect inter-sample interpolation

How would you define perfect (inter-sample) interpolation, and is it possible?

To quote Armifinn's prior answer:

"I guess the most important result is that for signals with bandwidth limitation, you can have perfect reconstruction via sinc(⋅)sinc(⋅) convolution; the famous sampling theorem..."

If by perfect interpolation it is meant that an analog band-limited signal is recovered perfectly from digital samples, wouldn't a sinc interpolation lead to some problems? Considering that analog equipment is causal while sinc interpolation is anti-causal, shouldn't a minimum phase low pass filter be used instead?

On the other hand, I understand that the above method would not preserve the phase information of the system. Sampling theorem states that band-limited signals can be captured perfectly. So indeed that would be a contradiction.

Finally, a quick thought experiment: consider an analog dirac delta impulse that is low pass filtered using a perfect causal analog filter so that it satisfies the sampling criterion. The signal is then digitally captured by a DSP engineer. Now, the DSP engineer wants to reconstruct the analog signal in his lab, and after running the perfect sinc interpolation he discovers that the signal in fact started BEFORE the analog dirac delta even occurred, to be more precise an infinite time before the analog signal started. This casts some doubts on how the interpolation should in fact be done, and whether the band-limiting criterion is so easy to satisfy.

• To my knowledge, modern audio-DACs use oversampled FIR filters that closely approximate a windowed sinc filter. So that's what you might want to model after all. Jun 30 '16 at 8:40

## 2 Answers

By the fundamental notions of signal processing, we can state that, a perfect intersample interpolation of a given perfectly bandlimited signal from its samples is not possible due to the fact that a perfectly bandlimited signal would be infinetely long whose infinite many samples are required to compute any one single interpolated intersample, hence impossible.

That being said, i.e. that the impossibility of obtaining infinite duration samples, a practical answer would be yes if you would allow an upperbound on the acceptable interpolation error, such as lower than the roundoff error within a digital system. This will be a truncation error whose spectral manisfestation is spectral smearing due to the convolution of the truncating window's frequency spectrum with that of the true spectrum of the bandlimited signal (i.e. multiplication in time, convolution in frequency)

Also a tradeoff can be sought that, instead of a perfectly bandlimited signal, you can work with bandlimited enough signal whose aliasing error is within acceptable bounds, just as in the previous paragraph, in this case you wont need infineteley many smples, but there will be spectral overlap.

You are mixing theoretical concepts with real-world engineering. The band-limiting criteria is not easy, or even possible, to satisfy in the real world. Perfectly band-limited signals are a theoretical fiction, as they would have to be infinite in length, e.g. longer than the existence of the known universe. In the real-world, finite sampling times and imperfect causal filters (with above absolute zero thermal noise, and etc.) are used, so only approximately band-limited signals are sampled, however usually close enough to band-limited that other noise sources (such as ADC quantization, etc.) dominate errors. Also, given finite real-world compute power, windowed Sinc reconstruction or interpolation is commonly used, with a finite length window, so that the computations can finish hopefully within ones lifetime.

However, these engineering approximations are close enough to the theoretical solution; and the theoretical solution fits on the professors chalk board, which provides a tractable justification.

BTW, one can use Cepstral or IFFT (etc.) filter design techniques to approximate a minimum phase (or other phase) equivalent to a windowed Sinc FIR filter or poly-phase interpolation kernal, if you want to skew (or un-skew) the phase of your interpolation.