History and Practice of Digital Sound Synthesis

History and Practice of Digital Sound Synthesis Julius Smith CCRMA, Stanford University AES-2006 Heyser Lecture October 6, 2006 Julius Smith AES-200...
6 downloads 1 Views 4MB Size
History and Practice of Digital Sound Synthesis Julius Smith CCRMA, Stanford University AES-2006 Heyser Lecture October 6, 2006

Julius Smith

AES-2006 Heyser Lecture – 1 / 84

Overview Early Digital Synthesis Spectral Modeling Physical Modeling Summary

Overview

Julius Smith

AES-2006 Heyser Lecture – 2 / 84

Outline Overview

• Outline • CCRMA Perspective Early Digital Synthesis Spectral Modeling Physical Modeling Summary

Digital sound synthesis approaches in approximate historical order:

• • • • • • •

Wavetable (one period) Subtractive Additive Frequency Modulation (FM) Sampling Spectral Modeling Physical Modeling

Some connections with audio coding will be noted

Emphasis:

• Sound examples • Block diagrams • Historical notes Julius Smith

AES-2006 Heyser Lecture – 3 / 84

CCRMA Perspective Overview

• Outline • CCRMA Perspective Early Digital Synthesis Spectral Modeling Physical Modeling Summary

The Knoll, Stanford University

Julius Smith

AES-2006 Heyser Lecture – 4 / 84

Overview Early Digital Synthesis Spectral Modeling Physical Modeling Summary

Early Digital Sound Synthesis

Julius Smith

AES-2006 Heyser Lecture – 5 / 84

Wavetable Synthesis in Music I-V (1957-1969) Overview Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 6 / 84

Music V Scripting Language (“Note Cards”) Overview Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling Summary

• Essentially Supported in MPEG-4 Structured Audio Orchestra • Julius Smith

Language (SAOL) (Music V → csound → SAOL) “Encoding sounds” as “instruments” is hard, in general

AES-2006 Heyser Lecture – 7 / 84

Kelly-Lochbaum Vocal Tract Model Overview



Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling

e(n)

Glottal Pulse Train or Noise e(n)

1 + k1 z− 1 2 k1

(Unused Allpass Output)

− k1



R1 z− 1 2

1 − k1

y(n)

1 + kM z− 1 2 kM



− kM

Speech Output y(n)

RM z− 1 2

1 − kM

Kelly-Lochbaum Vocal Tract Model (Piecewise Cylindrical)

Summary

John L. Kelly and Carol Lochbaum (1962)

Julius Smith

AES-2006 Heyser Lecture – 8 / 84

Sound Example Overview

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

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling

• • • • • •

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”

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 9 / 84

Classic Additive-Synthesis Analysis (Heterodyne Comb) Overview Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling Summary

John Grey 1975 — CCRMA Tech. Reports 1 & 2 (CCRMA “STANM” reports — available online) Julius Smith

AES-2006 Heyser Lecture – 10 / 84

Classic Additive-Synthesis (Sinusoidal Oscillator Envelopes) Overview Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling Summary

John Grey 1975 — CCRMA Tech. Reports 1 & 2 (CCRMA “STANM” reports — available online) Julius Smith

AES-2006 Heyser Lecture – 11 / 84

Classic Additive Synthesis Diagram Overview

A1 (t) f1 (t) A2 (t) f2 (t) A3 (t) f3 (t) A4 (t) f4 (t)

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling

noise

Σ

FIR Physical Modeling Summary

y(t) =

4 X i=1

Julius Smith

Ai (t) sin

Z

0

t

 ωi (t)dt + φi (0) AES-2006 Heyser Lecture – 12 / 84

Classic Additive-Synthesis Examples Overview Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling

• • • • • • • • •

Bb Clarinet Eb Clarinet Oboe Bassoon Tenor Saxophone Trumpet English Horn French Horn Flute

• All of the above • Independently synthesized set

Summary

(Synthesized from original John Grey data)

Julius Smith

AES-2006 Heyser Lecture – 13 / 84

Frequency Modulation (FM) Synthesis Overview

FM synthesis is normally used as a spectral modeling technique.

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling Summary

Julius Smith

• Discovered and developed (1970s) by John M. Chowning • •

(CCRMA Founding Director) Key paper: JAES 1973 (vol. 21, no. 7) Commercialized by Yamaha Corporation:

◦ DX-7 synthesizer (1983) ◦ OPL chipset (SoundBlaster PC sound card) ◦ Cell phone ring tones • On the physical modeling front, synthesis of vibrating-string waveforms using finite differences started around this time: Hiller & Ruiz, JAES 1971 (vol. 19, no. 6)

