<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet alternate="no" href="/shared/style/dc-tiny/dc-tiny-1.css" title="decoy tiny 1" type="text/css" charset="UTF-8" media="screen"?>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:m="http://www.w3.org/1998/Math/MathML"
      xmlns:mono="http://www.iki.fi/~decoy/shared/namespace/dc-mono">
<head>
    <title>Sound, synthesis and audio reproduction: Signal processing basics</title>
    <meta http-equiv="Content-Type" content="text/xml;charset=utf-8"/>
    <meta http-equiv="Content-Language" content="en"/>
    <meta http-equiv="Content-Style-Type" content="text/css"/>
    <meta http-equiv="Content-Math-Type" content="text/mathml"/>
    <meta name="description" content="Some mathematics and DSP practice explained"/>
    <meta name="keywords" content="mathematics,audio,dsp,signal,processing,filter,design,convolution,fft"/>
    <meta name="robots" content="index,follow"/>
    <meta name="distribution" content="global"/>
    <?i-am 29?>
    <?parent 126?>
    <link rel="P3Pv1" href="/shared/policy/p3p-policyref.xml"/>
    <link rel="shortcut icon" href="/shared/graphics/icon/decoy-logo.png" type="image/png"/>
    <link rel="copyright" href="/shared/policy/siteip" title="Site IP policy"/>
    <link rel="meta" href="/shared/meta/merged"/>
    <link rel="author" href="mailto:decoy@iki.fi" title="Sampo Syreeni"/>
    <link rel="top" href="/front" title="Sampo Syreeni—decoy"/>
    <link rel="help" href="/shared/site" title="About the site"/>
    <link rel="up" href="dsound" title="Sound, synthesis and reproduction"/>
    <link rel="contents" href="dsound" title="Sound, synthesis and audio reproduction"/>
    <link rel="glossary" href="dsound-v-01" title="Vocabulary"/>
    <link rel="bibliography" href="dsound-r-01" title="References. Reading Which Is Worthy."/>
    <link rel="begin" href="dsound-c-01" title="Introduction"/>
    <link rel="end" href="dsound-c-14" title="Ideas to albums—working the sonic technology"/>
    <link rel="prev" href="dsound-c-04" title="Hearing, physiological and psychological aspects of"/>
    <link rel="next" href="dsound-c-06" title="Sound analysis and visualisation"/>
    <link rel="chapter" href="dsound-c-01" title="Introduction"/>
    <link rel="chapter" href="dsound-c-02" title="Sound as a physical phenomenon"/>
    <link rel="chapter" href="dsound-c-03" title="Physical acoustics"/>
    <link rel="chapter" href="dsound-c-04" title="Hearing, physiological and psychological aspects of"/>
    <link rel="chapter" href="dsound-c-05" title="Signal processing basics"/>
    <link rel="chapter" href="dsound-c-06" title="Sound analysis and visualisation"/>
    <link rel="chapter" href="dsound-c-07" title="Sound synthesis"/>
    <link rel="chapter" href="dsound-c-08" title="Sound processing and effects"/>
    <link rel="chapter" href="dsound-c-09" title="Control, modulation and patching"/>
    <link rel="chapter" href="dsound-c-10" title="Sequencing and MIDI"/>
    <link rel="chapter" href="dsound-c-11" title="Sound recording"/>
    <link rel="chapter" href="dsound-c-12" title="Audio transport"/>
    <link rel="chapter" href="dsound-c-13" title="Audio reproduction"/>
    <link rel="chapter" href="dsound-c-14" title="Ideas to albums—working the sonic technology"/>
    <link rel="appendix" href="dsound-a-01" title="APPENDIX: More on optical discs"/>
    <link rel="appendix" href="dsound-a-02" title="APPENDIX: Noise reduction"/>
    <link rel="appendix" href="dsound-a-03" title="APPENDIX: Audio coding/compression"/>
    <link rel="appendix" href="dsound-a-04" title="APPENDIX: Trackers, modules and sampling"/>
    <link rel="appendix" href="dsound-a-05" title="APPENDIX: Synthesis languages and softsynths"/>
    <link rel="appendix" href="dsound-d-01" title="Digression: common characteristics in signal analyses"/>
    <link rel="appendix" href="dsound-d-02" title="Digression: some common functions"/>
    <link rel="appendix" href="dsound-d-03" title="Digression: traditional psychoacoustic demonstrations"/>
    <link rel="appendix" href="dsound-d-04" title="Digression: consonance and dissonance"/>
    <link rel="appendix" href="dsound-d-05" title="Digression: commercial synthesis methods"/>
    <link rel="appendix" href="dsound-d-06" title="Digression: commercial sound effects algorithms"/>
    <link rel="appendix" href="dsound-d-07" title="Digression: some unconventional dimensions of sound"/>
    <link rel="appendix" href="dsound-d-08" title="Digression: more on sound fields"/>
    <link rel="appendix" href="dsound-d-09" title="Digression: synthesis tips and tricks"/>
