
Welcome to the NASA SLAB Home Page
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

|
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.
This site is maintained by:
Joel D. Miller
SLAB Software Project Manager
Site Last Updated: June 7, 2007
First SLAB Release: June 26, 2002