AES-2006 Heyser Lecture – 14 / 84

FM Formula Overview

x(t) = Ac sin[ωc t + φc + Am sin(ωm t + φm )]

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

where

(Ac , ωc , φc ) specify the carrier sinusoid (Am , ωm , φm ) specify the modulator sinusoid Can also be called phase modulation

Spectral Modeling Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 15 / 84

Simple FM “Brass” Patch (1970–) Overview Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

Jean-Claude Risset observation (1964–1969): Brass bandwidth ∝ amplitude

fm = f0 g A

F

fc = f0

Spectral Modeling Physical Modeling

A

F

Summary

Out

Julius Smith

AES-2006 Heyser Lecture – 16 / 84

FM Harmonic Amplitudes (Bessel Function of First Kind) Overview

Harmonic number k , FM index β :

Early Digital Synthesis

Spectral Modeling

1

0.5

k

J (β)

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

0 0

Physical Modeling Summary

2 −0.5 0

4 5

6

10 15

8

20 25 30

10

Order k

Argument β

Julius Smith

AES-2006 Heyser Lecture – 17 / 84

Frequency Modulation (FM) Examples Overview

All examples by John Chowning unless otherwise noted:

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling Physical Modeling Summary

• FM brass synthesis ◦ Low Brass example ◦ Dexter Morril’s FM Trumpet • FM singing voice (1978) Each formant synthesized using an FM operator pair (two sinusoidal oscillators)

◦ Chorus ◦ Voices ◦ Basso Profundo • Other early FM synthesis ◦ Clicks and Drums ◦ Big Bell ◦ String Canon

Julius Smith

AES-2006 Heyser Lecture – 18 / 84

FM Voice

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

FM voice synthesis can be viewed as compressed modeling of spectral formants

Carrier 2

Carrier 1

Carrier 3

Magnitude

Overview

Spectral Modeling Physical Modeling Summary

0

Frequency

f

Modulation Frequency (all three)

Julius Smith

AES-2006 Heyser Lecture – 19 / 84

Sampling Synthesis History Overview

• 1979 - Fairlight Computer Music Instrument - 8-bit

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example Spectral Modeling

◦ ◦ ◦ ◦ ◦

First commercial sampler Eight voices, 8 bits, 64 KB (4 sec) RAM, 16 kHz (mono) Editing, looping, mixing One could draw waveforms and additive-synthesis amplitude envelopes (for each harmonic) with a light pen $25,000–$36,000!

• 1981 - E-mu Systems Emulator ◦ First “affordable” sampler ($10,000) ◦ Eight voices, 128 K RAM, 8-bit, 80 lb.

Physical Modeling Summary

• 1986 - Ensoniq Mirage ◦ Breakthrough price-point ($1695) ◦ Eight voices, 144 K RAM, 8-bit

Julius Smith

AES-2006 Heyser Lecture – 20 / 84

Modern Sampled Piano Overview

Example:1

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

40 Gigabytes on ten DVDs (three sampled pianos) Every key sampled 4–10 “velocity layers” Separate recordings with soft pedal down Separate “release” recordings, for multiple striking velocities

• • • • •

Spectral Modeling Physical Modeling Summary

1

Julius Smith

Synthogy Ivory, $349 (Electronic Musician, October 2006) AES-2006 Heyser Lecture – 21 / 84

Fundamental Problem with Sampling Synthesis Overview

Piano timbre is determined by

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

• key number (1 byte) • key velocity (2 bytes more than enough) • pedal state (1 bit [or byte] per pedal) Piano control is relatively low-dimensional:

• Less than six bytes of information per note played • No continuous controls (typically) • Ratio of total sampled data to one note of control data

≈ one billion

Spectral Modeling Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 22 / 84

Now consider bowed strings Overview

Control parameters:

Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

• • • • • • • • •

Left-hand finger position(s) Left-hand vibrato Bow velocity Bow force Bow position Bow angle Shoulder damping Instrument orientation Player motion (within a room)

Spectral Modeling Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 23 / 84

Difficulty of sampling bowed strings Overview Early Digital Synthesis

• Music V • KL Music • “Daisy” • Additive Analysis • Additive Synthesis • FM Synthesis • FM Formula • FM Patch • FM Spectra • FM Examples • FM Voice • Sampling Synthesis • Modern Example

• Bowed-string control is infinite-dimensional in principle • Many time-varying functions — “gestures” • • •

(we counted more than 10) Complete sampling of bowed strings on the level of pianos has apparently never been done Rule-driven navigation of the most useful recorded playing regimes has worked well (e.g., Synful Orchestra) Model-based approaches greatly reduce data requirements:

