Smith, Kuroda, Perng, Van Heusen, Abel CCRMA, Stanford University ASA November 16, Smith, Kuroda, Perng, Van Heusen, Abel ASA / 31

Similar documents
Physical Modeling Synthesis

CMPT 889: Lecture 8 Digital Waveguides

A Real Time Piano Model Including Longitudinal Modes

MUS420 Lecture Mass Striking a String (Simplified Piano Model)

Ideal String Struck by a Mass

Music 206: Digital Waveguides

A PIANO MODEL INCLUDING LONGITUDINAL STRING VIBRATIONS

Vibrations of string. Henna Tahvanainen. November 8, ELEC-E5610 Acoustics and the Physics of Sound, Lecture 4

Lecture 3: Acoustics

Lecture 2: Acoustics. Acoustics & sound

phantoms those which appear at the sum f m f n or difference

MUS420 Lecture Computational Acoustic Modeling with Digital Delay

A FINITE DIFFERENCE METHOD FOR THE EXCITATION OF A DIGITAL WAVEGUIDE STRING MODEL

CMPT 889: Lecture 9 Wind Instrument Modelling

The simulation of piano string vibration: From physical models to finite difference schemes and digital waveguides

Content of the course 3NAB0 (see study guide)

Physically Informed Signal-Processing Methods for Piano Sound Synthesis: a Research Overview

Scattering. N-port Parallel Scattering Junctions. Physical Variables at the Junction. CMPT 889: Lecture 9 Wind Instrument Modelling

Sound, acoustics Slides based on: Rossing, The science of sound, 1990, and Pulkki, Karjalainen, Communication acoutics, 2015

Discrete-time modelling of musical instruments

THE WAVE EQUATION. F = T (x, t) j + T (x + x, t) j = T (sin(θ(x, t)) + sin(θ(x + x, t)))

Mathématiques appliquées (MATH0504-1) B. Dewals, Ch. Geuzaine

MITOCW MITRES18_005S10_DiffEqnsMotion_300k_512kb-mp4

THE SYRINX: NATURE S HYBRID WIND INSTRUMENT

2005 S. Hirzel Verlag. Reprinted with permission.

Musimathics The Mathematical Foundations of Music Volume 2. Gareth Loy. Foreword by John Chowning

Sound Propagation through Media. Nachiketa Tiwari Indian Institute of Technology Kanpur

Introduction to Waves

Question 01. A. Incorrect! The speed of sound is not the same in all medium; it is dependent on the properties of the material.

Physically Informed Signal Processing Methods for Piano Sound Synthesis: A Research Overview

Lecture 17. Mechanical waves. Transverse waves. Sound waves. Standing Waves.

A BOWED STRING PHYSICAL MODEL INCLUDING FINITE-WIDTH THERMAL FRICTION AND HAIR DYNAMICS

Numerical Solution of Nonlinear Differential Equations in Musical Synthesis

Methods for Synthesizing Very High Q Parametrically Well Behaved Two Pole Filters

Chapter 16: Oscillatory Motion and Waves. Simple Harmonic Motion (SHM)

Real Sound Synthesis for Interactive Applications

Generalized Digital Waveguide Networks

PHY 103: Standing Waves and Harmonics. Segev BenZvi Department of Physics and Astronomy University of Rochester

Numerical Sound Synthesis

THE SYRINX: NATURE S HYBRID WIND INSTRUMENT

The velocity (v) of the transverse wave in the string is given by the relation: Time taken by the disturbance to reach the other end, t =

Introduction to Continuous Systems. Continuous Systems. Strings, Torsional Rods and Beams.

Elimination of Delay-Free Loops in Discrete-Time Models of Nonlinear Acoustic Systems

1 Introduction. 2 Data Set and Linear Spectral Analysis

Introduction to Acoustics Exercises

Chapter 6 Work and Energy

Topic 5-1: Introduction to Phonons Kittel pages: 91, 92

PIANO SOUNDBOARD UNDER PRESTRESS: A NUMERICAL APPROACH

