Title: Waveguidebased Room Acoustics using Graphics Hardware
1Waveguide-based Room Acoustics using Graphics
Hardware
Niklas Röber, Martin Spindler, Maic
Masuch University of Magdeburg
2Outline
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Motivation
- Waveguide meshes and sampling lattices
- GPU-based implementation
- Results and discussion
- Summary and future work
3Outline
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Motivation
- Waveguide meshes and sampling lattices
- GPU-based implementation
- Results and discussion
- Summary and future work
4Research
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Games Research Group University of Magdeburg
- Tools and techniques for future games
- Non-photorealistic rendering and cinematography
- Interactive digital storytelling and authoring
techniques - Audiogames
- 3D virtual auditory environments
- Audiogames and augmented audio reality
- Interactive audiobooks
- Sound rendering and synthesis (3D, room acoustics)
5Motivation
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Audiogames and auditory displays
- Non-realistic audio environment
- High quality 3D sound and room acoustic
simulations - Similarities between sound and light propagation
- Sophisticated and fast algorithms to render
visual scenes - Powerful graphics hardware
- AMD 64 ( 8 GFlops) vs. nvidia 7900 GTX ( 250
GFlops) - Very fast for parallelizable problems
- Various GPGPU applications
6Outline
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Motivation
- Waveguide meshes and sampling lattices
- GPU-based implementation
- Results and discussion
- Summary and future work
7Waveguide meshes
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Time domain finite difference models
- Bi-linear delay lines arranged in a mesh like
structure - Scattering junctions are of equal impedance
- Sum of inputs sum of outputs
- Pressure equal at crossings
- Modeling of boundary conditions
- Limitations
- Direction dependent dispersion error
- Finite mesh resolution / sampling
frequency
8Optimal Sampling
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Hexagonal lattices have a higher packing density
- More optimal sampling
- Spherically band limited signals
- Unit length increases to
- less samples in 3D
- 8 neighbors with 4 axes of propagation
and 4 delay lines
per node - Used in compression, scientific
visualization and image processing
9BCC Waveguide Mesh
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Update frequency with unit length
- One BCC unit cell consist of 2 nodes and 8 delay
lines - Frequency dispersion with
max. error 4.7 , compared to 7.3 (3D CC)
(Campos and Howard 2005) - Sampling efficiency
10Outline
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Motivation
- Waveguide meshes and sampling lattices
- GPU-based implementation
- Results and discussion
- Summary and future work
11GPU-based Implementation
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Implementation based on 3D textures, fragment
shaders and framebuffer-objects (fbo) - Two 32-bit float textures (RGB)
- Waveguide data (t-1, t) (R and B channel)
- Geometry, material and boundary conditions (G
channel) - Shader computes / samples texture using screen
aligned slicing planes
12Waveguide Shader
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- 1 uniform float layer
- 2 uniform vec3 stepX, stepY, stepZ
- 3 uniform sampler3D tex
- 4 vec3 pos vec3(gl_TexCoord0.xy, layer)
- 5
- 6 vec4 center texture3D(tex, pos)
- 7 vec4 left texture3D(tex, pos - stepX)
- 8 vec4 right texture3D(tex, pos stepX)
- 9 vec4 up texture3D(tex, pos stepY)
- 10 vec4 down texture3D(tex, pos - stepY)
- 11 vec4 front texture3D(tex, pos stepZ)
- 12 vec4 back texture3D(tex, pos - stepZ)
- 13
- 14 float ampl left.r right.r up.r
down.r - 15 ampl front.r back.r
- 16 ampl ampl 0.3333 - center.b
- 17 gl_FragColor vec4(ampl, center.g, center.r,
1.0)
Waveguide fragment shader (Cartesian Lattice)
13BCC Implementation
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- BCC lattice decomposed into two CC textures
- Base grid (R and G), offset grid (B and A) for
t-1 and t - One additional 3D texture (geometry, boundary
conditions) - BCC fragment shader
- Indexing adjusted for two textures
- Two nodes computed in one step
- Overall less computations
14Outline
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Motivation
- Waveguide meshes and sampling lattices
- GPU-based implementation
- Results and discussion
- Summary and future work
15Results and Discussion
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Benchmarks 2D, 3D CC and 3D BCC
- Software (CPU) and Hardware (GPU)
- Comparison CC and BCC lattices
- Examples
- Wavefield synthesis
- Impulse responses (3D CC, 3D BCC)
16Benchmarks 2D
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- AMD 64 4000 single core PC with 1 GB main memory
- nvidia GeForce 7800GT with PCIe interface
17Benchmarks 3D
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- cp with glCopyTexSubImage3D
- ncp without glCopyTexSubImage3D
18Rectilinear vs. Hexagonal
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
CC
BCC
19Wavefield Synthesis
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- 21 sound sources
- Sine wave pulse
- Anechoic walls (top, bottom, right)
- Phase-rev. reflection (left, middle obstacle)
20Impulse Responses
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Original sound ( The Notwist )
- Low-pass filtered
- 3D CC room acoustics
- 3D BCC room acoustics
21Outline
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Motivation
- Waveguide meshes and sampling lattices
- GPU-based implementation
- Results and discussion
- Summary and future work
22Summary
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- Novel and fast technique for wave propagation
using waveguide meshes - Exploiting powerful graphics hardware with
build-in visualization - Up to 15 20 times faster
- Additional improvements through hexagonal
sampling - Open questions / problems
- CC vs. BCC (quality)
- Missing 3D fbo extension
23Future Work
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- GPU accelerated ray-acoustic simulations
- Global illumination (phonon mapping, spherical
harmonics, BRDF) - Raytracing (particles, raycasting)
- Combination of GPU-based wave- and ray-acoustics
- Evaluation of physics hardware (Ageias PPU)
- Mass-spring system
- Particles, raycasting
24Thank you for your attention!
Outline Motivation Waveguides and Sampling
GPU Implementation Results Conclusion
- More Information
- games.cs.uni-magdeburg.de/acoustics
- niklas_at_isg.cs.uni-magdeburg.de