◦ Spectral models (inspired by sound perception) ◦ Physical models (model the sound source)

Spectral Modeling Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 24 / 84

Overview Early Digital Synthesis Spectral Modeling Physical Modeling Summary

Spectral Modeling Synthesis (Historical Summary)

Julius Smith

AES-2006 Heyser Lecture – 25 / 84

Classic Vocoder Analysis & Resynthesis (Dudley 1939) magnitude, or magnitude and phase extraction

Overview Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future Physical Modeling

A

x0 (t)

x ˆ0 (t)

f

x(t)

A

x1 (t) f

A

Data Compression, Transmission, Storage, Manipulation, Noise reduction, ...

xN −1

x ˆ1 (t)

x ˆ(t)

x ˆN −1

f

Analysis

Processing

Synthesis

Summary

Julius Smith

AES-2006 Heyser Lecture – 26 / 84

Phase Vocoder Channel Model Analysis Model

Overview

Synthesis Model

Early Digital Synthesis

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future Physical Modeling Summary

Julius Smith

ak

Channel Filter Response

Spectral Modeling

ak(t)

A F Sine Osc

∆ωk 0

ωk

ωk+∆ωk(t)

ω Out

• Early “channel vocoder” implementations (hardware) only • •



measured amplitude ak (t) (Dudley 1939) The “phase vocoder” (Flanagan and Golden 1966) added phase tracking in each channel Portnoff (1976) developed the FFT phase vocoder, which replaced the heterodyne comb in computer-music additive-synthesis analysis (James A. Moorer) Inverse FFT synthesis (Rodet and Depalle 1992) gave faster sinusoidal oscillator banks AES-2006 Heyser Lecture – 27 / 84

Amplitude and Frequency Envelopes Overview

ak (t)

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

∆ωk (t) = φ˙k (t)

t

0

t

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 28 / 84

Channel Vocoder Sound Examples Overview

• Original

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

• 10 channels, sine carriers • 10 channels, narrowband-noise carriers • 26 channels, sine carriers • 26 channels, narrowband-noise carriers • 26 channels, narrowband-noise carriers, channels reversed • Phase Vocoder: Identity system in absence of modifications • The FFT Phase Vocoder next transitioned to the Short-Time Fourier Transform (STFT) (Allen and Rabiner 1977)

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 29 / 84

Tracking Spectral Peaks in the Short-Time Fourier Transform Overview

atan

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

Phases

s(t)

FFT

Frequencies

dB mag

Peak tracking

Quadratic Peak Interpolation

window w(n) Amplitudes

• STFT peak tracking at CCRMA: mid-1980s (PARSHL program) • Motivated by vocoder analysis of piano tones • Influences: STFT (Allen and Rabiner 1977), •

ADEC (1977), MAPLE (1979) Independently developed for speech coding by McAulay and Quatieri at Lincoln Labs

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 30 / 84

Example Spectral Trajectories Overview

f

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

t

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 31 / 84

Sines + Noise Synthesis (1989) PSfrag Overview

A1 (t) f1 (t) A2 (t) f2 (t) A3 (t) f3 (t) A4 (t) f4 (t)

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future Physical Modeling Summary

Julius Smith

white noise

u(t)

y(t) =

P

filter(t)

ht (τ ) 4 P

i=1

Ai (t) cos

hR t

i 0 ωi (t)dt + φi (0) + (ht ∗ u)(t) AES-2006 Heyser Lecture – 32 / 84

Sines + Noise Sound Examples Overview

Xavier Serra 1989 thesis demos (Sines + Noise signal modeling)

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

• Piano ◦ ◦ ◦ ◦

Original Sinusoids alone Residual after sinusoids removed Sines + noise model

• Voice ◦ ◦ ◦ ◦

Original Sinusoids Residual Synthesis

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 33 / 84

Musical Effects with Sines+Noise Models (Serra 1989) Overview

• Piano Effects

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

◦ Pitch downshift one octave ◦ Pitch flattened ◦ Varying partial stretching • Voice Effects ◦ Frequency-scale by 0.6 ◦ Frequency-scale by 0.4 and stretch partials ◦ Variable time-scaling, deterministic to stochastic

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 34 / 84

Cross-Synthesis with Sines+Noise Models (Serra 1989) Overview

• Voice “modulator”

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

• Creaking ship’s mast “carrier” • Voice-modulated creaking mast • Same with modified spectral envelopes

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 35 / 84

Sines + Transients Sound Examples (Serra 1989) Overview Early Digital Synthesis

