Embodiments of the present disclosure generally relate to the field of audio signal processing and, more particularly, to crosstalk processing of spatially enhanced multi-channel audio.
Stereophonic sound reproduction involves encoding and reproducing signals containing spatial properties of a sound field. Stereophonic sound enables a listener to perceive a spatial sense in the sound field from a stereo signal using headphones or loudspeakers. However, processing of the stereophonic sound by combining the original signal with delayed and possibly inverted or phase-altered versions of the original can produce audible and often perceptually unpleasant comb-filtering artifacts in the resulting signal. The perceived effects of such artifacts can range from mild coloration to significant attenuation or amplification of particular sonic elements within a mix (i.e. voice receding, etc.).
Embodiments relate to enhancing an audio signal including a left input channel and a right input channel. A nonspatial component and a spatial component are generated from the left input channel and the right input channel. A mid compensation channel is generated by applying first filters to the nonspatial component that compensate for spectral defects from crosstalk processing of the audio signal. A side compensation channel is generated by applying second filters to the spatial component that compensate for spectral defects from the crosstalk processing of the audio signal. A left compensation channel and a right compensation channel are generated from the mid compensation channel and the side compensation channel. A left output channel is generated using the left compensation channel, and a right output channel is generated using the right compensation channel.
In some embodiments, crosstalk processing and subband spatial processing are performed on the audio signal. The crosstalk processing may include a crosstalk cancellation, or a crosstalk simulation. Crosstalk simulation may be used to generate output to head-mounted speakers to simulate crosstalk that may be experienced using loudspeakers. Crosstalk cancellation may be used to generate output to loudspeakers to remove crosstalk that may be experienced using the loudspeakers. The crosstalk processing may be performed prior to, subsequent to, or in parallel with the crosstalk cancellation. The subband spatial processing includes applying gains to the subbands of a nonspatial component and a spatial component of the left and right input channels. The crosstalk processing compensates for spectral defects caused by the crosstalk cancellation or crosstalk simulation, with or without the subband spatial processing.
In some embodiments, a system enhances an audio signal having a left input channel and a right input channel. The system includes circuitry configured to: generate a nonspatial component and a spatial component from the left input channel and the right input channel, generate a mid compensation channel by applying first filters to the nonspatial component that compensate for spectral defects from crosstalk processing of the audio signal, and generate a side compensation channel by applying second filters to the spatial component that compensate for spectral defects from the crosstalk processing of the audio signal. The circuitry is further configured to generate a left compensation channel and a right compensation channel from the mid compensation channel and the side compensation channel, and generates a left output channel using the left compensation channel; and generate a right output channel using the right compensation channel.
In some embodiments, the crosstalk compensation is integrated with subband spatial processing. The left input channel and the right input channel are processed into a spatial component and a nonspatial component. First subband gains are applied to subbands of the spatial component to generate an enhanced spatial component, and second subband gains are applied to subbands of the nonspatial component to generate an enhanced nonspatial component. A mid enhanced compensation channel is generated by applying filters to the enhanced nonspatial component. The mid enhanced compensation channel includes the enhanced nonspatial component having compensation for spectral defects from crosstalk processing of the audio signal. A left enhanced compensation channel and a right enhanced compensation channel are generated from the mid enhanced compensation channel. A left output channel is generated from the left compensation channel, and a right output channel is generated from the right enhanced compensation channel.
In some embodiments, a side enhanced compensation channel is generated by applying second filters to the enhanced spatial component, the side enhanced compensation channel including the enhanced spatial component having compensation for spectral defects from the crosstalk processing of the audio signal. The left enhanced compensation channel and the right enhanced compensation channel are generated from the mid enhanced compensation channel and the side enhanced compensation channel.
Other aspects include components, devices, systems, improvements, methods, processes, applications, computer readable mediums, and other technologies related to any of the above.
The features and advantages described in the specification are not all inclusive and, in particular, many additional features and advantages will be apparent to one of ordinary skill in the art in view of the drawings, specification, and claims. Moreover, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter.
The Figures (FIG.) and the following description relate to the preferred embodiments by way of illustration only. It should be noted that from the following discussion, alternative embodiments of the structures and methods disclosed herein will be readily recognized as viable alternatives that may be employed without departing from the principles of the present invention.
Reference will now be made in detail to several embodiments of the present invention(s), examples of which are illustrated in the accompanying figures. It is noted that wherever practicable similar or like reference numbers may be used in the figures and may indicate similar or like functionality. The figures depict embodiments for purposes of illustration only. One skilled in the art will readily recognize from the following description that alternative embodiments of the structures and methods illustrated herein may be employed without departing from the principles described herein.
The audio systems discussed herein provide crosstalk processing for spatially enhanced audio signals. The crosstalk processing may include crosstalk cancellation for loudspeakers, or crosstalk simulation for headphones. An audio system that performs crosstalk processing for spatially enhanced signals may include a crosstalk compensation processor that adjusts for spectral defects resulting from the crosstalk processing of audio signals, with or without spatial enhancement.
In a loudspeaker arrangement such as illustrated in
In a head-mounted speaker arrangement such as illustrated in
The crosstalk compensation may be applied in various ways. In one example, crosstalk compensation is performed prior to the crosstalk processing. For example, crosstalk compensation may be performed in parallel with subband spatial processing of the input audio signal X to generate a combined result, and the combined result may subsequently receive crosstalk processing. In another example, the crosstalk compensation is integrated with the subband spatial processing of the input audio signal, and the output of the subband spatial processing subsequently receives the crosstalk processing. In another example, the crosstalk compensation may be performed after crosstalk processing is performed on the spatially enhanced signal E.
In some embodiments, the crosstalk compensation may include enhancement (e.g., filtering) of mid components and side components of the input audio signal X. In other embodiments, the crosstalk compensation enhances only the mid components, or only the side components.
The audio processing system 200 includes a subband spatial processor 210, a crosstalk compensation processor 220, a combiner 260, and a crosstalk cancellation processor 270. The audio processing system 200 performs crosstalk compensation and subband spatial processing of the input audio input channels XL, XR, combines the result of the subband spatial processing with the result of the crosstalk compensation, and then performs a crosstalk cancellation on the combined signals.
The subband spatial processor 210 includes a spatial frequency band divider 240, a spatial frequency band processor 245, and a spatial frequency band combiner 250. The spatial frequency band divider 240 is coupled to the input channels XL and XR and the spatial frequency band processor 245. The spatial frequency band divider 240 receives the left input channel XL and the right input channel XR, and processes the input channels into a spatial (or “side”) component Ys and a nonspatial (or “mid”) component Ym. For example, the spatial component Ys can be generated based on a difference between the left input channel XL and the right input channel XR. The nonspatial component Ym can be generated based on a sum of the left input channel XL and the right input channel XR. The spatial frequency band divider 240 provides the spatial component Ys and the nonspatial component Ym to the spatial frequency band processor 245. Additional details regarding the spatial frequency band divider is discussed below in connection with
The spatial frequency band processor 245 is coupled to the spatial frequency band divider 240 and the spatial frequency band combiner 250. The spatial frequency band processor 245 receives the spatial component Ys and the nonspatial component Ym from spatial frequency band divider 240, and enhances the received signals. In particular, the spatial frequency band processor 245 generates an enhanced spatial component Es from the spatial component Ys, and an enhanced nonspatial component Em from the nonspatial component Ym.
For example, the spatial frequency band processor 245 applies subband gains to the spatial component Ys to generate the enhanced spatial component Es, and applies subband gains to the nonspatial component Ym to generate the enhanced nonspatial component Em. In some embodiments, the spatial frequency band processor 245 additionally or alternatively provides subband delays to the spatial component Ys to generate the enhanced spatial component Es, and subband delays to the nonspatial component Ym to generate the enhanced nonspatial component Em. The subband gains and/or delays may can be different for the different (e.g., n) subbands of the spatial component Ys and the nonspatial component Ym, or can be the same (e.g., for two or more subbands). The spatial frequency band processor 245 adjusts the gain and/or delays for different subbands of the spatial component Ys and the nonspatial component Ym with respect to each other to generate the enhanced spatial component Es and the enhanced nonspatial component Em. The spatial frequency band processor 245 then provides the enhanced spatial component Es and the enhanced nonspatial component Em to the spatial frequency band combiner 250. Additional details regarding the spatial frequency band divider is discussed below in connection with
The spatial frequency band combiner 250 is coupled to the spatial frequency band processor 245, and further coupled to the combiner 260. The spatial frequency band combiner 250 receives the enhanced spatial component Es and the enhanced nonspatial component Em from the spatial frequency band processor 245, and combines the enhanced spatial component Es and the enhanced nonspatial component Em into a left spatially enhanced channel EL and a right spatially enhanced channel ER. For example, the left spatially enhanced channel EL can be generated based on a sum of the enhanced spatial component Es and the enhanced nonspatial component Em, and the right spatially enhanced channel ER can be generated based on a difference between the enhanced nonspatial component Em and the enhanced spatial component Es. The spatial frequency band combiner 250 provides the left spatially enhanced channel EL and the right spatially enhanced channel ER to the combiner 260. Additional details regarding the spatial frequency band divider is discussed below in connection with
The crosstalk compensation processor 220 performs a crosstalk compensation to compensate for spectral defects or artifacts in the crosstalk cancellation. The crosstalk compensation processor 220 receives the input channels XL and XR, and performs a processing to compensate for any artifacts in a subsequent crosstalk cancellation of the enhanced nonspatial component Em and the enhanced spatial component Es performed by the crosstalk cancellation processor 270. In some embodiments, the crosstalk compensation processor 220 may perform an enhancement on the nonspatial component Xm and the spatial component Xs by applying filters to generate a crosstalk compensation signal Z, including a left crosstalk compensation channel ZL and a right crosstalk compensation channel ZR. In other embodiments, the crosstalk compensation processor 220 may perform an enhancement on only the nonspatial component Xm. Additional details regarding crosstalk compensation processors are discussed below in connection with
The combiner 260 combines the left spatially enhanced channel EL with the left crosstalk compensation channel ZL to generate a left enhanced compensation channel TL, and combines the right spatially enhanced channel ER with the right crosstalk compensation channel ZR to generate a right enhanced compensation channel TR. The combiner 260 is coupled to the crosstalk cancellation processor 270, and provides the left enhanced compensation channel TL and the right enhanced compensation channel TR to the crosstalk cancellation processor 270. Additional details regarding the combiner 260 are discussed below in connection with
The crosstalk cancellation processor 270 receives the left enhanced compensation channel TL and the right enhanced compensation channel TR, and performs crosstalk cancellation on the channels TL, TR to generate the output audio signal O including left output channel OL and right output channel OR. Additional details regarding the crosstalk cancellation processor 270 are discussed below in connection with
In particular, the crosstalk compensation processor 320 is coupled to the spatial frequency band processor 245 to receive the enhanced nonspatial component Em and the enhanced spatial component Es, performs the crosstalk compensation using the enhanced nonspatial component Em and the enhanced spatial component Es (e.g., rather than the input signal X as discussed above for the audio systems 200 and 202) to generate a mid enhanced compensation channel Tm and a side enhanced compensation channel Ts. The spatial frequency band combiner 250 receives the mid enhanced compensation channel Tm and a side enhanced compensation channel Ts, and generates the left enhanced compensation channel TL and the right enhanced compensation channel TR. The crosstalk cancellation processor 270 generates output audio signal O including left output channel OL and right output channel OR by performing the crosstalk cancellation on the left enhanced compensation channel TL and the right enhanced compensation channel TR. Additional details regarding the crosstalk compensation processor 320 are discussed below in connection with
The crosstalk compensation processor 520 receives the input channels XL and XR, and performs a processing to compensate for artifacts in a subsequent combination of a crosstalk simulation signal W generated by the crosstalk simulation processor 580 and the enhanced channel E. The crosstalk compensation processor 520 generates a crosstalk compensation signal Z, including a left crosstalk compensation channel ZL and a right crosstalk compensation channel ZR. The crosstalk simulation processor 580 generates a left crosstalk simulation channel WL and a right crosstalk simulation channel WR. The subband spatial processor 210 generates the left enhanced channel EL and the right enhanced channel ER. Additional details regarding the crosstalk compensation processor 520 are discussed below in connection with
The combiner 560 receives the left enhanced channel EL, the right enhanced channel ER, the left crosstalk simulation channel WL, the right crosstalk simulation channel WR, the left crosstalk compensation channel ZL, and a right crosstalk compensation channel ZR. The combiner 560 generates the left output channel OL by combining the left enhanced channel EL, the right crosstalk simulation channel WR, and the left crosstalk compensation channel ZL. The combiner 560 generates the right output channel OR by combining the left enhanced channel EL, the right crosstalk simulation channel WR, and the left crosstalk compensation channel ZL. Additional details regarding the combiner 560 are discussed below in connection with
The combiner 562 combines the left enhanced channel EL from the subband spatial processor 210 with the right simulation compensation channel SCR to generate the left output channel OL, and combines the right enhanced channel ER from the subband spatial processor 210 with the left simulation compensation channel SCL to generate the right output channel OR. Additional details regarding the combiner 562 are discussed below in connection with
When the crosstalk compensation processor 800 is part of the audio system 200, 400, 500, 504, or 700, the crosstalk compensation processor 800 receives left and right input channels (e.g., XL and XR), and performs a crosstalk compensation processing, such as to generate the left crosstalk compensation channel ZL and the right crosstalk compensation channel ZR. The channels ZL, ZR may be used to compensate for any artifacts in crosstalk processing, such as crosstalk cancellation or simulation. The L/R to M/S converter 812 receives the left input audio channel XL and the right input audio channel XR, and generates the nonspatial component Xm and the spatial component Xs of the input channels XL, XR. In general, the left and right channels may be summed to generate the nonspatial component of the left and right channels, and subtracted to generate the spatial component of the left and right channels.
The mid component processor 820 includes a plurality of filters 840, such as m mid filters 840(a), 840(b), through 840(m). Here, each of the m mid filters 840 processes one of m frequency bands of the nonspatial component Xm. The mid component processor 820 generates a mid crosstalk compensation channel Zm by processing the nonspatial component Xm. In some embodiments, the mid filters 840 are configured using a frequency response plot of the nonspatial component Xm with crosstalk processing through simulation. In addition, by analyzing the frequency response plot, any spectral defects such as peaks or troughs in the frequency response plot over a predetermined threshold (e.g., 10 dB) occurring as an artifact of the crosstalk processing can be estimated. These artifacts result primarily from the summation of the delayed and possibly inverted (e.g., for crosstalk cancellation) contralateral signals with their corresponding ipsilateral signal in the crosstalk processing, thereby effectively introducing a comb filter-like frequency response to the final rendered result. The mid crosstalk compensation channel Zm can be generated by the mid component processor 820 to compensate for the estimated peaks or troughs, where each of the m frequency bands corresponds with a peak or trough. Specifically, based on the specific delay, filtering frequency, and gain applied in the crosstalk processing, peaks and troughs shift up and down in the frequency response, causing variable amplification and/or attenuation of energy in specific regions of the spectrum. Each of the mid filters 840 may be configured to adjust for one or more of the peaks and troughs.
The side component processor 830 includes a plurality of filters 850, such as m side filters 850(a), 850(b) through 850(m). The side component processor 830 generates a side crosstalk compensation channel Zs by processing the spatial component Xs. In some embodiments, a frequency response plot of the spatial component Xs with crosstalk processing can be obtained through simulation. By analyzing the frequency response plot, any spectral defects such as peaks or troughs in the frequency response plot over a predetermined threshold (e.g., 10 dB) occurring as an artifact of the crosstalk processing can be estimated. The side crosstalk compensation channel Zs can be generated by the side component processor 830 to compensate for the estimated peaks or troughs. Specifically, based on the specific delay, filtering frequency, and gain applied in the crosstalk processing, peaks and troughs shift up and down in the frequency response, causing variable amplification and/or attenuation of energy in specific regions of the spectrum. Each of the side filters 850 may be configured to adjust for one or more of the peaks and troughs. In some embodiments, the mid component processor 820 and the side component processor 830 may include a different number of filters.
In some embodiments, the mid filters 840 and side filters 850 may include a biquad filter having a transfer function defined by Equation 1:
where z is a complex variable, and a0, a1, a2, b0, b1, and b2 are digital filter coefficients. One way to implement such a filter is the direct form I topology as defined by Equation 2:
where X is the input vector, and Y is the output. Other topologies may be used, depending on their maximum word-length and saturation behaviors.
The biquad filter can then be used to implement a second-order filter with real-valued inputs and outputs. To design a discrete-time filter, a continuous-time filter is designed, and then transformed into discrete time via a bilinear transform. Furthermore, resulting shifts in center frequency and bandwidth may be compensated using frequency warping.
For example, a peaking filter may have an S-plane transfer function defined by Equation 3:
where s is a complex variable, A is the amplitude of the peak, and Q is the filter “quality,” and and the digital filter coefficients are defined by:
where ω0 is the center frequency of the filter in radians and
Furthermore, the filter quality Q may be defined by Equation 4:
where Δf is a bandwidth and fc is a center frequency.
The M/S to L/R converter 814 receives the mid crosstalk compensation channel Zm and the side crosstalk compensation channel Zs, and generates the left crosstalk compensation channel ZL and the right crosstalk compensation channel ZR. In general, the mid and side channels may be summed to generate the left channel of the mid and side components, and the mid and side channels may be subtracted to generate right channel of the mid and side components.
When the crosstalk compensation processor 800 is part of the audio system 502, the crosstalk compensation processor 800 receives the left crosstalk simulation channel WL and the right crosstalk simulation channel WR from the crosstalk simulation processor 580, and performs a preprocessing (e.g., as discussed above for the input channels XL and XR) to generate left simulation compensation channel SCL and the right simulation compensation channel SCR.
When the crosstalk compensation processor 800 is part of the audio system 700, the crosstalk compensation processor 800 receives the left enhanced compensation channel TL and the right enhanced compensation channel TR from the combiner 562, and performs a preprocessing (e.g., as discussed above for the input channels XL and XR) to generate left output channel OL and the right output channel OR.
When the crosstalk compensation processor 900 is part of the audio system 200, 500, or 504, for example, the L&R combiner 910 receives the left input audio channel XL and the right input audio channel XR, and generates the nonspatial component Xm by adding the channels XL, XR. The mid component processor 820 receives the nonspatial component Xm, and generates the mid crosstalk compensation channel Zm by processing the nonspatial component Xm using the mid filters 840(a) through 840(m). The M to L/R converter 950 receives the mid crosstalk compensation channel Zm, generates each of left crosstalk compensation channel ZL and the right crosstalk compensation channel ZR using the mid crosstalk compensation channel Zm. When the crosstalk compensation processor 900 is part of the audio system 400, 502, or 700, for example, the input and output signals may be different as discussed above for the crosstalk compensation processor 800.
The crosstalk compensation processor 1100 includes the mid component processor 820 and the side component processor 830. The mid component processor 820 receives the enhanced nonspatial component Em from the spatial frequency band processor 245, and generates the mid enhanced compensation channel Tm using the mid filters 840(a) through 840(m). The side component processor 830 receives the enhanced spatial component E from the spatial frequency band processor 245, and generates the side enhanced compensation channel Ts using the side filters 850(a) through 850(m).
More specifically, the spatial frequency band processor 245 includes a subband filter for each of n frequency subbands of the nonspatial component Ym and a subband filter for each of the n subbands of the spatial component Ys. For n=4 subbands, for example, the spatial frequency band processor 245 includes a series of subband filters for the nonspatial component Ym including a mid equalization (EQ) filter 1362(1) for the subband (1), a mid EQ filter 1362(2) for the subband (2), a mid EQ filter 1362(3) for the subband (3), and a mid EQ filter 1362(4) for the subband (4). Each mid EQ filter 1362 applies a filter to a frequency subband portion of the nonspatial component Ym to generate the enhanced nonspatial component Em.
The spatial frequency band processor 245 further includes a series of subband filters for the frequency subbands of the spatial component Ys, including a side equalization (EQ) filter 1364(1) for the subband (1), a side EQ filter 1364(2) for the subband (2), a side EQ filter 1364(3) for the subband (3), and a side EQ filter 1364(4) for the subband (4). Each side EQ filter 1364 applies a filter to a frequency subband portion of the spatial component Ys to generate the enhanced spatial component Es.
Each of the n frequency subbands of the nonspatial component Ym and the spatial component Ys may correspond with a range of frequencies. For example, the frequency subband (1) may corresponding to 0 to 300 Hz, the frequency subband (2) may correspond to 300 to 510 Hz, the frequency subband (3) may correspond to 510 to 2700 Hz, and the frequency subband (4) may correspond to 2700 Hz to Nyquist frequency. In some embodiments, the n frequency subbands are a consolidated set of critical bands. The critical bands may be determined using a corpus of audio samples from a wide variety of musical genres. A long term average energy ratio of mid to side components over the 24 Bark scale critical bands is determined from the samples. Contiguous frequency bands with similar long term average ratios are then grouped together to form the set of critical bands. The range of the frequency subbands, as well as the number of frequency subbands, may be adjustable.
More specifically, the spatial frequency band combiner 250 includes a global mid gain 1422, a global side gain 1424, and an M/S to L/R converter 1426 coupled to the global mid gain 1422 and the global side gain 1424. The global mid gain 1422 receives the enhanced nonspatial component Em and applies a gain, and the global side gain 1424 receives the enhanced spatial component Es and applies a gain. The M/S to L/R converter 1426 receives the enhanced nonspatial component Em from the global mid gain 1422 and the enhanced spatial component Es from the global side gain 1424, and converts these inputs into the left spatially enhanced channel EL and the right spatially enhanced channel ER.
When the spatial frequency band combiner 250 is part of the subband spatial processor 310 shown in
In one embodiment, the crosstalk cancellation processor 270 includes an in-out band divider 1510, inverters 1520 and 1522, contralateral estimators 1530 and 1540, combiners 1550 and 1552, and an in-out band combiner 1560. These components operate together to divide the input channels TL, TR into in-band components and out-of-band components, and perform a crosstalk cancellation on the in-band components to generate the output channels OL, OR.
By dividing the input audio signal T into different frequency band components and by performing crosstalk cancellation on selective components (e.g., in-band components), crosstalk cancellation can be performed for a particular frequency band while obviating degradations in other frequency bands. If crosstalk cancellation is performed without dividing the input audio signal T into different frequency bands, the audio signal after such crosstalk cancellation may exhibit significant attenuation or amplification in the nonspatial and spatial components in low frequency (e.g., below 350 Hz), higher frequency (e.g., above 12000 Hz), or both. By selectively performing crosstalk cancellation for the in-band (e.g., between 250 Hz and 14000 Hz), where the vast majority of impactful spatial cues reside, a balanced overall energy, particularly in the nonspatial component, across the spectrum in the mix can be retained.
The in-out band divider 1510 separates the input channels TL, TR into in-band channels TL,In, TR,In and out of band channels TL,Out, TR,Out, respectively. Particularly, the in-out band divider 1510 divides the left enhanced compensation channel TL into a left in-band channel TL,In and a left out-of-band channel TL,Out. Similarly, the in-out band divider 1510 separates the right enhanced compensation channel TR into a right in-band channel TR,In and a right out-of-band channel TR,Out. Each in-band channel may encompass a portion of a respective input channel corresponding to a frequency range including, for example, 250 Hz to 14 kHz. The range of frequency bands may be adjustable, for example according to speaker parameters.
The inverter 1520 and the contralateral estimator 1530 operate together to generate a left contralateral cancellation component SL to compensate for a contralateral sound component due to the left in-band channel TL,In. Similarly, the inverter 1522 and the contralateral estimator 1540 operate together to generate a right contralateral cancellation component SR to compensate for a contralateral sound component due to the right in-band channel TR,In.
In one approach, the inverter 1520 receives the in-band channel TL,In and inverts a polarity of the received in-band channel TL,In to generate an inverted in-band channel TL,In′. The contralateral estimator 1530 receives the inverted in-band channel TL,In′, and extracts a portion of the inverted in-band channel TL,In′ corresponding to a contralateral sound component through filtering. Because the filtering is performed on the inverted in-band channel TL,In′, the portion extracted by the contralateral estimator 1530 becomes an inverse of a portion of the in-band channel TL,In attributing to the contralateral sound component. Hence, the portion extracted by the contralateral estimator 1530 becomes a left contralateral cancellation component SL, which can be added to a counterpart in-band channel TR,In to reduce the contralateral sound component due to the in-band channel TL,In. In some embodiments, the inverter 1520 and the contralateral estimator 1530 are implemented in a different sequence.
The inverter 1522 and the contralateral estimator 1540 perform similar operations with respect to the in-band channel TR,In to generate the right contralateral cancellation component SR. Therefore, detailed description thereof is omitted herein for the sake of brevity.
In one example implementation, the contralateral estimator 1530 includes a filter 1532, an amplifier 1534, and a delay unit 1536. The filter 1532 receives the inverted input channel TL,In′ and extracts a portion of the inverted in-band channel TL,In′ corresponding to a contralateral sound component through a filtering function. An example filter implementation is a Notch or Highshelf filter with a center frequency selected between 5000 and 10000 Hz, and Q selected between 0.5 and 1.0. Gain in decibels (GdB) may be derived from Equation 5:
G
dB=−3.0−log1.333(D) Eq. (5)
where D is a delay amount by delay unit 1536 and 1546 in samples, for example, at a sampling rate of 48 KHz. An alternate implementation is a Lowpass filter with a corner frequency selected between 5000 and 10000 Hz, and Q selected between 0.5 and 1.0. Moreover, the amplifier 1534 amplifies the extracted portion by a corresponding gain coefficient GL,In, and the delay unit 1536 delays the amplified output from the amplifier 1534 according to a delay function D to generate the left contralateral cancellation component SL. The contralateral estimator 1540 includes a filter 1542, an amplifier 1544, and a delay unit 1546 that performs similar operations on the inverted in-band channel TR,In′ to generate the right contralateral cancellation component SR. In one example, the contralateral estimators 1530, 1540 generate the left and right contralateral cancellation components SL, SR, according to equations below:
S
L
=D[GL,In*F[TL,In′]] Eq. (6)
S
R
=D[GR,In*F[TR,In′]] Eq. (7)
where F[ ] is a filter function, and D[ ] is the delay function.
The configurations of the crosstalk cancellation can be determined by the speaker parameters. In one example, filter center frequency, delay amount, amplifier gain, and filter gain can be determined, according to an angle formed between two speakers 280 with respect to a listener. In some embodiments, values between the speaker angles are used to interpolate other values.
The combiner 1550 combines the right contralateral cancellation component SR to the left in-band channel TL,In to generate a left in-band crosstalk channel UL, and the combiner 1552 combines the left contralateral cancellation component SL to the right in-band channel TR,In to generate a right in-band crosstalk channel UR. The in-out band combiner 1560 combines the left in-band crosstalk channel UL with the out-of-band channel TL,Out to generate the left output channel OL, and combines the right in-band crosstalk channel UR with the out-of-band channel TR,Out to generate the right output channel OR.
Accordingly, the left output channel OL includes the right contralateral cancellation component SR corresponding to an inverse of a portion of the in-band channel TR,In attributing to the contralateral sound, and the right output channel OR includes the left contralateral cancellation component SL corresponding to an inverse of a portion of the in-band channel TL,In attributing to the contralateral sound. In this configuration, a wavefront of an ipsilateral sound component output by the loudspeaker 280R according to the right output channel OR arrived at the right ear can cancel a wavefront of a contralateral sound component output by the loudspeaker 280L according to the left output channel OL. Similarly, a wavefront of an ipsilateral sound component output by the speaker 280L according to the left output channel OL arrived at the left ear can cancel a wavefront of a contralateral sound component output by the loudspeaker 280R according to right output channel OR. Thus, contralateral sound components can be reduced to enhance spatial detectability.
The crosstalk simulation processor 1600 includes a left head shadow low-pass filter 1602, a left cross-talk delay 1604, and a left head shadow gain 1610 to process the left input channel XL. The crosstalk simulation processor 1600 further includes a right head shadow low-pass filter 1606, a right cross-talk delay 1608, and a right head shadow gain 1612 to process the right input channel XR. The left head shadow low-pass filter 1602 receives the left input channel XL and applies a modulation that models the frequency response of the signal after passing through the listener's head. The output of the left head shadow low-pass filter 1602 is provided to the left cross-talk delay 1604, which applies a time delay to the output of the left head shadow low-pass filter 1602. The time delay represents trans-aural distance that is traversed by a contralateral sound component relative to an ipsilateral sound component. The frequency response can be generated based on empirical experiments to determine frequency dependent characteristics of sound wave modulation by the listener's head. For example and with reference to
Similarly for the right input channel XR, the right head shadow low-pass filter 1606 receives the right input channel XR and applies a modulation that models the frequency response of the listener's head. The output of the right head shadow low-pass filter 1606 is provided to the right crosstalk delay 1608, which applies a time delay to the output of the right head shadow low-pass filter 1606. The right head shadow gain 1612 applies a gain to the output of the right crosstalk delay 1608 to generate the right crosstalk simulation channel WR.
In some embodiments, the head shadow low-pass filters 1602 and 1606 have a cutoff frequency of 2,023 Hz. The cross-talk delays 1604 and 1608 apply a 0.792 millisecond delay. The head shadow gains 1610 and 1612 apply a −14.4 dB gain.
The components of the crosstalk simulation processors 1600 and 1650 may be arranged in different orders. For example, although crosstalk simulation processor 1650 includes the left head shadow low-pass filter 1602 coupled with the left head shadow high-pass filter 1625, the left head shadow high-pass filter 1624 coupled to the left crosstalk delay 1604, and the left crosstalk delay 1640 coupled to the left head shadow gain 1610, the components 1602, 1624, 1604, and 1610 may be rearranged to process the left input channel XL in different orders. Similarly, the components 1606, 1626, 1608, and 1612 that process the right input channel XR may be arranged in different orders.
The sum left 2002 combines the left spatially enhanced channel EL and the left simulation compensation channel SCL to generate the left output channel OL. The sum right 2004 combines the right spatially enhanced channel ER and the right simulation compensation channel SCR to generate the right output channel OR. The output gain 2006 applies gains to the left output channel OL and the right output channel OR, and outputs the left output channel OL and the right output channel OR.
For the audio system 600, the combiner 562 receives the left enhanced compensation channel TL and the right enhanced compensation channel TR from the subband spatial processor 610, receives the left crosstalk simulation channel WL and the right crosstalk simulation channel WR from the crosstalk simulation processor 580. The sum left 2002 generates the left output channel OL by combining the left enhanced compensation channel TL and the right crosstalk simulation channel WR. The sum right 2004 generates the right output channel OR by combining the right enhanced compensation channel TR and the left crosstalk simulation channel WL.
For the audio system 700, the combiner 562 receives the left spatially enhanced channel EL and the right spatially enhanced channel ER from the subband spatial processor 210, and receives the left crosstalk simulation channel WL and the right crosstalk simulation channel WR from the crosstalk simulation processor 580. The sum left 2002 generates the left enhanced compensation channel TL by combining the left spatially enhanced channel EL and the right crosstalk simulation channel WR. The sum right 2004 generates the right enhanced compensation channel TR by combining the right spatially enhanced channel ER and the left crosstalk simulation channel WL.
As discussed above, a crosstalk compensation processor may compensate for comb-filtering artifacts that occur in the spatial and nonspatial signal components as a result of various crosstalk delays and gains in crosstalk cancellation. These crosstalk cancellation artifacts may be handled by applying correction filters to the non-spatial and spatial components independently. Mid/Side filtering (with associated M/S de-matrixing) can be inserted at various points in the overall signal flow of the algorithms, and the crosstalk-induced comb-filter peaks and notches in the frequency response of the spatial and nonspatial signal components may be handled in parallel.
In these examples, compensation filters are applied to the spatial and nonspatial components independently, targeting all comb-filter peaks and/or troughs in the nonspatial (L+R, or mid) component, and all but the lowest comb-filter peaks and/or troughs in the spatial (L−R, or side) component. The method of compensation can be procedurally derived, tuned by ear and hand, or a combination.
As shown in
The audio systems discussed herein perform various types of processing on an input audio signal including subband spatial processing (SBS), crosstalk compensation processing (CCP), and crosstalk processing (CP). The crosstalk processing may include crosstalk simulation or crosstalk cancellation. The order of processing for SBS, CCP, and CP may vary. In some embodiments, various steps of the SBS, CCP, or CP processing may be integrated. Some examples of processing embodiments are shown in
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
With reference to
The storage device 3008 includes one or more non-transitory computer-readable storage media such as a hard drive, compact disk read-only memory (CD-ROM), DVD, or a solid-state memory device. The memory 3006 holds instructions and data used by the processor 3002. The pointing device 3014 is used in combination with the keyboard 3010 to input data into the computer system 3000. The graphics adapter 3012 displays images and other information on the display device 3018. In some embodiments, the display device 3018 includes a touch screen capability for receiving user input and selections. The network adapter 3016 couples the computer system 3000 to a network. Some embodiments of the computer 3000 have different and/or other components than those shown in
The computer 3000 is adapted to execute computer program modules for providing functionality described herein. For example, some embodiments may include a computing device including one or more modules configured to perform the processing as discussed herein. As used herein, the term “module” refers to computer program instructions and/or other logic used to provide the specified functionality. Thus, a module can be implemented in hardware, firmware, and/or software. In one embodiment, program modules formed of executable computer program instructions are stored on the storage device 3008, loaded into the memory 3006, and executed by the processor 3002.
Upon reading this disclosure, those of skill in the art will appreciate still additional alternative embodiments the disclosed principles herein. Thus, while particular embodiments and applications have been illustrated and described, it is to be understood that the disclosed embodiments are not limited to the precise construction and components disclosed herein. Various modifications, changes and variations, which will be apparent to those skilled in the art, may be made in the arrangement, operation and details of the method and apparatus disclosed herein without departing from the scope described herein.
Any of the steps, operations, or processes described herein may be performed or implemented with one or more hardware or software modules, alone or in combination with other devices. In one embodiment, a software module is implemented with a computer program product comprising a computer readable medium (e.g., non-transitory computer readable medium) containing computer program code, which can be executed by a computer processor for performing any or all of the steps, operations, or processes described.