1. Field of the Invention
The present invention relates to an apparatus and method of producing three-dimensional (3-D))sound, and, more specifically, to producing a virtual acoustic environment (VAE) in which multiple independent 3D sound sources and their multiple reflections are synthesized by acoustical transducers such that the listener's perceived virtual sound field approximates the real world experience. The apparatus and method have particular utility in connection with computer gaming, 3D audio, stereo sound enhancement, reproduction of multiple channel sound, virtual cinema sound, and other applications where spatial auditory display of 3D space is desired.
2. Description of Related Information
The ability to localize sounds in three-dimensional space is important to humans in terms of awareness of the environment and social contact with each other. This ability is vital to animals, both as predator and as prey. For humans and most other mammals, three-dimensional hearing ability is based on the fact that they have two ears. Sound emitted from a source which is located away from the median plane between the two ears arrives at each ear at different times and at different intensities. These differences are known as interaural time difference (ITD) and interaural intensity difference (IID). It has long been recognized that the ITD and IID are the primary cues for sound localization. ITD is primarily responsible for providing localization cues for low frequency sound (below 1.0 kHz), as the ITD creates a distinguishable phase difference between the ears at low frequencies. On the other hand, because of head shadowing effects, IID is primarily responsible for providing localization cues for high frequency (above 2.0 kHz) sounds.
In addition to interaural time difference (ITD) and interaural intensity difference (IID), head-related transfer functions (HRTFs) are essential to sound localization and sound source positioning in 3D space. HRTFs describe the modification of sound waves by a listener's external ear, known as the pinnae, head, and torso. In other words, incoming sound is “transformed” by an acoustic filter which consists of pinna, head, and torso. The manner and degree of the modification is dependent upon the incident angle of the sound source in a sort of systematic fashion. The frequency characteristics of HRTFs are typically represented by resenance peaks and notches. Systematic changes of the notches and peaks of the positions in the frequency domain with respect to elevation change are believed to provide localization cues.
ITD and IID have long been employed to enhance the spatial aspects of stereo system effects, however the sound images created are perceived as within the head and in between the two ears when a headphone set is used. Although the sound source can be lateralized, the lack of filtering by HRTF causes the perceived sound image to be “internalized,” that is, the sound is perceived without a distance cue. This phenomenon can be experienced by listening to a CD using a headphone set rather than a speaker array. Using HRTFs to filter the audio stream can create a more realistic spatial image; this results in images with sharper elevation and distance perception. This allows sound images to be heard through headphone set as if the images are from a distance away with an apparent direction, even the image is on the median plan where the ITD and IID diminish. Similar results can be obtained with a pair of loudspeakers when cross-talk between the ears and two speakers is resolved.
Commercial 3-D audio systems known in the art are using all the three localization cues, including HRTF filtering, to render 3-D sound images. These systems demand a computing load uniformly proportional to the number of sources simulated. To reproduce multiple, independent sound sources, or to faithfully account for reflected sound, a separate HRTF must be computed for each source and each early reflection. The total number of such sources and reflections can be large, making the computation costs prohibitive to a single DSP solution. To address this problem, systems known in the art either limit the number of sources positioned or use multiple DSPs in parallel to handle multi-source and reflected audio reproduction with a proportionally increased system cost.
The known art has pursued methods of optimizing HRTF processing. For example, the principal component analysis (PCA) method uses principal components modeled upon the logarithmic amplitute of HRTFs. Research has shown that five principal components, or channels of sound, enable most people to localize the sound waves as well as in a free field. However, the non-linear nature of this approach limits it to a new way of analyzing HRTF data (amplitude only), but does not enable faster processing of HRTF filtering for producing 3D audio.
A need exists for a simple and economical method that can reliably reproduce 3-D sound without using an exponential array of DSPs. Another optimization method, the spatial feature extraction and regularization (SFER) model, constructs a model HRTF data covariance matrix and applys eigen decomposition to the data covariance matrix to obtain a set of M most significant eigen vectors. According to the Karhunen-Loeve Expansion (KLE) theory each of the HRTFs can be expressed as weighted sum of these eigen vectors. This enables the SFER model to establish linearity in the HRTF model, allowing the HRTF processing efficiency issue to be addressed. The SFER model has also been used in the time domain. That is, instead of working on HRTFs which are defined in frequency domain as transfer functions, the later work applied KLE to head-related impulse responses (HRS). HRIRs represent time domain counterpart of HRTFs. Though, in principal, the later approach is equivalent to the frequency domain SFER model, working with HRIRs has the additional advantage of avoiding complex calculations, which is a very favorable change in DSP code implementation.
The method and apparatus of the present invention overcome the above-mentioned disadvantages and drawbacks which are characteristic of the prior art. The present invention provides a method and apparatus to use two speakers and readily-available, economical multi-media DSPs to create 3-D sound. The present invention can be implemented using a distributed computing architecture. Several microprocessors can easily divide the computational load. The present invention is also suitable to scaleable processing.
The present invention provides a method for reducing the amount of computations required to create a sound signal representing one or more sounds, including reflections of the primary source of each sound, where the signal is to be perceived by a listener as emanating from one or more selected positions in space with respect to the listener. The method discloses a novel, efficient solution for synthesizing a virtual acoustic environment (VAE) to listeners, where multiple sound sources and their early reflections can be dynamically or statically positioned in three dimensional space with not only temporal high fidelity but also a correct spatial impression. It addresses the issues of recording and playback of sound and sound recordings, in which echo-free sound can be heard as if it is in a typical acoustic environment, such as a room, a hall, or a chamber, with strong directional cues and localizability in these simulated environments. The method and apparatus of the present invention implement sound localization cues including distance introduced attenuation (DIA), distance introduced delay (DID), interaural time difference (ITD), interaural intensity difference (IID), and head-related impulse response (HRIR) filtering.
The present invention represents HRIRs discretely sampled in space as a continuous function of spatial coordinates of azimuth and elevation. Instead of representing HRIR using measured discrete samples at many directions, the present invention employs a linear combination of a set of eigen filters (EFs) and a set of spatial characteristic functions (SCFs). The EFs are functions of frequency or discrete time samples only. Once they are derived from a set of measured HRIRs, the EFs become a set of constant filters. On the other hand, the SCFs are functions of azimuth and elevation angles. To find the HRIR at a specific direction, a set of SCF samples are first obtained by evaluating the SCFs at specific azimuth and elevation angles. Then SCF samples are used to weigh the EFs and the weighted sum is the resultant HRIR. This representation approximates the measured HRIRs optimally in a least mean square error sense.
To synthesize a 3D audio signal from a specific spatial direction for a listener, a monaural source is first weighted by M samples of SCFs evaluated at the intended location to produce M individually weighted audio streams, where 2≦M≦N and N is the length of HRIRs. Then, the M audio streams are convoluted with M EFs to form M outputs. The summation of the M outputs thus represent the HRIR filtered signal as a monaural output to one ear. Repeating this same process, a second monaural output can be obtained. These two outputs can be used as a pair of binaural signals as long as all the binaural difference (ITD, IID, and two weight sets for left and right HRIRs) are incorporated. The two sets of weights will differ unless the sound source is right in the median plane of the listener's head. The method requires that the audio source be filtered with 2M eigen filters instead of just two left and right HRIRs.
The method illustrates the principle of linear superimposition inherent to the above HRIR representation and its utility in synthesizing multiple sound sources and multiple reflections rendered to listeners as a complex acoustic environment. When K audio signals at K different locations are synthesized for one listener's binaural presentation, each audio source is multiplied by M weights corresponding to the intended location of the signal and M output streams are obtained. Before sending the M streams to M EFs, the same process is repeated for the second source. The M streams of the second source are added to the M streams of the first M signals respectively. By repeating the same process for the rest of the K signals we have M summed signal streams. Then the M summed signal streams are convoluted with M EFs and finally summed to form a monaural output signal. Via the same process we can obtain the second monaural signal with the consideration of binaural difference if these two signals are used for binaural presentation. In this way, even there are K sources, the same amount of filtering, 2M EF, is needed. The increased cost is the weighting process. When M is a small number and K is large, the EF filter length, N, is greater than M, and the processing is efficient.
The present invention also provides an apparatus for reproducing three-dimensional sounds. The apparatus implements the signal modification method disclosed by the invention by using a filter array comprised of two or more filters to filter the signal by implementing the head-related impulse response.
Several different implementations of the apparatus of the present invention are disclosed. These architectures incorporate the necessary data structures and other processing units for implementing essential cues including HRIR filtering, ITD, IID, DIA, and DID between the sources and the listeners. In these architectures, a user interface is provided that allows the virtual sound environment authors to specify the parameters of the sound environment including listeners' positions and head orientations, sound source locations, room geometry, reflecting surface characteristics, and other factors. These specifications are subsequently input to a room acoustics model using imaging methods or other room acoustics models. The room acoustic model generates relative directions of each source and their reflective images with respect to the listeners. The azimuth and elevation angles are calculated with binaural difference in consideration for every possible combination of direct source, reflection image, and the listeners. Distance attenuation and acoustic delays are also calculated for each source and image with respect to each listener. FIFO buffers are introduced as important functional elements to simulate the room reverberence time and the tapped outputs from these buffers can thus simulate reflections of a source with delays by varying the tap output positions. Such buffers are also used as output buffers to collect multiple reflections in alternative embodiments. It is illustrated that room impulse responses that usually requires very long FIR filtration to simulate can be implemented using these FIFO buffers in conjunction with HRIR processing model for high efficiency.
The method and apparatus are extremely flexible and scaleable. For a given limited computing resource it is easy to trade the number of sources (and reflections) with the quality. The degradation in quality is graceful, without an abrupt performance change. The present invention can use off-the-shelf, economical multimedia DSP chips with a moderate amount of memory for VAES. The method and apparatus are also suitable for host-based implementations, for example, Pentium/MMX technology and a sound card without a separate DSP chip. The method and apparatus provide distributed computing architectures that can be implemented on various hardware or software/firmware computing platforms and their combinations for many other applications such as auditory display, loudspeaker array of DVD system virtualization, 3D-sound for game machines and stereo system enhancement, as well as new generations of sound recording and playback systems.
The invention has been implemented in several platforms running both off-line and in real-time. Objective and subjective testing has verified its validity. In a DVD speaker array virtualization implementation, the 5.1 speakers required for Dolby Digital sound presentation are replaced by two loudspeakers. The virtualized speakers are perceived as being accurately positioned at their intended locations. Headphone presentation also has similar performance. Subjects report distinctive and stable sound image 3D positioning and externalization.
Numerous objects, features and advantages of the present invention will be readily apparent to those of ordinary skill in the art upon a reading of the following detailed description of presently preferred, but nonetheless illustrative, embodiments of the present invention when taken in conjunction with the accompanying drawings.
a) is the plot of improvement ratio of computation efficiency of the method of the present invention vs. direct convolution with eigen filter length of 128 taps.
Referring now to the drawings, and particularly to
Eigen Filters (EFs) Design and Spatial Characteristic Function (SCFs) Derivation
To derive the EFs and SCFs, acoustic signals recorded by microphones in both free-field and inserted into the ear canals of a human subject or a mannequin are measured. Free field recordings are made by putting the recording microphones at the virtual positions of the ears without the presence of the human subject or the mannequin; ear canal recordings are made as responses to a stimulus from a loudspeaker moving on a sphere at numerous positions. HRTFs are derived from the discrete Fourier Transform (DFT) of the ear canal recordings and the DFT of the free-field recordings. The HRIRs are further obtained by taking the inverse DFT of the HRTFs. Each derived HRIR includes a built-in delay. For a compact representation, this delay is removed. Alternative phase characteristics, like minimum phase, may be used to further reduce the effective time span of the HRIRs.
In a spherical coordinate system, sound source direction is described in relation to the listener by azimuth angle θ and elevation angle φ, with the front of the head of the listener defining the origin of the system. In the sound source direction coordinate system, azimuth increases in a clockwise direction from zero to 360°; elevation 90° degrees is straight upward and −90° degrees is directly downward. Expressing HRIR at direction i as an N-by-1 column vector h(θ1, φi)=hi, a data covariance matrix can be defined as an N-by-N matrix,
Where T stands for transpose, I stands for the total number of measured HRIRs in consideration, and D(θi, φi) is a weighting function which either emphasizes or de-emphasizes the relative contribution of the ith HRIR in the whole covariance matrix due to uneven spatial sampling in the measurement process or any other considerations. The term have is the weighted average of all hi, i=1, . . . , I. When data are measured by placing a microphone at the position close to tympanic membrane this average component can be significant since it represents the unvarying contribution of ear canal to the measured HRIRs for all directions. When data are measured at the entrance of the ear canal with blocked meatus this component can be small. The HRIRs derived from such kind of data are similar to the definition of directional transfer functions (DTFs) known in the art. The term have is a constant; adding or omitting it does not affect the derivation, so it is ignored in the following discussion.
While HRIR measured at different directions are different, some similarity exists between them. This leads to a theory that HRIRs are laid in a subspace with dimension of M when each HRIR is represented by an N-by-1 vector. If M<<N, then a M-by-1 vector may be used to represent the HRIR, provided that the error is insignificant. That is, the I measured HRIRs can be thought as I points in an N-dimensional space, however, they are clustered in a M-dimensional subspace. If a set of new axes qi, i=1, . . . , M of this subspace can be found, then each HRIR can be represented as M-by-1 vector with each element of this vector being its projection onto qi, i=1, . . . , M. This speculation is verified by applying eigen analysis to the sample covariance matrix consisting of 614 measured HRIRs on a sphere.
Turning now to
b) is a plot of the value of M versus its relative covariance 28. The covariance 28 is represented by the sum of first M eigen values 24 as a function of M. This graph illustrates that the first 3 eigen vectors 22 cover 95%, the first 10 have 99.6%, and the first 16 eigen vectors 26 contain 99.9% of the variance contained in all 614 HRIRs. The mean square error for using the first M eigen vectors to represent the 614 HRIRs is:
where λm, m=M+1, . . . , N are the eigen values with corresponding eigen vectors outside of the subspace. In accordance with the above criterion, the first most significant M eigen vectors are selected as the eigen filters for HRIR space and represent the axes of the subspace. Therefore, each of the I measured HRIR can be approximated as a linear combination of these vectors:
where wm, m=1, . . . , M are the weights obtained by back projection, that is,
wm(θi, φi)=h(θi, φi)qmTi=1, . . . , I (4)
Consequently, in the subspace spanned by the M eigen vectors, each HRIR can be represented by an M-by-1 vector.
The above process not only produces a subset of parameters that represents measured HRIRs in an economical fashion, but also introduces a functional model for HRIR based on a sphere surrounding a listener. This is done by considering each set of weights wm(θi, φi), i=1, . . . ,I as discrete samples of a continuous weight function wm(θ, φ). Applying a two-dimensional interpolation to these discrete samples we can get such M continuous functions. These weighting functions are only dependent upon azimuth and elevation, and thus termed spatial characteristic functions (SCFs). In the present invention, the spatial variations of a modeled HRIR are uniquely represented by weighting functions for a given set of qm(n), m=1, . . . , M,. This definition allows a spatially continuous HRIR to be synthesized as:
where qm(n) is the scalar form of qm. In this expression a tri-variate function HRIR is expressed as a linear combination of a set of bi-variate functions (SCFs) and a set of uni-variate functions (EFs). Eq.(5) takes the form of a Karhunen-Loeve Expansion.
There are many methods to derive continuous SCFs from the discrete sample sets, including two-dimensional FFT and spherical harmonics. One embodiment of the present invention uses a generalized spline model. The generalized spline interpolates the SCF function from discrete samples and applies a controllable degree of smoothing on the samples such that a regression model can be derived. In addition, a spline model can use discrete samples which are randomly distributed in space. The Eq. (5) can be rewritten in a vector form:
Eqs. (5) and (6) accomplish a temporal attributes and spatial attributes separation. This separation provides the foundation for a mathematical model for efficient processing of HRIR filtering for multiple sound sources. It also provides a computation model for distributed processing such that temporal processing and spatial processing can be easily divided into two or more parts and can be implemented on different platforms. Eqs. (5) and (6) are termed spatial feature extraction and regularization (SFER) model of HRIRs.
The SFER model of HRIR allows the present invention to provide a high efficiency processing engine for multiple sound sources. When s(n) represents a sound source to be positioned, y(n) represents a output signal processed by HRIR filter, and h(n, θ, φ) is the HRIRs used to position the source at spatial direction (θ, φ), then, according to Eq. (5),
Eqs. (7c) and (7d) are M times more expensive computationally than the direct convolution Eq. (7a). But when two signals s1(n) and s2(n) are sourced at two different directions (θ1, φ1) and (θ2, φ2) respectively, the output is
where h(n, θ1, φ1) and h(n, θ2, φ2) represent the corresponding HRIRs. Compared with Eq. (7c), Eq. (8c) does not double the number of convolutions even though the number of sources and HRIRs are doubled, instead, it adds M multiplications and(M−1) additions.
Eq. (8c) can be immediately extended to multiple sources case. K independent sources at different spatial locations can be rendered to form a one ear output signal which is the summation of each source convoluted with its respective HRIR:
In Eq. (9c), the inner sum takes K multiplications and (K−1) additions. For a DSP processor featuring multiplication-accumulation instruction it takes K instructions to finish the inner sum loop. If each qm (n) has N taps, then the convolution takes N instructions to finish. Therefore the total number of instructions needed for summing over m is M(N+K). In contrast, the direct convolution will need KN instructions. The improvement ratio η is,
For a moderate size of K, (2≦K≦1000), η is a function of all the parameters M, N, and K. When K—inf., Θ→N/M.
Turning then to
a) depicts computation efficiency improvement ratio for N=128 which is usually used when the sampling rate is 44.1 or 48 kHz.
In Table 1, the minimum case of K is 2, representing a simple 3D-sound positioning system with one source and binaural outputs. For a moderate VAES simulation, several sources with first order and perhaps second order room reflections are considered. For example, four sources with second order reflections included results in total 2×(4+4×(6+36))=344 sources and reflections to be simulated for both ears. If direct convolution is used, 22016 instructions for each sample at a sampling rate of 22.05 kHz are required, which is equivalent to 485 MIPS computing load. This is beyond the capacity of any single processor currently available. However, using the present invention, only 3264 instructions are needed per sample when M=8, which is equivalent to 72 MIPS. If M=4, then only 36 MIPS are needed. This allows many off-the-shelf single DSP processors to be used.
Embodiment of a Basic System for One Source and One Listener
The simplest system needs to virtualize one source with binaural outputs for one listener. In this system, all the three cues including ITD, IID, and HRIR filtering are considered. The HRIR filters are derived from Eq. (7) as follows:
where yL(n) stands for the output to the listener's left ear, wm(θL, φL), m=1, . . . ,M is the weight set that synthesizes a HRIR corresponding to the listener's left ear with respect to the source s(n). Likewise the output to the right ear is:
The Eqs. (10a), (10b), (11a), and (11b) suggest two alternative embodiments.
Turning now to
In
Embodiment of VAES with Multiple Sources and Multiple Reflections.
In the embodiment of
The embodiment of
The embodiment presented in
VAES with one Source and Multiple Reflections
If y(n) represents a monaural output signal to one ear, without discretion of left and right channels, then:
y(n)=s(n−τ0)*h(n, θ0, φ0)+s(n−τ1)*h(n, θ1, φ1)+ . . . +s(n−τJ)*h(n, θJ, φJ) (12a)
where s(n−τ0) represents the source and s(n−τj), j=1, . . . , J represent the images. The location of the source is coded by convoluting these delayed signal with their respective h(n, θj, φj), j=0, . . . , J. Substituting h(n, θj, φj) with its SFER model representation, we Eq. (12) becomes:
The Z-transform of above yields:
where S(Z)Z−r
Eq. (14) suggests the delay can be implemented after convolution and weighting and this leads to an alternative implementation in which only one set of EF filters are needed, thus further reducing the number of convolutions involved.
Returning to
For multiple listeners in an acoustic environment, two major cases are considered. For one situation all the listeners are assumed to be at one location, for example, multi-party movie watching. For this application, the embodiments of
While preferred embodiments of the invention have been shown and described, it will be understood by persons skilled in the art that various changes and modifications may be made without departing from the spirit and scope of the invention which is defined by the following claims. For example, it is understood that a variety of circuitry could accomplish the implementation of the method of the invention, or that a head-related impulse response could be implemented via other mathematical algorithms without departing from the spirit and scope of the invention.
Number | Name | Date | Kind |
---|---|---|---|
4731848 | Kendall et al. | Mar 1988 | A |
5438623 | Begault | Aug 1995 | A |
5467401 | Nagamitsu et al. | Nov 1995 | A |
5500900 | Chen et al. | Mar 1996 | A |
5596644 | Abel et al. | Jan 1997 | A |
5764777 | Goldfarb | Jun 1998 | A |
5802180 | Abel et al. | Sep 1998 | A |
5822438 | Sekine et al. | Oct 1998 | A |
5995631 | Kamada et al. | Nov 1999 | A |
6038330 | Meucci, Jr. | Mar 2000 | A |
6118875 | M.o slashed.ller et al. | Sep 2000 | A |