In this technique, the sinusoidal sum is phase-matched at the cross-over point only (with no cross-fade).

Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

• Marimba ◦ Original ◦ Sinusoidal model ◦ Original attack, followed by sinusoidal model • Piano ◦ Original ◦ Sinusoidal model ◦ Original attack, followed by sinusoidal model

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 36 / 84

Multiresolution Sines + Noise + Transients (Levine 1998) Overview

Why Model Transients Separately?

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

• • • • • •

Sinusoids efficiently model spectral peaks over time Filtered noise efficiently models spectral residual vs. t Neither is good for abrupt transients in the waveform Phase-matched oscillators are expensive More efficient to switch to a transient model during transients Need sinusoidal phase matching at the switching times

Transient models:

• • • •

Original waveform slice (1988) Wavelet expansion (Ali 1996) MPEG-2 AAC (with short window) (Levine 1998) Frequency-domain LPC (time-domain amplitude envelope) (Verma 2000)

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 37 / 84

Time Scale Modification of Sines + Noise + Transients Models

original signal

Spectral Modeling

sines + noise

sines + noise

sines + noise

transients

Physical Modeling

time-scaled signal

sines + noise

transients

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

sines + noise

transients

Early Digital Synthesis

transients

Overview

sines + noise

time

Time-Scale Modification (TSM) becomes well defined:

• • • •

Transients are translated in time Sinusoidal envelopes are scaled in time Noise-filter envelopes also scaled in time Dual of TSM is frequency scaling

Summary

Julius Smith

AES-2006 Heyser Lecture – 38 / 84

Sines + Noise + Transients Time-Frequency Map 16

Overview 14

Early Digital Synthesis

Physical Modeling

frequency [kHz]

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

12 10 8 6 4 2 0

0

50

100

150

200

250

0

50

100

150

200

250

1

amplitude

Spectral Modeling

0.5 0 −0.5 −1

time [milliseconds]

(Levine 1998)

Summary

Julius Smith

AES-2006 Heyser Lecture – 39 / 84

Overview Early Digital Synthesis

transient

Corresponding Analysis Windows

low octave

amplitude

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

middle octave high octave

Spectral Modeling

Physical Modeling

0 Summary

Julius Smith

50

100

150

200

250

time [milliseconds]

AES-2006 Heyser Lecture – 40 / 84

Quasi-Constant-Q (Wavelet) Time-Frequency Map 16

Overview

14

Early Digital Synthesis

frequency [kHz]

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

12 10 8 6 4 2 0

4 0 x 10

50

100

150

200

250

0

50

100

150

200

250

2

amplitude

Spectral Modeling

1 0 −1 −2

time [milliseconds]

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 41 / 84

Bark-Band Noise Modeling at High Frequencies (Levine 1998) Overview

85

Early Digital Synthesis

80 Spectral Modeling

Physical Modeling Summary

Julius Smith

75 70 65

magnitude [dB]

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

60 55 50 45 40 35 30

0

500

1000

1500

2000

2500

3000

3500

4000

4500

frequency [Hz]

AES-2006 Heyser Lecture – 42 / 84

Amplitude Envelope for One Noise Band Overview

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

Original Mag. [dB]

Spectral Modeling

70

60

50

40

50

100

150

200

250

300

350

0

50

100

150

200

250

300

350

75 70 65 60 55 50 45

Physical Modeling

0

80

LSA Mag. [dB]

Early Digital Synthesis

80

time [milliseconds] Summary

Julius Smith

For more information, see Scott Levine’s thesis.2 2 AES-2006 Heyser Lecture – 43 / 84 http://ccrma.stanford.edu/~scottl/thesis.html

Sines + Noise + Transients Sound Examples Overview Early Digital Synthesis

