Physical Modeling Sound Synthesis - CCRMAjos/pdf/AES-Masterclass.pdf · 2020. 10. 30. · Early...
Transcript of Physical Modeling Sound Synthesis - CCRMAjos/pdf/AES-Masterclass.pdf · 2020. 10. 30. · Early...
-
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