Fundamentals of Ultrasonics

COMP Signals and Systems. Dr Chris Bleakley. UCD School of Computer Science and Informatics.

Chapter 16: Oscillations

Sinusoids. Amplitude and Magnitude. Phase and Period. CMPT 889: Lecture 2 Sinusoids, Complex Exponentials, Spectrum Representation


CHAPTER 11 TEST REVIEW

CMPT 889: Lecture 2 Sinusoids, Complex Exponentials, Spectrum Representation

Digital Sound Synthesis by Physical Modelling

General Physics I. Lecture 14: Sinusoidal Waves. Prof. WAN, Xin ( 万歆 )

Chapter 16 Lectures. Oscillatory Motion and Waves

Nonlinear Modeling of a Guitar Loudspeaker Cabinet

Transmission Lines. Plane wave propagating in air Y unguided wave propagation. Transmission lines / waveguides Y. guided wave propagation

Oscillatory Motion and Wave Motion

PREPARED PIANO SOUND SYNTHESIS

DIGITAL FILTER APPLICATIONS TO MODELING WAVE PROPAGATION IN SPRINGS, STRINGS, MEMBRANES AND ACOUSTICAL SPACE

Exam 3 Review. Chapter 10: Elasticity and Oscillations A stress will deform a body and that body can be set into periodic oscillations.

Physics Mechanics. Lecture 32 Oscillations II

Chapter 13, Vibrations and Waves. 1. A large spring requires a force of 150 N to compress it only m. What is the spring constant of the spring?

Cylinder with Conical Cap

Chapter 11 Vibrations and Waves

Wave Phenomena Physics 15c. Lecture 9 Wave Reflection Standing Waves

OBJECT-BASED SOUND SYNTHESIS. Augusto Sarti, Stefano Tubaro

Convention Paper Presented at the 129th Convention 2010 November 4 7 San Francisco, CA, USA

PHYSICS 149: Lecture 24

THE subject of the analysis is system composed by

4. What is the speed (in cm s - 1 ) of the tip of the minute hand?

Lecture 1: Introduction Introduction

NDT&E Methods: UT. VJ Technologies CAVITY INSPECTION. Nondestructive Testing & Evaluation TPU Lecture Course 2015/16.

BSc/MSci EXAMINATION. Vibrations and Waves. Date: 4 th May, Time: 14:30-17:00

Virbations and Waves

Ph.D. thesis. Balázs Bank

Wave Physics PHYS 2023 Tim Freegarde

Work. Work and Energy Examples. Energy. To move an object we must do work Work is calculated as the force applied to the object through a distance or:

A REVERBERATOR BASED ON ABSORBENT ALL-PASS FILTERS. Luke Dahl, Jean-Marc Jot

Chapter 13. Hooke s Law: F = - kx Periodic & Simple Harmonic Motion Springs & Pendula Waves Superposition. Next Week!

THE SCOTTY WHO KNEW TOO MUCH

Quadrature-Mirror Filter Bank

CHAPTER 9 ELECTROMAGNETIC WAVES

Phys101 Lectures 28, 29. Wave Motion

α(t) = ω 2 θ (t) κ I ω = g L L g T = 2π mgh rot com I rot

Honors Differential Equations

Nonlinear Losses in Electro-acoustical Transducers Wolfgang Klippel, Daniel Knobloch

Lecture 9: Waves in Classical Physics

Macroscopic plasma description

Efficient outdoor sound propagation modelling in time-domain

Simulation Study on Pressure Control using Nonlinear Input/Output Linearization Method and Classical PID Approach

Improved frequency-dependent damping for time domain modelling of linear string vibration

AP physics B - Webreview ch 13 Waves

2006 Institute of Physics Publishing. Reprinted with permission.

HS AP Physics 1 Science

1 2 Models, Theories, and Laws 1.5 Distinguish between models, theories, and laws 2.1 State the origin of significant figures in measurement

