Integer delay lengths are not sufficient for musical tuning of digital
waveguide models at commonly used sampling rates [40].
The simplest scheme which is typically tried first is *linear
interpolation*. However, poor results are obtained in some cases (such
electric guitar models) due to the pitch-dependent damping caused by
delay-line interpolation. As is well known [88],
linear interpolation is equivalent to a
time-varying FIR filter of the form
,
and for (for interpolation half way between available samples),
the gain of the interpolation filter
at drops to zero.
In some cases, such as for steel string simulation, the interpolation filter
becomes the dominant source of damping, so that when the pitch happens to
fall on an integer delay-line length (), the damping suddenly
decreases, making the note stand out as ``buzzy.''
In such cases, something better than linear interpolation is required.

*Allpass interpolation* is a nice choice for the nearly
lossless feedback loops commonly used in digital waveguide models
[40,104], because it does not suffer *any*
frequency-dependent damping. Its phase distortion normally manifests as a
slight mistuning of high-frequency resonances, which is usually inaudible
and arguably even desirable in most cases.
However, allpass interpolation instead has
the problem that instantly switching from one delay to another (as in a
``hammer-on'' or ``pull-off'' simulation in a string model) gives rise to a
*transient artifact* due to the recursive nature of the allpass
filter. Transient artifacts can be reduced or eliminated by ``warming up''
a second instance of the filter using the new coefficients in advance of
the transition (ideally several time-constants in advance) and, at
the desired transition time, switching out the old filter and switching in
the new [120]. In this way, the new filter is switched in with
state consistent with the new coefficients. Another approach is to
*cross-fade*
from the old filter to the new filter, allowing consistent state
to develop in the new filter before its output fades in.

Another popular choice is *Lagrange interpolation* [46,115,1,88]
which is a special case of FIR filter interpolation; while the transient artifact
problem is minimal since the interpolating filter is nonrecursive,
there is still a time-varying amplitude distortion at high frequencies. In
fact, first-order Lagrange interpolation is just linear interpolation, and
higher orders can be shown to give a maximally smooth frequency response at
dc (zero frequency), while the gain generally rolls off at high
frequencies. Allpass interpolation can be seen as trading off this
frequency-dependent amplitude distortion for additional frequency-dependent
delay distortion [13]. A comprehensive review of Lagrange
interpolation appears in [115].

Both allpass and FIR interpolation suffer from some delay distortion at high frequencies due to having a nonlinear phase response at non-integer desired delays. As mentioned above for the allpass case alone, this distortion is normally inaudible, even in the first-order case, causing mistuning or phase modulation only in the highest partial overtones of a resonating string or tube.

Optimal interpolation can be approached via general-purpose *bandlimited
interpolation* techniques [105,70].
However, the expense is
generally considered too high for widespread usage at present. Both
amplitude and delay distortions can be eliminated over the entire band of
human hearing using higher order IIR (e.g., allpass) or FIR interpolation
filters in conjunction with some amount of oversampling. A comprehensive
review of delay-line interpolation techniques is given in [53].

Download wgj.pdf

Copyright ©

Center for Computer Research in Music and Acoustics (CCRMA), Stanford University

[Automatic-links disclaimer]