3D Virtual Sound Project: Project Proposal

ejhong@cs.stanford.edu

Goal

The following is an initial set of ideas for an implementation of a library to support (near?) real time playback of preprocessed sound which has been adjusted to take into account the relative position between listener and source so that sound appears to be heard externally at a particular location. This library could then be used with a tracking device and headphones to enhance a virtual experience. There are many factors which affect the transformation of sound patterns between the source and our ears including the shape of the pinnae, distance to source and room acoustics (reflection and refraction). This implementation will make use of head related transfer function (HRTF) samples (probably those obtained from the KEMAR dummy made publicly available from MIT) which should capture the interaural differences which are due to the location and shape of the ears. Hopefully, these "generic" samples will be adequate to produce externalization of sound over standard headphones.

Algorithm

In order to produce the proper sound for an ear, the input sound signal must be convolved with the HRTF for the relative position between the ear and the source and additionally be filtered to compensate for other factors such as the microphone used to record the HRTFs and the headphone setup used to display the sound. I will focus on first filtering only by the HRTF and look into other adjustments as needed and as time permits. The convolution process is probably quite expensive and may be difficult to do in real time without special hardware support. Thus my implementation will preprocess sounds with the HRTF and create a sound file for specific relative ear locations (as is done with the Focal Point Type 2 -another Type 2!). Upon playback, the implementation will then index into the appropriate sound file for the given relative location between source and listener and possibly incorporate distance adjustments as well. Althoughthis implementation uses a lot of space, it will be much faster than trying to convolve on the fly. Problems will include developing an algorithm for quickly indexing into the correct sound file, finding the minimal number of locations to store and perhaps doing some form of interpolating for positions between the sound file positions.

Equipment Necessary

I'll probably try and do the project on an SGI with support for stereo and headphones. I haven't yet had the chance to find what kind of support the SGI's have for stereo sound and performing convolutions (perhaps pre-processing won't be necessary). These are all I will need to see if the sound localization in real-time work or not. If time permits, I would like to try the implementation with some form of tracking device and visual virtual reality system.

Back to overview


e-mail: ejhong@cs.stanford.edu

Last modified: March 20, 1996 by Eugene Jhong


e-mail: ejhong@cs.stanford.edu

Last modified: February 21, 1996