SOUND. Representative Sample Physics: Sound. 1. Periodic Motion of Particles PLANCESS CONCEPTS

Transcription:

Efficient computational modeling of piano strings for real-time synthesis using mass-spring chains, coupled finite differences, and digital waveguide sections Smith, Kuroda, Perng, Van Heusen, Abel CCRMA, Stanford University ASA-2010 November 16, 2010 Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 1 / 31

Goals Overall Goal: Ultimate Virtual Piano Current Focus: Audibly Perfect Piano-String Synthesis Method: Start with High Accuracy, then Simplify Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 2 / 31

Outline Brief History of Virtual Strings Ideal Strings Stiff Piano Strings Nonlinear Piano Strings General Mass-Spring String Model Finite Difference Implementation Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 3 / 31

Brief History of String Sound Synthesis Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 4 / 31

D Alembert s PDE for the Ideal String (1747) y (t,x) 0... String Tension K ε = Mass/Length... 0 Position x K 2 y x 2 = ǫ 2 y t 2 i.e., Ky = ǫÿ K = string tension y = y(t,x) ǫ = linear mass density = transverse displacement t = time (s) x = position along string axis Wave equation PDE is derived from Newton s second law (f = ma) by equating Brook Taylor s restoring force Ky (1713) to mass-density times acceleration ǫÿ Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 5 / 31

D Alembert s Traveling-Wave Solution (1747) In the same paper, d Alembert also showed that the ideal-string PDE was satisfied by traveling waves in either direction: where ( y(t,x) = y r t x ( )+y l t+ x ) c c c = K ǫ = wave propagation speed These ideas were developed into essentially modern form by Euler (1707 1783) Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 6 / 31

Digital Waveguide Models (1985) We sample d Alembert s traveling-wave components to make digital waveguide models. Lossless digital waveguide = bidirectional delay line at some wave impedance R = Kǫ z N z N Useful for efficient models of strings, bores, plane waves, conical waves, and more R Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 7 / 31

Ideal Plucked String (Displacement Waves) Digital waveguide string models are extremely efficient computationally [O(1) complexity per sample of output] + y (n) Bridge y -(n) -1 (x = Pluck Position) (x = 0) (x = L) -1 + y (n-n/2) - Nut y (n+n/2) Load each delay line with half of initial string displacement Sum of upper and lower delay lines = string displacement Insert a linear, time-invariant filter in the loop for any desired attenuation and dispersion as a function of frequency Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 8 / 31

Ideal Struck String (Velocity Waves) + v (n) Bridge v -(n) -1 c c (x = Hammer Position) (x = 0) (x = L) -1 + v (n-n/2) - Nut v (n+n/2) Velocity wavesv easily converted to force wavesf which are proportional to string slope y : Ky = f = f + +f = Rv + Rv Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 9 / 31

Plucked/Struck Sound Example (1988) Bach A-Minor Concerto Orchestra Part: (WAV) (MP3) Executed in real time on one Motorola DSP56001 (20 MHz clock, 128K SRAM) Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 10 / 31

Plucked/Struck Sound Example (1988) 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 Davies Symphony Hall, San Francisco, 1988 Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 10 / 31

Plucked/Struck Sound Example (1988) 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 Davies Symphony Hall, San Francisco, 1988 Solo violin part was played live by Dan Kobialka of the San Francisco Symphony Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 10 / 31

Stiff Strings Piano strings are stiff, resulting in significant dispersion: ǫÿ = Ky κy The new stiffness term is proportional to (Stiff string PDE) y 4 = x 4 y(t,x) 1. Faster wave propagation at higher frequencies (hence the dispersion of traveling-wave shapes) Provided in digital waveguide strings using an allpass filter having a delay that decreases with frequency (typically on the order of 10 poles and zeros) 2. A spring-resistance to corner formation in the string (usually left out in string synthesis models!) See, e.g., Cremer 1984 Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 11 / 31