</head>
<body xml:lang="en" class="empty">
    <div>
    <h1>Signal processing basics</h1>
    <div class="intro">
    <p>
        By now you have reached the most challenging part of this tutorial,
        namely the <abbr title="Digital Signal Processing" xml:lang="en">DSP</abbr> section. This is by far the longest and most difficult
        part. Not than we are going to be engaging in any die hard Bourbakian
        gymnastics, but in its own peculiar way, math tends to be a bit dense.
        And make no mistake about it, some math is absolutely essential before
        we can really understand sound. There are lots of interesting
        phenomena, technology and signal processing algorithms which are a bit
        impossible to cover without. There are also some which necessarily
        entail <em>real</em> rigor. Getting superficially acquainted with the
        basics is really the least painful way, then. Often one can do without
        extensive mathematical background, however, since most <abbr title="Digital Signal Processing" xml:lang="en">DSP</abbr> is really
        quite intuitive after the essential concepts have been grasped. This
        chapter aims at just that—giving a strong intuitive background and a
        bunch of real world examples and procedures to help in implementing
        audio <abbr title="Digital Signal Processing" xml:lang="en">DSP</abbr>. To keep the readership interested, some advanced topics are
        passingly mentioned. Most of these have been confined to their own
        sections or put into sidebars.
    </p>
    </div>

    <div>
    <h2>Continuous and discrete signals. The sampling theorem. Anti‐aliasing.</h2>
    <p>
        Eventhough we nowadays have computers everywhere and just about all you
        will ever want to do with sound is doable digitally, you should make no
        mistake about it: we are very much continuous time beings. Digital
        signal processing is really an aberration brought on by the discreteness
        of digital computers. The sampling theorem is the linkage that connects
        these two quite incompatible domains and hence affects <em>every</em>
        perceptually significant calculation we are about to perform in the
        digital domain. Sooner or later.
    </p>
    </div>

    <div>
    <h2>Concepts—systems, linearity, causality, time‐invariance and stability</h2>
<pre class="disposition">
 ‐discrete time filters.
 ‐Finite Impulse Response (<abbr title="Finite Impulse Response" xml:lang="en">FIR</abbr>) vs. Infinite Impulse Response (<abbr title="Infinite Impulse Response" xml:lang="en">IIR</abbr>) filters.
 ‐Convolution.
</pre>
    <p>
    </p>
    </div>

    <div>
    <h2>Frequency domain representations and their applications</h2>
    <div class="intro">
    <p>
    </p>
    </div>

    <div>
    <h3><q>Analog</q> spectra: Fourier series and transformations. The Laplace transformation.</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>The Discrete Fourier Transformation (<abbr title="Discrete Fourier Transform" xml:lang="en">DFT</abbr>)</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Z‐transforms and system functions</h3>
<pre class="disposition">
 ‐Poles and zeroes.
 ‐pStability in pole/zero lingo.
 ‐Z vs. Laplace transforms.
 ‐Frequency and phase response.
</pre>
    <p>
    </p>
    </div>

    <div>
    <h3>Properties of Fourier representations</h3>
<pre class="disposition">
 ‐Linearity
 ‐differentiation
 ‐connection to convolution
 ‐linear vs. circular convolution.