Scott Levine Thesis Demos (Sines + Noise + Transients at 32 kbps) (http://ccrma.stanford.edu/~scottl/thesis.html)

Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

Mozart’s Le Nozze di Figaro

• Original • Compressed using MPEG-AAC at 32 kbps • Compressed using sines+transients+noise at 32 kbps • • • •

Multiresolution sinusoids alone Residual Bark-band noise Transform-coded transients (AAC) Bark-band noise above 5 kHz

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 44 / 84

Rock Example Overview Early Digital Synthesis

Scott Levine Thesis Demos (Sines + Noise + Transients at 32 kbps) (http://ccrma.stanford.edu/~scottl/thesis.html)

Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

“It Takes Two” by Rob Base & DJ E-Z Rock

• Original • MPEG-AAC at 32 kbps • Sines+transients+noise at 32 kbps • • • •

Multiresolution sinusoids Residual Bark-band noise Transform-coded transients (AAC) Bark-band noise above 5 kHz

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 45 / 84

Time Scale Modification using Sines + Noise + Transients Overview Early Digital Synthesis

Scott Levine Thesis Demos (Sines + Noise + Transients at 32 kbps) (http://ccrma.stanford.edu/~scottl/thesis.html)

Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

Time-Scale Modification (pitch unchanged)

• S+N+T time-scale factors [2.0, 1.6, 1.2, 1.0, 0.8, 0.6, 0.5]

S+N+T Pitch Shifting (timing unchanged)

• Pitch-scale factors [0.89, 0.94, 1.00, 1.06, 1.12]

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 46 / 84

Spectral Modeling History Highlights

• • • • • • • • • • •

Fourier’s theory (1822) Teleharmonium (1906) Hammond organ (1930s) Channel Vocoder (1939) Phase Vocoder (1966) “Additive Synthesis” (1969) FFT Phase Vocoder (1976) Sinusoidal Modeling (1977,1979,1985) Sines+Noise (1989) Sines+Transients (1989) Sines+Noise+Transients (1998)

Julius Smith

Perceptual audio coding:

• • • • • • •

Princen-Bradley filterbank (1986) K. Brandenburg thesis (1989) Auditory masking usage Dolby AC2 Musicam ASPEC MPEG-I,II,IV (incl. S+N+T “parametric sounds”)

AES-2006 Heyser Lecture – 47 / 84

Future Prospects Overview

Observations:

Early Digital Synthesis Spectral Modeling

• Vocoder • Vocoder Examples • Sinusoidal Modeling • Spectral Trajectories • Sines + Noise • S+N Examples • S+N FX • S+N XSynth • Sines + Transients • S + N + Transients • S+N+T TSM • S+N+T Freq Map • S+N+T Windows • HF Noise Modeling • HF Noise Band • S+N+T Examples • SM Summary • Spec Future

• Sinusoidal modeling of sound is “Unreasonably Effective” • Basic “auditory masking” discards ≈ 90% information • Interesting neuroscience observation: “... most neurons in the primary auditory cortex A1 are silent most of the time ...”



(from “Sparse Time-Frequency Representations”, Gardner and Magnesco, PNAS:103(16), April 2006) What is a true and correct “psychospectral model” for sound?

◦ The cochlea of the ear is a real-time spectrum analyzer ◦ How is the “ear’s spectrogram” represented at higher levels?

Physical Modeling Summary

Julius Smith

AES-2006 Heyser Lecture – 48 / 84

Overview Early Digital Synthesis Spectral Modeling Physical Modeling Summary

Physical Modeling Synthesis (Historical Summary)

Julius Smith

AES-2006 Heyser Lecture – 49 / 84

Kelly-Lochbaum Vocal Tract Model Overview



Early Digital Synthesis Spectral Modeling

e(n)

y(n)

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Glottal Pulse Train or Noise e(n)

1 + k1 z− 1 2 k1

(Unused Allpass Output)

− k1

R1 z− 1 2

1 − k1



1 + kM z− 1 2 kM



− kM

Speech Output y(n)

RM z− 1 2

1 − kM

Kelly-Lochbaum Vocal Tract Model (Piecewise Cylindrical)

John L. Kelly and Carol Lochbaum (1962)

Summary

Julius Smith

AES-2006 Heyser Lecture – 50 / 84

Digital Waveguide Models (1985) Overview

Lossless digital waveguide



= bidirectional delay line

Early Digital Synthesis

at some wave impedance R

Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

z−N

R z−N Useful for efficient models of

• • • •

strings bores plane waves conical waves

Summary

Julius Smith

AES-2006 Heyser Lecture – 51 / 84

Signal Scattering Overview

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

Early Digital Synthesis

R − R1 k1 = 2 R2 + R1

Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

1 + k1 z−N R1

z−N k1

− k1

z−N

R2 z−N

1 − k1

If the wave impedance changes every spatial sample, the Kelly-Lochbaum vocal-tract model results.

Summary

Julius Smith

AES-2006 Heyser Lecture – 52 / 84

Ideal Plucked String (Displacement Waves) Overview Early Digital Synthesis Spectral Modeling

+

+

y (n)

y (n-N/2)

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

“Bridge”

-1

y-(n) (x = 0)

(x = Pluck Position)

-1

“Nut” y-(n+N/2)

(x = L)

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 53 / 84

Ideal Struck String (Velocity Waves) Overview Early Digital Synthesis Spectral Modeling

c

v+(n)

v+(n-N/2)

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

“Bridge”

-1

v-(n) (x = 0)

(x = Hammer Position)

-1

c

“Nut” v-(n+N/2)

(x = L)

Hammer strike = momentum transfer = velocity step:

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 54 / 84

Karplus-Strong (KS) Algorithm (1983) Overview Early Digital Synthesis Spectral Modeling

+

Output y (n)

+

y (n-N)

N samples delay

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

1/2 1/2

z -1

• Discovered (1978) as “self-modifying wavetable synthesis” • Wavetable is preferably initialized with random numbers

Summary

Julius Smith

AES-2006 Heyser Lecture – 55 / 84

Karplus-Strong Sound Examples Overview

• “Vintage” 8-bit sound examples:

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

• Original Plucked String: (WAV) (MP3) • Drum: (WAV) (MP3) • Stretched Drum: (WAV) (MP3)

Summary

Julius Smith

AES-2006 Heyser Lecture – 56 / 84

EKS Algorithm (Jaffe-Smith 1983) Overview Early Digital Synthesis

Hp (z)

z −N

Hβ (z)

HL (z)

Spectral Modeling

Hρ (z)

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Hs (z)

Hd (z)

= pitch period (2× string length) in samples 1−p = pick-direction lowpass filter Hp (z) = −1 1 − pz N

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) = HL (z) =

ρ(N ) − z −1 = first-order string-tuning allpass filter 1 − ρ(N ) z −1 1 − RL = dynamic-level lowpass filter 1 − RL z −1

Summary

Julius Smith

AES-2006 Heyser Lecture – 57 / 84

STK EKS Sound Examples Overview Early Digital Synthesis Spectral Modeling

• Synthesis Tool Kit (STK) by Perry Cook, Gary Scavone, and others — distributed by CCRMA: Google search: STK ToolKit

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

STK Plucked String: (WAV) (MP3)

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 58 / 84

EKS Sound Example (1988) Overview

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

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

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

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

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 59 / 84

Digital Waveguide Single Reed, Cylindrical Bore Model (1986) Overview Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Mouth Pressure pm ( n ) 2

p−b ( n )

hm

-

Reed Table ρˆ

*

Reflection Filter h+∆

-

Embouchure Offset

Output Filter

Reed to Bell Delay

Bell to Reed Delay

p+b ( n )

Reed

Bore

Bell

Digital waveguide clarinet

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 60 / 84

Digital Waveguide Wind Instrument Sound Examples Overview

• STK Clarinet: (WAV) (MP3)

Early Digital Synthesis

Google search: STK clarinet

Spectral Modeling

◦ Synthesis Tool Kit (STK) by Perry Cook, Gary Scavone, and

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

others — distributed by CCRMA: Google search: STK ToolKit

• 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)

Summary

Julius Smith

AES-2006 Heyser Lecture – 61 / 84

Digital Waveguide Bowed Strings (1986) Bow Force Bow Velocity

Overview Early Digital Synthesis

Nut to Bow Delay vb

Physical Modeling

-1

Nut

-

v+∆

Bow to Nut Delay

String

Body Filter

Bow to Bridge Delay

Spectral Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

− vs, r

+ vs, l

ρˆ Bow Table

+ vs, r − vs, l

Bow

Reflection Filter

*

Bridge to Bow Delay

String

BridgeBody

Air

• Reflection filter summarizes all losses per period •

(due to bridge, bow, finger, etc.) Bow-string junction = memoryless lookup table (or segmented polynomial)

Summary

Julius Smith

AES-2006 Heyser Lecture – 62 / 84

“Electric Cello” Sound Examples (Peder Larson) Overview

• Staccato Notes: (WAV) (MP3)

Early Digital Synthesis Spectral Modeling



(short strokes of high bow pressure, as from a bouncing bow) Bach’s First Suite for Unaccompanied Cello: (WAV) (MP3)

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding? Summary

Julius Smith

AES-2006 Heyser Lecture – 63 / 84

Soft Clipper Overview Early Digital Synthesis

f (x) =

Spectral Modeling

x−

  

Physical Modeling

x ≤ −1 x3 3 ,

2 3,

−1 ≤ x ≤ 1 x≥1 3

x=−1:0.01:1; plot([−(2/3)*ones(1,100), x−x. /3, (2/3)*ones(1,100)]) 0.8

0.6

0.4

0.2

f(x(n))

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

 2 − ,    3

0

−0.2

−0.4

−0.6

−0.8 −2

−1.5

−1

−0.5

0 x(n)

0.5

1

1.5

2

Summary

Julius Smith

AES-2006 Heyser Lecture – 64 / 84

Amplifier Distortion + Amplifier Feedback Overview

Sullivan 1990

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Pre-distortion output level String 1 Nonlinear Distortion

.. .

Output Signal Pre-distortion gain

String N

Distortion output level Amplifier Feedback Gain

Amplifier Feedback Delay

Distortion output signal often further filtered by an amplifier cabinet filter, representing speaker cabinet, driver responses, etc.

Summary

Julius Smith

AES-2006 Heyser Lecture – 65 / 84

Distortion Guitar Sound Examples Overview

(Stanford Sondius Project, ca. 1995)

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 66 / 84

Commuted Synthesis of Acoustic Strings (1993) Overview Early Digital Synthesis

e(t) Trigger

y(t)

s(t) String

Excitation

Resonator

Output

Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Schematic diagram of a stringed musical instrument.

Trigger

Excitation

Resonator

String

Output

Equivalent diagram in the linear, time-invariant case.

Trigger

Aggregate Excitation

a(t)

x(t) String

Output

Use of an aggregate excitation given by the convolution of original excitation with the resonator impulse response.

Summary

Julius Smith

AES-2006 Heyser Lecture – 67 / 84

Commuted Components Overview Early Digital Synthesis

Trigger

Spectral Modeling

Aggregate Excitation

a(t)

x(t) String

Output

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

“Plucked Resonator” driving a String.

s(t)

Bridge Coupling

Guitar Body

Air Absorption

Room Response

y(t) Output

Possible components of a guitar resonator.

Summary

Julius Smith

AES-2006 Heyser Lecture – 68 / 84

Sound Examples Overview Early Digital Synthesis

Electric Guitar (Pick-Ups and/or Body-Model Added) (Stanford Sondius Project → Staccato Systems, Inc. → ADI, ca. 1995)

Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

• • • •

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)

