HK1069063B - Method for apparatus for audio matrix decoding - Google Patents

Method for apparatus for audio matrix decoding Download PDF

Info

Publication number
HK1069063B
HK1069063B HK05101223.2A HK05101223A HK1069063B HK 1069063 B HK1069063 B HK 1069063B HK 05101223 A HK05101223 A HK 05101223A HK 1069063 B HK1069063 B HK 1069063B
Authority
HK
Hong Kong
Prior art keywords
signal
signals
output
matrix
gain
Prior art date
Application number
HK05101223.2A
Other languages
Chinese (zh)
Other versions
HK1069063A1 (en
Inventor
詹姆斯.W.弗斯加特
斯蒂芬.D.弗农
罗伯特.L.安德森
Original Assignee
杜比实验室特许公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 杜比实验室特许公司 filed Critical 杜比实验室特许公司
Priority claimed from PCT/US2001/027006 external-priority patent/WO2002019768A2/en
Publication of HK1069063A1 publication Critical patent/HK1069063A1/en
Publication of HK1069063B publication Critical patent/HK1069063B/en

Links

Description

Method for an audio matrix decoding device
The present invention relates to audio signal processing. More particularly, the present invention relates to "multi-directional" (or "multi-channel") audio decoding using an "adaptive" (or "active") audio matrix approach that derives three or more audio signal streams (or "signals" or "channels") from a pair of audio input signal streams (or "signals" or "channels"). The invention is useful for restoring audio signals, each of which is associated with a direction and is combined by an encoding matrix into a smaller number of signals. Although the present invention has been described in terms of such an intentionally prepared matrix code, it will be appreciated that the present invention need not be used with any particular matrix code, but may also be used to produce satisfactory directional effects for material that would otherwise be recorded for two-channel reproduction.
Technical Field
Audio matrix encoding and decoding is well known in the art. For example, in so-called "4-2-4" audio matrix encoding and decoding, four source signals, typically associated with four cardinal directions (e.g., left, center, right and surrounding or left front, right front, left back and right back), are amplitude-phase matrix encoded into two signals. The two signals are transmitted or stored and then decoded by an amplitude-phase matrix decoder to recover an approximation of the original four source signals. The decoded signals are approximate because matrix decoders suffer from the well-known drawback of crosstalk between the decoded audio signals. Ideally, the decoded signal should be identical to the source signal with infinite separation between the signals. However, the crosstalk inherent in the matrix decoder results in only a 3dB separation between signals associated with adjacent directions. An audio matrix with invariant matrix characteristics is known in the art as a "passive" matrix.
To overcome the crosstalk problem in matrix decoders, it is known in the prior art to adaptively change the characteristics of the decoding matrix in order to increase the spacing between the decoded signals and more closely approximate the source signals. One notable example of such an active matrix decoder is the Dolby Pro Logic decoder, which is described in U.S. patent 4799260, which is incorporated herein by reference in its entirety. "Dolby" and "Pro Logic" are trademarks of Dolby laboratories licensing corporation. The' 260 patent cites a number of patents that are prior art to it, many of which are illustrative of various other types of adaptive matrix decoders. Other prior art patents include James w.fosgate patents, an inventor of the present invention, including U.S. patent 5625696; 5644640, respectively; 5504819, respectively; 5428687, and 5172415. These patents are also incorporated herein by reference in their entirety.
Although prior art adaptive matrix decoders aim to reduce crosstalk in the reproduced signal and to more closely replicate the source signal, prior art methods of achieving this are often complex and cumbersome and do not allow the identification of the required relationships between the intermediate signals in the decoder, which can be used to simplify the decoder and improve the accuracy of the decoder.
Accordingly, the present invention is directed to methods and apparatus for identifying and utilizing heretofore unappreciated relationships between intermediate signals in an adaptive matrix decoder. Unwanted crosstalk components can be easily cancelled using these relationships, especially by using automatic self-cancellation means using negative feedback.
Disclosure of Invention
According to one aspect of the invention, the invention constitutes a method of deriving at least three audio output signals from two input audio signals, wherein four audio signals are derived from the two input audio signals by using a passive matrix that generates two pairs of audio signals in response to the two audio signals: a first pair of resulting audio signals represents directions lying in a first axis (e.g., "left" and "right" signals) and a second pair of resulting audio signals represents directions lying in a second axis (e.g., "center" and "ambient" signals), substantially ninety degrees between the first and second axes. Each pair of resulting audio signals is processed in a "servo" circuit to produce first and second pairs (left/right and center/surround pairs, respectively) of intermediate audio signals, respectively, such that the relative amplitude magnitudes of the audio signals in each pair of intermediate audio signals are urged by the servo circuit to be approximately equal.
The invention can be implemented in any of several equivalent ways. One approach is to use the intermediate signal itself (or a component of the intermediate signal) as a component of the output signal. Another approach is to use the signals that control the gain of the variable gain elements in the servo to generate the coefficients of a variable matrix that acts on the two input audio signals. In each embodiment of both methods, the intermediate signals are derived from a passive matrix acting on a pair of input signals, and the intermediate signals are caused to approach equality. The first method can be implemented by several equivalent topologies. In an embodiment of the first topology implementing the first method, the components of the intermediate signal are combined with a passive matrix signal (from a passive matrix or other acting on the input signal) to produce the output signal. In an embodiment of the second topology implementing the first method, the intermediate signal pairs are combined to produce the output signal. According to the second method, although the intermediate signals are generated by one servo and caused to approach equality, the intermediate signals do not directly contribute to the output signals; but the signals present in the servo circuit are utilized to generate the coefficients of a variable matrix.
An heretofore unappreciated relationship between the decoded signals is that by making the intermediate audio signals of each pair of intermediate audio signals approximately equal in magnitude, unwanted crosstalk components in the decoded output signals can be sufficiently suppressed. This result can be obtained according to both the first method and the second method. The principles do not require exact equality to achieve sufficient crosstalk cancellation. This process can be easily and advantageously implemented by using negative feedback means which function to automatically cancel unwanted crosstalk components.
Other aspects of the invention include deriving additional control signals to generate additional output signals.
A primary object of the present invention is to achieve a measurable and perceptibly high degree of crosstalk cancellation in the case of a variety of input signals, and using circuitry that does not require particular precision, without the unusual complexity of the control path, both of which are found in the prior art.
It is a further object of the invention to achieve such high performance with a circuit that is simpler or less costly than prior art circuits.
Drawings
Fig. 1 is a functional schematic of a prior art passive decoding matrix useful for understanding the present invention.
Fig. 2 is a functional schematic of a prior art active matrix decoder useful for understanding aspects of the present invention.
Fig. 3 is a functional schematic diagram of a feedback-derived control system (or "servo") for the left and right VCAs and sum and difference VCAs of fig. 2 and VCAs in other embodiments of the present invention, in accordance with aspects of the present invention.
FIG. 4 is a functional schematic diagram showing an apparatus according to an aspect of the present invention, which is equivalent to the combination of FIGS. 2 and 3, wherein the output combiner responds to LtAnd RtThe input signals generate passive matrix output signal components rather than receiving them from a passive matrix that produces cancellation components.
Fig. 5 is a functional schematic diagram according to an aspect of the present invention, showing an apparatus equivalent to the combination of fig. 2 and 3 and fig. 4. In the configuration of fig. 5, the signals to be kept equal are the signals applied to the combiner that gets the output and the feedback circuit that controls the VCA; the output of the feedback circuit includes passive matrix components.
Fig. 6 is a functional schematic diagram according to an aspect of the present invention showing an arrangement equivalent to the combination of fig. 2 and 3, fig. 4 and fig. 5, in which the gain (1-g) of the variable gain circuit provided by the VCA and the subtractor is replaced by a VCA whose gain varies in the opposite direction to that of the VCA in the VCA and subtractor arrangement. In this embodiment, the passive matrix component is implicit. In certain other embodiments, the passive matrix component is explicit.
FIG. 7 is an idealized graph which plots L for a rotation angle α (horizontal axis)t/RtLeft and right VCA gains g for a feedback-derived control systemlAnd gr(vertical axis).
FIG. 8 is an idealized graph plotting sum and difference VCA gains g for the sum/difference feedback-derived control system for rotation angle α (horizontal axis)cAnd g (vertical axis).
Fig. 9 is an idealized graph plotting left/right and inverted sum/difference control voltages for a rotation angle alpha (horizontal axis) scaled such that the maximum and minimum values of the control signal are +/-15 volts (vertical axis).
Fig. 10 is an idealized graph depicting the smaller part (vertical axis) of the curve in fig. 9 rotated by an angle α (horizontal axis).
Fig. 11 is an idealized graph which plots the smaller part of the curve in fig. 9 (vertical axis) at a rotation angle alpha (horizontal axis), but before the smaller part of the curve is taken, the sum/difference voltage has been added by the ratio 0.8.
FIG. 12 is an idealized graph plotting the left rear and right rear VCA gains g for the left rear/right rear feedback-derived control system for rotation angle α (horizontal axis)lbAnd grb(vertical axis).
Fig. 13 is a functional schematic of a portion of an active matrix decoder with six outputs according to an aspect of the present invention.
Fig. 14 shows a functional schematic diagram of obtaining six cancellation signals for a six-output active matrix decoder such as that of fig. 13.
FIG. 15 is a schematic circuit diagram showing one practical analog circuit implementing aspects of the present invention.
Fig. 16A is a functional block diagram showing an alternative embodiment of the present invention.
Fig. 16B is a functional block diagram showing an alternative embodiment of fig. 16A.
Fig. 16C is a functional block diagram showing an alternative embodiment of fig. 16A.
Fig. 16D is a functional block diagram showing an alternative embodiment of fig. 16A.
Fig. 17 is a functional block diagram showing a left/right servo implemented in the digital domain, which is suitable for use in the embodiment of fig. 16A, B, C or D or other disclosed embodiments of the present invention.
Fig. 18 is a functional block diagram showing a front/back servo implemented in the digital domain, which is suitable for use in the embodiment of fig. 16A, B, C or D or other disclosed embodiments of the present invention.
Fig. 19 is a functional block diagram showing the availability of left and right rear control signals in the digital domain, which is suitable for use in the embodiment of fig. 16A, B, C or D or other disclosed embodiments of the present invention.
Detailed Description
A passive decoding matrix is shown functionally schematically in fig. 1. The following equation relates the output to the input, LtAnd Rt("left full" and "right full"):
Lout=Lt (equation 1)
Rout=Rt(equation 2)
Cout=1/2*(Lt+Rt) (equation 3)
Sout=1/2*(Lt-Rt) (equation 4)
(in these and other equations of this document ". dot." symbols represent multiplications.)
The center output (center output) is the sum of the inputs, and the peripheral output (surroundoutput) is the difference of the inputs. In addition, they all have a ratio which is arbitrary and chosen to be 1/2 for ease of illustration. Other ratios are also possible. CoutOutput by passing LtAnd RtPlus a scaling factor +1/2 and to linear combiner 2. SoutOutput by respectively passing LtAnd RtAdding the scaling factors +1/2 and-1/2 and adding to the linear combiner 4.
Thus the passive matrix of fig. 1 produces two pairs of audio signals; the first pair is LoutAnd Rout(ii) a The second pair is CoutAnd Sout. In this example, the base directions of the passive matrix are designated as "left", "center", "right", and "periphery". The adjacent base directions lie on axes that are ninety degrees to each other, such that for these direction designations, the left is adjacent to the center and the periphery; the surroundings are adjacent to the left and right, etc. It should be understood that the present invention is applicable to any 2: 4 decoding matrix having axes at ninety degrees.
A passive matrix decoder is based on a constant relationship (e.g., in FIG. 1, CoutAlways 1/2*(Rout+Lout) N audio signals are obtained from m audio signals, where n is greater than m. In contrast, an active matrix decoder derives n audio signals according to a variable relationship. One way to configure an active matrix decoder is to correlate signal components determined by the signal with the signal components being processedThe output signals of the dynamic matrix are combined. For example, as shown functionally schematically in fig. 2, four VCAs (voltage controlled amplifiers) 6, 8, 10 and 12 delivering variable-ratio passive matrix outputs are summed in linear combiners 14, 16, 18 and 20 with the constant passive matrix outputs (i.e., the two inputs themselves and the two outputs of combiners 2 and 4). Because the inputs to the VCA are from the left, right, center and peripheral outputs of the passive matrix, respectively, their gains can be specified as gl、gr、gcAnd gs(both positive). The VCA output signals constitute cancellation signals and are combined with passively derived outputs having cross-talk between directions from which the cancellation signals are derived in order to enhance the directional performance of the matrix decoder by suppressing the cross-talk.
Note that in the arrangement of fig. 2, a path of the passive matrix is present. Each output is a combination of the respective passive matrix output plus the outputs of the two VCAs. The VCA outputs are selected and scaled to provide the crosstalk cancellation required for the respective passive matrix outputs, taking into account that the crosstalk contributions present in the outputs represent adjacent basis directions. For example, a central signal has crosstalk in the passively decoded left and right signals, and a peripheral signal has crosstalk in the passively decoded left and right signals. Therefore, the left signal output should be combined with the cancellation signal component derived from the passively decoded center and ambient signals, as well as for the other four outputs. The signals in fig. 2 are scaled, polarized and combined in a manner that provides the desired crosstalk suppression. By varying the respective VCA gains in the zero to one range (for the scaled example of fig. 2), unwanted crosstalk components in the passively decoded output can be suppressed.
The apparatus of fig. 2 has the following equation:
Lout=Lt-gc*1/2*(Lt+Rt)-gs*1/2*(Lt-Rt) (equation 5)
Rout=Rt-gc*1/2*(Lt+Rt)+gs*1/2*(Lt-Rt) (equation 6)
Cout=1/2*(Lt+Rt)-gl*1/2*Lt-gr*1/2*Rt(equation 7)
Sout=1/2*(Lt-Rt)-gl*1/2*Lt+gr*1/2*Rt(equation 8)
If the gain of all VCAs is zero, the device will be the same as the passive matrix. The arrangement of fig. 2 is identical to the passive matrix except that the constant ratio is different for any case where all VCA gains have equal values. For example, if the gain of all VCAs is 0.1:
Lout=Lt-0.05*(Lt+Rt)-0.05*(Lt-Rt)=0.9*Lt
Rout=Rt-0.05*(Lt+Rt)+0.05*(Lt-Rt)=0.9*Lt
Gout=1/2*(Lt+Rt)-0.05*Lt-0.05*Rt=0.9*1/2*(Lt+Rt)
Sout=1/2*(Lt-Rt)-0.05*Lt+0.05*Rt=0.9*1/2*(Lt-Rt)
the result is a passive matrix to which a scale factor of 0.9 is added. Thus, it is clear that the precise value of the static VCA gain described below is not critical.
Consider an example. For the base directions only (left, right, center and periphery), the inputs are L only, respectivelytOnly Rt、Lt=Rt(same polarity) and Lt=-Rt(opposite polarity) and the corresponding desired output is L onlyoutOnly RoutC aloneoutAnd only Sout. In each case, ideally, one output should give only one signal, while the others should give nothing.
From observation, it is clear that if the VCA can be controlled so that the gain corresponding to the desired base direction is 1, while the rest is much less than 1, then at all outputs except the desired output, the VCA signal will eliminate the undesired output. As explained above, in the configuration of fig. 2, the VCA outputs act to cancel crosstalk components in adjacent base directions (in which there is crosstalk by the passive matrix).
Thus, for example, if the two inputs are both equal in-phase signals, then Rt=Lt1, and if the result gc1 and gl、grAnd gsAll are zero or approaching zero, then:
Lout=1-1*1/2*(1+1)-0*1/2*(1-1)=0
Rout=1-1*1/2*(1+1)+0*1/2*(1-1)=0
Cout=1/2*(1+1)-0*1/2*1-0*1/2*1=1
Sout=1/2*(1-1)-0*1/2*1+0*1/2*1=0
the output is only from the desired Cout. The same calculation may show that other cases where the signal is from only one of the other three base directions are equally applicable.
Equations 5, 6, 7 and 8 can be written as equivalents:
Lout=1/2*(Lt+Rt)*(1-gc)+1/2*(Lt-Rt)*(1-gs) (equation 9)
Cout=1/2*Lt(1-gl)+1/2*Rt*(1-gr) (equation 10)
Rout=1/2*(Lt+Rt)*(1-gc)-1/2*(Lt-Rt)*(1-gs) (equation 11)
Sout=1/2*Lt(1-gl)-1/2*Rt*(1-gr) (equation 12)
In this arrangement, each output is a combination of two signals. L isoutAnd RoutBoth relate to the gain of the sum and difference of the input signals and the sum and difference VCA (the input of this VCA comes from the central and peripheral directions, which are ninety degrees to the left and right directions). CoutAnd SoutBoth relate to the actual input signal and the gain of the left and right VCA (the inputs to this VCA come from the left and right directions, respectively, which are ninety degrees from the central and peripheral directions).
Considering the non-radical direction, in which RtSignal of (a) and LtThe same polarity but attenuated. This situation represents a signal somewhere between the left and center base directions, and should therefore be given from LoutAnd CoutWithout an output from RoutAnd SoutOr only a small fraction.
For RoutAnd SoutThis zero output is obtained if the two terms are equal in magnitude and opposite in polarity.
For RoutThe relationship for this cancellation is:
[1/2*(Lt+Rt)*(1-gc)]is [1/2 (L) ]t-Rt)*(1-gs)]Size of (2)
(equation 13)
For SoutThe corresponding relationship is:
[1/2*Lt*(1-gl)]is [ 1/2R ]t*(1-gr)]Size of (2)
(equation 14)
Consider the case where the signal is rotated (or simply said to lie) between any two adjacent base directions, the same two relationships will be shown. In other words, when the input signal represents an acoustic sound between any two adjacent outputs, the magnitude relationship will ensure that the acoustic sound appears from the outputs corresponding to those two adjacent base directions, while the other two outputs give nothing. To adequately achieve this result, the magnitudes of the two terms of each of equations 9-12 should be approximately equal. This can be achieved by trying to keep the relative sizes of the two pairs of signals in the active matrix equal:
[(Lt+Rt)*(1-gc)]is [ (L)t-Rt)*(1-gs)]The size of (a) is (b),
(equation 15)
And
[Lt*(1-gl)]is [ R ]t*(1-gr)]The size of (2). (equation 16)
The required relationships shown in equations 15 and 16 are the same as in equations 13 and 14, but the proportions are omitted. The polarity of the signal combinations and their proportions can be noted when deriving the respective outputs with the combiners 14, 16, 18 and 20 of fig. 2.
The present invention is based on the discovery of these heretofore unappreciated equal magnitude relationships, and as explained below, is preferably based on the use of automatic feedback control to maintain these relationships.
From the above discussion of the elimination of unwanted crosstalk signal components and the requirement from the fundamental direction, it can be deduced that the maximum gain of the VCA should be 1 for the ratio used in this description. In the static undefined or "un-manipulated" case, the VCA should employ a small gain, effectively providing a passive matrix. When the gain of one of a pair of VCAs needs to be raised from its static value to 1, the other VCA of the pair should either maintain the static gain or move in the opposite direction. A convenient and practical relationship is to keep the product of the gains of the pair constant. This relationship will occur automatically if the control voltages are applied equally (but with effectively opposite polarities) to both of the pairs when using an analog VCA whose dB gain is a linear function of its control voltage. Another alternative is to keep the sum of the gains of the pair constant. For example, as described in connection with FIGS. 16-19, the present invention may be implemented digitally or in software without the use of analog components.
Thus, for example, if the static gain is 1/a, one practical relationship between the two gains of a pair may be the product:
gl*gr=1/a2and an
gc*gs=1/a2
Typical values for "a" are in the range of 10 to 20.
Fig. 3 functionally schematically illustrates a feedback-derived control system (or "servo") of the left and right VCAs (6 and 12, respectively) of fig. 2. It receives LtAnd RtInput signals, processing them to obtain an intermediate Lt*(1-gl) And Rt*(1-gr) The signals compare the magnitude of the intermediate signals and generate an error signal in response to any difference in magnitude, the error signal causing the VCA to reduce the difference in magnitude. One way to achieve this result is to rectify the intermediate signal to obtain its magnitude, apply the two magnitude signals to a comparator whose output controls the gain of the VCA, which may be of a polarity when L istTime of increase g of signallIncrease by grAnd (4) reducing. The circuit value (or its equivalent in a digital or software implementation) is chosen such that the static amplifier gain is substantially less than 1 (e.g., 1/a) when the comparator output is zero. The preferred numeric implementation is shown and described below in connection with fig. 17 and 18.
In the analog domain, in particular, one practical way to implement the comparison function is to convert the two magnitudes to the logarithmic domain so that the comparator subtracts them rather than determining their ratio. The gain of many analog VCAs is proportional to the exponent of the control signal so that they inherently and conveniently take the inverse logarithm of the control output of the logarithm-based comparator.
More specifically, as shown in FIG. 3, LtThe inputs are applied to the "left" VCA6 and to one input of the linear combiner 22 where it is added to the ratio + 1. The output of the left VCA6 is added to the ratio-1 and applied to the combiner 22 (thus forming a subtractor) and the output of the combiner 22 is applied to a full wave rectifier 24. RtThe inputs are applied to the right VCA12 and to one input of the linear combiner 26 where it is added to the ratio + 1. The output of the right VCA12, plus the ratio-1, is applied to the combiner 26 (thus forming a subtractor) and the output of the combiner 26 is applied to a full-wave rectifier 28. The outputs of rectifiers 24 and 28 are applied to the non-inverting and inverting inputs, respectively, of an operational amplifier 30, which operates as a differential amplifier. The output of the amplifier 30 provides a control signal of the nature of an error signal which is applied to the gain control input of the VCA6 without inversion and to the gain control input of the VCA12 with the polarity inverted. The error signal indicates that the two signals with equal amplitude have different amplitudes. This control signal is used to "steer" the VCA in the correct direction to reduce the amplitude difference of the intermediate signal. The outputs to the combiners 16 and 18 are from the outputs of VCA6 and VCA 12. Thus, only a portion of each intermediate signal is applied to the output combiner, i.e. -LtgrAnd Rtgl
For the case of steady state signals, the difference in amplitude can be reduced to a negligible amount by providing sufficient loop gain. However, it is not necessary to reduce the difference in amplitude to zero or a negligible value to achieve sufficient crosstalk cancellation. For example, a loop gain that can reduce the dB difference by a factor of 10 will theoretically produce the worst case crosstalk better than a 30dB lower case. For dynamic situations, the time constants in the feedback control should be chosen such that the amplitudes tend to be equal, at least in a way that is essentially inaudible for most signal conditions. The details of selecting the time constant in the different configurations illustrated are beyond the scope of the present invention.
The circuit parameters are preferably selected to provide negative feedback of about 20dB so that the VCA gain cannot rise above 1. For the scale examples described herein in connection with the apparatus of fig. 2, 4 and 5, the VCA gain may be from some small value (e.g., 1/a)2Much less than 1) to 1, but not more than 1. The arrangement of figure 3 will keep the signals entering the rectifier approximately equal due to negative feedback.
Since the exact gain value is not important when the gain is small, any other method that can force the gain of one of the pair to a small value when the other of the pair rises to 1 will yield the same acceptable result.
The feedback-derived control system of the central and peripheral VCAs of FIG. 2 (8 and 10, respectively) is essentially the same as the illustrated arrangement of FIG. 3, but instead of receiving LtAnd RtBut instead receives their sum and difference and applies their outputs from VCA6 and VCA12 (which make up one component of the respective intermediate signals) to combiners 14 and 20.
In this way, a high degree of crosstalk cancellation can be achieved using circuitry that does not require particular precision in the case of multiple input signals. The feedback derivation control system operates to process the pairs of audio signals from the passive matrix such that the relative amplitude magnitudes of the intermediate audio signals in each pair of intermediate audio signals are urged to be approximately equal.
The feedback-derived control system shown in fig. 3 inversely controls the gain of the two VCAs 6 and 12 so that the inputs to the rectifiers 24 and 28 approach equality. The extent to which these two terms approach equality depends on the characteristics of the rectifier, the comparator 30 following it, and the gain/control relationship of the VCA. The greater the loop gain, the closer to equality, but forcing equality does not take into account the characteristics of these elements (of course as long as the polarity of the signals is of decreasing level difference). In practice the comparator may not have an infinite gain but may be implemented as a subtractor with a finite gain.
If the rectifiers are linear, i.e. if their output is proportional to the input magnitude, the output of the comparator or subtractor is a function of the signal voltage or current difference. Whereas if the rectifier responds to a logarithm of its input magnitude, i.e. a level expressed in dB, subtracting at the input of the comparator is equivalent to taking the ratio of the input levels. This is advantageous because the result then depends on the signal difference expressed in dB independently of the absolute signal level. Considering that the source signal level expressed as dB is to more closely reflect human perception, this means that the loop gain is loudness independent when other conditions are equal, and therefore the degree of equality is also absolute loudness independent. Of course, in some very low level situations, the logarithmic rectifier will stop functioning accurately and therefore will have an input threshold at which it will stop going equal. However, the result is that control can be maintained over a range of 70 or more than 70dB without the need for very high loop gain at high input signal levels, which would create potential problems with loop stability.
Likewise, the VCAs 6 and 12 may have gains (i.e., multipliers or dividers) that are proportional or inversely proportional to their control voltages. The effect is that when the gain is small, a small absolute change in the control voltage will cause a large change in gain expressed as dB. For example, consider a VCA having a maximum gain of 1 required by the feedback-derived control system configuration, and a control voltage V varying from, say, 0 to 10 voltscSo that the gain can be expressed as a-0.1Vc. When V iscNear its maximum, a change of 100mV (millivolts) of, say, 9900 to 10000mV will give a gain change of 20 log (10000/9900) or about 0.09 dB. When V iscMuch smaller, say 100mV variation of 100 to 200mV will give a gain variation of 20 log (200/100) or 6 dB. As a result, the effective loop gain and thus the responsivity will vary greatly depending on whether the control signal is large or small. Loop stability problems will also arise here.
This problem can be eliminated by using a VCA whose dB gain is proportional to the control voltage, or expressed in another way, i.e. whose voltage or current gain depends on the exponential or inverse logarithm of the control voltage. A small change in the control voltage, such as 100mV, will give the same dB change in gain as long as the control voltage is within its range. Such a device is readily available as an analog IC and its features or approximations are readily implemented in digital tools.
Preferred analog implementations therefore use logarithmic rectifiers and exponentially controlled variable gain amplification to give a more uniform approach equality (in dB) over a wide range of input levels and ratios of the two input signals.
Since the perception of direction in human hearing varies with frequency, some frequency weighting needs to be applied to the signal entering the rectifier to emphasize those frequencies that contribute most to human perception of direction, and not those frequencies that may result in improper manipulation. Thus, in a practical implementation, rectifiers 24 and 28 in fig. 3 are preceded by empirically derived filters that provide a response that attenuates low and very high frequencies, providing a gently rising response in the intermediate audible range. Note that these filters do not change the frequency response of the output signal, they only change the control signal and VCA gain of the feedback-derived control system.
Figure 4 shows functionally schematically an arrangement equivalent to the combination of figures 2 and 3. It differs from the combination of fig. 2 and 3 in that the output combiner response LtAnd RtThe input signals generate passive matrix output signal components rather than receiving them from the passive matrix resulting in cancellation components. As long as the summation coefficients in the passive matrix are essentially the same, the apparatus provides the same results as the combination of fig. 2 and 3. Fig. 4 comprises the feedback means described in connection with fig. 3.
Specifically, in FIG. 4, LtAnd RtThe input is first applied to a passive matrix comprising combiners 2 and 4 as in the passive matrix configuration of fig. 1. L istThe input, i.e., the "left" output of the passive matrix, is applied to the "left" VCA32 and one input of the linear combiner 34 in proportion + 1. The output of the left VCA32 is applied to the combiner 34 (thus forming a subtractor) in proportion-1. RtThe input, i.e., the "right" output of the passive matrix, is added to the "right" VCA44 and one input of the linear combiner 46 in the ratio + 1. The output of the right VCA44 is applied to the combiner 46 (thus forming a subtractor) in proportion-1. The outputs of the combiners 34 and 46, respectively, are the signal Lt*(1-gl) And Rt*(1-gr) And it is desirable to keep the magnitudes of these signals equal or to force them to approach equality. To achieve this result, these signals are preferably applied to a feedback circuit as shown in fig. 3 and described in connection with fig. 3. The feedback circuit then controls the gain of the VCAs 32 and 44.
In addition, still referring to fig. 4, the "center" output from the passive matrix of combiner 2 is added to the "center" VCA36 and one input of linear combiner 38 at a ratio of + 1. The output of the central VCA36 is applied to the combiner 38 (thus forming a subtractor) in proportion-1. The "surrounding" output from the passive matrix of combiner 4 is added to the "surrounding" VCA40 and one input of linear combiner 42 in proportion + 1. The output of the surrounding VCA40 is applied to the combiner 42 (thus forming a subtractor) in proportion-1. The outputs of the combiners 38 and 42 are respectively the signal 1/2 (L)t+Rt)*(1-gc) And 1/2 (L)t-Rt)*(1-gs) And it is desirable to keep the magnitudes of these signals equal or to force them to approach equality. To achieve this result, these signals are preferably applied to a feedback circuit or servo as shown in FIG. 3 and described in connection with FIG. 3. The feedback circuit then controls the gain of the VCAs 38 and 42. The portions 43 and 47 within the dashed line constitute a part of the servo (the servo further includes the relevant part of fig. 3).
Output signal Lout、Cout、SoutAnd RoutProduced by combiners 48, 50, 52 and 54. Each combiner receives the outputs of two VCAs (the outputs of the VCAs constituting a component of the intermediate signals whose magnitude is intended to remain equal) to provide a cancellation signal component and an outputOne or both of the signals are tapped to provide passive matrix signal components. Specifically, the input signal LtTo L in the ratio +1outCombiner 48, adding to C in proportion 1/2outCombiner 50, adding to S at ratio 1/2outA combiner 52. Input signal RtTo R in the ratio +1outCombiner 54, adding to C in proportion 1/2outCombiner 50, adding to S at ratio 1/2outA combiner 52. The left VCA32 output is added to C in proportion-1/2outCombiner 50 and adds S in the proportion-1/2outA combiner 52. Right VCA44 output adding to C in proportion-1/2outCombiner 50 and adds to S at a ratio +1/2outA combiner 52. The central VCA36 output is added to L in proportion-1outA combiner 48, and adding to R in a ratio of-1outA combiner 54. The ambient VCA40 output is added to L in proportion-1outVCA48 and added to R in the ratio +1out VCA54。
It is noted that in various figures, such as fig. 2 and 4, it is possible that the cancellation signal may not initially oppose the passive matrix signal (e.g., some cancellation signals are applied to the combiner with the same polarity as the passive matrix signal). However, in operation, when the cancellation signal becomes active, it will have a polarity that is exactly opposite to the passive matrix signal.
Fig. 5 shows functionally schematically another device equivalent to the combination of fig. 2 and 3 and to fig. 4. In the configuration of fig. 5, the signals to be kept equal are the signals applied to the combiner that gets the output and to the feedback circuit that controls the VCA. These signals include passive matrix output signal components. In contrast, in the arrangement of fig. 4, the signal applied to the output combiner from the feedback circuit is the VCA output signal, excluding the passive matrix component. Thus, in fig. 4 (and in the combination of fig. 2 and 3) the passive matrix component must be explicitly combined with the output of the feedback circuit, whereas in fig. 5 the output of the feedback circuit comprises the passive matrix component, which is sufficient by itself. It will also be noted that in the arrangement of figure 5 it is the intermediate signal outputs that are applied to the output combiners rather than the VCA outputs (each VCA output constituting only one component of the intermediate signal). However, the configurations of fig. 4 and 5 (and the combination of fig. 2 and 3) are equivalent (as the fig. 16A-D configuration described below), and if the summing coefficient is accurate, the output of fig. 5 is the same as that of fig. 4 (and the combination of fig. 2 and 3).
In fig. 5, the four intermediate signals in equations 9, 10, 11 and 12, [1/2 (L)t+Rt)*(1-gc)]、[1/2*(Lt-Rt)*(1-g)]、[1/2*Lt*(1-gl)]And [ 1/2Rt*(1-gr)]By processing the passive matrix outputs, which are then added or subtracted to obtain the desired output. These signals are also applied to the rectifier and the comparator of two feedback circuits that are intended to function to keep the magnitudes of a pair of signals equal, as explained above in connection with fig. 3. As added to the configuration of fig. 5, the outputs of the feedback circuit of fig. 3 to the output combiners are from the outputs of combiners 22 and 26 rather than from VCAs 6 and 12.
Still referring to fig. 5, the connections between the combiners 2 and 4, VCAs 32, 36, 40 and 44, and combiners 34, 38, 42 and 46 are the same as in the arrangement of fig. 4. Similarly, in the arrangements of fig. 4 and 5, the outputs of the combiners 34, 38, 42 and 46 are each preferably applied to two feedback control circuits (the outputs of the combiners 34 and 46 are applied to a first such circuit to generate the control signals for the VCAs 32 and 44, and the outputs of the combiners 38 and 42 are applied to a second such circuit to generate the control signals for the VCAs 36 and 40). The output of the combiner 34, L, in FIG. 5t*(1-gl) Signal, added to C in the proportion +1outCombiner 58 and adds S in the ratio +1outA combiner 60. Output of combiner 46, Rt*(1-gr) Signal, added to C in the proportion +1outCombiner 58 and adds S in the proportion-1outA combiner 60. The output of the combiner 38, 1/2 (L)t+Rt)*(1-gc) Signal, added to L in a ratio of +1outCombiner 56 and adds R in the proportion +1outA combiner 62. The output of the combiner 42, 1/2 (L)t-Rt)*(1-gs) Signal, added to L in a ratio of +1outCombiner 56 and in proportion1 is added to RoutA combiner 62. The portions 45 and 49 in the dashed lines constitute a part of the servo (the servo further includes the relevant part of fig. 3).
Unlike prior art adaptive matrix decoders where the control signals are generated from the inputs, aspects of the present invention advantageously employ a closed loop control in which the magnitude of the signal providing the output is measured and fed back to provide the adaptation. In particular, unlike prior art open loop systems, in certain aspects of the invention, the required elimination of unwanted signals in the non-fundamental direction does not rely on an exact match between the signal and the control path, and the closed loop configuration greatly reduces the need for circuit accuracy.
Ideally, the "keep-size-equal" configuration of the present invention is "perfect" in the sense that any addition to L is "perfect" except for the defects of the actual circuittAnd RtA source of inputs with known relative amplitudes and polarities will produce a signal from the desired output and negligible signals from other outputs. "known relative amplitude and polarity" means LtAnd RtThe input represents a base direction or a position between adjacent base directions.
Considering equations 9, 10, 11 and 12 again, one will find a subtracting device in the form of (1-g) for the total gain of each variable gain circuit including one VCA. Each VCA gain can vary from a small value to but not more than 1. Accordingly, the gain (1-g) of the variable gain circuit may vary from very close to 1 to zero. Thus, fig. 5 can be redrawn as fig. 6, where each VCA and associated subtractor has been replaced by a VCA alone, with the gain varying in the opposite direction to the VCA in fig. 5. Thus the gain (1-g) of each variable gain circuit (which may be implemented by subtracting one VCA of its gain "g" from the output of one passive matrix as in figures 2/3, 4 and 5) is replaced by the gain "h" of the corresponding variable gain circuit (which may be implemented by one single VCA with a gain "h" acting on the output of one passive matrix). If the characteristics of the gain "(1-g)" are the same as those of the gain "h", and if the feedback circuit functions to keep the sizes of the necessary signal pairs equal, the configuration of fig. 6 is equivalent to that of fig. 5, and will give the same output. Indeed, all of the disclosed configurations, i.e., the configurations of fig. 2/3, 4, 5, and 6, are equivalent to each other.
Although the configuration of fig. 6 is equivalent and functionally identical to the previous configuration, note that the passive matrix does not appear explicitly but implicitly. In the static or unsteered case of the previous configuration, the VCA gain is reduced to a small value. In the configuration of fig. 6, when the gain h of all VCAs rises to its maximum value, 1 or close to 1, the corresponding non-manipulated state occurs.
Referring more specifically to FIG. 6, the "left" output of the passive matrix, again, is identical to the input signal LtIs likewise added to a gain hlTo the "left" VCA64, to generate the intermediate signal Lt*hl. The "right" output of the passive matrix, likewise the input signal RtIs likewise added to a gain hrTo the "right" VCA70, to generate the intermediate signal Rt*hr. The "center" output from the passive matrix of combiner 2 is added to gain hcThe "central" VCA66, generates an intermediate signal 1/2 (L)t+Rt)*hc. The "surrounding" output from the passive matrix of the combiner 4 is added to a gain hsThe "peripheral" VCA68, generates an intermediate signal 1/2 (L)t-Rt)*hs. As explained above, VCA gain h and VCA gain g play opposite roles, such that the characteristics of h-gain are the same as those of (1-g) gain. Portions 69 and 71 in the dashed line constitute one component of the servo.
Generation of control voltage
Analysis of the control signal in connection with the embodiments described thus far is useful for a better understanding of the present invention and to explain how the teachings of the present invention may be used to derive five or more audio signal streams, each associated with one direction, from a pair of audio input signal streams.
In the following analysis, one will consider a clockwise rotation around the listener in a circleThe audio source of (a) illustrates the result, starting from the rear, going through the left, center front, right, and back to the rear. The variable α is a measure (in degrees) of the perspective relative to the listener, with 0 degrees being shown at the back and 180 degrees at the center front. Input size LtAnd RtIs related to α by the following expression:
img id="idf0001" file="C0181477900201.GIF" wi="157" he="45" img-content="drawing" img-format="GIF"/(equation 17A)
img id="idf0002" file="C0181477900202.GIF" wi="156" he="45" img-content="drawing" img-format="GIF"/(equation 17B)
There is a one-to-one mapping between the ratio of the parameter α to the magnitude and polarity of the input signal; the use of alpha makes the analysis more convenient. When alpha is 90 degrees, LtIs limited and RtZero, i.e. only to the left. When alpha is 180 degrees, LtAnd RtEqual and of the same polarity (central front). When alpha is 0, LtAnd RtEqual but opposite polarity (central rear). As further explained below, the particular value of interest is generated at LtAnd RtWith a phase difference of 5dB and with opposite polarity, this yields a value of alpha of 31 degrees on both sides of zero. In practice, the left and right front speakers are generally placed further forward, at an angle greater than +/-90 degrees (e.g., +/-30 to 45 degrees) relative to center, so that alpha is not representative ofThe angle to the listener is an arbitrary parameter describing the rotation. The diagram to be explained is arranged such that the center of the horizontal axis (α ═ 180 degrees) represents the center front and the left and right limits (α ═ 0 and 360) represent the rear.
As discussed above in connection with the description of fig. 3, a convenient and practical relationship between the gains of a pair of VCAs in a feedback-derived control system keeps their product constant. For a VCA where one gain of the exponential control rises and the other falls, this will happen automatically when the same control signal is fed to both of the pair, as in the embodiment of fig. 3.
Representing the input signal as LtAnd RtGain g of VCAlAnd grIs set to be equal to 1/a2And assuming sufficiently large loop gains that are perfectly equal, the feedback-derived control system of fig. 3 adjusts the VCA gain to satisfy the following equation:
| Lt | (1-gl) ═ Rt | (1-gr) (equation 18)
In addition:
img id="idf0003" file="C0181477900211.GIF" wi="101" he="42" img-content="drawing" img-format="GIF"/(equation 19)
Obviously, in the first of these equations, LtAnd RtIs irrelevant. The results depend only on their ratio Lt/Rt(ii) a This is referred to as X. G is prepared fromrSubstituting the second equation into the first equation, a g is obtainedlThe solution of (the other root of the quadratic agenda does not represent the real system):
img id="idf0004" file="C0181477900212.GIF" wi="459" he="47" img-content="drawing" img-format="GIF"/(equation 20)
The relative rotation angle α is plotted as glAnd grThen fig. 7 is obtained. As expected, g is when the input represents only the left (α -90), glA very low value from the rear rises to a maximum value of 1 and falls back to a very low value in the central front (α ═ 180). In the right half, glAnd remain very small. Likewise and symmetrically, g except in the center and right half of the diskrIs small, rises to 1 when α is 270 degrees (right only).
The above results are for Lt/RtAnd a feedback derivation control system. The sum/difference feedback derived control system functions in the same manner to produce a sum gain g as shown in fig. 8cSum and difference gain gsThe figure (a). Also, as expected, the sum gain rises to 1 in the center front, falls to a low value elsewhere, and the difference gain rises to 1 in the rear.
If the gain of the feedback-derived control system VCA depends on an exponential of the control voltage, as in the preferred embodiment, the control voltage depends on a logarithm of the gain. Thus, the device is provided withFrom the above equation, L can be obtainedt/RtAnd the expression for the sum/difference control voltage, i.e., the output of the comparator of the feedback-derived control system, i.e., comparator 30 of fig. 3. FIG. 9 shows the left/right and sum/difference control voltages in an embodiment where the maximum and minimum values of the control signal are +/-15 volts, the latter being reversed (i.e., effectively a difference/sum). Obviously, other ratios are also possible.
The curves of fig. 9 intersect at two points, one at which the signal represents an image somewhere to the left and back of the listener and the other at the front half. Due to the inherent symmetry of the curves, these intersections are exactly at the midpoint of the α values with respect to the adjacent basis directions. In fig. 9, they appear at 45 and 225 degrees.
The prior art (i.e., U.S. patent 5644640 to James w.fosgate, the inventor of the present invention) shows that it is possible to derive an additional control signal from two master control signals that is either larger (more positive) or smaller (less positive) than the two master control signals, although this prior art derives the master control signals in a different manner and uses the generated control signals differently. Fig. 10 illustrates a signal equivalent to the smaller part of the curve of fig. 9. This resulting control rises to a maximum when α is 45 degrees, the value at the intersection of the original two curves.
The control signal, which may be undesirable, rises to its maximum value precisely when α is 45. In practical embodiments, the resulting base direction preferably represents the left rear side near the rear, i.e., it is less than 45 degrees. The exact position of the maximum can be shifted: one or both of the left/right and sum/difference control signals are biased (plus or minus a constant) or scaled to have their curves intersect at the desired alpha value before taking a more or less negative function. For example, fig. 11 shows the same operation as fig. 10, except that the sum/difference voltage has been added by the ratio 0.8, resulting in a maximum value at 31 degrees.
In the same way, comparing the inverted left/right control with the inverted sum/difference and using the same offset or adding the same ratio, a second new control signal can be obtained, the maximum of which is produced at 31 degrees on the other side of the desired predetermined a (e.g. 360-31 or 329 degrees, i.e. zero, symmetrical to the left rear). Corresponding to a predetermined position behind the listener's right. This is the left/right reversal of fig. 11.
Fig. 12 shows the way these resulting control signals are applied to the VCA in such a way that the most positive value gives a gain of 1. Just as the left and right VCAs give gains that rise to 1 in the left and right base directions, these get left and right rear VCA gains that rise to 1 when the signal is at a predetermined position (in this example, α on both sides of zero is 31 degrees), but remain small elsewhere.
The same results are obtained for a linear controlled VCA. The curves of the main control voltages with respect to the rotation parameter a will be different but may intersect at a point that can be selected by adding an appropriate proportion or an appropriate bias so that additional control voltages for a particular image location rather than the first four base directions can be obtained with fewer computations. Obviously, it is also possible to reverse the control signal and obtain a new control signal by taking a larger (more positive) part instead of a smaller (more negative) one.
The modification to move the intersection of the main control signal before taking the larger or smaller portion may also include a non-linear operation instead of or in addition to biasing or adding a proportion. Obviously, the modification allows the generation of an additional control voltage, the maximum of which lies at any desired Lt/RtThe ratio of the magnitudes of (input signals) and the relative polarities.
Adaptive matrix with more than four outputs
Fig. 2 and 4 show a passive matrix with adaptive cancellation terms for canceling unwanted crosstalk. In these cases, four cancellation terms are available through four VCAs, and each VCA achieves a maximum gain, typically 1, for a source of one of the four base directions and corresponding to one primary output from one of the four outputs (left, center, right, and rear). The system is perfect in the sense that signals lying between two adjacent basis directions produce little or no output other than that corresponding to the two adjacent basis outputs.
This principle can be extended to active systems with more than four outputs. In this case, the system is not "perfect," but the unwanted signals are still sufficiently cancelled so that the result is audible and not corrupted by crosstalk. See, for example, the six output matrix of fig. 13. Fig. 13 is a functional schematic of a portion of an active matrix according to the present invention, useful to help illustrate the manner in which more than four outputs are obtained. Fig. 14 shows the resulting six cancellation signals used in fig. 13. Fig. 13 and 14 relate to providing more than four outputs according to a first method of the present invention. The method of providing more than four outputs according to the second method of the present invention is described below in connection with fig. 16-19.
Referring first to fig. 13, there are six outputs: left front (L)out) Middle and front (C)out) Right front (R)out) Middle and back (or periphery) (S)out) Right Rear (RB)out) And left rear (LB)out). For three front and surrounding outputs, the initial passive matrix is the same as the four-output system described above (one direct L)tInput, half-proportionally applied to linear combiner 80 to produce a center-forward LtPlus RtIs added to the linear combiner 82 in half the ratio to produce a central rear LtSubtracting RtAnd a direct RtInput). There are also two additional rear outputs, left rear and right rear, generated by dividing LtIn the ratio 1 and RtTo linear combiner 84 in proportion-b and to LtIn the proportions-b and RtIs applied to linear combiner 86 at ratio 1, corresponding to LB as per equationout=Lt-b*RtAnd RBout=Rt-b*LtDifferent combinations of inputs. Here, b is a positive coefficient, typically less than 1, e.g. 0.25. Note that symmetry is not essential to the invention, but will occur in any practical system.
In fig. 13, in addition to the passive matrix entries, the output linear mixers (88, 90, 92, 94, 96, and 98) receive a plurality of active cancellation entries (on lines 100, 102, 104, 106, 108, 110, 112, 114, 116, 118, 120, and 120) needed to cancel the passive matrix outputs. These terms include inputs and/or combinations of inputs multiplied by the gain of the VCA (not shown) or combinations of inputs multiplied by the gain of the VCA and inputs. As explained above, the VCA is controlled such that its gain rises to 1 in the base input case, but is sufficiently small otherwise.
The configuration of FIG. 13 has six cardinal directions if L is inputtAnd RtFor a certain relative magnitude and polarity, then each direction should only produce a signal from the appropriate output, with sufficient cancellation at the other five outputs. For an input case where the representative signal lies between two adjacent base directions, the outputs corresponding to these two directions should give a signal but the other outputs should give only a little or no signal. Thus, it is expected that for each output, there will be several cancellation terms (in practice, more than the two shown in FIG. 13) in addition to the passive matrix, each corresponding to an unwanted output for each input corresponding to each other base direction. In practice, the apparatus of FIG. 13 may be modified to remove the post-centering SoutThe outputs (thus removing the combiners 82 and 94) are such that the center-back is only one rotational angle midway between the left-back and right-back, and not the sixth base direction.
For the six output system of fig. 13 or its five output alternative, there may be six cancellation signals: four from two pairs of VCAs that are part of the left/right and/or sum/difference feedback derived control system, and two more from the left rear and right rear VCAs that are controlled in the manner described above (see also the embodiment of fig. 14 described below). The gains for six VCAs are according to FIG. 7 (g)lLeft sum grRight), FIG. 8 (g)cAnd gsDifference) and FIG. 12 (g)lbLeft rear sum grbRight rear). As explained below, the cancellation signal is summed with the passive matrix terms using coefficients calculated or selected to minimize unwanted crosstalk.
To obtain the desired cancellation combining coefficients for each base output, the input signal and VCA gain for each of the other base directions can be considered, bearing in mind that these VCA gains only rise to 1 for the signal corresponding to the base direction and fall off from 1 fairly quickly as the image moves away.
Thus, for example, in the case of a left output, signals for a front-middle, right, rear-middle (which is not a true base direction in the case of five outputs) and rear-left case need to be considered.
Considering in detail the left output L of the five output modification of FIG. 13out. It contains entries L from the passive matrixt. To be input in the center, Lt=RtAnd gcEliminating this output at 1 requires the exactly same term-1/2 × g as the four output system of fig. 2 or 4c*(Lt+Rt). To eliminate the input anywhere between mid-rear or mid-rear and right-front (and therefore right-rear), the same-1/2 xg just as the four-output system of fig. 2 or 4 is also requireds*(Lt-Rt). To cancel when the input represents left rear, a signal from the left rear VCA is required, the gain g of whichlbUnlike in fig. 12. This clearly gives a valid cancellation signal only when the input is located in the rear left region. Since the left rear can be seen as representing only LtIs denoted by 1/2 (L)t-Rt) Somewhere in between the middle and rear, it is expected that the rear left VCA should operate on a combination of these signals.
Different fixed combinations may be used, but by using a signal that has passed the left sum difference VCA, i.e. gl*LtAnd 1/2 gs*(Lt-Rt) The combination changes according to the signal position rotated in the left rear region but not located right behind the left, providing better cancellation of these rotation angles and of the left rear itself. Note that the left-rear position, g, which may be considered herein as the middle of the left and rearlAnd gsEach having a finite value of less than 1. Thus expected LoutThe equation of (a) will be:
Lout=[Lt]-1/2*gc*(Lt+Rt)-1/2*gs*(Lt-Rt)-x*glb*((gl*Lt+gs*1/2*(Lt-Rt))
(equation 21)
The coefficient x may be obtained empirically or by considering the exact VCA gain when the source is located in the left-rear-base direction region. [ L ]t]The entries are passive matrix entries. 1/2 gc*(Lt+Rt)、-1/2*gs*(Lt-Rt) And 1/2 x glb*((gl*Lt+gs*1/2*0(Lt-Rt) Term) represents the sum to be summed with L in the linear combiner 88 (FIG. 13)tAre combined to obtain an output audio signal LoutThe elimination term of (see fig. 14). As explained above, there may be more than the two (100 and 102) crosstalk cancellation term inputs shown in fig. 13.
RoutCan be derived either as such or from symmetry:
Rout=[Rt]-1/2*gc*(Lt+Rt)+1/2*gs*(Lt-Rt)-1/2*x*grb*((gr*Rt-gs*(Lt-Rt))
(equation 22)
[Rt]The entries are passive matrix entries. -1/2 × gc*(Lt+Rt)、1/2*gs*(Lt-Rt) And-1/2 x glb*((gr*Rt-gs*(Lt-Rt) Term) represents the sum to be made with R in the linear combiner 98 (FIG. 13)tAre combined to obtain an output audio signal RoutThe elimination term of (see fig. 14). As explained above, there may be moreTwo (120 and 122) cross-talk cancellation entries are shown in fig. 13.
Center forward output, CoutIncluding the passive matrix entries 1/2 (L)t+Rt) Adding the left and right cancellation terms, -1/2 × g for a four output systeml*LtAnd-1/2 × gr*Rt
Cout=[1/2*(Lt+Rt)]-1/2*gl*Lt-1/2*gr*Rt(equation 23)
Explicit elimination terms of left rear, middle rear or right rear are not needed because they are effectively located between the left and right front through the rear (i.e., the periphery in the four outputs) and have been eliminated. [1/2 (L)t+Rt)]The entries are passive matrix entries. -1/2 × gl*LtAnd-1/2 × gr*RtTerm representatives will be added to the inputs 100 and 102 and in the linear combiner 90 (FIG. 13) as LtAnd RtTo obtain an output audio signal CoutThe elimination term of (see fig. 14).
For the left rear output, the starting passive matrix, as described above, is Lt-b*Rt. For left-only input, when glWhen 1, the clearly required elimination term is therefore-gl*Lt. For right-only input, when grWhen 1, the elimination term is b gr*Rt. For a medium-front input, when Lt=RtAnd g iscWhen 1, the unwanted output from the passive term, Lt-b*RtMay be represented by (1-b) × gc*1/2*(Lt+Rt) And (4) eliminating. The right posterior elimination term is-grb*(gr*Rt-1/2*gs*(Lt-Rt) And R) with RoutThe terms used are the same with an optimization factor y, which can also be obtained empirically or calculated from the VCA gains for the left and right cases. Thus, it is possible to prevent the occurrence of,
LBout=[Lt-b*Rt]-gl*Lt+b*gr*Rt-(1-b)*gc*1/2*(Lt+Rt)-y*grb*(gr*Rt-gs*1/2*(Lt-Rt) (equation 24)
In the same way as above, the first and second,
RBout=[Rt-b*Lt]-gr*Rt+b*gl*Lt-(1-b)*gc*1/2*(Lt+Rt)-y*grb*(gl*Lt+gs*1/2*(Lt-Rt) (equation 25)
Regarding equation 24, [ Lt-b*Rt]The terms are passive matrix terms, and-gl*Lt、+b*gr*Rt、-1/2*(1-b)*gc*(Lt+Rt) And-y grb*(gr*Rt-gs*1/2*(Lt-Rt) Term) represents the sum to be summed with L in the linear combiner 92 (FIG. 13)t-b*RtAre combined to obtain an output audio signal LBoutThe cancellation term of (see fig. 14). As explained above, there may be more than the two (108 and 110) crosstalk cancellation term inputs shown in fig. 13.
With respect to equation 25, [ R ]t-b*Lt]The terms are passive matrix terms, and-gr*Rt、b*Lt*gl、-1/2*(1-b)*gc*(Lt+Rt) And-y glb*(gl*Lt+gs*1/2*(Lt-Rt) Component represents the sum of R in a linear combiner 96 (FIG. 13)t-b*LtAre combined to obtain an output audio signal RBoutThe cancellation term of (see fig. 14). As explained above, there may be more than the two (116 and 118) crosstalk cancellation term inputs shown in fig. 13.
In practice all coefficients need to be adjusted to compensate for the finite loop gain and other disadvantages of the feedback derived control circuit that do not give exactly equal signal levels, and other combinations of six cancellation signals may be employed.
Of course, these principles can be extended to embodiments having more than five or six outputs. The additional control signal may be derived by further applying a proportional, biased or non-linear processing to the two main control signals from the left/right and sum/difference feedback portions of the feedback-derived control system, allowing the generation of an additional cancellation signal by the VCA whose gain rises to a maximum at an otherwise desired predetermined value a. The integration process that takes into account each of the outputs present in the signal at each of the other base directions will in turn produce the appropriate terms and coefficients for generating additional outputs.
Referring now to FIG. 14, an input signal LtAnd RtTo a passive matrix 130, which is derived from LtThe input producing a left matrix signal output from RtThe input generates a right matrix signal output, L from the inputtAnd RtAnd linear central combiners 132, each having a scaling factor of +1/2, produce a central output, L from the inputtAnd RtAnd a linear central combiner 134 with scale factors of +1/2 and-1/2, respectively, produces a single ambient output. The base directions of the passive matrix are designated "left", "center", "right" and "surrounding". The adjacent base directions lie on axes that are ninety degrees to each other, such that for these direction markers, the left is adjacent to the center and the periphery; the surroundings are adjacent to the left and right, etc.
The left and right passive matrix signals are applied to a first pair of variable gain circuits 136 and 138 and an associated feedback derived control system 140. The central and peripheral passive matrix signals are applied to a second pair of variable gain circuits 142 and 144 and an associated feedback derived control system 146.
The "left" variable gain circuit 136 includes a gain glA Voltage Controlled Amplifier (VCA)148 and a linear combiner 150. The VCA output is subtracted from the left passive matrix signal in combiner 150So that the total gain of the variable gain circuit is (1-g)l) And the output of the variable gain circuit at the combiner output is (1-g)l)*LtThe output constitutes an intermediate signal. VCA148 constitutes an output signal of the cancellation signal, gl*Lt
The "right" variable gain circuit 138 includes a gain grA Voltage Controlled Amplifier (VCA)152 and a linear combiner 154. The VCA output is subtracted from the right passive matrix signal in combiner 154 to make the overall gain of the variable gain circuit (1-g)r) And the output of the variable gain circuit at the combiner output is (1-g)r)*RtThe output constitutes an intermediate signal. Output signal g of VCA152r*RtForming a cancellation signal. Intermediate signal (1-g)l)*LtAnd (1-g)r)*RtConstituting a first pair of intermediate signals. It is desirable that the relative magnitudes of the first pair of intermediate signals tend to be equal. This is accomplished by an associated feedback derivation control system 140, as explained below.
The "center" variable gain circuit 142 includes a gain gcA Voltage Controlled Amplifier (VCA)156 and a linear combiner 158. The VCA output is subtracted from the central passive matrix signal in combiner 158 to make the overall gain of the variable gain circuit (1-g)c) And the output of the variable gain circuit at the combiner output is 1/2 x (1-g)c)*(Lt+Rt) The output constitutes an intermediate signal. Output signal 1/2 xg of VCA156c*(Lt+Rt) Forming a cancellation signal.
The "surround" variable gain circuit 144 includes a gain grA Voltage Controlled Amplifier (VCA)160 and a linear combiner 162. The VCA output is subtracted from the surrounding passive matrix signal in combiner 162 to make the total gain of the variable gain circuit (1-g)s) And the output of the variable gain circuit at the combiner output is 1/2 x (1-g)s)*(Lt-Rt) The output constitutes an intermediate signal. VCA160 outputOutput signal 1/2 gs*(Lt-Rt) Forming a cancellation signal. Intermediate signal 1/2 (1-g)c)*(Lt+Rt) And 1/2 (1-g)s)*(Lt-Rt) Forming a second pair of intermediate signals. It is also desirable that the relative magnitudes of the second pair of intermediate signals approach equality. This is accomplished by an associated feedback derivation control system 146, as explained below.
The feedback derivative control system 140 associated with the first pair of intermediate signals includes filters 164 and 166 that receive the outputs of the combiners 150 and 154, respectively. The respective outputs of the filters are applied to logarithmic rectifiers 168 and 170 which rectify the inputs and produce logarithms of their inputs. The rectified and logarithmized output is applied with opposite polarity to a linear combiner 172 whose output constitutes the subtraction of its inputs and is applied to a non-inverting amplifier 174 (devices 172 and 174 correspond to the magnitude comparator 30 of fig. 3). Subtracting the logarithmic signal provides a comparison function. As mentioned above, this is a practical way to implement the comparison function in the analog domain. In this case, the VCAs 148 and 152 are of a type that inherently takes the inverse logarithm of their control inputs, and thus the control outputs of the log-based comparators. The output of amplifier 174 constitutes the control signals for VCAs 148 and 152. As mentioned above, if implemented numerically, it would be more convenient to divide the two sizes and use the result as a direct factor of the VCA function. As noted above, filters 164 and 166 may be empirically derived to provide a response that attenuates low and very high frequencies and provides a response that rises smoothly in the middle audible range. These filters do not change the frequency response of the output signal, they only change the control signal and VCA gain in the feedback derived control system.
The feedback derivative control system 146 associated with the second pair of intermediate signals includes filters 176 and 178 that receive the outputs of the VCAs 158 and 162, respectively. The respective outputs of the filters are applied to logarithmic rectifiers 180 and 182 which rectify the inputs and produce logarithms of their inputs. The rectified and logarithmic output is applied with opposite polarity to linear combiner 184 whose output constitutes the subtraction of its inputs and is applied to a non-inverting amplifier 186 (devices 184 and 186 correspond to magnitude comparator 30 of fig. 3). Feedback-derived control system 146 operates in the same manner as control system 140. The output of amplifier 186 constitutes the control signals for VCAs 158 and 162.
The additional control signals are derived from feedback derived control signals of the control systems 140 and 146. The control signal of the control system 140 is applied to first and second scaling, biasing, inverting, etc. functions 188 and 190. The control signal of the control system 146 is applied to first and second scaling, biasing, inverting, etc. functions 192 and 194. The functions 188, 190, 192, and 194 may include one or more of the polarity inversion, amplitude offset, amplitude scaling, and/or non-linear processing described above. Also in accordance with the above description, smaller or larger portions of the outputs of the functions 188 and 192 and the functions 190 and 194, respectively, are taken by smaller or larger functions 196 and 198, respectively, to generate additional control signals that are applied to the left and right rear VCAs 200 and 202, respectively. In this case, the additional control signal is derived in the manner explained above to provide a signal suitable for generating a left and a right post cancellation signal. The input to the rear left VCA200 is obtained by additively combining the left and ambient cancellation signals in a linear combiner 204. The input to the rear right VCA202 is obtained by subtractively combining the right and ambient cancellation signals in a linear combiner 204. Alternatively, but less preferably, the inputs to the VCAs 200 and 202 may be derived from the left and surrounding passive matrix outputs and the right and surrounding passive matrix outputs, respectively. The output of the rear left VCA200 is a rear left cancellation signal glb*1/2*(gl*Lt+gs*(Lt-Rt)). The output of the right rear VCA202 is a right rear cancellation signal grb*1/2*(gr*Rt+gs*(Lt-Rt))。
Fig. 15 is a schematic circuit diagram showing one practical circuit for implementing aspects of the present invention. The resistance values are shown in ohms. Where not indicated, capacitance values are in millifarads.
In FIG. 15, "TL 074" is TThe exas Instrument's four-way low noise JFET input (high input impedance) general purpose operational amplifier, which is used for high fidelity audio pre-amplification applications. Details of the device are widely available in published literature. One data sheet can be on Internet<< http://www.ti.com/sc/docs/products/ analog/tl074.html>>The above is found.
"SSM-2120" in FIG. 15 is a monolithic integrated circuit for audio applications. It comprises two VCAs and two level detectors allowing control of the gain and attenuation of the signal applied to the level detectors according to their magnitude. Details of the device are widely available in published literature. One data sheet can be on Internet<< http://www.analog.com/pdf/1788 c.pdf>>The above is found.
The table below relates the items used in this document to the markers at the output of the VCA and on the vertical bus of fig. 15.
Items used in the above description Labeling at the output of the VGA of FIG. 15 Labels on the vertical bus of FIG. 15
gl*Lt Left VCA LVCA
gr*Rt Right VCA RVCA
1/2*gc*(Lt+Rt) Front VCA FVCA
1/2*gs*(Lt-Rt) Rear VCA BVCA
glb*((gl*Lt+gs*1/2*(Lt-Rt)) Rear left VCA LBVCA
grb*((gr*Rt+gs*1/2*(Lt-Rt)) Rear right VCA RBVCA
In fig. 15, the labeling of the wires going to the output matrix resistors is intended to express a function of the signal, not its source. Thus, for example, the top few wires leading to the front left output are as follows:
notation in FIG. 15 Means of
LT From LtContribution of input
CF elimination Signal for eliminating undesired output of central front source
LB elimination Signal for eliminating undesired output of left rear source
BK elimination Signal for eliminating undesired output of rear source
RB elimination Signal for eliminating undesired output of right rear source
LR GR Left front gain operates on a curve-giving the angle of rotation through the front
More constant loudness
Note that in fig. 15, the matrix itself will invert any entries (U2C, etc.) regardless of the polarity of the VCA entries. The "servo" in fig. 15 refers to the feedback derivation control system described here.
Looking at equations 9-12 and 21-25 proposes an additional equivalent method of generating an output signal, namely the second method of the present invention which has been briefly discussed above. According to the second method, although the intermediate signal is generated by one servo and caused to approach equality, the intermediate signal does not directly contribute to the output signal; but rather the signals present in the servo are used to generate coefficients for controlling a variable matrix. For example, consider equation 9. This equation can be rewritten by aggregating all Lt terms and all Rt terms as:
Lout=[1/2*(1-gc)+1/2(1-gs)]Lt+[1/2*(1-gc)-1/2*(1-gs)]Rt
(equation 26)
The coefficient of Lt term can be written as "Al" and the coefficient of Rt term can be written as "Ar" so equation 26 can be expressed simply as:
lout Al Lt + Ar Rt (equation 27)
Likewise, Cout (equation 10), Rout (equation 11), and Sout (equation 12) may be written as:
cout ═ Bl ═ Lt + Br · Rt (equation 28)
Rout ═ Cl ═ Lt + Cr · Rt (equation 29)
Sout ═ Dl × Lt + Dr × Rt (equation 30)
In the same manner, equations 21-25 may be rewritten to centralize all Lt terms and all Rt terms so that equations 21-25 may be represented in the manner of equations 27-30. In each case, the output signal is the sum of one variable coefficient times one of the output signals Lt plus another variable coefficient times another of the output signals Rt. Thus, an additional equivalent way of implementing the invention is to generate signals that yield the variables Al, Ar, etc., where some or all of the signals are generated by employing servo means that cause the amplitudes to approach equality. While this additional method is useful for both analog and digital implementations, it is particularly useful for digital implementations because some processing may be implemented at a low sample rate in the digital domain, as explained below.
Fig. 16-19 functionally illustrate the just-mentioned additional equivalent method of implementing the present invention, namely a software digital implementation of the second method of implementing the present invention. In practice, the software may be written in ANSIC code language and implemented on a general purpose digital processing integrated circuit chip. A sampling rate of 32kHz, 44.1kHz, or 48kHz or other suitable for audio processing may be employed. Fig. 16-19 are essentially the previously described digital software versions of the embodiment of fig. 14.
Referring to fig. 16A, a functional block diagram is shown in which there is one audio signal path (above the dashed horizontal line) and one control signal path (below the dashed horizontal line). An Lt input is applied to an adaptive matrix function 214 through a gain function 210 (thus becoming Lt') and an optional delay function 212. Similarly, an Rt audio input signal is applied to an adaptive matrix function 214 through a gain function 216 (thus becoming Rt') and an optional delay function 218. The gain functions 210 and 216 are primarily used to balance the input signal levels and add a-3 dB ratio to the input to minimize output clipping. They do not constitute an essential part of the present invention. The Lt and Rt signals are samples of an analog audio signal taken at 32kHz, 44.1kHz or 48 kHz.
The Lt' and Rt signals are also applied to a passive matrix function 220, which provides four outputs: lt ', Rt', Ft and Bt. The Lt 'and Rt' outputs are taken directly from the Lt 'and Rt' inputs. To generate Ft and Bt, both Rt 'and Lt' are scaled by 0.5 in scaling functions 222 and 224. Lt 'and Rt' after addition of the proportion 0.5 result in Ft in the combining function 226, and Lt 'and Rt' after addition of the proportion 0.5 result in Bt in the combining function 228 (thus Ft ═ Lt '+ Rt')/2 and Bt ═ Lt '+ Rt')/2). Other ratios than 0.5 may also be used. Lt ', Rt', Ft and Bt are applied to a variable gain signal generator function 230 (function 230 includes servo, as explained below).
In response to the passive matrix signals, generator function 230 generates six control signals gL, gR, gF, gB, gLB, and gRB, which are in turn applied to a matrix coefficient generator function 232. The six control signals correspond to the gains of the VCAs 136, 138, 156, 160, 200, and 202 of fig. 14. In principle, they may be identical to the gain control signals of the circuit arrangement of fig. 14. In practice, they may be taken as being arbitrarily close to those signals depending on implementation details. As explained further below, the variable gain signal generator function 230 includes the "servo" referred to herein.
The generator function 232 generates twelve matrix coefficients, designated as mat.a, mat.b, mat.c, mat.d, mat.e, mat.f, mat.g, mat.h, mat.i, and mat.l, in response to the six control signals, as described further below. In principle, the division of the functions of functions 230 and 232 may be as just described, or, alternatively, function 230, which includes the servo, may generate only two signals (i.e., "LR" and "FB" error signals, described below) and add to function 232, and then function 232 may derive six control signals gL, gR, gF, gB, gLB, and gRB from LR and FB, and generate twelve matrix coefficients (mat.a, etc.) from the six control signals. Alternatively, equivalently, twelve matrix coefficients may be derived directly from the LR and FB error signals. Fig. 16B shows an alternative variable gain signal generator function 230 that adds only two signals, the LR and FB error signals, to the matrix coefficient generator function.
As explained further below, gL and gR control signals may be derived from an LR error signal, gF and gB control signals may be derived from an FB error signal, and gL and gRB control signals may be derived from an LR and FB error. In this way, the output adaptive matrix coefficients can also be obtained directly from the LR and FB error signals without using the six control signals gL, gR, etc. as intermediate signals.
The adaptive matrix function 214, a six-by-two matrix as further described below, generates output signals L (left), C (center), R (right), Ls (left periphery), Bs (rear periphery), and Rs (right periphery) in response to the input signals Lt 'and Rt' and matrix coefficients from the generator function 232. Different ones of the six outputs may be omitted if desired. For example, the Bs output may be omitted, or the Ls, Bs, and Rs outputs may also be omitted, as described further below. A delay of about 5 milliseconds is preferably made in the optional input delays 212 and 218 to allow time for the gain control signal to be generated (this is commonly referred to as "advance"). The 5ms delay is empirically determined and is not critical.
Fig. 17, 18 and 19 show how the gain control signal is preferably generated by a variable gain signal generator function 232. FIG. 17 shows a left/right servo function that generates the gL and gR control signals in response to Lt 'and Rt'. FIG. 18 shows a front/back servo function that generates gF and gB control signals in response to Ft and Bt. FIG. 19 shows a function for generating the gLB and gRB control signals in response to the FB error signal appearing in the front/back servo function (FIG. 17) and the LR error signal appearing in the left/right servo function (FIG. 18). If only four output channels are required, the functions of FIG. 19 can be omitted and the generator function 232 and the adaptive matrix function 214 can be modified as appropriate.
Referring to fig. 17, the Lt 'signal is applied to a combining function 240, and a multiplying function 242, where Lt' is multiplied by a gain control factor gL. The output of the multiplication function 240 is subtracted from Lt' in the combining function 240. Thus, the output of the function 240 may be expressed as (1-gL) × Lt', and constitute an intermediate signal. The servo arrangement of fig. 17 operates to cause the intermediate signal at the output of the combining function 240 and the intermediate signal at the output of the combining function 250 to equalize, as explained below. To limit the frequency of the control path (and thus the overall decoder) response, the output of the combining function 240 is filtered by a band-pass filter function 244, which preferably has a fourth order characteristic with a passband of about 200Hz to about 13.5 kHz. Other bandpass characteristics may also be suitable according to the designer's criteria.
In a practical implementation, the band-pass filter has a response based on an analog filter whose model can be viewed as two separate parts-a 2-pole low-pass filter and a 2-pole/2-zero high-pass filter. The analog filter is characterized as follows:
high-pass section:
zero # 1-0 Hz
Zero # 2-641 Hz
Pole #1 is 788Hz
Pole # 2-1878 Hz
A low-pass section:
two poles at 13466Hz
To convert the filter characteristics to the digital domain, the high-pass filter can be discretized with a bilinear transform, while the low-pass filter can be discretized with a bilinear variation after pre-warping at the-3 dB cut-off frequency (13466Hz) of the analog filter. The discretization is performed at sampling frequencies of 32kHz, 44.1kHz and 48 kHz.
The band pass filter signal is rectified by an absolute value function 246. The rectified and filtered signal is then preferably smoothed by a first order smoothing function 248 having a time constant of about 800 ms. Other time constants may be suitable according to the designer's criteria. The Rt' signal is processed in the same manner by a combining function 250, a multiplying function 252, a band pass filter function 254, an absolute value function 256, and a smoothing function 258. The output of the combining function 250 is an intermediate signal in the form of (1-gR) Rt'. The servo arrangement of fig. 17 operates to cause the intermediate signal at the output of the combining function 250 and the intermediate signal at the output of the combining function 240 to equalize, as explained above. The processed Lt 'signal from the smoothing function 248 and the processed Rt' signal from the smoothing function 258 are applied to scaling functions 260 and 262, respectively, plus a scaling factor a0(a0 is chosen to minimize the likelihood of the input to the logarithmic function below being zero). The resulting signal is then applied to logarithmic functions 264 and 262, respectively, providing a base 2 logarithm of its input. The resulting logarithmically filtered signals are applied to further scaling functions 268 and 270, respectively, plus a scaling factor a1 (chosen such that the output of the subsequent combiner 272 is small at least in steady-state signal conditions). The resulting processed Rt 'signal is then subtracted from the resulting processed Lt' signal in a mixing function 272, the output of which is still added to a further scaling function 274, plus a scaling factor a2 (the value of a2 affects the speed of the servo and the subsequent variable gain function in which the gain decreases as the magnitude of the added signal increases). The output of the scaling function 274 is applied to a variable gain function 276. As shown by the shape of the transfer function in the figure, the variable gain function is preferably piecewise linear with three portions, having a first linear gain for signals having amplitudes ranging from a first negative value to a first positive value and a second, lower, linear gain for more negative or more positive signals. In a practical implementation, the transformation function is defined by the following pseudo-code statement:
If input=(-0.240714,0.240714)
output=(input*2.871432)
If input=[0.240714,1.0]
output=((input*0.406707)+0.593293)
If input=[-1.0,-0.240714]
output=((input*0.406707)-0.593293)
alternatively, using more than three piecewise linear segments to provide a smoother nonlinear transfer function improves performance but at the expense of higher processing power requirements. The output of the variable gain function is applied to yet another first order smoothing function 278. The smoothing function preferably has a time constant of about 2.5 ms. This signal, which may be designated as the "LR" signal, is then added to the scale factor a3 by a scale factor function 280 and to both paths. In one path, the LR signal resulting in the gL signal plus the proportion A3 is added to the scale factor a4 in the combining function 282. The combined signal is then exponentiated (thereby eliminating the previous logarithmic operation) in a base-2 extractor or inverse logarithmic function 284 to produce the gL signal, which is used to multiply Lt' in multiplier function 242. In the other path, the LR signal producing the gR signal plus the ratio A3 is subtracted from the scale factor a4 in a combining function 286. The combined signal is then indexed in an index function 288 of base 2 to produce the gR signal, which is used to multiply Rt' in multiplier function 252.
The operation of the left/right servo of fig. 17 can be compared with the operation of the left/right servo 140 of fig. 14. The transfer function from the output of the smoothing function 278 to the output of the respective inverse logarithmic function models the gain of the VCA, such as VCAs 148, 152, 156 of fig. 14. The signals gL and gR are equivalent to VCA gain. As in the previously described servo arrangement, when gL increases, gR decreases, and vice versa. Thus, gL and gR are directly derived from the error signal LR. The output of the left/right servo is only the gL and gR signals. The function in dashed line 289 is decimated-every few samples, e.g. eight samples, only one calculation is needed because the signal changes to be slow enough that processing can occur at a slow rate. In a practical embodiment of the invention and in the examples set forth herein, downsampling by eight is discussed, but it will be appreciated that downsampling by other factors may be employed. By down-sampling, the computational complexity is reduced and the resulting audio output is not significantly degraded. This degradation can be mitigated by appropriate upsampling as described below.
The front/rear servo of fig. 18 is substantially the same as the left/right servo of fig. 17. Functions corresponding to those in fig. 17 are assigned the same reference numerals but with a prime (') symbol. In addition, Ft replaces Lt ', Bt replaces Rt', gF replaces gL, gB replaces gR, and FB replaces LR. As in the case of the left/right servo of FIG. 17, gF and gL are derived directly from the error signal FB.
In a practical embodiment, the a0 to a4 constants employed in the left/right and front/back servos of fig. 17 and 18 are as follows:
A0=(0.707106781*0.000022)
A1=(3.182732/4.0)
A2=(32*4)
A3=(-0.2375)
A4=-0.2400
fig. 19 is a functional block diagram showing the availability of left and right rear control signals in the digital domain suitable for use in the embodiment of fig. 16A-D and other embodiments of the present invention. Referring now to fig. 19, the LR signal from the left/right servo of fig. 17 is applied to two paths. In one path, it is inverted by being multiplied by-1 in the multiplication function 290. The inverted signal is then applied to a maximization function 292, which takes the greater portion of the inverted LR signal or a scaled version of the other signal, the FB signal. In the other path, the LR signal is applied directly to another maximization function 294, which takes a larger portion of the LR signal or of a scaled version of the other signal, the FB signal.
The FB signal from the front/back servo of fig. 18 is multiplied by the scaling factor B0 in a multiplication function 296. The value of B0 determines which angle in the posterior semicircle the greatest gain occurs (and thus the positions of Ls (left periphery) and Rs (right periphery) of the fitness matrix 214 of fig. 16A-D). This angle may (but need not) be chosen to be substantially the same as the simulated embodiment of fig. 14. The FB signal plus proportion B0 is then added as one of the inputs to the above-mentioned maximization functions 292 and 294. The "larger" signal from functions 292 and 294 is multiplied by factor B1 in functions 296 and 298, respectively. The value of gain factor B1 is selected to minimize the likelihood that the outputs gLB and gRB exceed 1. Each signal plus the proportion B1 is limited by a minimization function 300 and 302, respectively. Both minimization functions should have the same limiting characteristics, preferably with the positive input into the limiting function clipped to zero. Each limited signal is then multiplied by a factor B2 in multiplication functions 304 and 306, respectively, and then biased by a value B3 in additive combining functions 308 and 310, respectively. The signal plus the ratio B2/B3 is then indexed in the base 2 exponentiator functions 312 and 314, respectively (thereby eliminating the previous logarithmic operation). The resulting signal is biased by the value B4 in additive combining functions 316 and 318, respectively, and then multiplied by the factor B5 in multiplying functions 320 and 322, respectively. The output of multiplication function 320 provides gain function gLB and the output of multiplication function 322 provides gain function gRB. Different scaling factors and offsets are chosen to minimize the likelihood that the gl and gRB exceed 1. All of the functions of fig. 19 can be downsampled so that only every eight samples need be computed as part of the functions of fig. 17 and 18.
In a practical implementation, the B0-B5 constants are:
B0=0.79
B1=1.451
B2=-0.1541
B3=-0.15415
B4=(-0.21927/1.21927)
B5=1.21927
in the approach of fig. 19, two or more additional control signals may be generated to help derive additional output directions. Achieving this result for each pair of control signals requires two additional coefficient matrices, two additional output channel calculations and a re-optimization of the matrix coefficients.
Referring again to fig. 16A, the six-by-two adaptive matrix function 214 calculates its six outputs (L, C, R, Ls, Bs, and Rs) (per sample) using the following equation:
L=Lt*mat.a+Rt*mat.b
C=Lt*mat.c+Rt*mat.d
R=Lt*mat.e+Rt*mat.f
Ls=Lt*mat.g+Rt*mat.h
Bs=Lt*mat.i+Rt*mat.j
Rs=Lt*mat.k+Rt*mat.l
the symbols "mat.a", "mat.b", etc. represent variable matrix elements. In one practical version of the embodiment, Bs is set to zero in all cases to provide five outputs. Alternatively, Ls and Rs may be set to zero (and the function of fig. 19 omitted from the overall device) if only the basic four outputs are required. The variable matrix element (mat.x) (preferably once every 8 samples) is calculated or obtained using a look-up table in matrix coefficient generator function 232 (mat.k and mat.l are not required when the Bs output is omitted):
mat.a=a0+a1*gL+a2*gR+a3*gF+a4*gB+a5*gLB+a6*gRB
mat.b=b0+b1*gL+b2*gR+b3*gF+b4*gB+b5*gLB+b6*gRB
mat.c=c0+c1*gL+c2*gR+c3*gF+c4*gB+c5*gLB+c6*gRB
mat.d=d0+d1*gL+d2*gR+d3*gF+d4*gB+d5*gLB+d6*gRB
mat.e=e0+e1*gL+e2*gR+e3*gF+e4*gB+e5*gLB+e6*gRB
mat.f=f0+f1*gL+f2*gR+f3*gF+f4*gB+f5*gLB+f6*gRB
mat.g=g0+g1*gL+g2*gR+g3*gF+g4*gB+g5*gLB+g6*gRB
mat.h=h0+h1*gL+h2*gR+h3*gF+h4*gB+h5*gLB+h6*gRB
mat.i=i0+i1*gL+i2*gR+i3*gF+i4*gB+i5*gLB+i6*gRB
mat.j=j0+j1*gL+j2*gR+j3*gF+j4*gB+j5*gLB+j6*gRB
mat.k=k0+k1*gL+k2*gR+k3*gF+k4*gB+k5*gLB+k6*gRB
mat.l=l0+l1*gL+l2*gR+l3*gF+l4*gB+l5*gLB+l6*gRB
once determined, all coefficients are fixed, but the gain control signal component remains variable. The x0 coefficients (a0, b0, etc.) represent passive matrix coefficients. The other fixed coefficients are scaled by the variable gain signal from the control path function.
The variable matrix coefficients (mat. x) are advantageously increased in sampling rate to achieve a smoother transition from one state of the variable matrix to another (a small change per sample rather than a large change every eight samples) without the significant complexity that would be incurred by recalculating the variable matrix every sample. Fig. 16C shows an alternative embodiment in which the smooth/increase sample rate function 233 operates on twelve matrix coefficient outputs from the function 232. Alternatively, and as a result, the control path gain signal may be increased by the sample rate. Fig. 16D shows another alternative embodiment in which the smoothing/upsampling rate function 231 operates on six or two outputs of the variable gain signal generator function 230. In both cases linear interpolation can be used.
If the control path gain signal (gL, gR, etc.) is generated every eight samples, there is a slight time difference between the audio samples output by the main signal path and the control path. Increasing the sample rate causes an additional time difference because linear interpolation inherently has an eight sample delay. The optional 5ms advance, in addition to compensating for this time difference and other minor time differences caused by the control path (bandpass filter, smoothing filter), also results in a system that is reasonably responsive to rapidly changing signal conditions.
The fixed coefficients can be determined and optimized in different ways. One approach is to take an input signal with an encoded direction (or base direction) corresponding to each output of the adaptive matrix and adjust the coefficients so that the outputs are minimized except for the output corresponding to the direction of the input signal. However, this direction may result in undesirable side lobes that produce greater cross talk between outputs when the encoded direction of the input signal is not the base direction of the decoder. The coefficients are preferably chosen to minimize cross-talk between outputs for all encoded input directions. This can be accomplished by simulating the apparatus of fig. 16A-D in an off-the-shelf computer program such as MATLAB ("MATLAB is a trademark and sold by the math Works, Inc) and recursively varying the coefficients until a result is obtained that is deemed optimal or acceptable by the designer.
Alternatively, the variable matrix coefficients may increase the sampling rate by a factor of 8 using linear interpolation to reduce the slight degradation in perceived audio quality that results from generating the gain control signal by sampling only once every eight samples.
The coefficients are defined according to a6 x 2 matrix as follows (if Bs is omitted, resulting in a 5 x 2 matrix, the last row kx and lx of all coefficient matrices are omitted).
mat_fix= mat_gl= mat_gr= mat_gf=
a0, b0, a1, b1, a2, b2, a3, b3,
c0, d0, c1, d1, c2, d2, c3, d3,
e0, f0, e1, f1, e2, f2, e3, f3,
g0, h0, g1, h1, g2, h2, g3, h3,
i0, j0, i1, j1, i2, j2, i3, j3,
k0, l0, k1, l1, k2, l2, k3, l3,
mat_gb= mat_glb= mat_grb=
a4, b4, a5, b5, a6, b6,
c4, d4, c5, d5, c6, d6,
e4, f4, e5, f5, e6, f6,
g4, h4, g5, h5, g6, h6,
i4, j4, i5, j5, i6, j6,
k4, l4, k5, l5, k6, l6,
One or more coefficient sets may be determined based on the desired result. For example, a set of standards can be defined, as well as a set that emulates an analog variable matrix decoding system, known as Pro Logic, manufactured and licensed by Dolby laboratories of San Francisco, Calif. The coefficients in such a practical embodiment are as follows.
Standard factor:
mat_fix={ mat_gl={ mat_gr={ mat_gf={
0.7400,0.0, 0.3200,0.0, 0.0,0.0, -0.3813,-0.3813,
0.5240,0.5240, -0.5400,0.0, 0.0,-0.5400, 0.2240,0.2240,
0.0,0.7400, 0.0,0.0, 0.0,0.3200, -0.3813,-0.3813,
0.7600,-0.1700, -0.7720,0.0, 0.0,0.1920, -0.2930,-0.2930,
0.0,0.0, 0.0,0.0, 0.0,0.0, 0.0,0.0,
-0.1700,0.7600} 0.1920,0.0} 0.0,-0.7720} -0.2930,-0.2930}
mat_gb={ mat_glb={ mat_grb={
-0.3849,0.3849, -0.2850,0.2850, 0.0,0.0,
0.0,0.0, 0.0,0.0, 0.0,0.0,
0.3849 -0.3849, 0.0,0.0, 0.2850,-0.2850,
0.0697,-0.0697, 0.3510,-0.3510, -0.3700,0.3700
0.0,0.0, 0.0,0.0, 0.0,0.0,
-0.0697,0.0697} 0.3700,-0.3700} -0.35 10,0.3510}
note that: when Bs is omitted, the fifth row of the coefficient matrix is omitted.
Pro Logic simulation coefficient
mat_fix={ mat_gl={ mat_gr={ mat_gf={
0.7400,0.0, 0.3200,0.0, 0.0,0.0, -0.3811,-0.3811,
0.5240,0.5240, -0.5400,0.0, 0.0,-0.5400, 0.2250,0.2250,
0.0,0.7400, 0.0,0.0, 0.0,0.3200, -0.3811,-0.3811,
0.5370,-0.5370, -0.5460,0.0, 0.0,0.5460, 0.0,0.0,
0.0,0.0, 0.0,0.0, 0.0,0.0, 0.0,0.0,
0.5370,-0.5370} -0.5460,0.0} 0.0,0.5460} 0.0,0.0}
mat_gb_0={ mat_glb={ mat_grb={
-0.3811,0.3811, 0.0,0.0, 0.0,0.0,
0.0,0.0, 0.0,0.0, 0.0,0.0,
0.3811,-0.3811, 0.0,0.0, 0.0,0.0,
0.0,0.0, 0.0,0.0, 0.0,0.0,
0.0,0.0, 0.0,0.0, 0.0,0.0,
0.0,0.0} 0.0,0.0} 0.0,0.0}
Note that: when Bs is omitted, the fifth row of the coefficient matrix is omitted.
Conclusion
It should be understood that other variations and modifications in carrying out the invention and its various aspects will be apparent to those skilled in the art, and that the invention is not limited by the specific embodiments described. It is therefore contemplated to cover by the present invention, any and all modifications, variations, or equivalents that fall within the true spirit and scope of the basic underlying principles disclosed and claimed herein.
Those of ordinary skill in the art will recognize the general equivalents of hardware and software implementations, and analog and digital implementations. As such, the present invention may be implemented using analog hardware, digital hardware, hybrid analog/digital hardware, and/or digital signal processing. The hardware elements may be implemented as functions in software and/or firmware. Thus, all of the various elements and functions of the disclosed embodiments (e.g., matrices, rectifiers, comparators, combiners, variable amplifiers or attenuators, etc.) may be implemented in hardware or software in the analog or digital domain.

Claims (18)

1. A method of deriving at least three audio signals from two input audio signals, each of the three audio signals being associated with a direction, the method comprising
Generating two pairs of passive matrix audio signals with a passive matrix in response to the two input audio signals, a first pair of passive matrix audio signals representing directions lying in a first axis and a second pair of passive matrix audio signals representing directions lying in a second axis, the first and second axes being perpendicular to each other,
processing each of the passive matrix audio signal pairsTo derive therefrom a plurality of matrix coefficients, said processing comprising deriving a pair of intermediate signals [ (1-gL) from each pair of passive matrix audio signals respectively*Lt' and (1-gR)*Rt’,(1-gF)*Ft sum (1-gB)*Bt]And urging each pair of intermediate signals toward equality in response to a respective error signal, an
Generating at least three output signals by multiplying the two input signals by the matrix coefficient matrix.
2. The method of claim 1, wherein the plurality of matrix coefficients are derived from the error signal.
3. The method of claim 1, wherein said plurality of matrix coefficients are derived from a control signal generated by a process responsive to said error signal.
4. The method of claim 1, wherein the method results in four audio outputs, related to directions left, center, right, and surrounding.
5. The method of claim 1, wherein the method results in six audio outputs, relating to directions left, center, right, left surround, rear surround, and right surround.
6. The method of claim 1, wherein the method results in five audio outputs, related to directions left, center, right, left surround, and right surround.
7. The method of claim 1, wherein each error signal is generated in response to the relative magnitudes of its associated pair of intermediate signals.
8. The method of claim 7, wherein the plurality of matrix coefficients are derived from the error signal.
9. The method of claim 7, wherein said plurality of matrix coefficients are derived from a control signal generated by a process responsive to said error signal.
10. The method of any of claims 1-9, wherein the method is implemented in the digital domain.
11. The method of claim 10 further comprising delaying said input signal to produce a delayed input signal, wherein at least three output signals are produced by multiplying said delayed input signal by said matrix coefficient matrix.
12. The method of claim 11, wherein said delaying delays said input signal by about 5 ms.
13. The method of claim 10, wherein said processing at least in part comprises downsampling.
14. The method of claim 13, wherein the matrix coefficients are upsampled.
15. A method according to claim 13, wherein claim 13 is dependent on claim 2, wherein said error signal is upsampled.
16. A method according to claim 13, wherein claim 13 is dependent on claim 8, wherein said error signal is upsampled.
17. A method according to claim 13, wherein claim 13 depends on claim 3, wherein said control signal is up-sampled.
18. A method according to claim 13, wherein claim 13 depends on claim 9, wherein said control signal is up-sampled.
HK05101223.2A 2000-08-31 2001-08-30 Method for apparatus for audio matrix decoding HK1069063B (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US22971200P 2000-08-31 2000-08-31
US60/229,712 2000-08-31
PCT/US2001/027006 WO2002019768A2 (en) 2000-08-31 2001-08-30 Method for apparatus for audio matrix decoding

Publications (2)

Publication Number Publication Date
HK1069063A1 HK1069063A1 (en) 2005-05-06
HK1069063B true HK1069063B (en) 2007-10-12

Family

ID=

Similar Documents

Publication Publication Date Title
CN1307853C (en) Method for appts. for audio matrix decoding
AU2001288528A1 (en) Method for apparatus for audio matrix decoding
EP1234484B1 (en) Method for deriving at least three audio signals from two input audio signals
TWI692257B (en) Crosstalk processing b-chain
KR0175515B1 (en) Apparatus and Method for Implementing Table Survey Stereo
KR100704507B1 (en) Method for deriving at least three audio signals from two input audio signals
TWI449442B (en) Method and system for frequency domain active matrix decoding without feedback
JP7370415B2 (en) Spectral defect compensation for crosstalk processing of spatial audio signals
CA2392602A1 (en) Method and apparatus for deriving at least one audio signal from two or more input audio signals
US11284213B2 (en) Multi-channel crosstalk processing
JP6124143B2 (en) Surround component generator
EP1964443B1 (en) Low-complexity audio matrix decoder
HK1069063B (en) Method for apparatus for audio matrix decoding
JP4306815B2 (en) Stereophonic sound processor using linear prediction coefficients
CN1691841B (en) 5-2-5 matrix encoder and decoder system
JP2953011B2 (en) Headphone sound field listening device
JP2000201400A (en) Sound image localization apparatus and sound image localization method