Digital Waveguide Model for Stiff Strings Example waveguide string, three spatial-samples long:...... + y (n) - y (n) H (z) a H (z) a y (nt,0) + y (n-1) - y (n+1) H (z) a H (z) a + y (n-2) y -(n+2) (x = 0) (x = c(ω)t) (x = 2c(ω)T) H (z) a H (z) a + y (n-3) -... y (n+3) y (nt,3c(ω)t)... (x = 3c(ω)T) H a (z) = allpass giving desired delay vs. frequency for one sample Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 12 / 31

Consolidated Allpasses In practice, we pull out one or more samples of pure delay:... + y (n)... y - (n) (x = 0) z- 1 y (nt,0) 3 zh a (z) 3 zh a (z) z- 1 + y (n-3) -... y (n+3)... (x = 3c(ω)T) y (nt,3c(ω)t) zh 3 a(z) (orz 2 H 6 a(z)) is designed as a single allpass filter 10 poles and zeros can handle hundreds of samples of dispersion with perceptual equivalence Not valid for distributed nonlinear behavior (discussed later) Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 13 / 31

Digital Waveguide Piano Sound Example Piano: (WAV) (MP3) (Stanford Sondius Project, ca. 1995) Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 14 / 31

Digital Waveguide Piano Sound Example Piano: (WAV) (MP3) (Stanford Sondius Project, ca. 1995) Uses the commuted synthesis technique Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 14 / 31

Nonlinear Piano Strings Vertical excitation by hammer couples nonlinearly to the longitudinal direction: 1 ǫ ξ = ESξ + 1 2 ES[(y ) 2 ] where ξ = longitudinal displacement Nonlinear coupling driven by [(y ) 2 ] = x (longitudinal wave PDE) [ ] 2 x y(t,x) Slope of square of string slope drives longitudinal waves Coupling from longitudinal back to transverse is smaller and typically neglected 1 E.g., Morse & Ingard 1968 Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 15 / 31

Effects of Nonlinear Mode Coupling in Piano Strings Main audible effects of nonlinear transverse-to-longitudinal coupling: 1. Initial longitudinal attack pulse (the initial shock noise audible in a piano tone) 2. Inharmonic longitudinal modes 3. Phantom partials (ongoing intermodulation products from transverse partials) See Conklin lecture in Five Lectures on the Acoustics of the Piano, edited by Anders Askenfelt (and listen to the sound examples) Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 16 / 31

Nonlinear Piano-String Synthesis If one-way coupling is accurate enough (transverse to longitudinal but not vice versa), we can model its effects separately based on observations of transverse waves (Bank and Sujbert, JASA 2005): Longitudinal modes implemented as second-order resonators ( modal synthesis ) Slope of squared slope projected onto longitudinal modes Up-to-date summary: A Modal-Based Real-Time Piano Synthesizer Balázs Bank, Stefano Zambon, and Federico Fontana IEEE Trans. Audio, Speech, and Language Processing May, 2010 (IEEE-ASLP) Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 17 / 31

Synthesis Strategies Model complexity grows with dynamic level: 1. Linear Superposition: Transverse and longitudinal waveguides decouple into separate modes 2. Transverse Longitudinal Coupling 3. Transverse Longitudinal Coupling Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 18 / 31

Synthesis Strategies Model complexity grows with dynamic level: 1. Linear Superposition: Transverse and longitudinal waveguides decouple into separate modes 2. Transverse Longitudinal Coupling 3. Transverse Longitudinal Coupling Proposed Synthesis Strategy: Initial striking force determines the starting regime (1, 2, or 3) Maximum slope y over one or more periods indicates regime transitions String model simplifies as it decays Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 18 / 31

Checking the Approximations The preceding involved several approximations: Neglected terms in PDEs Simplified synthesis models Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 19 / 31

Checking the Approximations The preceding involved several approximations: Neglected terms in PDEs Simplified synthesis models The following questions naturally arise: How do we know for sure our approximations are inaudible? We can listen, but could we miss an audible effect? Could a difference become audible after more listening? Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 19 / 31