Summary

Julius Smith

AES-2006 Heyser Lecture – 69 / 84

Sound Examples Overview

More Recent Acoustic Guitar

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

• Bach Prelude in E Major: (WAV) (MP3) • soundexamplewavBach silenceLoure in E Major: (WAV) (MP3) Virtual performance by Dr. Mikael Laurson, Sibelius Institute Virtual guitar by Helsinki Univ. of Tech., Acoustics Lab3

3

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 70 / 84

Commuted Synthesis of Linearized Violin a) Overview Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Amplitude(n) Frequency(n)

Impulse Train

b) Amplitude(n) Frequency(n)

Impulse Train

s(n)

e(n) String

e(n)

c) Amplitude(n) Frequency(n)

Output x(n) Resonator

Impulse-Response Train

Resonator

Output x(n)

a(n) String

Output x(n)

a(n) String

• Assumes ideal Helmholtz motion of string • Sound Examples (Stanford Sondius project, ca. 1995): ◦ Violin 1: (WAV) (MP3) ◦ Bass: (WAV) (MP3) ◦ Violin 2: (WAV) (MP3) ◦ Cello: (WAV) (MP3) ◦ Ensemble: (WAV) (MP3) ◦ Viola 1: (WAV) (MP3) ◦ Viola 2: (WAV) (MP3)

