
A digital delay line (or simply delay line, also called delay filter) is a discrete element in a
digital filter
In signal processing, a digital filter is a system that performs mathematical operations on a Sampling (signal processing), sampled, discrete-time signal to reduce or enhance certain aspects of that signal. This is in contrast to the other ma ...
, which allows a
signal
A signal is both the process and the result of transmission of data over some media accomplished by embedding some variation. Signals are important in multiple subject fields including signal processing, information theory and biology.
In ...
to be delayed by a number of
samples. Delay lines are commonly used to delay
audio signal
An audio signal is a representation of sound, typically using either a changing level of electrical voltage for analog signals or a series of binary numbers for Digital signal (signal processing), digital signals. Audio signals have frequencies i ...
s feeding
loudspeaker
A loudspeaker (commonly referred to as a speaker or, more fully, a speaker system) is a combination of one or more speaker drivers, an enclosure, and electrical connections (possibly including a crossover network). The speaker driver is an ...
s to compensate for the
speed of sound
The speed of sound is the distance travelled per unit of time by a sound wave as it propagates through an elasticity (solid mechanics), elastic medium. More simply, the speed of sound is how fast vibrations travel. At , the speed of sound in a ...
in air, and to align
video signal
Video is an electronic medium for the recording, copying, playback, broadcasting, and display of moving visual media. Video was first developed for mechanical television systems, which were quickly replaced by cathode-ray tube (CRT) ...
s with accompanying audio, called
audio-to-video synchronization. Delay lines may compensate for
electronic processing latency so that multiple signals leave a device simultaneously despite having different pathways.
Digital delay lines are widely used building blocks in methods to simulate
room acoustics,
musical instruments
A musical instrument is a device created or adapted to make musical sounds. In principle, any object that produces sound can be considered a musical instrument—it is through purpose that the object becomes a musical instrument. A person who pl ...
and
effects units
An effects unit, effects processor, or effects pedal is an electronic device that alters the sound of a musical instrument or other audio source through audio signal processing.
Common effects include distortion/overdrive, often used with e ...
.
Digital waveguide synthesis
Digital waveguide synthesis is the synthesis of audio using a digital waveguide. Digital waveguides are efficient computational models for physical media through which acoustic waves propagate. For this reason, digital waveguides constitute a ...
shows how digital delay lines can be used as
sound synthesis
A synthesizer (also synthesiser or synth) is an electronic musical instrument that generates audio signals. Synthesizers typically create sounds by generating waveforms through methods including subtractive synthesis, additive synthesis an ...
methods for various musical instruments such as
string instruments
In musical instrument classification, string instruments, or chordophones, are musical instruments that produce sound from vibrating strings when a performer strums, plucks, strikes or sounds the strings in varying manners.
Musicians play some ...
and
wind instruments.
If a delay line holds a non-integer value smaller than one, it results in a fractional delay line (also called interpolated delay line or fractional delay filter). A series of an integer delay line and a fractional delay filter is commonly used for modelling ''arbitrary delay'' filters in
digital signal processing
Digital signal processing (DSP) is the use of digital processing, such as by computers or more specialized digital signal processors, to perform a wide variety of signal processing operations. The digital signals processed in this manner are a ...
.
The
Dattorro scheme is an industry standard implementation of digital filters using fractional delay lines.
Theory
The standard delay line with integer delay is derived from the
Z-transform
In mathematics and signal processing, the Z-transform converts a discrete-time signal, which is a sequence of real or complex numbers, into a complex valued frequency-domain (the z-domain or z-plane) representation.
It can be considered a dis ...
of a
discrete-time signal
In mathematical dynamics, discrete time and continuous time are two alternative frameworks within which variables that evolve over time are modeled.
Discrete time
Discrete time views values of variables as occurring at distinct, separate "poi ...
delayed by
samples:
In this case,
z^ = H_M(z) is the integer delay filter with:
\begin , \centerdot, = 1 = 0dB, & \text \\ \measuredangle = -\omega M, & \text \omega=2\pi fT_s \text T_s \text \end
The discrete-time domain filter for integer delay
M as the inverse zeta transform of
H_(z) is trivial, since it is an
impulse shifted by
M :
h_m = \begin \text, & \text n = M \\ 0, & \text n \neq M. \end
Working in the discrete-time domain with fractional delays is less trivial. In its most general theoretical form, a delay line with arbitrary fractional delay is defined as a standard delay line with delay
D \in \mathbb, which can be modelled as the sum of an integer component
M \in \mathbb and a fractional component
d \in \mathbb which is smaller than one sample:This is the
\mathcal domain representation of a non-trivial digital
filter design
Filter design is the process of designing a signal processing filter that satisfies a set of requirements, some of which may be conflicting. The purpose is to find a realization of the filter that meets each of the requirements to an acceptable ...
problem: the solution is an any time-domain filter that represents or approximates the inverse Z-transform of
H_(z) .
Filter design solutions
Naive solution
The conceptually easiest solution is obtained by sampling the continuous-time domain solution, which is trivial for any delay value. Given a continuous-time signal
x delayed by
D \in \mathbb samples, or
\tau = DT_s seconds
:
y(t) = x(t-D) \xrightarrow[] Y(\omega) = \overbrace^ X(\omega).
In this case,
e^ = H_(\omega) is the continuous-time domain fractional delay filter with:
\begin , \centerdot, = 1 = 0dB, & \text \\ \measuredangle = -\omega D, & \text \\ \tau_ = - = D, & \text \\ \tau_ = - = -D, &
\text \end
The naive solution for the sampled filter
h_ is the sampled inverse Fourier transform of
H_(\omega) , which produces a
non-causal IIR filter shaped as a
Cardinal Sine sinc() shifted by
D:
h_ = \mathcal^ _(\omega)=
\int\limits_^ e^ e^ d\omega =
sinc(n- D) =
The continuous-time domain
sinc is shifted by the fractional delay while the sampling is always aligned to the cartesian plane, therefore:
* when the delay is an integer number of samples
D \in \mathbb , the sampled shifted
sinc degenerates to a shifted impulse just like in the theoretical solution.
* when the delay is a fractional number of samples
D \in \mathbb , the sampled shifted
sinc produces a non-causal IIR filter, which is not implementable in practice.
Truncated causal FIR solution
The conceptually easiest implementable solution is the causal truncation of the naive solution above.
h_ = \begin sinc(n-D) & \text 0\leq n\leq N\\ 0 & \text \end \;\;\;\;\; \text\;\;\;\;\; < D < \;\;\;\;\;\text\;\;\;\;\;N\;\text
Truncating the impulse response might however cause instability, which can be mitigated in a few ways:
* Windowing the truncated impulse response, therefore smoothing it. Note that in this case we have to add a further shift
L in order to align the window and the
sinc() and provide symmetric filtering
.
h_ = \begin w(n-D)sinc(n-D) & \text L\leq n\leq L + N\\ 0 & \text \end \;\;\;\;\; \text\;\;\;\;\; L = \begin round(D)- & \text N\\ \lfloor D \rfloor - & \text N \end
* General
Least Square (GLS) Method:
iteratively adjusts the frequency response by windowing a Least Square Integral Error design, which minimises the square integral error between ideal and truncated frequency responses of the filter, defined as:
E_ = \int\limits_^ w(\omega)
, H^_D(e^)- H^_D(e^), ^2 d\omega
\;\;\;\;\;\text 0<\alpha \leq 1 \text
*
Lagrange Interpolator (Maximally Flat Fractional Delay Filter): adds "flatness" constraints to the first N derivatives of the Least Square Integral Error. This method is of particular interest because it has a closed form solution:
h_ = \prod_^N \;\;\;\;\;\text\;\;\;\;\;0\leq n \leq N
What follows is an expansion of the formula above displaying the resulting filters of order up to
N=3 :
All-pass IIR phase-approximated solution
Another approach is designing an
IIR filter of order
N with a Z-transform structure that forces it to be an all-pass while still approximating a
D delay
:
H_D(z) = =
\;\;\;\;\; \text \;\;\;\;\;
\begin , \centerdot, = 1 = 0dB & 0dB \text \\ \measuredangle_ = -N\omega + 2\measuredangle_ = -D\omega & \text D \end
The reciprocally placed
zeros and poles of
A(z) \text A(z^) respectively flatten the
frequency , \centerdot, response, while the
phase is function of the phase of
A(z) . Therefore, the problem becomes designing the
FIR filter A(z) , that is finding its coefficients
a_k as a function of D (note that
a_0=1 always), so that the phase approximates best the desired value
\measuredangle_ = -D\omega .
The main solutions are:
* Iterative minimization of Least Square Phase Error,
which is defined as:
E_ = \int\limits_^ w(\omega)
, \underbrace_, ^2d\omega
* Iterative minimization of Least Square
Phase Delay Error,
which is defined as:
E_ = \int\limits_^ w(\omega)
, , ^2
* Thiran All-Pole
Low-Pass Filter
A low-pass filter is a filter that passes signals with a frequency lower than a selected cutoff frequency and attenuates signals with frequencies higher than the cutoff frequency. The exact frequency response of the filter depends on the filt ...
with Maximally Flat
Group Delay
In signal processing, group delay and phase delay are functions that describe in different ways the delay times experienced by a signal’s various sinusoidal frequency components as they pass through a linear time-invariant (LTI) system (such as ...
. This yields a closed solution for finding the coefficients
a_k for positive delay
D>0 :
a_k = (-1)^k\binom\prod_^N
\;\;\;\;\; \text \;\;\;\;\;
\binom =
What follows is an expansion of the formula above displaying the resulting coefficients of order up to
N=3 :
Commercial history

Digital delay lines were first used to compensate for the
speed of sound
The speed of sound is the distance travelled per unit of time by a sound wave as it propagates through an elasticity (solid mechanics), elastic medium. More simply, the speed of sound is how fast vibrations travel. At , the speed of sound in a ...
in air in 1973 to provide appropriate delay times for the distant speaker towers at the
Summer Jam at Watkins Glen rock festival
A rock festival is an open-air rock concert featuring many different performers, typically spread over two or three days and having a campsite and other amenities and forms of entertainment provided at the venue. Some festivals are singular eve ...
in New York, with 600,000 people in the audience. New York City–based company
Eventide Clock Works provided digital delay devices each capable of 200 milliseconds of delay. Four speaker towers were placed from the stage, their signal delayed 175 ms to compensate for the speed of sound between the main stage speakers and the delay towers. Six more speaker towers were placed 400 feet from the stage, requiring 350 ms of delay, and a further six towers were placed 600 feet away from the stage, fed with 525 ms of delay. Each Eventide DDL 1745 module contained one hundred 1000-bit
shift register
A shift register is a type of digital circuit using a cascade of flip-flop (electronics), flip-flops where the output of one flip-flop is connected to the input of the next. They share a single clock signal, which causes the data stored in the syst ...
chips and a bespoke
digital-to-analog converter
In electronics, a digital-to-analog converter (DAC, D/A, D2A, or D-to-A) is a system that converts a digital signal into an analog signal. An analog-to-digital converter (ADC) performs the reverse function.
DACs are commonly used in musi ...
, and cost $3,800 ().
See also
*
Analog delay line
*
Delay-line memory
Delay-line memory is a form of computer memory, mostly obsolete, that was used on some of the earliest Digital data, digital computers, and is reappearing in the form of #Optical_delay_lines, optical delay lines. Like many modern forms of electro ...
*
Interpolation
In the mathematics, mathematical field of numerical analysis, interpolation is a type of estimation, a method of constructing (finding) new data points based on the range of a discrete set of known data points.
In engineering and science, one ...
References
Further reading
*
* {{Cite journal , last=Harris , first=Frederic J. , date=January 1978 , title=On the use of windows for harmonic analysis with the discrete Fourier transform , url=https://ieeexplore.ieee.org/document/1455106 , journal=Proceedings of the IEEE , volume=66 , issue=1 , pages=51–83 , doi=10.1109/PROC.1978.10837 , s2cid=426548 , via=IEEE Explore, url-access=subscription
External links
*
Introduction to Digital Filters' by Julius Smith
*
Spectral Audio Signal Processing' by Julius Smith
*
Physical Audio Signal Processing' by Julius Smith
*
Discrete-Time Modeling of Acoustic Tubes Using Fractional Delay Filters' by Valimaki Vesa
Digital signal processing
Audio effects