</pre>
    <p>
    </p>
    </div>

    <div>
    <h3>Real vs. complex signals. Negative frequencies. The analytical signal.</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>The Fast Fourier Transformation (<abbr title="Fast Fourier Transform" xml:lang="en">FFT</abbr>). Filtering and convolution.</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>The Chirp Z Transform (<abbr title="Chirp Z Transform" xml:lang="en">CZT</abbr>)</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Spectrum estimation</h3>
    <p>
    </p>
    </div>
    </div>

    <div>
    <h2>Analog filters</h2>
    <div class="intro">
    <p>
    </p>
    </div>

    <div>
    <h3>Building blocks and physical realization</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Design &amp; formulae, part I: Butterworth filters</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Design &amp; formulae, part II: Chebyshev filters</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Design &amp; formulae, part III: Elliptic filters</h3>
    <p>
    </p>
    </div>
    </div>

    <div>
    <h2>Digital filter design</h2>
    <div class="intro">
    <p>
    </p>
    </div>

    <div>
    <h3><abbr title="Finite Impulse Response" xml:lang="en">FIR</abbr>, part I: Windowing</h3>
    <p>
    </p>
    </div>

    <div>
    <h3><abbr title="Finite Impulse Response" xml:lang="en">FIR</abbr>, part II: Numerical approaches</h3>
    <p>
    </p>
    </div>

    <div>
    <h3><abbr title="Infinite Impulse Response" xml:lang="en">IIR</abbr>, part I: Impulse invariance</h3>
    <p>
    </p>
    </div>

    <div>
    <h3><abbr title="Infinite Impulse Response" xml:lang="en">IIR</abbr>, part II: Bilinear mapping</h3>
    <p>
    </p>
    </div>

    <div>
    <h3><abbr title="Infinite Impulse Response" xml:lang="en">IIR</abbr>, part III: Numerical approaches</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Novelties, part I: Approximate perfect lowpass and highpass</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Novelties, part II: Phase shift</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Novelties, part III: Bandlimited differentiation</h3>
    <p>
    </p>
    </div>
    </div>

    <div>
    <h2>Deconvolution</h2>
<pre class="disposition">
 ‐whitening
 ‐inverse filtering
</pre>
    <p>
    </p>
    </div>

    <div>
    <h2>Noise. Power spectra.</h2>
    <p>
    </p>
    </div>

    <div>
    <h2>Nonlinearity</h2>
    <div class="intro">
    <p>
    </p>
    </div>

    <div>
    <h3>Stateless nonlinearity and Chebyshev expansions</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Stateful nonlinearity and Volterra approximation</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Harmonic and intermodulation distortion. Waveshaping.</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Homomorphic deconvolution</h3>
    <p>
    </p>
    </div>
    </div>

    <div>
    <h2>Implementation, imperfection and workarounds</h2>
    <div class="intro">
    <p>
    </p>
    </div>

    <div>
    <h3>Standard forms for linear filters</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Coefficient quantization and alternative forms</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Quantization, <abbr title="Signal to Noise" xml:lang="en">S/N</abbr> and dynamic range. Correlated noise and dithering.</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Limit cycles and dead bands. Nonlinear unstability.</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Nonlinearity and oversampling</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Interpolation, noise shaping and sigma‐delta modulation</h3>
    <p>
    </p>
    </div>
    </div>

    <div>
    <h2>Alternatives to Fourier decompositions</h2>
    <div class="intro">
    <p>
    </p>
    </div>

    <div>
    <h3>The usefulness and limitations of Fourier methods</h3>
<pre class="disposition">
 ‐time vs. frequency duality/resolution
 ‐the uncertainty principle
</pre>
    <p>
    </p>
    </div>

    <div>
    <h3>Windowed/short time Fourier transformation (<abbr title="Windowed Fourier Transform" xml:lang="en">WFT</abbr>, <abbr title="Short Time Fourier Transform" xml:lang="en">STFT</abbr>)</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Transform and subband methods. Polyphase filters and wavelets.</h3>
<pre class="disposition">
 ‐filter banks
 ‐<abbr title="Quadrature Mirror Filter" xml:lang="en">QMF</abbr>s
 ‐<abbr title="Modified Discrete Cosine Transform" xml:lang="en">MDCT</abbr>MIDI:<abbr title="Modified Discrete Cosine Transform" xml:lang="en">MDCT</abbr>.
 ‐This is really a can of worms whence
  ‐filter banks
  ‐critical sampling
  ‐perfect reconstruction
  ‐continuous wavelets
  ‐overcompleteness
  ‐and so on, ad nauseam
 crawl out.
 ‐Alas, enough for a treatise in itself.
</pre>
    <p>
    </p>
    </div>

    <div>
    <h3>Haar functions. Time‐scale (affine) wavelets.</h3>
    <p>
    </p>
    </div>

    <div>
    <h3>Time‐frequency wavelets and Gabor functions</h3>
    <p>
    </p>
    </div>
    </div>
    </div>

    <?stamp?>
</body>
</html>