Summary

Julius Smith

AES-2006 Heyser Lecture – 71 / 84

Commuted Piano Synthesis (1995) Overview

Hammer-string interaction pulses (force):

Early Digital Synthesis Spectral Modeling

Force 0.5

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

0.4 0.3 0.2 0.1 5

10

15

Time 20

Summary

Julius Smith

AES-2006 Heyser Lecture – 72 / 84

Synthesis of Hammer-String Interaction Pulse Overview

Impulse

Impulse Response

Early Digital Synthesis Spectral Modeling

Lowpass Filter

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Time

Time

• Faster collisions correspond to narrower pulses (nonlinear filter )

• For a given velocity, filter is linear time-invariant • Piano is “linearized” for each hammer velocity

Summary

Julius Smith

AES-2006 Heyser Lecture – 73 / 84

Multiple Hammer-String Interaction Pulses Overview

Superimpose several individual pulses:

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Force Impulse 1 Impulse 2 Impulse 3

δ1

LPF1

δ2

LPF2

δ3

LPF3

+

String Input

0

Time

Summary

Julius Smith

AES-2006 Heyser Lecture – 74 / 84

Multiple Hammer-String Interaction Pulses Overview

Superimpose several individual pulses:

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Force Impulse 1 Impulse 2 Impulse 3

δ1

LPF1

δ2

LPF2

δ3

LPF3

+

String Input

0

Time

As impulse amplitude grows (faster hammer strike), output pulses become taller and thinner, showing less overlap.

Summary

Julius Smith