Checking the Approximations The preceding involved several approximations: Neglected terms in PDEs Simplified synthesis models The following questions naturally arise: How do we know for sure our approximations are inaudible? We can listen, but could we miss an audible effect? Could a difference become audible after more listening? What we really want is a truth reference an exact model! Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 19 / 31

Checking the Approximations The preceding involved several approximations: Neglected terms in PDEs Simplified synthesis models The following questions naturally arise: How do we know for sure our approximations are inaudible? We can listen, but could we miss an audible effect? Could a difference become audible after more listening? What we really want is a truth reference an exact model! There are software tools (e.g., from perceptual audio coding) for measuring the audible equivalence of two sounds: Original and Encoded for a CODEC Exact and Computationally Efficient for piano models Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 19 / 31

Mass-Spring String Model Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 20 / 31

in 3D Space 3D Mass-Springs Mass-Spring String Adding Stiffness Shear Stiffness Three-Spring Design Shear Springs Hooke s Law: f 1 f 2 m l 1 k m x 1 R 3 x 2 R 3 f 1 = k l 1 l 0 Vector Equation of Motion (l 0 = spring rest length) ) (f i R 3, x i R 3 : f 1 = k ( x 2 x 1 l 0 ) = k [ 1 x 2 x 1 x 2 x 1 ] l 0 (x x 2 x 1 2 x 1 ) = m 1 ẍ 1 Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 21 / 31

Mass-Spring String Model f i 1 f i f i+1 l i 1 l i k m m m x i 1 x i x i+1 f i = α i (x i+1 x i ) +αi 1 (x i 1 x i ) = α i 1 x i 1 (α i 1 +α i )x i +α i x i+1 k k where α i = k [1 l 0 x i+1 x i ] Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 22 / 31

Adding Stiffness k 3D Mass-Springs Mass-Spring String Adding Stiffness Shear Stiffness Three-Spring Design Shear Springs m m k Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 23 / 31

Need Shear Stiffness Too 3D Mass-Springs Mass-Spring String Adding Stiffness Shear Stiffness Three-Spring Design Shear Springs Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 24 / 31

Three-Spring Design (Before Shear Springs Added) 3D Mass-Springs Mass-Spring String Adding Stiffness Shear Stiffness Three-Spring Design Shear Springs Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 25 / 31

Shear Springs 3D Mass-Springs Mass-Spring String Adding Stiffness Shear Stiffness Three-Spring Design Shear Springs Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 26 / 31

Finite Difference Implementation Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 27 / 31

Digitizing the Flexible String Recall: Digitization State-Space Form Summary f i 1 f i f i+1 l i 1 l i k m m m x i 1 x i x i+1 k k f i = α i (x i+1 x i ) +αi 1 (x i 1 x i ) = α i 1 x i 1 (α i 1 +α i )x i +α i x i+1 where α i = k [1 l 0 x i+1 x i ] Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 28 / 31

Equations of Motion, State-Space Form Digitization State-Space Form Summary f 1 = m 1 ẍ 1 = α 1 (x 2 x 1 ).. f i = m i ẍ i = α i 1 x i 1 (α i 1 +α i )x i +α i x i+1.. f M = m M ẍ M = α M 1 (x M 1 x M ) or (3M 1): F = MẌ = AX Digitization (Explicit Finite Difference Scheme): X n+1 = [ 2I+M 1 A ] X n X n 1 +Bu n whereu n is the external input vector, and digitization is based on ẍ n = xn+1 2x n +x n 1 Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 29 / 31

Results to Date Presented this morning by Junji Kuroda Digitization State-Space Form Summary Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 30 / 31 [,toc=]results

Summary Digitization State-Space Form Summary String-Synthesis History Reviewed Ideal Strings Stiff Piano Strings Nonlinear Piano Strings = Accurate Benchmark Reference Accuracy time/space sampling density Approximations can be quantified in practical cases Given faster and more parallel computing, maybe we ll just go ahead and use it for real-time sound synthesis from performance! Smith, Kuroda, Perng, Van Heusen, Abel ASA-2010 31 / 31