Go to the NASA Homepage
 
Advanced Controls and Displays Left-Side Header Image
Research Sidebar Header
Advanced Controls and Displays Image Collage
Research header
SLAB: Real-Time Virtual Acoustic Environment Rendering System
SLAB is a real-time virtual acoustic environment rendering system originally developed in the Spatial Auditory Displays Lab at NASA Ames Research Center. SLAB performs spatial 3D-sound processing allowing the arbitrary placement of sound sources in auditory space. SLAB is released free to the public under the NASA Open Source Agreement.

SLABScape SLABWireDemo
   
Screenshot of SLABScape, NASA SLAB software Screenshot of SLABWireDemo: NASA SLAB software

SLAB Release

SLAB runs under Windows 2000 and higher. The following components are included in the release.

Applications

- SLABScape - SLABScape renders an audio-visual virtual environment. Several scene parameters can be manipulated in real-time. Spatial sound processing is performed using the SRAPI library.
- SLABWireDemo - SLABWireDemo demonstrates the features of the SLABWire library. It includes wave, spectrum, and spectrally-triggered OpenGL displays.
- SLABSurface - SLABSurface is a control surface interface to SLAB, primarily used for prototyping synthesis patches.
- SLABSound - SLABSound provides ASIO, DirectSound, Waveform API, and Wave (RIFF) file information.
- SLABX - SLABX is a Microsoft Visual Studio example project for SRAPI-based development.
slabcon - slabcon is a Microsoft Visual Studio console example project for SRAPI-based development.

Libraries

- SRAPI - The SLAB Render API (SRAPI) library performs virtual acoustic environment (VAE) rendering. Using SRAPI, the user can control rendering, allocate sound sources, configure frame-accurate callbacks, and select sound output destinations. The Scene interface, a component of SRAPI, is used to specify acoustic scene and renderer parameters (e.g., sound source, listener, and wall location, number of FIR taps used when rendering). The Scene layer is the interface between SRAPI and SLAB Render Plugins (see below). The SLAB Modifier interface provides a mechanism for the automatic updating of Scene parameters (e.g., scripts, sound source trajectories, source gain tables).
- SLABWire - The SLABWire library is used to configure a sound_in-to-DSP-to-sound_out processing chain. It is used internally by SRAPI but it can also be used as a stand-alone library.
- SLABTrak - The SLABTrak library provides a high-level interface for the Polhemus Fastrak electromagnetic tracker.

SLAB Render Plugins - The VAE rendering engine is encapsulated in the SLAB Render Plugin "Spatial". Plugins can be swapped in and out while rendering allowing for the comparison of different rendering strategies. Plugins also allow for the construction of tailored displays for specific applications (e.g., a spatial communications system).

SLAB Generator Plugins - SLAB signal generator sound sources are encapsulated in SLAB Generator Plugins. This enables users to conveniently add additional signal generation algorithms to SLAB without modifying SLAB itself. Algorithms include sine, square, noise, triangle, amplitude modulation, impulse train, and STK instruments.

HRTF Databases - HRTF (Head-Related Transfer Function) databases are included for use with the SLAB Spatial renderer.

slabtools - The slabtools are MATLAB utilities for HRTF database manipulation and SLAB processing visualization.

Source Code - Source code is included for all SLAB components.

Documentation - HTML documentation is included in the release and several papers are available online. The manuals include: SLAB User Manual, SRAPI Reference Manual, slabtools Reference Manual, and SLABTrak Reference Manual.

More Information

- Flyer - SLAB Factsheet.
-
Advanced Controls and Displays Group - The ACD group includes the Spatial Auditory Displays Lab.  SLAB is used in psychoacoustic research and human-computer interface design.
-
SLAB-Related Papers - ACD personnel page for Joel D. Miller.
-
NASA Open Source Software - The SLAB v5.8.1 release package is available at this site.  Please support NASA Open Source by providing accurate information when registering.  Registration information is used for internal metric tracking only (e.g., using "Affiliation" to determine government lab use).
-
slab3d.sonisphere.com - slad3d home page.  This is a non-NASA website.  "slab3d" continues where SLAB v5.8.1 left off.  slab3d is maintained inside and outside of NASA.  The slab3d home page contains information regarding the latest developments in slab3d, including downloads, specifications, documentation, version history, and a mailing list.

Point of Contact- Joel D. Miller
Go to the First Gov Homepage
Go to the NASA - National Aeronautics and Space Administration Homepage
Curator: Phil So
NASA Official: Brent Beutter
Last Updated: August 15, 2019