AES-2006 Heyser Lecture – 74 / 84

Complete Piano Model Natural Ordering: Overview Early Digital Synthesis

vc

Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Impulse δ1 Tapped δ1 GenerDelay Trigger ator Line δ2

LPF1

δ3

LPF3

LPF2

+

String

Sound Board & Enclosure Output

Commuted Ordering:

vc Sound Board & Enclosure Trigger Impulse Response

Tapped Delay Line

LPF1 LPF2

+

String

Output

LPF3

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 75 / 84

Piano and Harpsichord Sound Examples Overview

(Stanford Sondius Project, ca. 1995)

Early Digital Synthesis Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

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

Summary

Julius Smith

AES-2006 Heyser Lecture – 76 / 84

More Recent Harpsichord Example Overview Early Digital Synthesis

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

Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

Reference: “Sound Synthesis of the Harpsichord Using a Computationally Efficient Physical Model”, ¨ aki, ¨ Henri Penttinen, Jonte Knif, Mikael Laurson, by Vesa Valim and Cumhur Erkut JASP-2004

Google search: Harpsichord Sound Synthesis

Summary

Julius Smith

AES-2006 Heyser Lecture – 77 / 84

Physical Modeling in Audio Coding Overview Early Digital Synthesis Spectral Modeling

Spectral modeling synthesis is finding application in audio coding. Can physical modeling synthesis be used as well?

• MPEG-4/SAOL already supports essentially all sound synthesis

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?



methods Ability to encode sounds automatically is limited

◦ Codebook-Excited Linear Prediction (CELP) is a successful ◦ ◦ ◦

source-filter model (not quite physical) There are many isolated examples of model-fitting to recorded data Good model-based denoising results have been obtained Coder problem much harder when many sources are mixed

Summary

Julius Smith

AES-2006 Heyser Lecture – 78 / 84

Best Known Model-Based Audio Coders Overview Early Digital Synthesis

A “cover band” can put together a very convincing facsimile of popular music performance

Spectral Modeling Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

JOS high-school band “Bittersweet”

Summary

Julius Smith

AES-2006 Heyser Lecture – 79 / 84

Future Physical Modeling in Audio Coding? Overview

A “Cover Band” Approach to Model-Based Audio Coding:

Early Digital Synthesis Spectral Modeling

1.

Physical Modeling

• KL Music • Digital Waveguide • Signal Scattering • Plucked String • Struck String • Karplus Strong • EKS Algorithm • Clarinet • Wind Examples • Bowed Strings • Distortion Guitar • Acoustic Strings • Sound Examples • Linearized Violin • Commuted Piano • Pulse Synthesis • Complete Piano • Sound Examples • Phy Audio Coding • Phy Audio Coding?

2. 3.

Recognize individual “audio streams” in a mix (CASA) (“I hear a trap set, electric bass, Fender Rhodes, and a strat”) For each stream, calibrate its model heuristically (“Here is what I hear the bass part doing: ...”) Fine-tune the synthetic mix to the real mix (joint “maximum likelihood estimation”)

Features of “Cover-Band Coding” (CBC):

• The “playing experience” of each “virtual performer” prevents

• •

artifacts — “musically unreasonable” parameters are made unlikely (“Bayesian priors”) An incorrect instrument must “imitate” its assigned stream New arrangements can be synthesized by deliberately choosing a new ensemble!

Summary

Julius Smith

AES-2006 Heyser Lecture – 80 / 84

Overview Early Digital Synthesis Spectral Modeling Physical Modeling Summary

Summary

Julius Smith

AES-2006 Heyser Lecture – 81 / 84

Summary Overview Early Digital Synthesis

We have reviewed a “CCRMA-centric slice” of the history of digital sound synthesis (usually starting with results from Bell Labs):

Spectral Modeling Physical Modeling Summary

Julius Smith

• • • • • • • •

Wavetable (one period) Subtractive Additive FM Sampling Spectral Modeling Physical Modeling (more in tomorrow’s 4:30 PM masterclass) Connections to audio coding

AES-2006 Heyser Lecture – 82 / 84

Overview Early Digital Synthesis Spectral Modeling Physical Modeling Summary Sound Acknowledgment

Sound Acknowledgment

Julius Smith

AES-2006 Heyser Lecture – 83 / 84

Sound Acknowledgment Overview Early Digital Synthesis

Thanks to Emu / Creative Labs for providing a superb-quality external D/A converter for this talk (an E-Mu 0404/USB)

Spectral Modeling Physical Modeling Summary Sound Acknowledgment

Julius Smith

AES-2006 Heyser Lecture – 84 / 84