Geometric Sound Propagation Anish Chandak & Dinesh Manocha UNC Chapel Hill
Sound Propagation Approaches Numerical Methods Solve Helmholtz Wave Equation Accurate Compute intensive (fourth power of frequency) Not practical for interactive applications Methods Finite Element Methods [Otsuru,2004] Boundary Element Methods [Ciskowski,1993] Finite Difference Time Domain [Kunz,1993] Digital Waveguide Mesh (DWM) [Savioja,1994] Domain Decomposition [Raghuvanshi,2008]
Sound Propagation Approaches Geometric Methods Ray-Approximation of Wave Equation High-frequency approximation Fast Highly dependent on the geometry details Methods Image Source [Borish,1984] [Dalenback,1992] Ray Tracing [Krokstad,1968] [Kuttruff,1993] Beam Tracing [Funkhouser,1998] [Funkhouser,1999] Phonon Tracing [Kapralos,2004] [Bertram,2005] Frustum Tracing [Lauterbach,2007] [Chandak,2008] Acoustic Radiance Transfer [Siltanen,2007] [Siltanen,2009]
Geometric Sound Propagation Shoot geometric primitives from sound source The could cause: Direct Contributions Reflection Contributions Diffraction Contributions Very high update rate for direct contributions ~20-30 Hz update rate for higher order contributions
Image Source for Sound Propagation [Berkley,1979] [Borish,1984] [Dalenback,1992] Input: point sound source point listener scene geometry with acoustic properties Output: pressure impulse response (IR)
Image Source for Sound Propagation [Berkley,1979] [Borish,1984] [Dalenback,1992] Advantages Geometrically accurate simulation No aliasing issues, especially for dynamic scenes Hybrid approaches are popular Disadvantages Exponential blow up of virtual image sources Too slow for dynamic and interactive applications Handles only specular reflection
Image Source Method Geometric sound propagation approach Computes virtual image sources recursively from a sound source Accurately find all the geometric paths from source to the listener Impulse Response (IR) is constructed from the contributing paths The impulse response is a pressure IR which is convolved with input dry signal
AN OVERVIEW Image Source Method
S S1 S2 S3 S4 S Image Source Method
S S1 S2 S3 S4 S L Image Source Method
S S1 S2 S3 S4 S L Image Source Method
S S1 S2 S3 S4 S L A Image Source Method
A S S1 S2 S3 S4 S L Image Source Method
S S1 S2 S3 S4 S Image Source Method
S S Image Source Method
S S S12 S13 S14 S15 Image Source Method
L S S S12 S13 S14 S15 Image Source Method
L S S S12 S13 S14 S15 Image Source Method
L S S S12 S13 S14 S15 Image Source Method
L S S S12 S13 S14 S15 Image Source Method
S S S12 S13 S14 S15 Image Source Method
Two Step Algorithm 1. Computing image sources (From-point Visibility) 2. Validating paths from source to the listener Computing image sources Path Validation
Ray Tracing for Sound Propagation [Krokstad,1968] [Kulowski,1984] Input: spherical sound source spherical listener scene geometry with acoustic properties Output: energy impulse response (IR) convert energy IR into pressure IR for 3D audio rendering Note: audio signal is a function of pressure
Ray Tracing for Sound Propagation [Krokstad,1968] [Kulowski,1984] Advantages Very Very Fast. Maps well to modern CPU and GPU architectures Advanced field in Computer Graphics Handles dynamic scenes efficiently Handles diffuse reflection Disadvantages Sampling and aliasing issues Aggressive acoustic simulation 3D Audio Rendering artifacts in dynamic scenarios Cannot handle diffraction
AN OVERVIEW Ray Tracing Method
Step 1: Shoot Sound Rays Scene Geometry S Sound Source Listener L
Step 1: Shoot Sound Rays S L Shoot Rays From Source
Step 2: Trace Sound Rays S L
Step 3: Specular Reflections S L Based on Reflection Coefficient Annihilate Or Energy Based
Step 3: Diffuse Reflections S L Based on Scattering Coefficient Annihilate or Choose a random direction
Step 3: Construct Energy Histogram S L Collect Rays at the Listener
Step 3: Construct Energy Histogram S L Collect Rays at the Listener
Step 4: Pressure IR from Energy Histogram To compute sound signal at a point add sound pressure of all contributions Phase angles of pn and pm are different and for quite a large number of components [Kuttruff, 2007]
Beam Tracing for Sound Propagation [Funkhouser,1998] [Funkhouser,1999] Input: point sound source point listener scene geometry with acoustic properties Output: pressure impulse response (IR)
Beam Tracing for Sound Propagation [Funkhouser,1998] [Funkhouser,1999] Advantages Geometrically accurate simulation No aliasing issues, especially for dynamic scenes Has a pre-processing and interactive stages Can handle moving listener Handles diffraction Disadvantages Expensive pre-processing step Cannot handle dynamic sound sources or geometry Cannot handle diffuse reflection
AN OVERVIEW Beam Tracing Method
Beam Tracing for Sound Propagation Acoustic Geometry -- surface simplification Acoustic Material -- absorption coefficient -- scattering coefficient Source Modeling -- area source -- emitting characteristics -- sound signal Propagation Personalized HRTFs for 3D sound Late Reverberation Digital Signal Processing [Funkhouser,1998]
Example: Input Scene [Funkhouser,1998]
Step 1: Spatial Subdivision (preprocess) Partition 3D space into convex regions (BSP Tree). [Wikipedia, Binary space partitioning]
Step 1: Spatial Subdivision (preprocess) Partition 3D space into convex regions (BSP Tree). Build adjacency graph. [Funkhouser,1998]
Step 1: Spatial Subdivision - Example [Funkhouser,1998]
Step 2: Beam Tracing (preprocess) Compute Beam Tree Node Information Cell ID Beam and its apex Cell boundary Parent node ID Attenuation Need to cite the authors of these images.
Step 2: Beam Tracing - Example [Funkhouser,1998]
Step 2: Beam Tracing - Example [Funkhouser,1998]
Step 2: Beam Tracing - Example [Funkhouser,1998]
Step 2: Beam Tracing - Example [Funkhouser,1998]
Step 2: Beam Tracing - Example [Funkhouser,1998]
Step 2: Beam Tracing - Example [Funkhouser,1998]
Step 2: Beam Tracing - Example [Funkhouser,1998]
Step 3: Path Generation (interactive) [Funkhouser,1998]
Step 3: Path Generation (interactive) Find cell, C, containing listener (log N) For each beam in C check for listener is inside it Yes, then a path exist Attenuation, path length, and direction can be computed quickly Construct path by traversing the beam tree Compute Impulse Response (IR)
Step 3: Path Generation - Example [Funkhouser,1998]
Step 3: Path Generation - Example [Funkhouser,1998]
Step 3: Path Generation - Example [Funkhouser,1998]
Step 4: Auralization (Interactive) Convolve IR with input sound signal Use the directional paths to simulate 3D audio using HRTFs Impulse Response (IR) Sound Signal* = Output Audio *= Need to cite the authors of these images.
Frustum Tracing for Sound Propagation [Lauterbach,2007] [Chandak,2008] Input: point sound source point listener scene geometry with acoustic properties Output: pressure impulse response (IR)
Frustum Tracing for Sound Propagation [Lauterbach,2007] [Chandak,2008] Advantages Very Very Fast Handles moving sources and listeners Handles complex and dynamic geometry Handles diffraction Disadvantages Could miss some important contributions Cannot handle diffuse reflection
AN OVERVIEW Frustum Tracing Method
Frustum Tracing Overview Frustum Triangle Intersection
Frustum Tracing Results (7 cores) Theater 54 ∆s Factory 174 ∆s Game 14K ∆s Sibenik 71K ∆s City 72K ∆s SodaHa ll 1.5M ∆s diffraction NO YES #frusta56K40K206K198K80K108K time (msec)
AN OVERVIEW FastV: From-point Visibility Culling and Applications to Sound Rendering
FastV: An Overview
Results (Speed)
Results (Convergence)
Results (Convergence) Armadillo
Results (Sound Propagation)
Step 3: Auralization If receiver is inside frustum Calculate path back to source Attenuate path and add to IR Convolve audio with IR Output final audio sample
Phonon Tracing [Kapralos,2004] [Bertram,2005] Inspired from Photon Tracing [Jensen,2001] Input: point sound source point listener scene geometry with acoustic properties Output: energy impulse response (IR)
Phonon Tracing [Kapralos,2004] [Bertram,2005] Advantages Handles diffuse reflection efficiently Disadvantages Compute intensive Cannot handle dynamic source and geometry
AN OVERVIEW Phonon Tracing Method
Phonon Emission Step [Deines,2008]
Phonon Emission Step [Deines,2008]