Method and apparatus for producing binaural audio for a moving listener

A system for generating loudspeaker-ready binaural signals comprises a tracking system for detecting the position and, preferably, the angle of rotation of a listener's head; and means, responsive to the head-tracking means, for generating the binaural signal. The system may also include a crosstalk canceller responsive to the tracking system, and which adds to the binaural signal a crosstalk cancellation signal based on the position (and/or the rotation angle) of the listener's head. The invention may also address the high-frequency components not generally affected by the crosstalk canceller by considering these frequencies in terms of power (rather than phase). By implementing the compensation in terms of power levels rather than phase adjustments, the invention avoids the shortcomings heretofore encountered in attempting to cancel high-frequency crosstalk.

BACKGROUND OF THE INVENTION
 Three-dimensional audio systems create an "immersive" auditory environment,
 where sounds can appear to originate from any direction with respect to
 the listener. Using "binaural synthesis" techniques, it is currently
 possible to deliver three-dimensional audio scenes through a pair of
 loudspeakers or headphones. Using loudspeakers involves greater complexity
 due to interference between acoustic outputs that does not occur with
 headphones. Consequently, a loudspeaker implementation requires not only
 synthesis of appropriate directional cues, but also further processing of
 the signals so that, in the acoustic output, sounds that would interfere
 with the spatial illusion provided by these cues are canceled. Existing
 systems require the listener to assume a fixed position with respect to
 the loudspeakers, because the cancellation functions correctly only in
 this orientation. If the listener moves outside a narrow equalization zone
 or "sweet spot," the illusion is lost.
 It is well known that directional cues are embodied in the transformation
 of sound pressure from the free field to the ears of a listener; see Jens
 Blauert, Spatial Hearing (1983). A "head-related transfer function" (HRTF)
 represents a measurement of this transformation for a specific sound
 location relative to the listener's head, and describes the diffraction of
 sound by the torso, head, and external ear (pinna). Consequently, a pair
 of HRTFs, based on a known or assumed spatial location of the sound
 source, process sound signals so they appear to the listener to emanate
 from the source location--that is, the HRTFs produce a "binaural" signal.
 It is straightforward to synthesize directional cues by convolving a sound
 with the appropriate HRTFs, thereby creating a synthetic binaural signal.
 When this is done using HRTFs designed for a particular listener,
 localization performance essentially matches free-field listening; see
 Wightman et al., J. Acoust. Soc. Am. 85(2):858-867 and 868-878 (1989). The
 use of non-individualized HRTFs-that is, HRTFs designed generically and
 not for a particular listener--results in poorer localization performance,
 particularly regarding front-back confusion and elevation judgments; see
 Wenzel et al., J. Acoust. Soc. Am. 94(1):111-123 (1993).
 The sound travelling from a loudspeaker to the listener's opposite ear is
 called "crosstalk," and results in interference with the directional
 components encoded in the loudspeaker signals. That is, for each ear,
 sounds from the contralateral speaker will interfere with binaural signals
 from the ipsilateral speaker unless corrective steps are taken.
 Loudspeaker-based binaural systems, therefore, require
 crosstalk-cancellation systems. Such systems typically model sound
 emanating from the speakers and reaching the ears is using transfer
 functions; in particular, the transfer functions from two speakers to two
 ears form a 2.times.2 system transfer matrix. Crosstalk cancellation
 involves pre-filtering the signals with the inverse of this matrix before
 sending the signals to the speakers; in this way, the contralateral output
 is effectively canceled for each of the listener's ears.
 Crosstalk cancellation using non-individualized head models (i.e., HRTFs)
 is only effective at low frequencies, where considerable similarity exists
 between the head responses of different individuals (since at low
 frequencies the wavelength of sound approaches or exceeds the size of a
 listener's head). Despite this limitation, existing crosstalk-cancellation
 systems are quite effective at producing realistic three-dimensional sound
 images, particularly for laterally located sources. This is because the
 low-frequency interaural phase cues are of paramount importance to sound
 localization; when conflicting high- and low-frequency localization cues
 are presented to a subject, the sound will usually be perceived at the
 position indicated by the low-frequency cues (see Wightman et al., J.
 Acoust. Soc. Am. 91(3):1648-1661 (1992)). Accordingly, the cues most
 critical to sound localization are the ones most effectively treated by
 crosstalk cancellation.
 Existing crosstalk-cancellation systems usually assume a symmetric
 listening situation, with the listener located directly between the
 speakers and facing forward. The assumption of symmetry leads to
 simplified implementations, such as the shuffler topology described in
 Cooper et al., J. Audio Eng Soc. 37(1/2):3-19 (1989). One can compensate
 for a laterally displaced listener by delaying and attenuating one of the
 output channels (see U.S. Pat. Nos. 4,355,203 and 4,893,342). It is also
 possible to reformat the loudspeaker signals for different loudspeaker
 spread angles, as described, for example, in the '342 patent. It has not,
 however, been possible to maintain a binaural signal for a moving
 listener, or even for one whose head rotates.
 SUMMARY OF THE INVENTION
 The present invention extends the concept of three-dimensional audio to a
 moving listener, allowing, in particular, for all types of head motions
 (including lateral and frontback motions, and head rotations). This is
 accomplished by tracking head position and incorporating this parameter
 into an enhanced model of binaural synthesis.
 Accordingly, in a first aspect, the invention comprises a tracking system
 for detecting the position and, preferably, the angle of rotation of a
 listener's head; and means for generating a binaural signal for broadcast
 through a pair of loudspeakers, the acoustical presentation being
 perceived by the listener as three-dimensional sound--that is, as
 emanating from one or more apparent, predetermined spatial locations. In
 particular, the system includes a crosstalk canceller that is responsive
 to the tracking system, and which adds to the binaural signal a crosstalk
 cancellation signal based on the position (and/or the rotation angle) of
 the listener's head. The crosstalk canceller may be implemented in a
 recursive or feedforward design. Furthermore, the invention may compute
 the appropriate filter, delay, and gain characteristics directly from the
 output of the tracking system, or may instead be implemented as a set of
 filters (or, more typically, filter functions) pre-computed for various
 listening geometries, the appropriate filters being activated during
 operation as the listener moves; the system is also capable of
 interpolating among the pre-computed filters to more precisely accommodate
 user movements (not all of which will result in geometries coinciding with
 those upon which the pre-computed filters are based).
 In a second aspect, the invention addresses the high-frequency components
 not generally affected by the crosstalk canceller. Moreover, since the
 wavelengths involved are small, cancellation of these frequencies cannot
 be accomplished using a nonindividualized head model; attempts to cancel
 high-frequency crosstalk can actually sound worse than simply passing the
 high frequencies unmodified. Indeed, even when using an individualized
 head model, the high-frequency inversion becomes critically sensitive to
 positional errors because the size of the equalization zone is
 proportional to the wavelength. In the context of the present invention,
 however, high frequencies can prove problematic, interfering with dynamic
 localization by a moving listener. The invention addresses high-frequency
 interference by considering these frequencies in terms of power (rather
 than phase). By implementing the compensation in terms of power levels
 rather than phase adjustments, the invention avoids the shortcomings
 heretofore encountered in attempting to cancel high-frequency crosstalk.
 Moreover, this approach is found to maintain the "power panning" property.
 As sound is panned to a particular speaker, the listener expects power to
 emanate from the directionally appropriate speaker; to the extent power
 output from the other speaker does not diminish accordingly, the power
 panning property is violated. The invention retains the appropriate power
 ratio for high frequencies using, for example, a series of shelving
 filters in order to compensate for variations in the listener's head angle
 and/or sound panning.
 Preferred implementations of the present invention utilize a
 non-individualized head model based on measurements of a conventional
 KEMAR dummy head microphone (see, e.g., Gardner et al., J. Acoust. Soc.
 Am. 97(6):3907-3908 (1995)) both for binaural synthesis and
 transmission-path inversion. It should be appreciated, however, that any
 suitable head model--including individualized or non-individualized
 models--may be used to advantage.

DETAILED DESCRIPTION OF AN ILLUSTRATIVE EMBODIMENT
 a. Mathematical Framework
 Binaural synthesis is accomplished by convolving an input signal with a
 pair of HRTFs:
 ##EQU1##
 where x is the input signal, x is a column vector of binaural signals, and
 h is a column vector of synthesis HRTFs. In other words, h introduces the
 appropriate binaural localizing cues to impart an apparent spatial origin
 for each reproduced source. Ordinarily, where binaural audio is
 synthesized rather than reproduced, a location (real or arbitrary) is
 associated with each source, and binaural synthesis function h introduces
 the appropriate cues to the signals corresponding to the sources; for
 example, each source may be recorded as a separate track in a multitrack
 recording system, and binaural synthesis is accomplished when the signals
 are mixed. To reproduce rather than synthesize binaural audio, the
 individual signals must be recorded with spatial cues encoded, in which
 case the h vector has, in effect, already been applied.
 The vector x is a "binaural signal" in that it would be suitable for
 headphone listening, perhaps with some additional equalization applied. In
 order to deliver the binaural signal over loudspeakers, it is necessary to
 cancel the crosstalk. This is accomplished by filtering the signal with a
 2.times.2 matrix T of transfer functions:
 ##EQU2##
 where y, the output vector of loudspeaker signals, may be termed a
 "binaural loudspeaker signal" and the filter T is the crosstalk canceller.
 The standard two-channel listening geometry is depicted in FIG. 1. The
 signals e.sub.L and e.sub.R actually reaching the listener's ears are
 related to the speaker signals by
 ##EQU3##
 where e is a column vector of ear signals, A is the acoustical transfer
 matrix, and y is a column vector of speaker signals. The ear signals are
 considered to be measured by an ideal transducer somewhere in the ear
 canal such that all direction-dependent features of the head response are
 captured. The functions A.sub.xy each represent the transfer function from
 speaker X .epsilon.{L, R} to ear Y .epsilon.{L, R} and include the speaker
 frequency response, air propagation, and head response. These functions
 are well-characterized and routinely determined. A can be factored as
 follows:
 ##EQU4##
 where H is the "head-transfer matrix," a matrix of HRTFs normalized with
 respect to the free-field response at the center of the head (with no head
 present). The measurement point of the HRTFs, for example at the entrance
 of the ear canal--and hence the definition of the ear signals e--is left
 unspecified for simplicity, this being a routine parameter readily
 selected by those skilled in the art. S is the "speaker transfer matrix,"
 a diagonal matrix that accounts for the frequency response of the speakers
 and the air propagation to the listener; again, these are routine,
 well-characterized parameters. S.sub.X is the frequency response of
 speaker X and A.sub.X is the transfer function of the air propagation from
 speaker X to the center of the head (with no head present).
 FIG. 2 illustrates the playback system based on the above methodology. An
 input signal x is processed by two synthesis HRTFs H.sub.R, H.sub.L to
 create binaural signals X.sub.R, X.sub.L (based on predefined spatial
 positioning values associated with the source of x). These signals are fed
 through a crosstalk canceller implementing the transfer function T to
 produce loudspeaker signals Y.sub.R, Y.sub.L. The loudspeaker signals
 stimulate operation of the speakers P.sub.R, P.sub.L which produce an
 output that is perceived by the user. The transfer fictional A models the
 effects of air propagation, relating the output of speakers P.sub.R,
 P.sub.L the sounds e.sub.R, e.sub.L actually reaching the listener's ears.
 In practice, the synthesis HRTFs and the crosstalk-cancellation function T
 are generally implemented computationally, using conventional digital
 signal-processing (DSP) equipment. Such equipment can take the form of
 software (e.g., digital filter designs) running on a general-purpose
 computer and processing digital (sampled) signals according to algorithms
 corresponding to the filter function, or specialized DSP equipment having
 appropriate sampling circuitry and specialized processors configured for
 rapid execution of signal-processing functions. DSP equipment may include
 synthesis programs allowing the user to directly create digital signals,
 analog-to-digital converters for converting analog signals to a digital
 format, and digital-to-analog converters for converting the DSP output to
 an analog signal for driving, e.g., loudspeakers. By "general-purpose
 computer" is meant a conventional processor design including a
 central-processing unit, computer memory, mass storage device(s), and
 inputloutput (I/O) capability, all of which allows the computer to store
 the DSP functions, receive digital and/or analog signals, process the
 signals, and deliver a digital and/or analog output. Accordingly,
 block-diagram boxes appearing in the figures herein and denoting
 signal-processing finctions (other than those, such as A, that occur
 environmentally) are, unless otherwise specified, intended to represent
 not only the functions themselves, but also appropriate equipment for
 their implementation.
 FIG. 3 illustrates how the binaural signal x may be the sum of multiple
 input signals rendered at various locations. Each sound x.sub.l`, X.sub.2.
 . . X.sub.N is convolved with the appropriate HRTF pair H.sub.L1, H.sub.R1
 ; H.sub.L2, H.sub.R2. . . H.sub.LN, H.sub.RN, and the resulting binaural
 signals are summed to form the composite binaural signals X.sub.R,
 X.sub.L. For simplicity, in the ensuing discussion the binaural-synthesis
 procedure will be specified for a single source only.
 Again with reference to FIG. 2, in order to exactly deliver the binaural
 signals to the ears, the crosstalk-cancellation filter T is chosen to be
 the inverse of the acoustical transfer matrix A, such that:
EQU T=A.sup.-1 =S.sup.-1 H.sup.-1 (Eq. 5)
 This implements the transmission-path inversion. H.sup.-1 is the inverse
 head-transfer matrix, and S.sup.-1 associates an inverse filter with each
 speaker output:
 ##EQU5##
 The 1/S.sub.x terms invert the speaker frequency responses and the
 1/A.sub.x terms invert the air propagation. In practice, this equalization
 stage may be omitted if the listener is equidistant from two well-matched,
 high-quality loudspeakers. When the listener is off-axis, however, it is
 necessary to delay and attenuate the closer loudspeaker so that the
 signals from the two loudspeakers arrive simultaneously at the listener
 with equal amplitude; this signal alignment is accomplished by the
 1/A.sub.x terms.
 In a realtime implementation, it is necessary to cascade the
 crosstalk-cancellation filter with enough "modeling" delay to create a
 causal system--that is, a system where the output of each filter derives
 from a previous input. In an acausal system, which arises only as a
 mathematical artifact of the modeled filter and cannot actually be
 realized, the filter output appears to anticipate the input, effectively
 advancing the input signal in time. In order to correct for this anomaly,
 the input signal to the acausal filter is delayed so that the filter has
 effective (i.e., apparent) access to future input samples. Adding a
 discrete-time modeling delay of m samples to Eq. 5, and representing the
 resulting signal in the frequency domain using a z-transform:
EQU T(z)=z.sup.-m S.sup.-1 (z)H.sup.-1 (z) (Eq. 7)
 The amount of modeling delay needed will depend on the particular
 implementation. For simplicity, in the ensuing discussion modeling delay
 and the speaker equalization term S.sup.-1 are omitted. Thus, while Eq. 5
 represents the general solution, for purposes of discussion the
 crosstalk-cancellation filters are represented herein according to
EQU T=H.sup.-1 (Eq. 8)
 The inverse head-transfer matrix is given by:
 ##EQU6##
 where D is the determinant of the matrix H. The inverse determinant 1/D is
 common to all terms and determines the stability of the inverse filter.
 Because it is a common factor, however, it only affects the overall
 equalization and does not affect crosstalk cancellation. When the
 determinant is 0 at any frequency, the head-transfer matrix is singular
 and the inverse matrix is undefined.
 As shown in Moller, Applied Acoustics 36:171-218 (1992), Eq. 9 can be
 rewritten as:
 ##EQU7##
 where
 ##EQU8##
 are the interaural transfer functions (ITFs), described in greater detail
 below. Crosstalk cancellation is effected by the -ITF terms in the
 off-diagonal positions of the righthand matrix. These terms estimate the
 crosstalk and send an out-of-phase cancellation signal into the opposite
 channel. For instance, the right input signal is convolved with ITF.sub.R,
 which estimates the crosstalk that will reach the left ear, and the result
 is subtracted from the left output signal. The common term 1/(1-ITF.sub.L
 ITF.sub.R) compensates for higher-order crosstalks--i.e., the fact that
 each crosstalk cancellation signal itself transits to the opposite ear and
 must be cancelled. It is a power series in the product of the left and
 right interaural transfer functions, which explains why both ear signals
 require the same equalization signal: both ears receive the same
 high-order crosstalks. Because crosstalk is more significant at low
 frequences, as explained above, this term is essentially a bass boost. The
 lefthand diagonal matrix, which may be termed "ipsilateral equalization,"
 associates the ipsilateral inverse filter 1/H.sub.LL with the left output
 and 1/H.sub.RR with the right output. These are essentially high-frequency
 spectral equalizers and, as is known, are important for perceiving rear
 sources using frontal loudspeakers. Sounds from the speakers, left
 unequalized, would naturally encode a frontal directional cue. Thus, in
 order to apply an arbitrary directional cue (e.g., to simulate a rear
 source), it is necessary first to invert the frontal cue.
 Strictly speaking, the matrix H is invertible if and only if it is
 non-singular, i.e., if its determinant D.noteq.0 (see Eq. 9). In practice,
 it is always possible to limit the magnitude of 1/D in frequency ranges
 where D is small, and in these frequency ranges the inverse matrix only
 approximates the true inverse. A stable finite impulse response (FIR)
 filter can be designed by incorporating suitable modeling delay into the
 inverse determinant filter.
 The form of the inverse matrix given in Eq. 10 suggests a recursive
 implementation--that is, a topology where the estimated crosstalk is
 derived from the output of each channel and a negative cancellation signal
 based thereon is applied to the opposite channel's input signal. Various
 recursive topologies for implementing crosstalk-cancellation filters are
 known in the art; see, e.g, U.S. Pat. No. 4,1 18,599.
 In particular, if the term 1/(1-ITF.sub.L ITF.sub.R) is implemented using a
 feedback loop, then this will be realizable if the cascade of the two ITFs
 contains at least one sample of delay. Modeling the ITF as a causal filter
 cascaded with a delay, the condition for realizability is that the sum of
 the two interaural time delays (ITDs) be greater than zero:
EQU ITD.sub.L +ITD.sub.R &gt;0
 Similarly, the feedback loop will be stable if and only if the loop gain is
 less than 1 for all frequencies:
EQU .vertline.ITF.sub.L (e.sup.j.omega.).parallel.ITF.sub.R
 (e.sup.j.omega.).vertline.&lt;1, .A-inverted..omega. (Eq. 13)
 Considering a spherical head model, these constraints are met when the
 listener is facing forward, i.e.:
EQU -90&lt;.theta..sub.h &lt;90 (Eq. 14)
 where .theta..sub.h is the head azimuth angle, such that 0 degrees is
 facing straight ahead.
 As explained previously, crosstalk cancellation is advantageously performed
 only at relatively low frequencies (e.g., .ltoreq.6 kHz). The general
 solution to the crosstalk-cancellation filter function given in Eq. 8 can
 be bandlimited so that crosstalk cancellation is operative only below a
 desired cutoff frequency. For example, one can define the transfer
 function T as follows:
 ##EQU9##
 where H.sub.LP and H.sub.HP are lowpass and highpass filters, respectively,
 with complementary magnitude responses. Accordingly, at low frequencies, T
 is equal to H.sup.-1, and at high frequencies T is equal to the identity
 matrix. This means that crosstalk cancellation and ipsilateral
 equalization occur at low frequencies, and at high frequencies the
 binaural signals are passed unchanged to the loudspeakers.
 Alternatively, one can define T as:
 ##EQU10##
 Here the cross-terms of the head-transfer matrix are lowpass-filtered prior
 to inversion, as suggested in the '342 patent mentioned above. Applying a
 lowpass filter to the contralateral terms has the effect of replacing each
 ITF term in Eq. 10 with a lowpass-filtered ITF. This yields filters that
 are straightforwardly implemented.
 Using the bandlimited form of Eq. 16, at low frequencies T is equal to
 H.sup.-1, but now at high frequencies (above the cutoff frequency f.sub.c
 of the lowpass filter), T continues to implement the ipsilateral
 equalization:
 ##EQU11##
 Using Eq. 16, when sound is panned to the location of a speaker, the
 response to that speaker will be flat, as desired. Unfortunately, the
 other speaker will be emitting power at high frequencies, which are
 unaffected by crosstalk cancellation (that is, the crosstalk-cancellation
 filter is not implementing the inverse matrix at these frequencies). As
 detailed below, the invention provides for re-establishing the power
 panning property at high frequencies.
 b. Crosstalk Cancellation for a Moving Listener
 As suggested above, the ITF represents the relationship between ear signals
 (i.e., sound pressures) reaching the two ears from a given source
 location, and is represented generally by the ratio:
 ##EQU12##
 where H.sub.c is the contralateral response and Hi is the ipsilateral
 response. The ITF has a magnitude component reflecting increasing
 attenuation due to head diffraction as frequency increases, and a phase
 component reflecting the fact that the signal from the ipsilateral speaker
 reaches the ipsilateral ear before it reaches the contralateral ear (i.e.,
 the interaural time delay, or ITD). Using a KEMAR ITF at 30 degrees
 incidence, it has been observed that at frequencies below 6 kHz, the
 frequency component of the ITF behaves like a lowpass filter with a gentle
 rolloff, but at higher frequencies the ITF magnitude has large peaks
 corresponding to notches in the ipsilateral response.
 Because the sound wavefront reaches the ipsilateral ear first, it is
 tempting to think that the ITF has a causal time representation. In fact,
 the inverse ipsilateral response will be infinite and two-sided because of
 non-minimum-phase zeros in the ipsilateral response. The ITF therefore
 will also have infinite and two-sided time support. Nevertheless, it is
 possible to accurately approximate the ITF at low frequencies using causal
 (and stable) filters. Causal implementations of ITFs are needed to
 implement realizable, realtime filters that can model head diffraction.
 It is known that any rational system function--that is, a function
 describing a filter that can actually be built--can be decomposed into a
 minimum-phase system cascaded with an allpass-phase system, which can be
 represented mathematically as:
EQU H(z)=minp(H(z))allp(H(z)) (Eq. 19)
 According to this formulation, the ITF can be seen as the ratio of the
 minimum-phase parts of the contralateral and ipsilateral responses
 cascaded with an all-pass system whose phase response is the difference of
 the excess (allpass) phases of the ipsilateral and contralateral responses
 at the two ears (see Jot et al., "Digital Signal Processing Issues in the
 Context of Binaural and Transaural Stereophony," Proc. Audio Eng. Soc.
 Conv. (1995)):
 ##EQU13##
 It has been shown that for all incidence angles, the excess phase
 difference in Eq. 20 is approximately linear with frequency at low
 frequencies. Consequently, the ITF can be modeled as a
 frequency-independent delay cascaded with the minimum-phase part of the
 true ITF:
 ##EQU14##
 where ITD is the frequency-independent interaural time delay, and T is the
 sampling period.
 The invention requires lowpass-filtered ITFs. Because these are to be used
 to predict and cancel acoustic crosstalk, accurate phase response is
 critical. High-order zero-phase lowpass filters are unsuitable for this
 purpose because the resulting ITFs would not be causal. In accordance with
 the invention, m samples of modeling delay are transferred from the ITD in
 order to facilitate design of a lowpass filter that is approximately (or
 exactly) linear phase with a phase delay of m samples. The resulting
 lowpassfiltered ITF may be generalized as follows:
EQU H.sub.LPF
 (e.sup.j.omega.)ITF(e.sup.j.omega.).apprxeq.L(e.sup.j.omega.)e.sup.
 -j.omega.(ITD/T-m) (Eq. 22)
 such that
EQU l[n]=0 for n&lt;0
EQU .angle.H.sub.LPF (e.sup.j.omega.).apprxeq.-m.omega.
 where L(e.sup.j.omega.) is a causal filter--causality is enforced by the
 condition l[n] =0 for n&lt;0--that describes head diffraction within some
 time shift, and m is the modeling delay of H.sub.LPF (e.sup.j.omega.)
 taken from the ITD. The closest approximation is obtained when all the
 available ITD is used for modeling delay. However, it is also possible to
 utilize a parameterized implementation that cascades a filter L(z) with a
 variable delay to simulate an azimuth-dependent ITF. In this case, the
 range of simulated azimuths is increased if m is minimized.
 There are two approaches to obtaining the filter L(z), differing in the
 method by which the ITF is calculated. One technique is based on the ITF
 model of Eq. 21, and entails (a) separating the HRTFs into minimum-phase
 and excess-phase parts, (b) estimating the ITD by linear regression on the
 interaural excess phase, (c) computing the minimum-phase ITF, and (d)
 delaying this by the estimated ITD. The other technique is to calculate
 the ITF by convolving the contralateral response with the inverse
 ipsilateral response. The inverse ipsilateral response can be obtained by
 computing its discrete Fourier transform (DFT), inverting the spectrum,
 and computing the inverse DFT. Using either method of computing the ITF,
 the filter L(z) can then be obtained by lowpass filtering the ITF and
 extracting l[n] from the time response starting at sample index
 floor(ITD/T-m).
 The basic topology of a system implementing the invention is shown in FIG.
 4. A series of sounds x.sub.1 . . . X.sub.N, each associated with a
 spatial location, are provided to a binaural synthesis module. In
 accordance with Eq. 1, module 100 generates a binaural signal vector x
 with the components X.sub.L X.sub.R. These are fed to a
 crosstalk-cancellation unit 110, which generates crosstalk-cancellation
 signals in the manner described above and combines the cancellation
 signals with X.sub.L and X.sub.R. The final signals are fed to a pair of
 loudspeakers 115.sub.R, 115.sub.L, which emit sounds perceived by the
 listener LIS. The system also includes a video camera 117 and a
 head-tracking unit 125. Camera 117 generates electronic picture signals
 that are interpreted in realtime by tracking unit 125, which derives
 therefrom both the position of listener LIS relative to speakers
 115.sub.R, 115.sub.L and the rotation angle of the listener's head
 relative to speakers 115.sub.R, 115.sub.L. Equipment for analyzing video
 signals in this manner is well-characterized in the art; see, e.g., Oliver
 et al., "LAFTER: Lips and Face Real Time Tracker," Proc. IEEE Int. Conf on
 Computer Vision and Pattern Recognition(1997).
 The output of tracking system 125 is utilized by modules 100, 110 to
 generate the binaural signals and crosstalk-cancellation signals,
 respectively. Preferably, however, tracking-system output is not fed
 directly to modules 100, 110, but is instead provided to a storage and
 interpolation unit 130, which, based on head position and rotation,
 selects appropriate values for the filter functions implemented by modules
 100, 110. As a result of binaural synthesis and crosstalk cancellation,
 the sounds s.sub.1 . . . S.sub.N emitted by speakers 115.sub.R, 115.sub.L,
 and corresponding to the input signals x.sub.1 . . . X.sub.N, appear to
 the listener LIS to emanate from the spatial locations associated with the
 input signals.
 FIG. 5 illustrates a recursive, bandlimited implementation of binaural
 synthesis module 100 and crosstalk canceller 110, which together
 compensate for head position and angle. The illustrated filter topology
 includes means for receiving an input signal x; a pair of right-channel
 and left-channel HRTF filters 200.sub.L, 200.sub.R, respectively; three
 variable delay lines 205, 210, 215 that dynamically change in response to
 head position and rotation angle data reported by tracking unit 125; two
 fixed delay lines 220, 225 that enforce the condition of causality,
 ensuring that the variable delays are always non-negative; a pair of
 right-channel and left-channel "head-shadowing" filters 230.sub.L,
 230.sub.R, respectively, that model head diffraction and are also
 responsive to tracking unit 125; a pair of minimum-phase ipsilateral
 equalization filters 235.sub.L, 235.sub.R ; and a pair of variable gains
 (amplifiers) 240.sub.L, 240.sub.R, which compensate for attenuation due to
 air propagation over different distances to the different ears. The
 recursive structure is implemented by a pair of negative adders 245.sub.L,
 245.sub.R which, respectively, negatively mix the output of head-shadowing
 filter 230.sub.R with the left-channel signal emanating from variable
 delay 205, and the output of head-shadowing filter 230.sub.L with the
 right-channel signal emanating from fixed delay 220. Crosstalk
 cancellation is effected by head-shadowing filters 230.sub.L, 230.sub.R ;
 variable delays 205, 210, 215; minimum-phase equalization filters
 235.sub.L, 235.sub.R ; and variable gains 240.sub.L 240.sub.R. The result
 is a pair of speaker signals Y.sub.L, Y.sub.R that drive respective
 loudspeakers 250.sub.L, 250.sub.R.
 Operation of the implementation shown in FIG. 5 may be understood with
 reference to FIGS. 6 and 7, which illustrate simplifications of the
 approach taken. For simplicity of discussion, the various hypothetical
 filters of FIGS. 6 and 7 are treated as functions (and are not labeled as
 components actually implementing the functions).
 In FIG. 6, the left and right components of the input signal x are
 processed by a pair of HRTFs H.sub.L, H.sub.R, respectively. The functions
 L.sub.L (z) and L.sub.R (Z) correspond to the filter functions L(z)
 described earlier. As these model the interaural transfer functions, each
 effectively estimates the crosstalk that will reach the contralateral ear.
 Accordingly, the crosstalk is cancelled by feeding the negative of this
 estimated signal to the opposite channel. By feeding back to the opposite
 channel's input rather than its output, higher-order crosstalks are
 automatically cancelled as well. The resulting additive signals t.sub.L,
 t.sub.R must then be equalized with the inverse ipsilateral response
 (1/H.sub.LL, 1/H.sub.RR). The delays ITD.sub.L /T, ITD.sub.R /T
 compensate. for the interaural time delays to the contralateral ears,
 while the delays m.sub.L, m.sub.R representing modeling delays inherent in
 the L.sub.L (z) and L.sub.R (Z) functions. The functions 1/(S.sub.L
 A.sub.L), 1/(S.sub.R A.sub.L) implement Eq. 6, compensating for speaker
 frequency responses and air propagation by delaying and attenuating the
 closer loudspeaker.
 The structure of FIG. 6 is realizable only when both feedback delays (i.e.,
 d(ITD.sub.L /T-m.sub.L), d(ITD.sub.R /T-m.sub.R) are greater than 1. To
 allow one of the ITDs to become negative, the total loop delay is
 coalesced into a single delay. This is shown in FIG. 7. The delays
 d(p.sub.1), d(p.sub.2) implement integer or fractional delays of p
 samples, with P.sub.1 and P.sub.2 chosen to be large enough so that all
 variable delays are always non-negative. The function z.sup.-1 L.sub.R (z)
 represents L.sub.R (Z) cascaded with a single sample delay, the latter
 necessary to ensure that the feedback loop is realizable (since the loop
 delay d(ITD.sub.L /T+ITD.sub.R /T-m.sub.L -m.sub.R -1) is not prohibited
 from going to zero). The realizability constraint is then:
 ##EQU15##
 This constraint accounts for the single sample delay remaining in the loop
 and the modeling delays inherent in the lowpass head-shadowing filters
 L.sub.L (z), L.sub.R (Z).
 With renewed reference to FIG. 4, equalization of the crosstalk-cancelled
 output signals t.sub.L, t.sub.R is effected by filters 235.sub.L,
 235.sub.R and gains 240.sub.L, 240.sub.R. It should be stressed that the
 ipsilateral equalization filters 235 not only provide high-frequency
 spectral equalization, but also compensate for the asymmetric path lengths
 to the ears when the head is rotated. To convert the functions implemented
 by ipsilateral filters 235 to ratios, thereby facilitating separation of
 the asymmetric path-length delays according to Eq. 21, it is possible to
 use free-field equalized synthesis HRTFs; the ipsilateral equalization
 filter functions then become referenced to the free-field direction (i.e.,
 an ideal incident angle to a speaker, usually 30.degree. from each ear for
 a two-speaker system). It is most convenient to reference the synthesis
 HRTFs with respect to the loudspeaker direction .theta..sub.s.
 Using this approach, the expression H.sub.x /H.sub..theta..sub..sub.s
 represents the synthesis filter in channel X .epsilon.{L, R} and the
 corresponding ipsilateral equalization filter becomes
 H.sub..theta..sub..sub.s ,/H.sub.xx, where H.sub..theta..sub..sub.s is
 the HRTF for the speaker incidence angle .theta..sub.s. Thus, the
 ipsilateral equalization filter function will be flat when the head is not
 rotated. The function H.sub..theta..sub..sub.x is a constant parameter of
 the system, derived once and stored as a permanent function of frequency.
 Applying the model of Eq. 21,
 ##EQU16##
 where b.sub.x is the delay in samples for ear X.epsilon.{L, R} relative to
 the unrotated head position.
 In practice, the speaker inverse filters 1/S.sub.X may be ignored. On the
 other hand, the air-propagation inverse filters 1/A.sub.x are very
 important, because they compensate for unequal path lengths from the
 speakers to the center of the head. This effect may be modeled accurately
 as:
EQU A.sub.x (e.sup.j.omega.)=k.sub.x e.sup.-j.omega..sup..sub.x (Eq. 25)
 The combined ipsilateral and air-propagation inverse filter for channel
 X-i.e., the function implemented by filters 235.sub.L, 235.sub.R --is
 then:
 ##EQU17##
 A final simplification is to combine all of the variable delay into the
 left channel (i.e., into delay 215), which is accomplished by associating
 a variable delay of a.sub.L -b.sub.L with both channels. As a result, the
 head motions that change the difference in path lengths from the speakers
 to the ears will induce a slight but substantially unnoticeable pitch
 shift in both output channels.
 The filter functions H.sub.x, H.sub.xx, ITD.sub.x, and L.sub.x (z), as well
 as the delays a.sub.x and b.sub.x and the gains 1/k.sub.x, explicitly
 account for head angle and position. Consequently, their values must be
 updated as the listener's head moves. Rather than attempt to solve the
 complicated mathematics in realtime during operation, it is preferred to
 pre-compute a relatively large table of delay and gain parameters and
 filter coefficients, each set being associated with a particular listener
 geometry. The table may be stored as a database by storage and
 interpolation unit 130 (e.g., permanently in a mass-storage device, but at
 least in part in fast-access volatile computer memory during operation).
 As tracking system 125 detects shifts the listener's head position and
 rotation angle relative to the speakers, it accesses the corresponding
 functions and parameters, and provides these to crosstalk canceller
 110--in particular, to the filter elements implementing the functions
 H.sub.x, H.sub.xx, ITD.sub.x, and L.sub.x (z), a.sub.x, b.sup.x, and
 1/k.sub.x. For listener geometries not precisely matching a stored entry,
 unit 130 interpolates between the closest entries.
 Filters 230.sub.L, 230.sub.R may be implemented using low-order infinite
 impulse response (IIR) filters, with values for different listener
 geometries computed in accordance with Eqs. 21 and 22. HRTFs are well
 characterized, and H.sub.x and H.sub.xx can therefore be computed, derived
 empirically, or merely selected from published HRTFs to match various
 listener geometries. In FIG. 8, the L(z) filter function is shown for
 azimuth angles ranging from 5.degree. to 45.degree..
 Delay lines 205, 210, 215 may be implemented using low-order FIR
 interpolators, with the various components computed for different listener
 geometries as follows. The parameter ITD.sub.x is a function of the head
 angle with respect to speaker X, representing the different arrival times
 of signals reaching the ipsilateral and contralateral ears. ITD.sub.x can
 be calculated from a spherical head model; the result is a simple
 trigonometric function:
EQU ITD.sub.x =D/2+L c(.theta..sub.x +sin .theta..sub.X) (Eq. 27)
 where D=17.5 cm is the spherical head diameter, c=344 m/sec is the speed of
 sound, and .theta..sub.x is the incidence angle of speaker X with respect
 to the listener's head, such that ipsilateral incidence results in
 positive angles and hence positive ITDs. Alternatively, the ITD can be
 calculated from a set of precomputed ITFs by separating the ITFs into
 minimum-phase and allpass-phase parts, and computing a linear regression
 on the allpass-phase part (the interaural excess phase). FIG. 9 shows both
 methods of computing the ITD for azimuths from 0 to 180.degree.: the solid
 line represents the geometric model of Eq. 27, while the dashed line is
 the result of performing linear regression on the interaural excess phase.
 The parameter b.sub.x is a function of head angle, the constant parameter
 .theta..sub.s (the absolute angle of the speakers with respect to the
 listener when in the ideal listening location), and the constant parameter
 .function..sub.s (the sampling rate). The parameter b.sub.x represents the
 delay (in samples) of sound from speaker X reaching the ipsilateral ear,
 relative to the delay when the head is in the ideal (unrotated) listening
 location. Like ITD.sub.x, b.sup.x may be calculated from a spherical head
 model; the result is a trigonometric function:
 ##EQU18##
 where .theta..sub.H is the rotation angle of the head, such that
 .theta..sub.H =0 when the listener's head is facing forward, and the
 function s(.theta.) is defined as:
 ##EQU19##
 Finally, b.sub.L (.theta.) is defined as b.sub.R (-.theta.). An alternative
 to using the spherical head model is to compute the b.sup.x parameter by
 performing linear regression on the excess-phase part of the ratio of the
 HRTFs H.sub..theta..sub..sub.x and H.sub.xx. This is analogous to the
 above-described technique for determine the ITD from a ratio of two HRTFs.
 FIG. 10 shows the results of using both methods to compute b.sub.R for
 head azimuths from -90.degree. to +90.degree., with .theta..sub.s
 =30,.function..sub.s =44100: the solid line represents the geometric model
 of Eq. 28, and the dashed line results from performing linear regression
 on the excess-phase part of the ratio of the appropriate HRTFs.
 The parameters a.sub.x and k.sub.x are functions of the distances d.sub.L
 and d.sub.R between the center of the head and the left and right
 speakers, respectively. These distances are provided along with the
 head-rotation angle by tracking means 125 (see FIG. 4). In accordance with
 Eq. 25, a.sub.x represents the air-propagation delay in samples between
 speaker X and the center of the head, and k.sub.x is the corresponding
 attenuation in sound pressure due to the air propagation. Without loss of
 generality, these parameters may be normalized with respect to the ideal
 listening location such that a.sub.x =0 and k.sub.x =1 when the listener
 is ideally situated. The equations for a.sub.x and k.sub.x are then:
 ##EQU20##
 where d.sub.x is the distance from the center of the head to speaker X
 (expressed in meters), and d is the distance from the center of the head
 to the speakers when the listener is ideally situated (also expressed in
 meters).
 The implementation shown in FIG. 5 can be simplified by eliminating the
 ipsilateral equalization filters 235.sub.L, 235.sub.R as illustrated in
 FIG. 11. This approach uses efficient implementations for the
 head-shadowing filters 230.sub.L, 230.sub.R and for the variable delay
 lines 205, 210, 215. Preferably, each head-shadowing filter 230.sub.L,
 230.sub.R is implemented as shown in FIG. 12, using a one-pole,
 DC-normalized, lowpass filter 260 cascaded with an attenuating multiplier
 265. The frequency cutoff of lowpass filter 260, specified by the
 parameter u (and representing a simple function of .function..sub.cf and
 .function..sub.s), is preferably set between 1 and 2 kHz. The parameter v
 specifies the DC gain of the circuit, and is preferably between 1 and 3 db
 of attenuation. Using this implementation of head-shadowing filter 230,
 the modeling delays m.sub.L, m.sub.R are both zero, and the ITD.sub.L,
 ITD.sub.R parameters calculated as described above.
 Variable delay lines 205, 210, 215 can be implemented using linearly
 interpolated delay lines, which are well known in the art. A
 computer-based device is shown in FIG. 13. Input samples enter the delay
 line 270 on the left and are shifted one element to the right each
 sampling period. In practice, this is accomplished by moving the read and
 write pointers that access the delay elements in computer memory. A delay
 of D samples, where D has both integer and fractional parts, is created by
 computing the weighted sum of two adjacent samples read from locations
 addr and addr+1 using a pair of variable gains (amplifiers) 275, 280 and
 an adder 285. The parameter addr is obtained from the integer part of D,
 and the weighting gain 0 &lt;p&lt;1 is obtained from the fractional part of D.
 Another alternative to the implementation shown in FIG. 5 is the
 "feedforward" approach illustrated in FIG. 14, which utilizes the
 lowpass-filtered inverse head-transfer matrix of Eq. 16. This
 implementation includes means for receiving an input signal x; a pair of
 right-channel and left-channel HRTF filters 300.sub.L, 300.sub.R,
 respectively; a series of feedforward lowpass crosstalk-cancellation
 filters 305, 310, 315, 320; a variable delay line 325 (with P.sub.2,
 a.sub.R, and a.sub.L defined as above); a fixed delay line 330; and a pair
 of vari20 able gains (amplifiers) 340.sub.L, 340.sub.R. The determinant
 term of the crosstalk-cancellation filters is
 ##EQU21##
 where H.sub.LP is the lowpass term; and once again, the variable delay line
 and the variable gains compensate for asymmetric path lengths to the head.
 A pair of negative adders 355.sub.L, 355.sub.R negatively mix,
 respectively, the output of filter 315 with that of filter 305, and the
 output of filter 310 and with that of filter 320. The result is a pair of
 speaker signals Y.sub.L, Y.sub.R that drive respective loudspeakers
 350.sub.L, 350.sub.R.
 Each of the feedforward filters may be implemented using an FIR filter, and
 module 130 can straightforwardly interpolate between stored filter
 parameters (each corresponding to a particular listening geometry) as the
 listener's head moves. The filters themselves are readily designed using
 inverse filter-design techniques based on the discrete Fourier transform
 (DFT). At a 32 kHz sampling rate, for example, an FIR length of 128 points
 (4 msec) yields satisfactory performance. FIR filters of this length can
 be efficiently computed using DFT convolution. Per channel, it is
 necessary to compute one forward and one inverse DFT, along with two
 spectral products and one spectral addition.
 c. High-Frequency Power Transfer
 As discussed above, the bandlimited crosstalk canceller of Eq. 16 continues
 to implement ipsilateral equalization at high frequencies (see Eq. 17),
 since the ipsilateralequalization filters are not similarly bandlimited.
 Thus when a sound is panned to the location of either speaker, the
 response to the speaker will be flat; this is because the ipsilateral
 equalization exactly inverts the ipsilateral binaural synthesis response,
 an operation in agreement with the power-panning property. The other
 speaker, however, emits the contralateral binaural response, which
 violates the power-panning property. Of course, if crosstalk cancellation
 were not bandlimited and extended to high frequencies, the contralateral
 response would be internally cancelled and would not appear at the
 contralateral loudspeaker. Unfortunately, for the reasons described
 earlier, crosstalk cancellation causes more harm than benefit at high
 frequencies. To optimize the presentation of high frequencies while
 satisfying the power-panning property, the invention maintains bandlimited
 crosstalk cancellation (operative, preferably, below 6 kHz) and alters the
 high frequencies only in terms of power transfer (rather than phase, e.g.,
 by subtracting a cancellation signal derived from the contralateral
 channel).
 In accordance with this aspect of the invention, high-frequency power
 output at each speaker is modified so that the listener experiences power
 ratios consistent with his position and orientation. In other words,
 high-frequency gains are established so as to minimize the interfering
 effects of crosstalk. This is accomplished with a single gain parameter
 per channel that affects the entire high-frequency band (preferably 6
 kHz-20 kHz).
 Based on the assumption that high-frequency signals from the two speakers
 add incoherently at the ears, the invention models the high-frequency
 power transfer from the speakers to the ears as a 2.times.2 matrix of
 power gains derived from the HRTFs. (An implicit assumption for purposes
 hereof is that KEMAR head shadowing is similar to the head shadowing of a
 typical human.) The power-transfer matrix is inverted to calculate what
 powers to send to the speakers in order to obtain the proper power at each
 ear. Often it is not possible to synthesize the proper powers, e.g., for a
 right-side source that is more lateral than the right loudspeaker. In this
 case the desired "interaural level difference" (ILD) is greater than that
 achieved by sending the signal only to the right loudspeaker. Any power
 emitted by the left loudspeaker will decrease the final ILD at the ears.
 In such cases, where no exact solution exists, the invention sends the
 signal to one speaker, scaling its power such that the total power
 transfer to the two ears equals the total power in the synthesis HRTFs.
 Except for this caveat, the power-transfer approach is entirely analogous
 to the correction obtained by crosstalk cancellation. If it is omitted,
 very little happens to the high frequencies when the listener rotates his
 head. The power-transfer model of the present invention enhances dynamic
 localization by extending correction to these frequencies, helping to
 align the high-frequency ILD cue with the low-frequency localization cues
 while maintaining the power-panning property and avoiding the distortions
 associated with high-frequency crosstalk cancellation.
 The high-frequency power to each speaker is controlled by associating a
 multiplicative gain with each output channel. Because the
 crosstalk-cancellation filter is diagonal at high frequencies, the scaling
 gains can be commuted to the synthesis HRTFs. Combining previous
 equations, the ear signals at high frequencies for a source x are given
 by:
 ##EQU22##
 where g.sub.L, g.sub.R are the high-frequency scaling gains. This equation
 may be converted to an equivalent expression in terms of power transfer.
 The simplest approach is to model the input signal x as stationary white
 noise and to assume that the transfer functions to the two ears are
 uncorrelated. Rewriting Eq. 31 in terms of signal variance by replacing
 the transfer functions with their corresponding energies,
 ##EQU23##
 where the energy of a discrete-time signal h[i], with corresponding DFT
 H[k], is given by:
 ##EQU24##
 The power transfer to the ears is then:
 ##EQU25##
 Replacing the actual power transfer to the ears with the desired power
 transfer corresponding to the synthesis HRTFs and solving for the scaling
 gains,
 ##EQU26##
 Eq. 32 is the crosstalk-cancellation filter function expressed in terms of
 broadband power transfer. If either row of the righthand side of Eq. 36 is
 negative, then a real solution is not obtainable. In this case, the gain
 corresponding to the negative row is set to zero, and the other gain term
 is set such that the total power to the ears is equal to the total desired
 power. The expression relating total desired power and total power follows
 directly from Eq. 31 by adding the two rows:
 ##EQU27##
 This expression is solved for one gain when the other gain is set to zero.
 Because all energies are non-negative, a real solution is assured.
 In practice, it is found that the high-frequency model achieves only modest
 improvements over unmodified binaural signals for symmetric listening
 situations. However, the high-frequency gain modification is very
 important when the listener's head is rotated; without such modification,
 the low- and high-frequency components will be synthesized at different
 locations-the low frequencies relative to the head, and the high
 frequencies relative to the speakers.
 High-frequency power compensation through gain modification can be
 implemented by creating a set of HRTFs with high-frequency responses
 scaled as set forth above, each HRTF being tailored for a particular
 listening geometry (requiring, in effect, a separate set of synthesis
 HRTFs for each orientation of the head with respect to the speakers).
 However, scaling the high-frequency components of the synthesis HRTFs in
 this manner corresponds exactly to applying a high-frequency shelving
 filter to each channel of the binaural source. (It is of course
 theoretically possible to divide the high-frequency bands into finer and
 finer increments, the limit of which is a continuous high-frequency
 equalization filter.) Using a shelving filter that operates on each
 channel of each binaural source, it is only the filter gains--rather than
 the synthesis HRTFs--that need be updated as the listener moves.
 Accordingly, a pre-computed set of gains g.sub.L and g.sub.R are
 established for numerous combinations of listening geometries and source
 locations, and stored in a database format for realtime retrieval and
 application. For example, as shown in FIG. 15, the implementation
 illustrated in FIG. 14 can be modified by adding a shelving filter
 400.sub.L, 400.sub.R between the HRTF filters 300.sub.L, 300.sub.R and the
 crosstalk-cancellation filters 305, 310, 315, 320; in effect, filters
 400.sub.L, 400.sub.R transform the HRTF output signals x.sub.L, x.sub.R
 into high-frequency-adjusted signals x.sub.L, x.sub.R. The shelving
 filters 400.sub.L, 400.sub.R have the same low-frequency phase and
 magnitude responses independent of the high-frequency gains.
 Practical implementations for shelving filters 400.sub.L, 400.sub.R are
 shown for a single channel in FIGS. 16A and 16B. In FIG. 16B, the lowpass
 filter 405 preferably passes frequencies below 6 kHz, while highpass
 filter 410 feeds the high-frequency signals above 6 kHz to a variable gain
 element 415, which implements the high-frequency gain g.sub.x.
 When H.sub.LP and H.sub.HP have complementary responses, H.sub.LP
 (z)=1-H.sub.LP (z), and this condition faciliates use of the simplified
 arrangement depicted in FIG. 16B. Unfortunately, it is not possible to use
 a low-order IIR lowpass filter for H.sub.LP because the low-frequency
 phase response of the shelving filter will depend on the high-frequency
 gain. Accordingly, a zero-phase FIR filter is used for H.sub.LP. Although
 this adds considerable computation, only one lowpass filter per channel is
 necessary to implement independent shelving filters for any number of
 sources, as shown in FIG. 17. This design is based on the following
 relationships implicit in FIG. 16B:
EQU x.sub.i =g.sub.i (1-H.sub.LP)x.sub.i +H.sub.LP x.sub.i
EQU x.sub.i =g.sub.i x.sub.i -H.sub.LP x.sub.i (1+g.sub.i) (Eq. 38)
 FIG. 17 depicts a working circuit for a single (left) channel having
 multiple input sources. In particular, x.sub.Li is the left-channel
 binaural signal for source i; the filters 415.sub.Li . . . 415.sub.LN each
 implement a value of g.sub.Li, the left-channel high-frequency scaling
 gain for source i; x.sub.Li is the high-frequency-adjusted left-channel
 binaural signal; and the delay 420 implements a linear phase delay to
 match the delay of lowpass filter 405. The same circuit is used for the
 right channel, and the resulting high-frequency-adjusted binaural signals
 x.sub.Li, x.sub.Ri are routed to the crosstalk-canceller inputs.
 It will therefore be seen that the foregoing represents a versatile
 approach to three-dimensional audio that accommodates listener movement
 without loss of imaging or sound fidelity. The terms and expressions
 employed herein are used as terms of description and not of limitation,
 and there is no intention, in the use of such terms and expressions, of
 excluding any equivalents of the features shown and described or portions
 thereof, but it is recognized that various modifications are possible
 within the scope of the invention claimed.