physical modeling sound synthesis - ccrmajos/pdf/aes-masterclass.pdf · 2020. 10. 30. · early...

149
Julius Smith AES-2006 Masterclass – 1 / 101 Physical Modeling Sound Synthesis Julius Smith CCRMA, Stanford University AES-2006 Masterclass October 7, 2006

Upload: others

Post on 25-Jan-2021

3 views

Category:

Documents


0 download

TRANSCRIPT

  • Julius Smith AES-2006 Masterclass – 1 / 101

    Physical Modeling Sound Synthesis

    Julius Smith

    CCRMA, Stanford University

    AES-2006 Masterclass

    October 7, 2006

  • Overview

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 2 / 101

  • Outline

    Overview

    • Outline

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 3 / 101

    Synthesis approaches in approximate historical order, including

    selected research updates, for

    • Voice• Plucked Strings• Woodwinds• Bowed Strings• Piano and Harpsichord• Membranes and Plates• Horns• Related Topics

    Reference: Physical Audio Signal Processing (online book)

    http://ccrma.stanford.edu/~jos/pasp/

  • Early Voice Models

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 4 / 101

  • Early Talking Machines (Virtual Talking Heads)

    Julius Smith AES-2006 Masterclass – 5 / 101

    Joseph Faber’s Euphonia

    https://irrationalgeographic.wordpress.com/2009/06/24/joseph-fabers-talking-euphonia/

  • Early Brazen Heads (Wikipedia)

    Julius Smith AES-2006 Masterclass – 6 / 101

    • ≈ 1125: First talking head description:William of Malmesbury’s History of the English Kings:

    ◦ Pope Sylvester II said to have traveled to al-Andalus and stolen a tomeof secret knowledge

    ◦ Only able to escape through demonic assistance◦ Cast the head of a statue using his knowledge of astrology◦ It would not speak until spoken to, but then answered any yes/no

    question put to it

    • Early devices were deemed heretical by the Church and often destroyed• 1599: Albertus Magnus had a head with a human voice and breath:

    ◦ ”A certain reasoning process” bestowed by a cacodemon (evil demon)◦ Thomas Aquinas destroyed it for continually interrupting his ruminations

    (not everyone wants a yacking cacodemon around all the time)

    • By the 18th century, talking machines became acceptable as“scientific pursuit”

  • Wolfgang Von Kempelin’s Speaking Machine (1791)

    Overview

    Early Voice Models

    • Virtual Heads

    • Von Kempelin

    • Euphonia

    • Voder Keyboard

    • Voder Schematic

    • Voder Demos

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 7 / 101

    Replica of Wolfgang Von Kempelin’s Speaking Machine

    http://en.wikipedia.org/wiki/Wolfgang_von_Kempelen's_Speaking_Machine

  • Joseph Faber’s Euphonia (1846)

    Overview

    Early Voice Models

    • Virtual Heads

    • Von Kempelin

    • Euphonia

    • Voder Keyboard

    • Voder Schematic

    • Voder Demos

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 8 / 101

    Joseph Faber’s Euphonia

    17 levers, a bellows, and a telegraphic line — sang “God Save the Queen”

    https://irrationalgeographic.wordpress.com/2009/06/24/joseph-fabers-talking-euphonia/

  • Joseph Faber’s Euphonia (1846)

    Overview

    Early Voice Models

    • Virtual Heads

    • Von Kempelin

    • Euphonia

    • Voder Keyboard

    • Voder Schematic

    • Voder Demos

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 9 / 101

    Joseph Faber’s Euphonia

    https://irrationalgeographic.wordpress.com/2009/06/24/joseph-fabers-talking-euphonia/

  • The Voder (Homer Dudley — 1939 Worlds Fair)

    Julius Smith AES-2006 Masterclass – 10 / 101

    http://davidszondy.com/future/robot/voder.htm>

    http://ccrma.stanford.edu/~jos/wav/voder.wav

  • Voder Keyboard

    Julius Smith AES-2006 Masterclass – 11 / 101

    http://www.acoustics.hut.fi/publications/files/theses/

    lemmetty mst/chap2.html — (from Klatt 1987)

  • Voder Schematic

    Julius Smith AES-2006 Masterclass – 12 / 101

    http://ptolemy.eecs.berkeley.edu/~eal/audio/voder.html

  • Voder Demos

    Overview

    Early Voice Models

    • Virtual Heads

    • Von Kempelin

    • Euphonia

    • Voder Keyboard

    • Voder Schematic

    • Voder Demos

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 13 / 101

    • Video• Audio

    http://www.youtube.com/watch?v=0rAyrmm7vv0http://www.youtube.com/watch?v=5hyI_dM5cGo

  • Digital Voice Models

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 14 / 101

  • Kelly-Lochbaum Vocal Tract Model

    (Discrete-Time Transmission-Line Model)

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 15 / 101

    John L. Kelly and Carol Lochbaum (1962)

  • Sound Example

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 16 / 101

    “Bicycle Built for Two”: (WAV) (MP3)

    • Vocal part by Kelly and Lochbaum (1961)• Musical accompaniment by Max Mathews• Computed on an IBM 704• Based on Russian speech-vowel data from Gunnar Fant’s book• Probably the first digital physical-modeling synthesis sound

    example by any method

    • Inspired Arthur C. Clarke to adapt it for “2001: A Space Odyssey”— the computer’s “first song”

    http://ccrma.stanford.edu/~jos/wav/daisy-klm.wavhttp://ccrma.stanford.edu/~jos/mp3/daisy-klm.mp3

  • “Shiela” Sound Examples by Perry Cook (1990)

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 17 / 101

    • Diphones: (WAV) (MP3)• Nasals: (WAV) (MP3)• Scales: (WAV) (MP3)• “Shiela”: (WAV) (MP3)

    http://ccrma.stanford.edu/~jos/wav/diphs.wavhttp://ccrma.stanford.edu/~jos/mp3/diphs.mp3http://ccrma.stanford.edu/~jos/wav/nasals.wavhttp://ccrma.stanford.edu/~jos/mp3/nasals.mp3http://ccrma.stanford.edu/~jos/wav/vocaliz.wavhttp://ccrma.stanford.edu/~jos/mp3/vocaliz.mp3http://ccrma.stanford.edu/~jos/wav/shiela.wavhttp://ccrma.stanford.edu/~jos/mp3/shiela.mp3

  • Linear Prediction (LP) Vocal Tract Model

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 18 / 101

    • Can be interpreted as a modified Kelly-Lochbaum model• In linear prediction, the glottal excitation must be an

    • impulse, or• white noise

    This prevents LP from finding a physical vocal-tract model

    • A more realistic glottal waveform e(n) is needed before the vocaltract filter can have the “right shape”

    • How to augment LPC in this direction without going to afull-blown articulatory synthesis model?

    Jointly estimate glottal waveform e(n) so that the vocal-tract filter converges to the “right shape”

  • Klatt Derivative Glottal Wave

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 19 / 101

    0 25 50 75 100 125 150 175 200 225 250−0.25

    −0.2

    −0.15

    −0.1

    −0.05

    0

    0.05

    Time (samples)

    Ampl

    itude

    Two periods of the basic voicing waveform

    Good for estimation:

    • Truncated parabola each period• Coefficients easily fit to phase-aligned inverse-filter output

  • Sequential Unconstrained Minimization

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 20 / 101

    (Hui Ling Lu, 2002)

    Klatt glottal (parabola) parameters are estimated jointly with vocal

    tract filter coefficients

    • Formulation resembles that of the equation error method forsystem identification (also used in invfreqz in matlab)

    • For phase alignment, we estimate• pitch (time varying)• glottal closure instant each period

    • Optimization is convex in all but the phase-alignment dimension⇒ one potentially nonlinear line search

  • Liljencrantz-Fant Derivative Glottal Wave Model

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 21 / 101

    0 0.005 0.01 0.0150

    10

    20

    30

    40

    Am

    plitu

    de

    Time (sec)

    To

    Uo

    TcTp

    LF glottal wave and LF derivative glottal wave

    0 0.005 0.01 0.015

    −1

    −0.5

    0

    Am

    plitu

    de

    Time (sec)

    ToTp TcTe

    −Ee

    glottal wave

    derivative glottal wave Ta

    • Better for intuitively parametrized expressive synthesis• LF model parameters are fit to inverse filter output• Use of Klatt model in forming filter estimate yields a “more

    physical” filter than LP

  • Parametrized Phonation Types

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 22 / 101

    100 200 300 400 500 600 700 800 900 1000

    −1

    0

    1 pressed

    100 200 300 400 500 600 700 800 900 1000

    −1

    0

    1 normal

    100 200 300 400 500 600 700 800 900 1000

    −1

    0

    1 breathy

  • Sound Examples by Hui Ling Lu

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 23 / 101

    • Original: (WAV) (MP3)• Synthesized:

    • Pressed Phonation: (WAV) (MP3)• Normal Phonation: (WAV) (MP3)• Breathy Phonation: (WAV) (MP3)

    • Original: (WAV) (MP3)• Synthesis 1: (WAV) (MP3)• Synthesis 2: (WAV) (MP3)

    where

    • Synthesis 1 = Estimated Vocal Tract driven by estimatedKLGLOT88 Derivative Glottal Wave (Pressed)

    • Synthesis 2 = Estimated Vocal Tract driven by the fitted LFDerivative Glottal Wave (Pressed)

    Google search: singing synthesis Lu

    http://ccrma.stanford.edu/~jos/wav/norm_a_1.wavhttp://ccrma.stanford.edu/~jos/mp3/norm_a_1.mp3http://ccrma.stanford.edu/~jos/wav/norm_a_1_1VT_Rd03_0825.wavhttp://ccrma.stanford.edu/~jos/mp3/norm_a_1_1VT_Rd03_0825.mp3http://ccrma.stanford.edu/~jos/wav/norm_a_1_1VT_Rd12_0825.wavhttp://ccrma.stanford.edu/~jos/mp3/norm_a_1_1VT_Rd12_0825.mp3http://ccrma.stanford.edu/~jos/wav/norm_a_1_breathy.wavhttp://ccrma.stanford.edu/~jos/mp3/norm_a_1_breathy.mp3http://ccrma.stanford.edu/~jos/wav/norm_a_1.wavhttp://ccrma.stanford.edu/~jos/mp3/norm_a_1.mp3http://ccrma.stanford.edu/~jos/wav/norm_a_1_KL.wavhttp://ccrma.stanford.edu/~jos/mp3/norm_a_1_KL.mp3http://ccrma.stanford.edu/~jos/wav/norm_a_1_LF.wavhttp://ccrma.stanford.edu/~jos/mp3/norm_a_1_LF.mp3http://www.google.com/search?q=singing+synthesis+Lu

  • Voice Model Estimation

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 24 / 101

    (Pamornpol (Tak) Jinachitra 2006)

    Noisy

    1A(z)

    v(n) w(n)

    y(n)x(n)

    g(n)

    Vocal tract

    Derivativeglottal waveform

    NoiseNoise/Error

    Cleanspeech speech

    • Parametric source-filter model of voice + noise• State-space framework with derivative glottal waveform as

    input and A model for dynamics

    • Jointly estimate AR parameters and glottal source parametersusing EM algorithm with Kalman smoothing

    • Reconstruct a clean voice using Kelly-Lochbaum andestimated parameters

  • Online 2D Vowel Demo (2014)

    Julius Smith AES-2006 Masterclass – 25 / 101

    Jan Schnupp, Eli Nelken, and Andrew King

    http://auditoryneuroscience.com/topics/two-formant-artificial-vowels

    http://auditoryneuroscience.com/topics/two-formant-artificial-vowels

  • Pink Trombone Voical Synthesis (March 2017)

    Overview

    Early Voice Models

    Digital Voice Models

    • KL Voice

    • “Daisy”

    • “Shiela”

    • Linear Prediction

    • Glottal Model

    • Source Estimation

    • LF Glottal Model

    • Phonation Variation

    • Lu Sounds

    • Tak

    • 2D Vowels

    • Pink Trombone

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Julius Smith AES-2006 Masterclass – 26 / 101

    Neil Thapen

    Institute of Mathematics of the Academy of Sciences

    Czech Republic

    http://dood.al/pinktrombone/

    http://dood.al/pinktrombone/

  • Karplus-Strong (KS) Algorithm

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 27 / 101

  • Karplus-Strong (KS) Algorithm (1983)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    • Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 28 / 101

    N samples delayOutput y (n)+

    z 1-

    1/2

    1/2

    y (n-N)+

    • Discovered (1978) as “self-modifying wavetable synthesis”• Wavetable is preferably initialized with random numbers• No physical modeling at this point

  • Digital Waveguide Modeling

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 29 / 101

  • Digital Waveguide Models (1985)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 30 / 101

    Lossless digital waveguide∆= bidirectional delay line

    at some wave impedance R

    z−N

    z−N

    R

    Useful for efficient models of

    • strings• bores• plane waves• conical waves

  • Signal Scattering

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 31 / 101

    Signal scattering is caused by a change in wave impedance R:

    If the wave impedance changes every spatial sample, the

    Kelly-Lochbaum vocal-tract model results (also need reflecting

    terminations)

  • Moving Termination: Ideal String

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 32 / 101

    Moving rigid termination for an ideal string

    • Left endpoint moved at velocity v0• External force f0 = Rv0• R =

    √Kǫ is the wave impedance (for transverse waves)

    • Relevant to bowed strings (when bow pulls string)• String moves with speed v0 or 0 only• String is always one or two straight segments• “Helmholtz corner” (slope discontinuity) shuttles back and forth at

    speed c =√

    K/ǫ

  • Digital Waveguide “Equivalent Circuits”

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 33 / 101

    (x = 0) (x = L)

    vRf 00 =

    (x = 0) (x = L)

    -1-1

    v0

    a)

    b)

    f(n)

    a) Velocity waves. b) Force waves.

    (Animation)

    (Interactive Animation)

    ../swgt/movet.htmlhttps://phet.colorado.edu/sims/html/wave-on-a-string/latest/wave-on-a-string_en.html

  • Ideal Plucked String (Displacement Waves)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 34 / 101

    (x = 0) (x = L)

    y (n+N/2)

    -1“Bridge”

    y (n)+

    “Nut”

    -y (n)-

    -1

    y (n-N/2)+

    (x = Pluck Position)

    • Load each delay line with half of initial string displacement• Sum of upper and lower delay lines = string displacement

  • Ideal Struck String (Velocity Waves)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 35 / 101

    (x = 0) (x = L)

    v (n+N/2)

    -1“Bridge”

    v (n)+

    “Nut”

    -v (n)-

    -1

    v (n-N/2)+

    (x = Hammer Position)

    c

    c

    Hammer strike = momentum transfer = velocity step:

    mhvh(0−) = (mh +ms)vs(0+)

  • Digital Waveguide Interpretation of Karplus-Strong

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 36 / 101

    Begin with an ideal damped string model:

    (x = 0) (x = L)

    N/2 samples delay, N/2 loss factors g

    y (n-N/2)+

    y (n+N/2)

    Output (non-physical)

    -1 “Bridge”Rigid Termination

    y (n)+

    “Nut”Rigid Termination

    N/2 samples delay, N/2 loss factors g -

    gN/2

    g-N/2

    y (n)-

    -1

    . . .

    . . .. . .

    . . .

    z 1-

    z 1-

    z 1-

    z 1-z 1-

    z 1-

    y (nT,2cT)

    y (n)-

    y (n)+

    y (nT,0)

    g g

    g g g

    g

  • Equivalent System: Gain Elements Commuted

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 37 / 101

    N samples delayOutput

    g N

    y (n-N)+y (n)+

    All N loss factors g have been “pushed” through delay elements andcombined at a single point.

    Computational Savings

    • fs = 50kHz, f1 = 100Hz ⇒ delay = 500• Multiplies reduced by two orders of magnitude• Input-output transfer function unchanged• Round-off errors reduced

  • Frequency-Dependent Damping

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 38 / 101

    N samples delayOutput

    g N

    y (n-N)+y (n)+

    • Loss factors g should really be digital filters• Gains in nature typically decrease with frequency• Loop gain may not exceed 1 (for stability)• Such filters also commute with delay elements (LTI)• Typically only one gain filter used per loop

  • Simplest Frequency-Dependent Loop Filter

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 39 / 101

    Ĝ(z) = b0 + b1z−1

    • Uniform delay ⇒ b0 = b1 (⇒ delay = 1/2 sample)

    • Zero damping at dc ⇒ b0 + b1 = 1⇒ b0 = b1 = 1/2⇒

    Ĝ(ejωT ) = cos (ωT/2) , |ω| ≤ πfs

    • This is precisely the Karplus-Strong loop filter!

  • Karplus-Strong Algorithm Revisited

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 40 / 101

    N samples delayOutput y (n)+

    z 1-

    1/2

    1/2

    y (n-N)+

    Physical Interpretation

    • Delay line is initialized with noise (random numbers)• Therefore, assuming a displacement-wave simulation:

    ◦ Initial string displacement = sum of delay-line halves◦ Initial string velocity ⇐ difference of delay-line halves

    • The Karplus-Strong “string” is thus plucked and struck by randomamounts along the entire length of the string!

    (“splucked string”?)

  • EKS Algorithm (Jaffe-Smith 1983)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 41 / 101

    z−N

    Hs(z)

    Hp(z) Hβ(z) HL(z)

    Hρ(z) Hd(z)

    N = pitch period (2× string length) in samples

    Hp(z) =1− p

    1− p z−1 = pick-direction lowpass filter

    Hβ(z) = 1− z−βN = pick-position comb filter, β ∈ (0, 1)Hd(z) = string-damping filter (one/two poles/zeros typical)

    Hs(z) = string-stiffness allpass filter (several poles and zeros)

    Hρ(z) =ρ(N)− z−11− ρ(N) z−1 = first-order string-tuning allpass filter

    HL(z) =1−RL

    1−RL z−1= dynamic-level lowpass filter

  • Karplus-Strong Sound Examples

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 42 / 101

    • “Vintage” 8-bit sound examples:• Original Plucked String: (WAV) (MP3)• Drum: (WAV) (MP3)• Stretched Drum: (WAV) (MP3)

    http://ccrma.stanford.edu/~jos/wav/pluck.wavhttp://ccrma.stanford.edu/~jos/mp3/pluck.mp3http://ccrma.stanford.edu/~jos/wav/ksdrum.wavhttp://ccrma.stanford.edu/~jos/mp3/ksdrum.mp3http://ccrma.stanford.edu/~jos/wav/ksdrumst.wavhttp://ccrma.stanford.edu/~jos/mp3/ksdrumst.mp3

  • EKS Sound Examples

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 43 / 101

    Plucked String: (WAV) (MP3)

    • Plucked String 1: (WAV) (MP3)• Plucked String 2: (WAV) (MP3)• Plucked String 3: (WAV) (MP3)

    (Computed using Plucked.cpp in the C++ Synthesis Tool Kit

    (STK) by Perry Cook and Gary Scavone)

    http://ccrma.stanford.edu/~jos/wav/plucked.wavhttp://ccrma.stanford.edu/~jos/mp3/plucked.mp3http://ccrma.stanford.edu/~jos/wav/karplus2.wavhttp://ccrma.stanford.edu/~jos/mp3/karplus2.mp3http://ccrma.stanford.edu/~jos/wav/karplus1.wavhttp://ccrma.stanford.edu/~jos/mp3/karplus1.mp3http://ccrma.stanford.edu/~jos/wav/ks44k.wavhttp://ccrma.stanford.edu/~jos/mp3/ks44k.mp3

  • EKS Sound Example (1988)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 44 / 101

    Bach A-Minor Concerto—Orchestra Part: (WAV) (MP3)

    • Executed in real time on one Motorola DSP56001(20 MHz clock, 128K SRAM)

    • Developed for the NeXT Computer introduction at DaviesSymphony Hall, San Francisco, 1988

    • Solo violin part was played live by Dan Kobialka of the SanFrancisco Symphony

    http://ccrma.stanford.edu/~jos/wav/bachfugue.wavhttp://ccrma.stanford.edu/~jos/mp3/bachfugue.mp3

  • Example EKS Extension

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 45 / 101

    Several of the Karplus-Strong algorithm extensions

    were based on its physical interpretation.

    • Originally, transfer-function methods were used (1982)• Later, digital waveguide methods were used (1986)

  • String Excited Externally at One Point

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 46 / 101

    (x = 0) (x = L)

    f (n)+

    “Agraffe”Rigid

    Termination

    f (n)-

    Del M

    Del M

    Delay N

    Delay N

    (x = striking position)

    Hammer Strike f(t)

    ExampleOutput

    Filter“Bridge”Yielding

    Termination

    “Waveguide Canonical Form (1986)”

    Equivalent System by Delay Consolidation:

    Del 2M Delay 2N

    String Output

    Filter

    Hammer

    Strike f(t)

    Finally, we “pull out” the comb-filter component:

  • EKS “Pick Position” Extension

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    • Digital Waveguide

    • Signal Scattering

    • Moving Termination

    • Waveguide Model

    • Plucked String

    • Struck String

    • Damped String

    • Commuted Gains

    • Damping Filters

    • Simplest Damping

    • Karplus-Strong Aha

    • EKS Algorithm

    • Physical Excitation

    • Pick Position FFCF

    • PLPC Cello

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 47 / 101

    Equivalent System: Comb Filter Factored Out

    Delay 2M+2NHammer

    Strike f(t)

    Filter

    Del 2M

    g(t)

    Out (from Del N)

    H(z) = z−N1 + z−2M

    1− z−(2M+2N) =(

    1 + z−2M) z−N

    1− z−(2M+2N)

    • Excitation Position controlled by left delay-line length• Fundamental Frequency controlled by right delay-line length• “Transfer function modeling” based on a physical model (1982)

  • PLPC Cello (1982)

    Julius Smith AES-2006 Masterclass – 48 / 101

    Body Filter

    (bow position) (EKS)

    Comb FilterBandlimitedImpulseTrain

    (40-pole LPC)

    String Loop

    • Periodic LPC used to estimate string-loop filter• Normal LPC used for body model (40 poles)• Excitation = Bandlimited impulse train (Moorer 1975):

    K∑

    k=1

    cos(kω0t) =sin[(K + 1/2)ω0t]

    2 sin(ω0t/2)− 1

    2

    • Bow-position simulation = variable-delay differencing comb filter (directfrom physical interpretation)

    • Sound Example:Moving Bow-Stroke Example: (WAV) (MP3)

    (Bowing point moves toward the “bridge”)

    http://ccrma.stanford.edu/~jos/wav/cello82.wavhttp://ccrma.stanford.edu/~jos/mp3/cello82.mp3

  • Single-Reed Instruments

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 49 / 101

  • Schematic Physical Model

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 50 / 101

    Reed Bore

    Mouth

    Pressure

    Embouchure

    Tone-Hole Lattice Bell

    ( )np+

    ( )np−

    ( )npm

    • Main control variable = air pressure applied to reed• Secondary control variable = reed embouchure• Pressure waves = natural choice for simulation• Radiation ≈ “Omni” at LF, more directional at HF

    Bell ≈ power-complementary “cross-over” filter:

    • Low frequencies reflect (inverted)• High frequencies transmit• Cross-over frequency ≈ 1500 Hz for clarinet

    (where wavelength ≈ bore diameter)

  • Single-Reed Digital Waveguide Model (1986)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 51 / 101

    • Bore = bidirectional delay line (losses lumped)• Bore length = 1/4 wavelength in lowest register

    • Bell reflection ≈ -1 at low frequencies• Mouthpiece reflection ≈ +1

    • Reflection filter depends on first few open toneholes• In a simple implementation, the bore is “cut to a new length” for

    each pitch

  • Simplified Single-Reed Theory

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 52 / 101

    pm∆= mouth pressure (constant)

    pb∆= bore pressure (dynamic)

    p∆∆= pm − pb ∆= pressure drop across mouthpiece

    um∆= resulting flow into mouthpiece

    Rm(p∆)∆= reed-aperture impedance (measured)

  • Toward a Computational Reed Model

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 53 / 101

    Given:

    pm = Mouth pressure

    p+b = Incoming traveling bore pressure

    Find:

    p−b = Outgoing traveling bore pressure

    such that:

    0 = um + ub =p∆

    Rm(p∆)+

    p+b − p−bRb

    ,

    p∆∆= pm − pb = pm − (p+b + p−b )

    Solving for p−b is not immediate becauseRm depends on p∆ which depends on p

    b .

  • Graphical Solution Technique (1983)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 54 / 101

    Graphically solve:

    G(p∆) = p+∆ − p∆, p+∆

    ∆= pm − 2p+b

    where

    G(p∆)∆= Rb um(p∆) = Rb p∆/Rm(p∆)

    • Analogous to finding the “operating point” of a transistor byintersecting its “operating curve” with the “load line”

    determined by the load resistance.

    • Outgoing wave is then p−b = pm − p+b − p∆(p+∆)

  • Graphical Solution Technique Illustrated

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 55 / 101

    Iteratively solve:

    p+∆ − p∆ = Rb p∆/Rm(p∆), where p+∆∆= pm − 2p+b

    Solution can be pre-computed and stored in a look-up

    table ρ(p+∆)

  • Digital Waveguide Single Reed, Cylindrical Bore Model (1986)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 56 / 101

    Digital waveguide clarinet

    • Control variable = mouth half-pressure• Total reed cost = two subtractions, one multiply, and one table

    lookup per sample

  • Digital Waveguide Wind Instrument Sound Examples

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    • Schematic Model

    • Waveguide Model

    • Simplified Reed

    • Reed Computation

    • Graphical Solver

    • Example

    • Clarinet

    • Wind Examples

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital FiltersJulius Smith AES-2006 Masterclass – 57 / 101

    • STK Clarinet: (WAV) (MP3)Google search: STK clarinet

    • See also Faust-STK Clarinet (new)• Staccato Systems Slide Flute

    (based on STK flute, ca. 1995): (WAV) (MP3)

    • Yamaha VL1 “Virtual Lead” synthesizer demos (1994):• Shakuhachi: (WAV) (MP3)• Oboe and Bassoon: (WAV) (MP3)• Tenor Saxophone: (WAV) (MP3)

    http://ccrma.stanford.edu/~jos/wav/clarinet.wavhttp://ccrma.stanford.edu/~jos/mp3/clarinet.mp3http://www.google.com/search?q=STK+clarinethttp://ccrma.stanford.edu/~jos/wav/slideflute.wavhttp://ccrma.stanford.edu/~jos/mp3/slideflute.mp3http://ccrma.stanford.edu/~jos/wav/shakuhachi.wavhttp://ccrma.stanford.edu/~jos/mp3/shakuhachi.mp3http://ccrma.stanford.edu/~jos/wav/oboe-bassoon.wavhttp://ccrma.stanford.edu/~jos/mp3/oboe-bassoon.mp3http://ccrma.stanford.edu/~jos/wav/tenor-sax.wavhttp://ccrma.stanford.edu/~jos/mp3/tenor-sax.mp3

  • Bowed Strings

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 58 / 101

  • Schematic Physical Model

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 59 / 101

    A schematic model for bowed-string instruments.

    • Bow divides string into two sections• Primary control variable = bow velocity

    ⇒ velocity waves = natural choice of wave variable• Bow junction = nonlinear two-port• Must find velocity input to string (injected equally to left and

    right) such that friction force = string reaction force.

  • Bow-String Contact Physics

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 60 / 101

    Applied Force = Friction Curve × Differential Velocity‖

    Reaction Force = String Wave Impedance × Velocity Change

  • Friedlander-Keller

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 61 / 101

    Overlay of normalized bow-string friction curve Rb(v∆)/Rs with thestring “load line” v+∆ − v∆.

  • Bow-String Scattering Junction

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 62 / 101

    Friedlander-Keller diagram is solved when

    Rb(v∆) · v∆ = Rs ·[

    v+∆ − v∆]

    which implies

    v−s,r = v+s,l + ρ̂(v

    +∆) · v+∆

    v−s,l = v+s,r + ρ̂(v

    +∆) · v+∆

    where

    vs,r = transverse string velocity on the right of the bow

    vs,l = string velocity left of the bow (vs,l = vs,r)

    v+∆∆= vb − (v+s,r + v+s,l) = “incoming differential velocity”

    vb = bow velocity, and ρ̂(v+∆) is given by . . .

  • Bow-String Reflection Coefficient

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 63 / 101

    ρ̂(v+∆) =r(

    v∆(v+∆)

    )

    1 + r(

    v∆(v+∆)

    ) where

    r(v∆) = 0.25Rb(v∆)/Rs

    v∆ = vb − vs bow velocity minus string velocityvs = v

    +s,l + v

    s,l = v+s,r + v

    s,r = transverse string velocity

    Rs = wave impedance of string

    Rb(v∆) = friction coefficient for the bow against the string, i.e.,

    Fb(v∆) = Rb(v∆) · v∆

  • Simplified, Piecewise Linear Bow Table

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 64 / 101

    • Flat center portion corresponds to a fixed reflection coefficient“seen” by a traveling wave encountering the bow stuck against

    the string

    • Outer sections give a smaller reflection coefficientcorresponding to the reduced bow-string interaction force while

    the string is slipping under the bow

    • Hysteresis is neglected

  • Digital Waveguide Bowed Strings (1986)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 65 / 101

    • Reflection filter summarizes all losses per period(due to bridge, bow, finger, etc.)

    • Bow-string junction = memoryless lookup table(or segmented polynomial)

  • Bowed and Plucked Sound Examples by Esteban Maestre

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    • Schematic Model

    • Bow-String Contact

    • Bow-String Junction

    • Bow-String Reflection

    • Simplified Bow Table

    • Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 66 / 101

    • Synthetically Bowing STK’s Bowed.cpp• Finite-Width Thermal Friction Model for Bowed String• Waveguide Strings Coupled to Modal-Synthesis Bridge

    http://ccrma.stanford.edu/~esteban/demos/syntheticBowingSTK_1.wavhttp://ccrma.stanford.edu/~esteban/demos/violinThermal_1.mp4http://ccrma.stanford.edu/~esteban/demos/pluckedGuitar_1.wav

  • Electric Guitar with Overdrive

    and Feedback

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 67 / 101

  • Amplifier Distortion + Amplifier Feedback

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 68 / 101

    Sullivan 1990

    Post-distortion gain

    GainFeedbackAmplifier

    Nonlinear Distortion

    Amplifier Feedback Delay

    String 1

    String N

    Output...

    Direct-signal gain

    Pre-distortion gain

    Distortion output signal often further filtered by an amplifier cabinet

    filter, representing speaker cabinet, driver responses, etc.

  • Distortion Guitar Sound Examples

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 69 / 101

    (Stanford Sondius Project, ca. 1995)

    • Distortion Guitar: (WAV) (MP3)• Amplifier Feedback 1: (WAV) (MP3)• Amplifier Feedback 2: (WAV) (MP3)

    http://ccrma.stanford.edu/~jos/wav/gtr-dist-jimi.wavhttp://ccrma.stanford.edu/~jos/mp3/gtr-dist-jimi.mp3http://ccrma.stanford.edu/~jos/wav/ElectricGuitar.wavhttp://ccrma.stanford.edu/~jos/mp3/ElectricGuitar.mp3http://ccrma.stanford.edu/~jos/wav/gtr-dist-yes.wavhttp://ccrma.stanford.edu/~jos/mp3/gtr-dist-yes.mp3

  • Commuted Waveguide Synthesis

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 70 / 101

  • Commuted Synthesis of Acoustic Strings (1993)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 71 / 101

    Trigger Outpute(t) s(t) y(t)

    ResonatorStringExcitation

    Schematic diagram of a stringed musical instrument.

    Trigger OutputResonator StringExcitation

    Equivalent diagram in the linear, time-invariant case.

    Aggregate

    Excitation

    a(t)String

    x(t)OutputTrigger

    Use of an aggregate excitation given by the convolution of original

    excitation with the resonator impulse response.

  • Commuted Components

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 72 / 101

    Aggregate

    Excitation

    a(t)String

    x(t)OutputTrigger

    “Plucked Resonator” driving a String.

    y(t)Bridge

    Coupling

    s(t)Guitar

    Body

    Air

    Absorption

    Room

    Response Output

    Possible components of a guitar resonator.

  • Sound Examples

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 73 / 101

    Electric Guitar (Pick-Ups and/or Body-Model Added) (Stanford

    Sondius Project → Staccato Systems, Inc. → ADI, ca. 1995)

    • Example 1: (WAV) (MP3)• Example 2: (WAV) (MP3)• Example 3: (WAV) (MP3)• Virtual “wah-wah pedal”: (WAV) (MP3)

    STK Mandolin

    • STK Mandolin 1: (WAV) (MP3)• STK Mandolin 2: (WAV) (MP3)

    http://ccrma.stanford.edu/~jos/wav/gtr-jazz.wavhttp://ccrma.stanford.edu/~jos/mp3/gtr-jazz.mp3http://ccrma.stanford.edu/~jos/wav/gtr-jaz-2.wavhttp://ccrma.stanford.edu/~jos/mp3/gtr-jaz-2.mp3http://ccrma.stanford.edu/~jos/wav/gtr-jazz-3.wavhttp://ccrma.stanford.edu/~jos/mp3/gtr-jazz-3.mp3http://ccrma.stanford.edu/~jos/wav/gtr-wah.wavhttp://ccrma.stanford.edu/~jos/mp3/gtr-wah.mp3http://ccrma.stanford.edu/~jos/wav/mandolin1.wavhttp://ccrma.stanford.edu/~jos/mp3/mandolin1.mp3http://ccrma.stanford.edu/~jos/wav/mandolin2.wavhttp://ccrma.stanford.edu/~jos/mp3/mandolin2.mp3

  • Sound Examples

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 74 / 101

    More Recent Acoustic Guitar

    • Bach Prelude in E Major: (WAV) (MP3)• Bach Loure in E Major: (WAV) (MP3)• More examples• Yet more examples

    Virtual performance by Dr. Mikael Laurson, Sibelius Institute

    Virtual guitar by Helsinki Univ. of Tech., Acoustics Lab1

    1http://www.acoustics.hut.fi/

    http://ccrma.stanford.edu/~jos/wav/silence.wavhttp://ccrma.stanford.edu/~jos/wav/Prelude.wavhttp://ccrma.stanford.edu/~jos/mp3/Prelude.mp3http://ccrma.stanford.edu/~jos/wav/silence.wavhttp://ccrma.stanford.edu/~jos/wav/Loure.wavhttp://ccrma.stanford.edu/~jos/mp3/Loure.mp3http://ccrma.stanford.edu/~jos/wav/silence.wavhttp://www2.siba.fi/soundingscore/guitar.htmlhttp://www.acoustics.hut.fi/demos/dafx2000-synth/http://www2.siba.fi/soundingscore/MikaelsHomePage/MikaelsHomepage.htmlhttp://www.acoustics.hut.fi/

  • Commuted Synthesis of Linearized Violin

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 75 / 101

    e(n) x(n)s(n)Amplitude(n)

    Frequency(n)

    x(n)Amplitude(n)

    Frequency(n)

    a(n)

    a(n) x(n)

    Output

    Impulse-Response

    Train

    Amplitude(n)

    Frequency(n)

    a)

    b)

    c)

    Output

    Output

    String

    String

    e(n)

    String Resonator

    Resonator

    Impulse

    Train

    Impulse

    Train

    • Assumes ideal Helmholtz motion of string• Sound Examples (Stanford Sondius project, ca. 1995):

    • Bass: (WAV) (MP3)• Cello: (WAV) (MP3)• Viola 1: (WAV) (MP3)• Viola 2: (WAV) (MP3)

    • Violin 1: (WAV) (MP3)• Violin 2: (WAV) (MP3)• Duet: (WAV) (MP3)

    http://ccrma.stanford.edu/~jos/wav/bass.wavhttp://ccrma.stanford.edu/~jos/mp3/bass.mp3http://ccrma.stanford.edu/~jos/wav/cello.wavhttp://ccrma.stanford.edu/~jos/mp3/cello.mp3http://ccrma.stanford.edu/~jos/wav/viola.wavhttp://ccrma.stanford.edu/~jos/mp3/viola.mp3http://ccrma.stanford.edu/~jos/wav/viola2.wavhttp://ccrma.stanford.edu/~jos/mp3/viola2.mp3http://ccrma.stanford.edu/~jos/wav/violin.wavhttp://ccrma.stanford.edu/~jos/mp3/violin.mp3http://ccrma.stanford.edu/~jos/wav/violin2.wavhttp://ccrma.stanford.edu/~jos/mp3/violin2.mp3http://ccrma.stanford.edu/~jos/wav/vln-lin-cs.wavhttp://ccrma.stanford.edu/~jos/mp3/vln-lin-cs.mp3http://ccrma.stanford.edu/~jos/wav/silence.wav

  • Commuted Piano Synthesis (1995)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 76 / 101

    Hammer-string interaction pulses (force):

    5 10 15 20Time

    0.1

    0.2

    0.3

    0.4

    0.5

    Force

  • Synthesis of Hammer-String Interaction Pulse

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 77 / 101

    Time Time

    LowpassFilter

    Impulse Impulse Response

    • Faster collisions correspond to narrower pulses(nonlinear filter )

    • For a given velocity, filter is linear time-invariant

    • Piano is “linearized” for each hammer velocity

  • Multiple Hammer-String Interaction Pulses

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 78 / 101

    Superimpose several individual pulses:

    As impulse amplitude grows (faster hammer strike), output pulses

    become taller and thinner, showing less overlap.

  • Complete Piano Model

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 79 / 101

    Natural Ordering:

    Commuted Ordering:

    LPF1

    LPF2

    LPF3

    + String OutputTappedDelayLineTrigger

    vc

    Sound Board& Enclosure

    Impulse Response

    • Soundboard and enclosure are commuted• Only need a stored recording of their impulse response• An enormous digital filter is otherwise required

  • Piano and Harpsichord Sound Examples

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 80 / 101

    (Stanford Sondius Project, ca. 1995)

    • Piano: (WAV) (MP3)• Harpsichord 1: (WAV) (MP3)• Harpsichord 2: (WAV) (MP3)

    http://ccrma.stanford.edu/~jos/wav/pno-cs.wavhttp://ccrma.stanford.edu/~jos/mp3/pno-cs.mp3http://ccrma.stanford.edu/~jos/wav/harpsi-cs.wavhttp://ccrma.stanford.edu/~jos/mp3/harpsi-cs.mp3http://ccrma.stanford.edu/~jos/wav/Harpsichord.wavhttp://ccrma.stanford.edu/~jos/mp3/Harpsichord.mp3

  • More Recent Harpsichord Example

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    • Acoustic Strings

    • Sound Examples

    • Linearized Violin

    • Commuted Piano

    • Pulse Synthesis

    • Complete Piano

    • Sound Examples

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 81 / 101

    • Harpsichord Soundboard Hammer-Response: (WAV) (MP3)• Musical Commuted Harpsichord Example: (WAV) (MP3)• More examples

    References:

    • “Sound Synthesis of the Harpsichord Using a ComputationallyEfficient Physical Model”,

    • by Vesa Välimäki, Henri Penttinen, Jonte Knif, Mikael Laurson,and Cumhur Erkut, JASP-2004

    • Recent dissertation by Jack Perng (Stanford, Physics/CCRMA)

    http://ccrma.stanford.edu/~jos/wav/Cembalo-Body-Response.wavhttp://ccrma.stanford.edu/~jos/mp3/Cembalo-Body-Response.mp3http://ccrma.stanford.edu/~jos/wav/frobergergigue.wavhttp://ccrma.stanford.edu/~jos/mp3/frobergergigue.mp3http://www.acoustics.hut.fi/publications/papers/jasp-harpsy/

  • Digital Waveguide Mesh

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 82 / 101

  • 2D Waveguide Mesh

    Julius Smith AES-2006 Masterclass – 83 / 101

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1 z−1

    4-portScatteringJunction

    z−1

    z−1

    z−1

    z−1

    z−1 z−1 z−1 z−1 z−1 z−1

    At each junction:

    VJ =in1 + in2 + in3 + in4

    2outk = VJ − ink, k = 1, 2, 3, 4

    Sound example:

    • Gongs (lossless nonlinear rim byPierce and Van Duyne

    JASA-1997)

    http://ccrma.stanford.edu/~jos/wav/gongs.wav

  • Recent Mesh Topic: Virtual Quadratic Residue Diffusers

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    • 2D Waveguide Mesh

    • QR Diffuser

    • Example QRD

    • QRD Mesh Boundary

    • Scattering Levels

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 84 / 101

    Manfred Schroeder’s Quadratic Residue Diffuser for N = 17:

    N

    dn

    w

    • Thin vertical lines = rigid separators between wells.• Well depths are N − sn, where

    sn = n2

    (mod N ), n ∈ Z

    is a quadratic residue sequence

  • Example QRD

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    • 2D Waveguide Mesh

    • QR Diffuser

    • Example QRD

    • QRD Mesh Boundary

    • Scattering Levels

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 85 / 101

    For N = 17, we have

    s = [0, 1, 4, 9, 16, 8, 2, 15, 13, 13, 15, 2, 8, 16, 9, 4, 1; 0, 1, . . .]

    Reflection magnitude equal in N equally spaced directions at the“design wavelength” (and “not bad” in between)

  • QRD Termination of a 2D Digital Waveguide Mesh

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    • 2D Waveguide Mesh

    • QR Diffuser

    • Example QRD

    • QRD Mesh Boundary

    • Scattering Levels

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 86 / 101

    (Lee-Smith ICMC-2004)

    J

    J

    J J J J J J

    J J

    JJ J

    JJJ J

    J

  • Scattering levels from a Schroeder diffuser (solid) and a

    straight boundary (dashed)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    • 2D Waveguide Mesh

    • QR Diffuser

    • Example QRD

    • QRD Mesh Boundary

    • Scattering Levels

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 87 / 101

    10

    20

    30

    30

    60

    90

    0

    Animations: https://ccrma.stanford.edu/˜kglee/2dmesh QRD/

    https://ccrma.stanford.edu/~kglee/2dmesh_QRD/index.html

  • Horn Filter Design

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    Finite Differences

    Virtual Analog

    Wave Digital Filters

    Julius Smith AES-2006 Masterclass – 88 / 101

  • Bore Profile Reconstruction from Measured Trumpet Re-

    flectance

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 89 / 101

    0 0.2 0.4 0.6 0.8 1 1.23

    4

    5

    6

    7

    8

    9

    10

    distance (m)

    radiu

    s (

    mm

    )

    empiricalmodel

    • Inverse scattering applied to pulse-reflectometry data to fitpiecewise-cylindrical model (like LPC model)

    • Bore profile reconstruction is reasonable up to bell• The bell is not physically equivalent to a piecewise-cylindrical

    acoustic tube, due to

    • complex radiation impedance,• conversion to higher order transverse modes

  • Trumpet-Bell Impulse Response Computed from Estimated

    Piecewise-Cylindrical Model

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 90 / 101

    0 1 2 3 4 5 6 7 8 9-0.025

    -0.02

    -0.015

    -0.01

    -0.005

    0

    0.005

    0.01

    0.015

    time (ms)

    Am

    plit

    ud

    e

    Bell Reflection Impulse Response

    • From pulse reflectometry on trumpet with no mouthpiece• Bore profile is reconstructed, smoothed, and segmented• Impulse response of “bell segment” = “ideal filter”

  • Trumpet-Bell Filter Design Problem

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 91 / 101

    • At fs = 44.1 kHz, impulse-response length ≈ 400−−600samples

    • A length 400 FIR bell filter is expensive!• Convert to IIR? Hard because

    ◦ Phase (resonance tunings) must be preserved◦ Magnitude (resonance Q) must be preserved◦ Rise time ≈ 150 samples◦ Phase-sensitive IIR design methods perform poorly

  • Measured Trombone Bell Reflectance

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 92 / 101

    0 1 2 3 4 5 6 7

    −0.015

    −0.01

    −0.005

    0

    0.005

    time (ms)

    trombone bell

  • Idea! (1998)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 93 / 101

    • Break up impulse response into exponential or polynomialsegments

    • Exponential and polynomial impulse-responses can be designedusing Truncated IIR (TIIR) Filters

    • Google search: TIIR Horns

    0 50 100 150 200 250 300 350 400 450−0.025

    −0.02

    −0.015

    −0.01

    −0.005

    0

    0.005

    0.01

    0.015

    0.02

    Time (samples)

    Ampli

    tude

    Bell Impulse Response Segmentation

    seg1seg2ncs3ncs4

    http://www.google.com/search?q=TIIR+Horns

  • Four-Exponential Fit to Estimated Trumpet-Bell Filter (Exp-4)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 94 / 101

    0 50 100 150 200 250 300 350 400 450−0.025

    −0.02

    −0.015

    −0.01

    −0.005

    0

    0.005

    0.01

    0.015

    0.02

    Time (samples)

    Ampli

    tude

    Time−Domain Fit with Four Offset−Exponential Segments

    idealexp1exp2exp3exp4

    Exp-4 Impulse Response Fit

  • Two Exponentials Connected by a Cubic Spline Measured

    Trumpet Data (Exp2-S3)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 95 / 101

    0 50 100 150 200 250 300−0.025

    −0.02

    −0.015

    −0.01

    −0.005

    0

    0.005

    0.01

    0.015

    0.02

    Time (samples)

    Response Segmentation

    seg1seg2seg3

  • Two Exponentials Followed by a 6th-Order IIR Filter Designed

    by Steiglitz McBride Algorithm (Exp2-SM6)

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 96 / 101

    0 50 100 150 200 250 300 350 400 450−0.025

    −0.02

    −0.015

    −0.01

    −0.005

    0

    0.005

    0.01

    0.015

    0.02

    Time (samples)

    Response Segmentation

    seg1seg2tail

  • Exp2-SM6 Amplitude Response Fit

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 97 / 101

    0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5−100

    −90

    −80

    −70

    −60

    −50

    −40

    −30

    −20

    −10

    0

    Normalized Frequency

    Mag

    nitu

    de (d

    B)

    Magnitude Fit over Entire Nyquist Band

    IdealApproximation

  • Exp2-SM6 Low-Frequency Zoom

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR

    Finite Differences

    Virtual AnalogJulius Smith AES-2006 Masterclass – 98 / 101

    0 0.01 0.02 0.03 0.04 0.05 0.06 0.07−50

    −45

    −40

    −35

    −30

    −25

    −20

    −15

    −10

    −5

    0

    Normalized Frequency

    Mag

    nitu

    de (d

    B)

    Magnitude Fit

    IdealApproximation

  • Exp2-SM6 Group Delay Fit

    Overview

    Early Voice Models

    Digital Voice Models

    Karplus Strong

    Digital Waveguides

    Single Reeds

    Bowed Strings

    Distortion Guitar

    Commuted Synthesis

    Digital Waveguide Mesh

    Horn Filter Design

    • Bore Profile

    • Impulse Response

    • Bell Filter Design

    • Bell Reflectance

    • Idea! (1998)

    • Four Exponentials

    • Exponentials & Cubic

    • Exponentials & SM

    • Example

    • One-Pole TIIR