EP1527655B1 - Modulation spatiale de canal audio - Google Patents

Modulation spatiale de canal audio Download PDF

Info

Publication number
EP1527655B1
EP1527655B1 EP03770229A EP03770229A EP1527655B1 EP 1527655 B1 EP1527655 B1 EP 1527655B1 EP 03770229 A EP03770229 A EP 03770229A EP 03770229 A EP03770229 A EP 03770229A EP 1527655 B1 EP1527655 B1 EP 1527655B1
Authority
EP
European Patent Office
Prior art keywords
variable
input
correlation
input signals
process according
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Lifetime
Application number
EP03770229A
Other languages
German (de)
English (en)
Other versions
EP1527655A2 (fr
Inventor
Mark Franklin Davis
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dolby Laboratories Licensing Corp
Original Assignee
Dolby Laboratories Licensing Corp
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 Dolby Laboratories Licensing Corp filed Critical Dolby Laboratories Licensing Corp
Priority claimed from PCT/US2003/024570 external-priority patent/WO2004019656A2/fr
Publication of EP1527655A2 publication Critical patent/EP1527655A2/fr
Application granted granted Critical
Publication of EP1527655B1 publication Critical patent/EP1527655B1/fr
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S3/00Systems employing more than two channels, e.g. quadraphonic
    • H04S3/02Systems employing more than two channels, e.g. quadraphonic of the matrix type, i.e. in which input signals are combined algebraically, e.g. after having been phase shifted with respect to each other
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S5/00Pseudo-stereo systems, e.g. in which additional channel signals are derived from monophonic signals by means of phase shifting, time delay or reverberation 
    • H04S5/02Pseudo-stereo systems, e.g. in which additional channel signals are derived from monophonic signals by means of phase shifting, time delay or reverberation  of the pseudo four-channel type, e.g. in which rear channel signals are derived from two-channel stereo signals

Definitions

  • the invention relates to audio signal processing. More particularly the invention relates to translating M audio input channels representing a soundfield to N audio output channels representing the same soundfield, wherein each channel is a single audio stream representing audio arriving from a direction, M and N are positive whole integers, and M is at least 2 and N is at least 3, and N is larger than M.
  • a spatial translator in which N is greater than M is usually characterized as a "decoder".
  • Representative systems include the panned-mono three-speaker film soundtracks of the early 50's, conventional stereo sound, quadraphonic systems of the 60's, five channel discrete magnetic soundtracks on 70mm films, Dolby surround using a matrix in the 70's, AC-3 5.1 channel sound of the 90's, and recently, Surround-EX 6.1 channel sound.
  • Dolby "Dolby", "Pro Logic” and “Surround EX” are trademarks of Dolby Laboratories Licensing Corporation. To one degree or another, these systems provide enhanced spatial reproduction compared to monophonic presentation. However, mixing a larger number of channels incurs larger time and cost penalties on content producers, and the resulting perception is typically one of a few scattered, discrete channels, rather than a continuum soundfield. Aspects of Dolby Pro Logic decoding are described in U.S. Patent 4,799,260.
  • AC-3 Digital Audio Compression Standard
  • ATSC Advanced Television Systems Committee
  • Document A/52 December 20, 1995 (available on the World Wide Web of the Internet at www.atsc.org/Standards/A52/a_52.doc). See also the Errata Sheet of July 22, 1999 (available on the World Wide Web of the Internet at www.dolby.com/tech/ATSC_err.pdf.
  • any output channel with a location that does not correspond to the position of one of the input channels will be referred to as an "intermediate” channel.
  • An output channel may also have a location coincident with the position of an input channel.
  • variations of a wideband audio signal decoder including variations in which eight, six (employing two phantom channels) or 5 (downmixing from eight to five) output channels in 360 degree space are derived from a pair of input signals.
  • the manner in which the input signals are distributed among the output signals is determined by a plurality of "normalization" coefficients applied to multiplier elements in a matrix. The coefficients are derived in response to each of the input signals individually, their sum, their difference, their correlation and their relative phase. When the input signals are uncorrelated, the normalization coefficients are equal to each other, which tends to produce a broad, diffuse sound image.
  • a process for translating M audio input signals, each associated with a direction, to N audio output signals, each associated with a direction, wherein N is larger than M, M is two or more and N is a positive integer equal to three or more comprises providing an M:N variable matrix, applying the M audio input signals to the variable matrix, deriving the N audio output signals from the variable matrix, and controlling the variable matrix in response to the input signals so that a soundfield generated by the output signals has a compact sound image in the direction of the nominal ongoing primary direction of the input signals when the input signals are highly correlated, the image spreading from compact to broad as the correlation decreases and progressively splitting into multiple compact sound images, each in a direction associated with an input signal, as the correlation continues to decrease to highly uncorrelated.
  • the variable matrix may be controlled in response to measures of: (1) the relative levels of the input signals, and (2) the cross-correlation of the input signals.
  • the soundfield may have a compact sound image when the measure of cross-correlation is the maximum value and may have a broadly spread image when the measure of cross-correlation is the reference value
  • the soundfield may have the broadly spread image when the measure of cross-correlation is the reference value and may have a plurality of compact sound images, each in a direction associated with an input signal, when the measure of cross correlation is the minimum value.
  • a process for translating M audio input signals, each associated with a direction, to N audio output signals, each associated with a direction, wherein N is larger than M, and M is three or more comprises providing a plurality of m:n variable matrices, where m is a subset of M and n is a subset of N, applying a respective subset of the M audio input signals to each of the variable matrices, deriving a respective subset of the N audio output signals from each of the variable matrices, controlling each of the variable matrices in response to the subset of input signals applied to it so that a soundfield generated by the respective subset of output signals derived from it has a compact sound image in the direction of the nominal ongoing primary direction of the subset of input signals applied to it when such input signals are highly correlated, the image spreading from compact to broad as the correlation decreases and progressively splitting into multiple compact sound images, each in a direction associated with an input signal applied to it, as the correlation continues to
  • variable matrices may also be controlled in response to information that compensates for the effect of one or more other variable matrices receiving the same input signal.
  • deriving the N audio output signals from the subsets ofN audio output channels may also include compensating for multiple variable matrices producing the same output signal.
  • each of the variable matrices may be controlled in response to measures of: (a) the relative levels of the input signals applied to it, and (b) the cross-correlation of the input signals.
  • a process for translating M audio input signals, each associated with a direction, to N audio output signals, each associated with a direction, wherein N is larger than M, and M is three or more comprises providing an M:N variable matrix responsive to scale factors that control matrix coefficients or control the matrix outputs, applying the M audio input signals to the variable matrix, providing a plurality of m:n variable matrix scale factor generators, where m is a subset of M and n is a subset of N, applying a respective subset of the M audio input signals to each of the variable matrix scale factor generators, deriving a set of variable matrix scale factors for respective subsets of the N audio output signals from each of the variable matrix scale factor generators, controlling each of the variable matrix scale factor generators in response to the subset of input signals applied to it so that when the scale factors generated by it are applied to the M:N variable matrix, a soundfield generated by the respective subset of output signals produced has a compact sound image in the nominal ongoing primary direction of the
  • variable matrix scale factor generators may also be controlled in response to information that compensates for the effect of one or more other variable matrix scale factor generators receiving the same input signal.
  • deriving the N audio output signals from the variable matrix may include compensating for multiple variable matrix scale factor generators producing scale factors for the same output signal.
  • each of the variable matrix scale factor generators may be controlled in response to measures of: (a) the relative levels of the input signals applied to it, and (b) the cross-correlation of the input signals.
  • M audio input channels representing a soundfield are translated to N audio output channels representing the same soundfield, wherein each channel is a single audio stream represents audio arriving from a direction, M and N are positive whole integers, and M is at least 2 and N is at least 3, and N is larger than M.
  • Each input and output channel has an associated direction (e.g., azimuth, elevation and, optionally, distance, to allow for closer or more distant virtual or projected channel).
  • One or more sets of output channels are generated, each set having one or more output channels.
  • Each set is usually associated with two or more spatially adjacent input channels and each output channel in a set is generated by determining a measure of the cross-correlation of the two or more input channels and a measure of the level interrelationships of the two or more input channels.
  • the measure of cross-correlation preferably is a measure of the zero-time-offset cross-correlation, which is the ratio of the common energy level with respect to the geometric mean of the input signal energy levels.
  • the common energy level preferably is the smoothed or averaged common energy level and the input signal energy levels are the smoothed or averaged input signal energy levels.
  • multiple sets of output channels may be associated with more than two input channels and a process may determine the correlation of input channels, with which each set of output channels is associated, according to a hierarchical order such that each set or sets is ranked according to the number of input channels with which its output channel or channels are associated, the greatest number of input channels having the highest ranking, and the processing processes sets in order according to their hierarchical order. Further according to an aspect of the present invention, the processing takes into account the results of processing higher order sets.
  • each of the M audio input channels representing audio arriving from a direction was generated by a passive-matrix nearest-neighbor amplitude-panned encoding of each source direction (i.e., a source direction is assumed to map primarily to the nearest input channel or channels), without the requirement of additional side chain information (the use of side chain or auxiliary information is optional), making it compatible with existing mixing techniques, consoles, and formats.
  • source signals may be generated by explicitly employing a passive encoding matrix, most conventional recording techniques inherently generate such source signals (thus, constituting an "effective encoding matrix").
  • the playback or decoding aspects of the present invention are also largely compatible with natural recording source signals, such as might be made with five real directional microphones, since, allowing for some possible time delay, sounds arriving from intermediate directions tend to map principally to the nearest microphones (in a horizontal array, specifically to the nearest pair of microphones).
  • a decoder or decoding process may be implemented as a lattice of coupled processing modules or modular functions (hereinafter, “modules” or “decoding modules”), each of which is used to generate one or more output channels (or, alternatively, control signals usable to generate one or more output channels), typically from the two or more of the closest spatially adjacent input channels associated with the decoding module.
  • the output channels typically represent relative proportions of the audio signals in the closest spatially adjacent input channels associated with the particular decoding module.
  • the decoding modules are loosely coupled to each other in the sense that modules share inputs and there is a hierarchy of decoding modules.
  • Modules are ordered in the hierarchy according to the number of input channels they are associated with (the module or modules with the highest number of associated input channels is ranked highest).
  • a supervisor or supervisory function p resides over the modules so that common input signals are equitably shared between or among modules and higher-order decoder modules may affect the output of lower-order modules.
  • Each decoder module may, in effect, include a matrix such that it directly generates output signals or each decoder module may generate control signals that are used, along with the control signals generated by other decoder modules, to vary the coefficients of a variable matrix or the scale factors of inputs to or outputs from a fixed matrix in order to generate all of the output signals.
  • Decoder modules emulate the operation of the human ear to attempt to provide perceptually transparent reproduction.
  • Signal translation according to the present invention may be applied either to wideband signals or to each frequency band of a multiband processor, and depending on implementation, may be performed once per sample or once per block of samples.
  • a multiband embodiment may employ either a filter bank, such as a discrete critical-band filterbank or a filterbank having a band structure compatible with an associated decoder, or a transform configuration, such as an FFT (Fast Fourier Transform) or MDCT (Modified Discrete Cosine Transform) linear filterbank.
  • FFT Fast Fourier Transform
  • MDCT Modified Discrete Cosine Transform
  • Another aspect of this invention is that the quantity of speakers receiving the N output channels can be reduced to a practical number by judicious reliance upon virtual imaging, which is the creation of perceived sonic images at positions in space other than where a loudspeaker is located.
  • virtual imaging is the creation of perceived sonic images at positions in space other than where a loudspeaker is located.
  • virtual imaging may include the rendering of phantom projected images that provide the auditory impression of being beyond the walls of a room or inside the walls of a room.
  • Virtual imaging is not considered a viable technique for group presentation with a sparse number of channels, because it requires the listener to be equidistant from the two speakers, or nearly so.
  • the left and right front speakers are too far apart to obtain useful phantom imaging of a center image to much of the audience, so, given the importance of the center channel as the source of much of the dialog, a physical center speaker is used instead.
  • a measure of cross-correlation determines the ratio of dominant (common signal components) to non-dominant (non-common signal components) energy in a module and the degree of spreading of the non-dominant signal components among the output channels of the module. This may be better understood by considering the signal distribution to the output channels of a module under different signal conditions for the case of a two-input module. Unless otherwise noted, the principles set forth extend directly to higher order modules.
  • the problem with signal distribution is that there is often too little information to recover the original signal amplitude distribution, much less the signals themselves.
  • the basic information available is the signal levels at each module input and the averaged cross product of the input signals, the common energy level.
  • the zero-time offset cross-correlation is the ratio of the common energy level with respect to the geometric mean of the input signal energy levels.
  • cross-correlation functions as a measure of the net amplitude of signal components common to all inputs. If there is a single signal panned anywhere between the inputs of the module (an "interior” or “intermediate” signal), all the inputs will have the same waveform, albeit with possibly different amplitudes, and under these conditions, the correlation will be 1.0. At the other extreme, if all the input signals are independent, meaning there is no common signal component, the correlation will be zero. Values of correlation intermediate between 0 and 1.0 can be considered to correspond to intermediate balance levels of some single, common signal component and independent signal components at the inputs.
  • any input signal condition may be divided into a common signal, the "dominant” signal, and input signal components left over after subtracting common signal contributions, comprising, an "all the rest” signal component (the "non-dominant” or residue signal energy).
  • the common or "dominant” signal amplitude is not necessarily louder than the residue or non-dominant signal levels.
  • Lt/Rt left total and right total
  • a two-input, five-output module might feed only the output channel corresponding to the dominant direction (C in this case) and the output channels corresponding to the input signal residues (L, R) after removing the C energy from the Lt and Rt inputs, giving no signals to the MidL and MidR output channels.
  • C dominant direction
  • L, R input signal residues
  • the conservative approach from the point of view of individual channel quality is to spread the non-dominant signal components as evenly as possible among the module's output channels, consistent with the signal conditions.
  • An aspect of the present invention is evenly spreading the available signal energy, subject to the signal conditions, according to a three-way split rather than a "dominant" versus "all the rest" two-way split.
  • the three-way split comprises dominant (common) signal components, fill (even-spread) signal components, and input signal components residue.
  • a correlation value is calculated corresponding to all output channels receiving the same signal amplitude.
  • This correlation value may be referred to as the"random_xcor" value.
  • the random-xcor value may calculate as 0.333.
  • the random-xcor value may calculate as 0.483.
  • scaled_xcor ( correlation - random_xcor ) / ( 1 - random_xcor )
  • scaled_xcor ( correlation - random_xcor ) / ( 1 - random_xcor )
  • the amount of spread energy should either be progressively reduced if equal distribution to all output channels is maintained or, alternatively, the amount of spread energy should be maintained but the energy distributed to output channels should be reduced in relation to the "off centeredness" of the dominant energy - in other words, a tapering of the energy along the output channels.
  • additional processing complexity may be required to maintain the output power equal to the input power.
  • the current correlation value is less than the random-xcor value, the dominant energy is considered to be zero, the evenly-spread energy is progressively reduced, and the residue signal, whatever is left over, is allowed to accumulate at the inputs.
  • correlation zero, there is no interior signal, just independent input signals that are mapped directly to output channels.
  • channel translation may be considered to involve a lattice of "modules". Because multiple modules may share a given input channel, interactions are possible between modules and may degrade performance unless some compensation is applied. Although it is not generally possible te separate signals at an input according to which module they "go with", estimating the amount of an input signal used by each connected module can improve the resulting correlation and direction estimates, resulting in improved overall performance.
  • modules at a common or lower hierarchy level i.e., modules with a like number of inputs or fewer inputs
  • neighbors modules at a higher hierarchy level (having more inputs) than a given module but sharing one or more common inputs, referred to as “higher-order neighbors”.
  • the L/R input amplitude ratios of each module are offset because the common input has more signal amplitude (A+B) than either outer input, which causes the direction estimate to be biased toward the common input.
  • the correlation value of both modules is now something less than 1.0 because the waveforms at both pairs of inputs are different. Because the correlation value determines the degree of spreading of the non-common signal components and the ratio of the dominant (common signal component) to non-dominant (non-common signal component) energy, uncompensated common-input signal causes the non-common signal distribution of each module to be spread.
  • a measure of the "common input level" attributable to each input of each module is estimated, and then each module is informed regarding the total amount of such common input level energy of all neighboring levels of the same hierarchy level at each module input.
  • Two ways of calculating the measure of common input level attributable to each input of a module are described herein: one which is based on the common energy of the inputs to the module (described generally in the next paragraph), and another, which is more accurate but requires greater computational resources, which is based on the total energy of the interior outputs of the module (described below in connection with the arrangement of FIG. 6A).
  • the analysis of a module's input signals does not allow directly solving for the common input level at each input, only a proportion of the overall common energy, which is the geometric mean of the common input energy levels. Because the common input energy level at each input cannot exceed the total energy level at that input, which is measured and known, the overall common energy is factored into estimated common input levels proportional to the observed input levels, subject to the qualification below.
  • each module is informed of the total of the common input levels of all the neighboring modules at each input, a quantity referred to as the "neighbor level" of a module at each of its inputs.
  • the module then subtracts the neighbor level from the input level at each of its inputs to derive compensated input levels, which are used to calculate the correlation and the direction (nominal ongoing primary direction of the input signals).
  • the three-input common signal effects should be subtracted from the inputs before the two-input calculation can be performed properly.
  • the higher-order common signal elements should be subtracted not only from the lower-level module's input levels, but from its observed measure of common energy level as well, before proceeding with the lower level calculation. This is different from the effects of common input levels of modules at the same hierarchy level that do not affect the measure of common energy level of a neighboring module.
  • the higher-order neighbor levels should be accounted for, and employed, separately from the same-order neighbor levels.
  • an arrangement was deployed having a horizontal array of 5 speakers on each wall of a room having four walls (one speaker in each corner with three spaced evenly between each corner), 16 speakers total, allowing for common corner speakers, plus a ring of 6 speakers above a centrally-located listener at a vertical angle of about 45 degrees, plus a single speaker directly above, total 23 speakers, plus a subwoofer/LFE (low frequency effects) channel, total 24 speakers, all fed from a personal computer set up for 24-channel playback.
  • this system might be referred to as a 23.1 channel system, for simplicity it will be referred to as a 24-channel system herein.
  • FIG. 1 is a top plan view showing schematically an idealized decoding arrangement in the manner of the just-described test arrangement.
  • Five wide range horizontal input channels are shown as squares 1',3',5',9' and 13' on the outer circle.
  • a vertical channel which may be derived from the five wide range inputs via correlation or generated reverberation, or separately supplied (as in FIG. 2), is shown as the broken square 23' in the center.
  • the twenty-three wide range output channels are shown as numbered filled circles 1-23.
  • the outer circle of sixteen output channels is on a horizontal plane, the inner circle of six output channels is forty-five degrees above the horizontal plane.
  • Output channel 23 is directly above one or more listeners.
  • Three-input decoding modules are delineated by brackets 24-28 around the outer circle, connected between each pair of horizontal input channels.
  • Five additional two-input vertical decoding modules are delineated by brackets 29-33 connecting the vertical channel to each of the horizontal inputs.
  • Output channel 21, the elevated center rear channel is derived from a three-input decoding module 34 illustrated as arrows between output channel 21 and input channels 9, 13 and 23.
  • three-input module 34 is one level higher in hierarchy than its two-input lower hierarchy neighbor modules 27, 32 and 33.
  • each module is associated with a respective pair or trio of closest spatially adjacent input channels. Every module in this example has at least three same-level neighbors. For example, modules 25, 28 and 29 are neighbors of module 24.
  • a decoding module may have any reasonable number of output channels.
  • An output channel may be located intermediate two or more input channels or at the same position as an input channel.
  • each of the input channel locations is also an output channel.
  • Two or three decoding modules share each input channel.
  • FIG. 1 Although the arrangement of FIG. 1 employs five modules (24-28) (each having two inputs) and five inputs (1', 3', 5', 9' and 13') to derive sixteen horizontal outputs (1-16) representing locations around the four walls of a room, similar results may be obtained with a minimum of three inputs and three modules (each having two inputs, each module sharing one input with another module).
  • each module has output channels in an arc or a line (such as the example of FIGS. 1 and 2)
  • decoding ambiguities encountered in prior art decoders in which correlations less than zero are decoded as indicating rearward directions may be avoided.
  • input and output channels may be characterized by their physical position, or at least their direction, characterizing them with a matrix is useful because it provides a well-defined signal relationship.
  • Each matrix element (row i, column j) is a transfer function relating input channel i to output channel j.
  • Matrix elements are usually signed multiplicative coefficients, but may also include phase or delay terms (in principle, any filter), and may be functions of frequency (in discrete frequency terms, a different matrix at each frequency).
  • variable-matrixing either by having a separate scale factor for each matrix element, or, for matrix elements more elaborate than simple scalar scale factors, in which matrix elements themselves are variable, e.g., a variable delay.
  • mapping physical positions to matrix elements there is some flexibility in mapping physical positions to matrix elements; in principle, embodiments of aspects of the present invention may handle mapping an input channel to any number of output channels, and vice versa, but the most common situation is to assume signals mapped only to the nearest output channels via simple scalar factors which, to preserve power, sum-square to 1.0. Such mapping is often done via a sine/cosine panning function.
  • the signal output at each of the five output channels is (where "SF" is a scale factor for a particular output identified by the subscript):
  • any output channel on a line between two input channels may be derived from a two-input module (if sources and transmission channels are in a common plane, then any one source appears in at most two input channels, in which case there is no advantage in employing more than two inputs).
  • An output channel in the same position as an input channel is an endpoint channel, perhaps of more than one module.
  • An output channel not on a line or at the same position as an input requires a module having more than two inputs.
  • Decode modules with more than two inputs are useful when a common signal occupies more than two input channels. This may occur, for example, when the source channels and input channels are not in a plane: a source channel may map to more than two input channels. This occurs in the example of FIG. 1 when mapping 24 channels (16 horizontal ring channels, 6 elevated ring channels, 1 vertical channel, plus LFE) to 6.1 channels (including a composite vertical channel). In that case, the center rear channel in the elevated ring is not in a direct line between two of the source channels, it is in the middle of a triangle formed by the Ls (13), Rs (9), and top (23) channels, so a three-input module is required to extract it.
  • One way to map elevated channels to a horizontal array is to map each of them to more than two input channels. That allows the 24 channels of the FIG. 1 example to be mapped to a conventional 5.1 channel array.
  • a plurality of three-input modules may extract the elevated channels, and the leftover signal components may be processed by two-input modules to extract the main horizontal ring of channels.
  • signal commonality may extend to three or more channels.
  • Use and detection of signal commonality may also be used to convey additional signal information.
  • a vertical signal component may be represented by mapping to all five full range channels of a horizontal five-channel array.
  • the "initial mapping" (before processing) derives a passive "master" matrix that relates the input/output channel configurations to the spatial orientation of the channels.
  • the processor or processing portion of the invention may generate time-varying scale factors, one per output channel, which modify either the output signal levels of what would otherwise have been a simple, passive matrix or the matrix coefficients themselves.
  • the scale factors in turn derive from a combination of (a) dominant, (b) even-spread (fill), and (c) residue (endpoint) signal components as described below.
  • a master matrix is useful in configuring an arrangement of modules such as shown in the example of FIG. 1 and described further below in connection with FIG. 2.
  • the master matrix By examining the master matrix, one may deduce, for example, how many decoder modules are needed, how they are connected, how many input and output channels each has and the matrix coefficients relating each modules' inputs and outputs. These coefficients may be taken from the master matrix; only the non-zero values are needed unless an input channel is also an output channel ( i.e ., an endpoint).
  • Each module preferably has a "local" matrix, which is that portion of the master matrix applicable to the particular module.
  • the module may use the local matrix for the purpose of producing scale factors (or matrix coefficients) for controlling the master matrix, as is described below in connection with FIGS. 2 and 4A-4C, or for the purpose of producing a subset of the output signals, which output signals are assembled by a central process, such as a supervisor as described in connection with FIG. 2.
  • a supervisor in the latter case, compensates for multiple versions of the same output signal produced by modules having a common output signal in a manner analogous to the manner in which supervisor 201 of FIG. 2 determines a final scale factor to replace the preliminary scale factors produced by modules that produce preliminary scale factors for the same output channel.
  • modules may continually obtain the matrix information relevant to itself from a master matrix via a supervisor rather than have a local matrix.
  • less computational overhead is required if the module has its own local matrix.
  • the module has a local matrix, which is the only matrix required (in effect, the local matrix is the master matrix), and that local matrix is used to produce output signals.
  • Any decode module output channel with only one nonzero coefficient in the module's local matrix (that coefficient is 1.0, since the coefficients sum-square to 1.0) is an endpoint channel.
  • Output channels with more than one nonzero coefficient are interior output channels.
  • Either the master matrix or the local matrix may have matrix elements that function to provide more than multiplication.
  • matrix elements may include a filter function, such as a phase or delay term, and/or a filter that is a function of frequency.
  • filtering is a matrix of pure delays that may render phantom projected images.
  • a master or local matrix may be divided, for example, into two functions, one that employs coefficients to derive the output channels, and a second that applies a filter function.
  • FIG. 2 is a functional block diagram providing an overview of a multiband transform embodiment implementing the example of FIG. 1.
  • a PCM audio input for example, having multiple interleaved audio signal channels is applied to a supervisor or supervisory function 201 (hereinafter “supervisor 201") that includes a de-interleaver that recovers separate streams of each of six audio signal channels (1', 3', 5', 9', 13' and 23') carried by the interleaved input and applies each to a time-domain to frequency-domain transform or transform function (hereinafter "forward transform").
  • the audio channels may be received in separate streams, in which case no de-interleaver is required.
  • signal translation according to the present invention may be applied either to wideband signals or to each frequency band of a multiband processor, which may employ either a filter bank, such as a discrete critical-band filterbank or a filterbank having a band structure compatible with an associated decoder, or a transform configuration, such as an FFT (Fast Fourier Transform) or MDCT (Modified Discrete Cosine Transform) linear filterbank.
  • a filter bank such as a discrete critical-band filterbank or a filterbank having a band structure compatible with an associated decoder
  • a transform configuration such as an FFT (Fast Fourier Transform) or MDCT (Modified Discrete Cosine Transform) linear filterbank.
  • FIGS. 2, 4A-4C and other figures are described in the context of a multiband transform configuration.
  • LFE input channel a potential seventh input channel in FIGS. 1 and 2
  • output channel a potential 24 th output channel in FIGS. 1 and 2.
  • the LFE channel may be treated generally in the same manner as the other input and output channels, but with its own scale factor fixed at "1" and its own matrix coefficient, also fixed at "1".
  • an LFE channel may be derived by using a lowpass filter (for example, a fifth-order Butterworth filter with a 120 Hz corner frequency) applied to the sum of the channels, or, to avoid cancellation upon addition of the channels, a phase-corrected sum of the channels may be employed.
  • the LFE channel may be added to one or more of the output channels.
  • modules 24-34 receive appropriate ones of the six inputs 1', 3', 5', 9', 13' and 23' in the manner shown in FIG. 1.
  • Each module generates a preliminary scale factor ("PSF") output for each of the audio output channels associated with it as shown in FIG. 1.
  • PSF preliminary scale factor
  • module 24 receives inputs 1' and 3' and generates preliminary scale factor outputs PSF1, PSF2 and PSF3.
  • each module may generate a preliminary set of audio outputs for each of the audio output channels associated with it.
  • Each module also may communicate with a supervisor 201, as explained further below. Information sent from the supervisor 201 to various modules may include neighbor level information and higher-order neighbor level information, if any.
  • Information sent to the supervisor from each module may include the total estimated energy of interior the outputs attributable to each of the module's inputs.
  • the modules may be considered part of a control signal-generating portion of the overall system of FIG. 2.
  • a supervisor such as supervisor 201 of FIG. 2, may perform a number of diverse functions.
  • a supervisor may, for example, determine if more than one module is in use, and, if not, the supervisor need not perform any functions relating to neighbor levels.
  • the supervisor may inform the or each module the number of inputs and outputs it has, the matrix coefficients relating them, and the sampling rate of the signal. As already mentioned, it may read the blocks of interleaved PCM samples and de-interleave them into separate channels.
  • the system may apply unlimiting action in the time domain, for example, in response to additional information indicating that the source signal was amplitude limited and the degree of that limiting.
  • a filterbank e.g., FFT, MDCT, etc.
  • Each module passes back to the supervisor a two-dimensional array of scale factors: one scale factor for all transform bins in each subband of each output channel (when in a multiband transform configuration, otherwise one scale factor per output channel), or, alternatively, a two-dimensional array of output signals: an ensemble of complex transform bins for each subband of each output channel (when in a multiband transform configuration, otherwise one output signal per output channel).
  • the supervisor may smooth the scale factors and apply them to the signal path matrixing (matrix 203, described below) to yield (in a multiband transform configuration) output channel complex spectra.
  • the supervisor may derive the output channels (output channel complex spectra, in a multiband transform configuration), compensating for local matrices that produce the same output signal. It may then perform an inverse transform plus windowing and overlap-add, in the case of MDCT, for each output channel, interleaving the output samples to form a composite multichannel output stream (or, optionally, it may omit interleaving so as to provide multiple output streams), and sends it on to an output file, soundcard, or other final destination.
  • output channels output channel complex spectra, in a multiband transform configuration
  • it may then perform an inverse transform plus windowing and overlap-add, in the case of MDCT, for each output channel, interleaving the output samples to form a composite multichannel output stream (or, optionally, it may omit interleaving so as to provide multiple output streams), and sends it on to an output file, soundcard, or other final destination.
  • a supervisor may be performed by a supervisor, as described herein, or by multiple supervisors, one of ordinary skill in the art will appreciate that various ones or all of those functions may be performed in the modules themselves rather than by a supervisor common to all or some of the modules. For example, if there is only a single, stand-alone module, there need be no distinction between module functions and supervisor functions. Although, in the case of multiple modules, a common supervisor may reduce the required overall processing power by eliminating or reducing redundant processing tasks, the elimination of a common supervisor or its simplification may allow modules to be easily added to one another, for example, to upgrade to more output channels.
  • Matrix 203 may be considered a part of the signal path of the system of FIG. 2.
  • Matrix 203 also receives as inputs from supervisor 201 a set of final scale factors SF1 through SF23 for each of the 23 output channels of the FIG. 1 example.
  • the final scale factors may be considered as being the output of the control signal portion of the system of FIG. 2.
  • the supervisor 201 preferably passes on, as final scale factors to the matrix, the preliminary scale factors for every "interior” output channel, but the supervisor determines final scale factors for every endpoint output channel in response to information it receives from modules.
  • An "interior" output channel is intermediate to the two or more "endpoint" output channels of each module.
  • the modules produce output signals rather than scale factors, no matrix 203 is required; the supervisor itself produces the output signals.
  • output channels 2, 4, 6-8, 10-12, 14-16, 17, 18, 19, 20, 21 and 22 are interior output channels.
  • Interior output channel 21 is intermediate or bracketed by three input channels (input channels 9', 13' and 23'), whereas the other interior channels are each intermediate (between or bracketed by) two input channels.
  • the supervisor 201 determines the final endpoint scale factors (SF1, SF3, etc.) among the scale factors SF1 through SF23.
  • the final interior output scale factors (SF2, SF4, SF6, etc.) are the same as the preliminary scale factors.
  • FIG. 3 is a functional block diagram useful in understanding the manner in which a supervisor, such as supervisor 201 of FIG. 2, may determine an endpoint scale factor.
  • the supervisor does not sum all the outputs of the modules sharing an input to get an endpoint scale factor. Instead, it additively combines, such as in a combiner 301, the total estimated interior energy for a input from each module that shares the input, such as input 9', which is shared by modules 26 and 27 of FIG. 2. This sum represents the total energy level at the input claimed by the interior outputs of all the connected modules. It then subtracts that sum from the smoothed input energy level at that input (e.g., the output of smoother 325 or 327 of FIG.
  • any one of the modules that share the input (module 26 or module 27, in this example), such as in combiner 303. It is sufficient to choose any one of the modules' smoothed inputs at the common input even though the levels may differ slightly from module to module because the modules each adjust their time constants independently of each other.
  • the difference, at the output of combiner 303 is the desired output signal energy level at that input, which energy level is not allowed to go below zero.
  • the final scale factor (SF9, in this example) for that output is obtained. Note that the supervisor derives a single final scale factor for each such shared input regardless of how many modules share the input. An arrangement for determining the total estimated energy of the interior outputs attributable to each of the module's inputs is described below in connection with FIG. 6A.
  • the levels are energy levels (a second-order quantity), as opposed to amplitudes (a first-order quantity), after the divide operation, a square-root operation is applied in order to obtain the final scale factor (scale factors are associated with first-order quantities).
  • the addition of the interior levels and subtraction from the total input level are all performed in a pure energy sense, because interior outputs of different module interiors are assumed to be independent (uncorrelated). If this assumption is not true in an unusual situation, the calculation may yield more leftover signal at the input than there should be, which may cause a slight spatial distortion in the reproduced soundfield (e.g., a slight pulling of other nearby interior images toward the input), but in the same situation, the human ear likely reacts similarly.
  • the interior output channel scale factors such as PSF 6 through PSF 8 of module 26, are passed on by the supervisor as final scale factors (they are not modified).
  • FIG. 3 only shows the generation of one of the endpoint final scale factors.
  • Other endpoint final scale factors may be derived in a similar manner.
  • variable matrix 203 the variability may be complicated (all coefficients variable) or simple (coefficients varying in groups, such as being applied to the inputs or the outputs of a fixed matrix). Although either approach may be employed to produce substantially the same results, one of the simpler approaches, that is, a fixed matrix followed by a variable gain for each output (the gain of each output controlled by scale factors) has been found to produce satisfactory results and is employed in the embodiments described herein. Although a variable matrix in which each matrix coefficient is variable is usable, it has the disadvantage of having more variables and requiring more processing power.
  • Supervisor 201 also performs an optional time domain smoothing of the final scale factors before they are applied to the variable matrix 203.
  • output channels are never "turned off", the coefficients are arranged to reinforce some signals and cancel others.
  • a fixed-matrix, variable-gain system does turn channels on and off, and is more susceptible to undesirable "chattering" artifacts. This may occur despite the two-stage smoothing described below (e.g., smoothers 319/325, etc.). For example, when a scale factor is close to zero, because only a small change is needed to go from 'small' to 'none' and back, transitions to and from zero may cause audible chattering.
  • the scale factor smoother time constants may also scale with frequency as well as time, in the manner of frequency smoothers 413, 415 and 417 of FIG. 4A, described below.
  • variable matrix 203 preferably is a fixed decode matrix with variable scale factors (gains) at the matrix outputs.
  • Each matrix output channel may have (fixed) matrix coefficients that would have been the encode downmix coefficients for that channel had there been an encoder with discrete inputs (instead of mixing source channels directly to the downmixed array, which avoids the need for a discrete encoder.)
  • the coefficients preferably sum-square to 1.0 for each output channel.
  • the matrix coefficients are fixed once it is known where the output channels are (as discussed above with regard to the "master" matrix); whereas the scale factors, controlling the output gain of each channel, are dynamic.
  • Inputs comprising frequency domain transform bins applied to the modules 24-34 of FIG. 2 may be grouped into frequency subbands by each module after initial quantities of energy and common energy are calculated at the bin level, as is explained further below.
  • the frequency-domain output channels 1-23 produced by matrix 203 each comprise a set of transform bins (subband-sized groups of transform bins are treated by the same scale factor).
  • the sets of frequency-domain transform bins are converted to a set of PCM output channels 1-23, respectively, by a frequency- to time-domain transform or transform function 205 (hereinafter "inverse transform"), which may be a function of the supervisor 201, but is shown separately for clarity.
  • inverse transform may be a function of the supervisor 201, but is shown separately for clarity.
  • the supervisor 201 may interleave the resulting PCM channels 1-23 to provide a single interleaved PCM output stream or leave the PCM output channels as separate streams.
  • FIGS. 4A-4C show a functional block diagram of a module according an aspect of to the present invention.
  • the module receives two or more input signal streams from a supervisor, such as the supervisor 201 of FIG. 2.
  • Each input comprises an ensemble of complex-valued frequency-domain transform bins.
  • Each input, 1 through m is applied to a function or device (such as function or device 401 for input 1 and function or device 403 for input m) that calculates the energy of each bin, which is the sum of the squares of the real and imaginary values of each transform bin (only the paths for two inputs, 1 and m, are shown to simplify the drawing).
  • Each of the inputs is also applied to a function or device 405 that calculates the common energy of each bin across the module's input channels.
  • this may be calculated by taking the cross product of the input samples (in the case of two inputs, L and R, for example, the real part of the complex product of the complex L bin value and the complex conjugate of the complex R bin value).
  • Embodiments using real values need only cross-multiply the real value for each input.
  • the special cross-multiplication technique described below may be employed, namely, if all the signs are the same, the product is given a positive sign, else it is given a negative sign and scaled by the ratio of the number of possible positive results (always two: they are either all positive or all negative) to the number of possible negative results.
  • the averaged cross-product of A and B is:
  • a B ⁇ 0.5 X 2 ⁇
  • the averaged cross-product of the signals is equal to the energy of the common signal component in each channel. If the common signal is not shared equally, i.e., it is panned toward one of the inputs, the averaged cross-product will be the geometric mean between the energy of the common components in A and B, from which individual channel common energy estimates can be derived by normalizing by the square root of the ratio of the channel amplitudes. Actual time averages are computed subsequent smoothing stages, as described below.
  • This problem may be resolved by employing a variant of the averaged product technique.
  • the sign of the each product is discarded by taking the absolute value of the product.
  • the signs of each term of the product are examined. If they are all the same, the absolute value of the product is applied to the averager. If any of the signs are different from the others, the negative of the absolute value of the product is averaged. Since the number of possible same-sign combinations may not be the same as the number of possible different-sign combinations, a weighting factor comprised of the ratio of the number of same to different sign combinations is applied to the negated absolute value products to compensate.
  • This compensation causes the integrated or summed product to grow in a positive direction if and only if there is a signal component common to all inputs of a decoding module.
  • the individual input energies of a module can be calculated as the average of the square of the corresponding input signal, and need not be first raised to the kth power and then reduced to a second order quantity.
  • the transform bin outputs of each of the blocks may be grouped into subbands by a respective function or device 407, 409 and 411.
  • the subbands may approximate the human ear's critical bands, for example.
  • the remainder of the module embodiment of FIGS. 4A-4C operates separately and independently on each subband. In order to simplify the drawing, only the operation on one subband is shown.
  • Each subband from blocks 407, 409 and 411 is applied to a frequency smoother or frequency smoothing function 413, 415, and 417 (hereinafter “frequency smoother”), respectively.
  • frequency smoother or frequency smoothing function 413, 415, and 417
  • the purpose of the frequency smoothers is explained below.
  • Each frequency-smoothed subband from a frequency smoother is applied to optional "fast” smoothers or smoothing functions 419, 421 and 423 (hereinafter “fast smoothers”), respectively, that provide time-domain smoothing.
  • the fast smoothers may be omitted when the time constant of the fast smoothers is close to the block length time of the forward transform that generated the input bins (for example, a forward transform in supervisor 201 of FIG. 1).
  • the fast smoothers are “fast” relative to the “slow” variable time constant smoothers or smoother functions 425, 427 and 429 (hereinafter “slow smoothers") that receive the respective outputs of the fast smoothers. Examples of fast and slow smoother time constant values are given below.
  • the time constants of the slow smoothers preferably are in synchronism with each other within a module. This may be accomplished, for example, by applying the same control information to each slow smoother and by configuring each slow smoother to respond in the same way to applied control information. The derivation of the information for controlling the slow smoothers is described below.
  • each pair of smoothers are in series, in the manner of the pairs 419/425, 421/427 and 423/429 as shown in FIGS. 4A and 4B, in which a fast smoother feeds a slow smoother.
  • a series arrangement has the advantage that the second stage is resistant to short rapid signal spikes at the input of the pair.
  • similar results may be obtained by configuring the pairs of smoothers in parallel. For example, in a parallel arrangement the resistance of the second stage in a series arrangement to short rapid signal spikes may be handled in the logic of a time constant controller.
  • Each stage of the two-stage smoothers may be implemented by a single-pole lowpass filter (a "leaky integrator") such as an RC lowpass filter (in an analog embodiment) or, equivalently, a first-order lowpass filter (in a digital embodiment).
  • the first-order filters may each be realized as a "biquad" filter, a general second-order IIR filter, in which some of the coefficients are set to zero so that the filter functions as a first-order filter.
  • the two smoothers may be combined into a single second-order biquad stage, although it is simpler to calculate coefficient values for the second (variable) stage if it is separate from the first (fixed) stage.
  • the two-stage smoothers thus provide a time average for each subband of each input channel's energy (that of the 1 st channel is provided by slow smoother 425 and that of the m th channel by slow smoother 427) and the average for each subband of the input channels' common energy (provided by slow smoother 429).
  • the average energy outputs of the slow smoothers (425, 427, 429) are applied to combiners 431, 433 and 435, respectively, in which (1) the neighbor energy levels (if any) (from supervisor 201 of FIG. 2, for example) are subtracted from the smoothed energy level of each of the input channels, and (2) the higher-order neighbor energy levels (if any) (from supervisor 201 of FIG. 2, for example) are subtracted from each of the slow smoother's average energy outputs.
  • each module receiving input 3'( (FIGS. 1 and 2) has two neighboring modules and receives neighbor energy level information that compensates for the effect of those two neighboring modules.
  • module 28 (FIGS. 1 and 2) is an example of a module that has a higher-order module sharing one of its inputs.
  • the average energy output from a slow smoother for input 13' receives higher-order neighbor level compensation.
  • the resulting "neighbor-compensated" energy levels for each subband of each of the module's inputs are applied to a function or device 437 that calculates a nominal ongoing primary direction of those energy levels.
  • the direction indication may be calculated as the vector sum of the energy-weighted inputs. For a two input module, this simplifies to being the L/R ratio of the smoothed and neighbor-compensated input signal energy levels.
  • a planar surround array in which the positions of the channels are given as 2-ples representing x, y coordinates for the case of two inputs.
  • the listener in the center is assumed to be at, say, (0, 0).
  • the left front channel, in normalized spatial coordinates, is at (1, 1).
  • the right front channel is at (-1, 1).
  • the spatial direction may be expressed in matrix coordinates, rather than physical coordinates.
  • the input amplitudes, normalized to sum-square to one are the effective matrix coordinates of the direction.
  • the left and right levels are 4 and 3, which normalize to 0.8 and 0.6. Consequently, the "direction" is (0.8, 0.6).
  • the nominal ongoing primary direction is a sum-square-to-one-normalized version of the square root of the neighbor-compensated smoothed input energy levels.
  • Block 337 produces the same number of outputs, indicating a spatial direction, as there are inputs to the module (two in this example).
  • the neighbor-compensated smoothed energy levels for each subband of each of the module's inputs applied to the direction-determining function or device 337 are also applied to a function or device 339 that calculates the neighbor-compensated cross-correlation ("neighbor-compensated_xcor").
  • Block 339 also receives as an input the averaged common energy of the module's inputs for each subband from slow variable smoother 329, which has been compensated in combiner 335 by higher-order neighbor energy levels, if any.
  • the neighbor-compensated cross-correlation is calculated in block 339 as the higher-order compensated smoothed common energy divided by the M th root, where M is the number of inputs, of the product of the neighbor-compensated smoothed energy levels for each of the module's input channels to derive a true mathematical correlation value in the range 1.0 to-1.0. Preferably, values from 0 to -1.0 are taken to be zero.
  • Neighbor-compensated_xcor provides an estimate of the cross-correlation that exists in the absence of other modules.
  • the neighbor-compensated_xcor from block 339 is then applied to a weighting device or function 341 that weights the neighbor-compensated_xcor with the neighbor-compensated direction information to produce a direction-weighted neighbor-compensated cross-correlation ("direction-weighted_xcor").
  • the weighting increases as the nominal ongoing primary direction departs from a centered condition. In other words, unequal input amplitudes (and, hence, energies) cause a proportional increase in direction-weighted_xcor.
  • Direction-weighted_xcor provides an estimate of image compactness.
  • the weighting increases as the direction departs from center toward either left or right (i.e., the weighting is the same in any direction for the same degree of departure from the center).
  • the neighbor-compensated_xcor value is weighted by an L/R or R/L ratio, such that uneven signal distribution urges the direction-weighted_xcor toward 1.0.
  • direction - weighted_xcor ( 1 - ( ( 1 - neighbor - compensated_xcor ) * ( L / R ) )
  • direction - weighted_xcor ( 1 - ( ( 1 - neighbor - compensated_xcor ) * ( R / L ) )
  • calculation of the direction-weighted_xcor from the neighbor-weighted_xcor requires, for example, replacing the ratio L/R or R/L in the above by an "evenness" measure that varies between 1.0 and 0.
  • an "evenness" measure that varies between 1.0 and 0.
  • To calculate the evenness measure for any number of inputs normalize the input signal levels by the total input power, resulting in normalized input levels that sum in an energy (squared) sense to 1.0. Divide each normalized input level by the similarly normalized input level of a signal centered in the array. The smallest ratio becomes the evenness measure. Therefore, for example, for a three-input module with one input having zero level, the evenness measure is zero, and the direction-weighted_xcor is equal to one.
  • the signal is on the border of the three-input module, on a line between two of its inputs, and a two-input module (lower in the hierarchy) decides where on the line the nominal ongoing primary direction is, and how wide along that line the output signal should be spread.
  • the direction-weighted_xcor is weighted further by its application to a function or device 443 that applies a "random_xcor" weighting to produce an "effective_xcor".
  • Effective_xcor provides an estimate of the input signals' distribution shape.
  • Random_xcor is the average cross product of the input magnitudes divided by the square root of the average input energies.
  • the value of random_xcor may be calculated by assuming that the output channels were originally module input channels, and calculating the value of xcor that results from all those channels having independent but equal-level signals, being passively downmixed. According to this approach, for the case of a three-output module with two inputs, random_xcor calculates to 0.333,and for the case of a five-output module (three interior outputs) with two inputs, random_xcor calculates to 0.483. The random_xcor value need only be calculated once for each module.
  • random_xcor values have been found to provide satisfactory results, the values are not critical and other values may be employed at the discretion of the system designer.
  • a change in the value of random_xcor affects the dividing line between the two regimes of operation of the signal distribution system, as described below. The precise location of that dividing line is not critical.
  • Random_xcor weighting accelerates the reduction in direction-weighted_xcor as direction-weighted_xcor decreases below 1.0, such that when direction-weighted_xcor equals random_xcor, the effective_xcor value is zero. Because the outputs of a module represent directions along an arc or a line, values of effective_xcor less than zero are treated as equal to zero.
  • Information for controlling the slow smoothers 325, 327 and 329 is derived from the non-neighbor-compensated slow and fast smoothed input channels' energies and from the slow and fast smoothed input channels' common energy.
  • a function or device 345 calculates a fast non-neighbor compensated cross-correlation in response to the fast smoothed input channels' energies and the fast smoothed input channels' common energy.
  • a function or device 347 calculates a fast non-neighbor compensated direction (ratio or vector, as discussed above in connection with the description of block 337) in response to the fast smoothed input channel energies.
  • a function or device 349 calculates a slow non-neighbor compensated cross-correlation in response to the slow smoothed input channels' energies and the slow smoothed input channels' common energy.
  • a function or device 351 calculates a slow non-neighbor compensated direction (ratio or vector, as discussed above) in response to the slow smoothed input channel energies.
  • the fast non-neighbor compensated cross-correlation, fast non-neighbor compensated direction, slow non-neighbor compensated cross-correlation and slow non-neighbor compensated cross-correlation, along with direction-weighted_xcor from block 341, are applied to a device or function 353 that provides the information for controlling the variable slow smoothers 325, 327 and 329 to adjust their time constants (hereinafter "adjust time constants").
  • the same control information is applied to each variable slow smoother.
  • the direction-weighted_xcor preferably is used without reference to any fast value, such that if the absolute value of the direction-weighted_xcor is greater than a threshold, it may cause adjust time constants 353 to select a faster time constant. Rules for operation of "adjust time constants" 353 are set forth below.
  • a module's time constants may speed up and rapidly assume a new control state as desired.
  • FIGS. 1 and 2 employs a lattice of decoding modules. Such a configuration results in two classes of dynamics problems: inter- and intra-module dynamics.
  • inter- and intra-module dynamics are two classes of dynamics problems: inter- and intra-module dynamics.
  • the several ways to implement the audio processing for example wideband, multiband using FFT or MDCT linear filterbank, or discrete filterbank, critical band or otherwise) each require its own dynamic behavior optimization.
  • the basic decoding process within each module depends on a measure of energy ratios of the input signals and a measure of cross-correlation of the input signals, (in particular, the direction-weighted correlation (direction-weighted_xcor), described above; the output of block 341 in FIG. 4B), which, together, control signal distribution among the outputs of a module.
  • Derivation of such basic quantities requires smoothing, which, in the time domain, requires computing a time-weighted average of the instantaneous values of those quantities.
  • the range of required time constants is quite large: very short (1 msec, for example) for fast transient changes in signal conditions, to very long (150 msec, for example) for low values of correlation, where the instantaneous variation is likely to be much greater than the true averaged value.
  • a common method of implementing variable time constant behavior is, in analog terms, the use of a "speed-up" diode.
  • the instantaneous level exceeds the averaged level by a threshold amount, the diode conducts, resulting in a shorter effective time constant.
  • a drawback of this technique is that a momentary peak in an otherwise steady-state input may cause a large change in the smoothed level, which then decays very slowly, providing unnatural emphasis of isolated peaks that would otherwise have little audible consequence.
  • the first stage, the fixed fast stage, time constant may be set to a fixed value, such as 1 msec.
  • the second stage, variable slow stage, time constants may be, for example, selectable among 10 msec (fast), 30 msec (medium), and 150 msec (slow). Although such time constants have been found to provide satisfactory results, their values are not critical and other values may be employed at the discretion of the system designer. In addition, the second stage time constant values may be continuously variable rather than discrete.
  • Time constants may be based not only on the signal conditions described above, but also on a hysteresis mechanism using a "fast flag", which is used to ensure that once a genuine fast transition is encountered, the system remains in fast mode, avoiding the use of the medium time constant, until the signal conditions reenable the slow time constant. This may help assure rapid adaptation to new signal conditions.
  • the slow time constant is chosen when all three conditions are less than a first reference value
  • the medium time constant is chosen when all conditions are between a first reference value and a second reference value and the prior condition was the slow time constant
  • the fast time constant is chosen when any of the conditions are greater than the second reference value
  • a time delay may be built into the system to allow control signals to adapt before applying them to a signal path.
  • this delay may be realized as a discrete delay (5 msec, for example) in the signal path.
  • the delay is a natural consequence of block processing, and if analysis of a block is performed before signal path matrixing of that block, no explicit delay may be required.
  • Multiband embodiments of aspects of the invention may use the same time constants and rules as wideband versions, except that the sampling rate of the smoothers may be set to the signal sampling rate divided by the block size, (e.g., the block rate), so that the coefficients used in the smoothers are adjusted appropriately.
  • the sampling rate of the smoothers may be set to the signal sampling rate divided by the block size, (e.g., the block rate), so that the coefficients used in the smoothers are adjusted appropriately.
  • the time constants preferably are scaled inversely to frequency.
  • this filter may have, for example, a two-pole highpass characteristic with a corner frequency at 200 Hz, plus a 2-pole lowpass characteristic with a corner frequency at 8000 Hz, plus a preemphasis network applying 6 dB of boost from 400 Hz to 800 Hz and another 6 dB of boost from 1600 Hz to 3200 Hz.
  • multiband versions of aspects of the invention preferably also employ frequency-domain smoothing, as described above in connection with FIG. 4A (frequency smoothers 413, 415 and 417).
  • the non-neighbor-compensated energy levels may be averaged with a sliding frequency window, adjusted to approximate a 1/3-octave (critical band) bandwidth, before being applied to the subsequent time-domain processing described above.
  • the width of this window in number of transform coefficients
  • the total smoothing applied to the multiband processing relies more on time domain smoothing at low frequencies, and frequency-domain smoothing at higher frequencies, where rapid time response is likely to be more necessary at times.
  • preliminary scale factors (shown as "PSFs" in FIG. 2), which ultimately affect the dominant/fill/endpoint signal distribution, may be produced by a combination of devices or functions 455, 457 and 459 that calculate "dominant" scale factor components, "fill” scale factor components and “excess endpoint energy” scale factor components, respectively, respective normalizers or normalizer functions 361, 363 and 365, and a device or function 367 that takes either the greatest of the dominant and fill scale factor components and/or the additive combination of the fill and excess endpoint energy scale factor components.
  • the preliminary scale factors may be sent to a supervisor, such as supervisor 201 of FIG. 2 if the module is one of a plurality of modules.
  • Preliminary scale factors may each have a range from zero to one.
  • the nominal ongoing primary direction may be assumed to be (0.8, 0.6), between the Middle Left ML channel (.92, .38) and the center C channel (.71, .71). This may be accomplished by finding two consecutive channels where the L coefficient is larger than the nominal ongoing primary direction L coordinate, and the channel to its right has an L coefficient less than the dominant L coordinate.
  • the dominant scale factor components are apportioned to the two closest channels in a constant power sense.
  • a system of two equations and two unknowns is solved, the unknowns being the dominant-component scale factor component of the channel to the left of the dominant direction (SFL), and the corresponding scale factor component to the right of the nominal ongoing primary direction (SFR) (these equations are solved for SFL and SFR).
  • first_dominant_coord SFL ⁇ left-channel matrix value 1 + SFR ⁇ right-channel matrix value 1
  • second_dominant_coord SFL ⁇ left-channel matrix value 2 + S F R ⁇ right-channel matrix value 2
  • left- and right- channel means the channels bracketing the nominal ongoing primary direction, not the L and R input channels to the module.
  • the solution is the anti-dominant level calculations of each channel, normalized to sum-square to 1.0, and used as dominant distribution scale factor components (SFL, SFR), each for the other channel.
  • the anti-dominant value of an output channel with coefficients A, B for a signal with coordinates C, D is the absolute value of AD - BC.
  • one channel's antidom component normalized, as the other channel's dominant scale factor component may be better understood by considering what happens if the nominal ongoing primary direction happens to point exactly at one of the two chosen channels.
  • one channel's coefficients are [A, B] and the other channel's coefficients are [C, D] and the nominal ongoing primary direction coordinates are [A, B] (pointing to the first channel)
  • Antidom ( first chan ) abs ( A B ⁇ B A )
  • Antidom ( second chan ) abs ( C B ⁇ D A )
  • the first antidom value is zero.
  • the second antidom value is 1.0.
  • the first channel receives a dominant scale factor component of 1.0 (times square root of effective_xcor) and the second channel receives 0.0, as desired.
  • block 337 of FIG. 4B calculates the nominal ongoing primary direction coordinates by taking the input amplitudes, after neighbor compensation, and normalizing them to sum-square to one.
  • the three nearest channels to the nominal ongoing primary direction are those three interior channels at the bottom, but they do not sum to the dominant coordinates using scale factors between 0 and 1, so instead one chooses two from the bottom and the top endpoint channel to distribute the dominant signal, and solve the three equations for the three weighting factors in order to complete the dominant calculation and proceed to the fill and endpoint calculations.
  • device or function 357 (“calculate fill scale factor components") receives random_ xcor, direction-weighted_xcor from block 341, "EQUIAMPL” ("EQUIAMPL” is defined and explained below), and information regarding the local matrix coefficients from the local matrix (in case the same fill scale factor component is not applied to all outputs, as is explained below in connection with FIG. 14B).
  • the output of block 457 is a scale factor component for each module output (per subband).
  • effective_xcor is zero when the direction-weighted_xcor is less than or equal to random_xcor.
  • fill scale factor component sqrt ( direction ⁇ weighted_xcor / random_xcor ) ⁇ EQUIAMPL
  • EQUIMPL square_root_of ( Number of decoder module input channels / Number of decoder module output channels )
  • EQUIAMPL values have been found to provide satisfactory results, the values are not critical and other values may be employed at the discretion of the system designer. Changes in the value of EQUIAMPL affect the levels of the output channels for the "fill" condition (intermediate correlation of the input signals) with respect to the levels of the output channels for the "dominant” condition (maximum condition of the input signals) and the "all endpoints” condition (minimum correlation of the input signals).
  • device or function 359 (“calculate excess endpoint energy scale factor components") receives the respective 1 st through the m th input's smoothed non-neighbor-compensated energy (from blocks 325 and 327) and, optionally, information regarding the local matrix coefficients from the local matrix (in case either or both of the endpoint outputs of the module do not coincide with an input and the module applies excess endpoint energy to the two outputs having directions closest to the input's direction, as discussed further below).
  • the output of block 359 is a scale factor component for each endpoint output if the directions coincide with input directions, otherwise two scale factor components, one for each of the outputs nearest the end, as is explained below.
  • the total energy at all interior outputs is reflected back to the module's inputs, based on neighbor-compensated_xcor, to estimate how much of the energy of interior outputs is contributed by each input (“interior energy at input 'n'"), and that energy is used to compute the excess endpoint energy scale factor component at each module output that is coincident with an input ( i.e ., an endpoint).
  • FIGS. 6A and 6B One way to calculate the interior energy contribution at each of a module's inputs and to determine the excess endpoint scale factor component for each endpoint output is shown in FIGS. 6A and 6B.
  • FIGS. 6A and 6B are functional block diagrams showing, respectively, in a module, such as any one of modules 24-34 of FIG. 2, one suitable arrangement for (1) generating the total estimated interior energy for each input of a module, 1 through m, in response to the total energy at each input, 1 through m, and (2) in response to the neighbor-compensated_xcor (see FIG. 4B, the output of block 439), generating an excess endpoint energy scale factor component for each of the module's endpoints.
  • the total estimated interior energy for each input of a module, (FIG. 6A) is required by the supervisor, in the case of a multiple module arrangement, and, in any case, by the module itself in order to generate the excess endpoint energy scale factor components.
  • the arrangement of FIG. 6A calculates the total estimated energy at each interior output (but not its endpoint outputs). Using the calculated interior output energy levels, it multiples each output level by the matrix coefficient relating that output to each input ["m" inputs, "m” multipliers], which provides the energy contribution of that input to that output. For each input, it sums all the energy contributions of all the interior output channels to obtain the total interior energy contribution of that input. The total interior energy contribution of each input is reported to the supervisor and is used by the module to calculate the excess endpoint energy scale factor component for each endpoint output.
  • the smoothed total energy level for each module input (not neighbor-compensated, preferably) is applied to a set of multipliers, one multiplier for each of the module's interior outputs.
  • FIG. 6A shows two inputs, "1" and “m” and two interior outputs "X" and "Z”.
  • the smoothed total energy level for each module input is multiplied by a matrix coefficient (of the module's local matrix) that relates the particular input to one of the module's interior outputs (note that the matrix coefficients are their own inverses because matrix coefficients sum square to one). This is done for every combination of input and interior output.
  • a matrix coefficient of the module's local matrix
  • the smoothed total energy level at input 1 (which may be obtained, for example at the output of the slow smoother 425 of FIG. 4B) is applied to a multiplier 601 that multiplies that energy level by a matrix coefficient relating interior output X to input 1, providing a scaled output energy level component X 1 at output X.
  • multipliers 603, 605 and 607 provide scaled energy level components X m , Z 1 and Z m .
  • each interior output e.g ., X 1 and X m ; Z 1 and Z m
  • the energy level components for each interior output are summed in combiners 611 and 613 in an amplitude / power manner in accordance with neighbor-compensated_xcor. If the inputs to a combiner are in phase, indicated by a neighbor-weighted cross correlation of 1.0, their linear amplitudes add. If they are uncorrelated, indicated by a neighbor-weighted cross correlation of zero, their energy levels add. If the cross-correlation is between one and zero, the sum is partly an amplitude sum and partly a power sum.
  • both the amplitude sum and the power sum are calculated and weighted by neighbor-compensated_xcor and (1 - neighbor-weighted_xcor), respectively.
  • the summation products (X I + X m ; Z I + 2 m ) are multiplied by the scale factor components for each of the outputs, X and Z, in multipliers 613 and 615 to produce the total energy level at each interior output, which may be identified as X' and Z'.
  • the scale factor component for each of the interior outputs is obtained from block 467 (FIG. 4C),. Note that the "excess endpoint energy scale factor components" from block 459 (FIG. 4C) do not affect interior outputs and are not involved in the calculations performed by the FIG. 6A arrangement.
  • the total energy level at each interior output, X' and Z' is reflected back to respective ones of the module's inputs by multiplying each by a matrix coefficient (of the module's local matrix) that relates the particular output to each of the module's inputs. This is done for every combination of interior output and input.
  • the total energy level X' at interior output X is applied to a multiplier 617 that multiplies the energy level by a matrix coefficient relating interior output X to input 1 (which is the same as its inverse, as noted above), providing a scaled energy level component X 1 ' at input 1.
  • a second order weight is required. This is equivalent to taking the square root of the energy to obtain an amplitude, multiplying that amplitude by the matrix coefficient and squaring the result to get back to an energy value.
  • multipliers 619, 621 and 623 provide scaled energy levels X m ', 2 l ' and Z m '.
  • the energy components relating to each output e.g., X l ' and 2 l ', X m ' and 2 m '
  • the outputs of combiners 625 and 627 represent the total estimated interior energy for inputs 1 and m, respectively. In the case of a multiple module lattice, this information is sent to the supervisor, such as supervisor 201 of FIG. 2, so that the supervisor may calculate neighbor levels.
  • the supervisor solicits all the total interior energy contributions of each input from all the modules connected to that input, then informs each module, for each of its inputs, what the sum of all the other total interior energy contributions was from all the other modules connected to that input. The result is the neighbor level for that input of that module.
  • the generation of neighbor level information is described further below.
  • the total estimated interior energy contributed by each of inputs 1 and m are also required by the module in order to calculate the excess endpoint energy scale factor component for each endpoint output.
  • FIG. 6B shows how such scale factor component information may be calculated. For simplicity in presentation, only the calculation of scale factor component information for one endpoint is show, it being understood that a similar calculation is performed for each endpoint output.
  • the total estimated interior energy contributed by an input, such as input 1 is subtracted in a combiner or combining function 629 from the smoothed total input energy for the same input, input 1 in this example (the same smoothed total energy level at input 1, obtained, for example at the output of the slow smoother 425 of FIG. 4B, which is applied to a multiplier 601).
  • the result of the subtraction is divided in divider or dividing function 631 by the smoothed total energy level for the same input 1.
  • the square root of the result of the division is taken in a square rooter or square rooting function 633. It should be noted that the operation of the divider or dividing function 631 (and other dividers described herein) should include a test for a zero denominator. In that case, the quotient may be set to zero.
  • the endpoint preliminary scale factor components are thus determined by virtue of having determined the dominant, fill and excess endpoint energy scale factors.
  • all output channels including endpoints have assigned scale factors, and one may proceed to use them to perform signal path matrixing.
  • each one has assigned an endpoint scale factor to each input feeding it, so each input having more than one module connected to it has multiple scale factor assignments, one from each connected module.
  • the supervisor (such as supervisor 201 of the FIG. 2 example) performs a final, fourth, assignment of the "endpoint" channels, as described above in connection with FIGS. 2 and 3. that the supervisor determines final endpoint scale factors that override all the scale factor assignments made by individual modules as endpoint scale factors.
  • an output matrix such as the variable matrix 203 of FIG. 2 may map an output channel to one or more appropriate output channels if there is no actual output channel that directly corresponds to an input channel.
  • each of the "calculate scale factor component" devices or functions 455, 457 and 459 are applied to respective normalizing devices or functions 461, 463 and 465.
  • Such normalizers are desirable because the scale factor components calculated by blocks 455, 457 and 459 are based on neighbor-compensated levels, whereas the ultimate signal path matrixing (in the master matrix, in the case of multiple modules, or in the local matrix, in the case of a stand-alone module) involves non-neighbor-compensated levels (the input signals applied to the matrix are not neighbor-compensated).
  • scale factor components are reduced in value by a normalizer.
  • Each normalizer receives the neighbor-compensated smoothed input energy for each of the module's inputs (as from combiners 331 and 333), the non-neighbor-compensated smoothed input energy for each of the module's inputs (as from blocks 325 and 327), local matrix coefficient information from the local matrix, and the respective outputs of blocks 355, 357 and 359.
  • Each normalizer calculates a desired output for each output channel and an actual output level for each output channel, assuming a scale factor of 1. It then divides the calculated desired output for each output channel by the calculated actual output level for each output channel and takes the square root of the quotient to provide a potential preliminary scale factor for application to "sum and/or greater of" 367.
  • the smoothed non-neighbor compensated input energy levels of a two-input module are 6 and 8, and that the corresponding neighbor-compensated energy levels are 3 and 4.
  • the normalizer adjusts the scale factor to get the desired output level when non-neighbor compensated levels are used.
  • the "sum or and/or greatest of” 367 preferably sums the corresponding fill and endpoint scale factor components for each output channel per subband, and, selects the greater of the dominant and fill scale factor components for each output channel per subband.
  • the function of the "sum and/or greater of” block 367 in its preferred form may be characterized as shown in FIG. 7. Namely, dominant scale factor components and fill scale factor components are applied to a device or function 701 that selects the greater of the scale factor components for each output ("greater of" 701) and applies them to an additive combiner or combining function 703 that sums the scale factor components from greater of 701 with the excess endpoint energy scale factors for each output.
  • acceptable results may be obtained when the "sum and/or greatest of' 467: (1) sums in both Region 1 and Region 2, (2) takes the greater of in both Region 1 and Region 2, or (3) selects the greatest of in Region 1 and sums in Region 2.
  • FIG. 8 is an idealized representation of the manner in which an aspect of the present invention generates scale factor components in response to a measure of cross-correlation.
  • the figure is particularly useful for reference to FIGS. 9A and 9B through FIGS. 16A and 16B examples.
  • the generation of scale factor components may be considered as having two regions or regimes of operation: a first region, Region 1, bounded by "all dominant” and “evenly filled” in which the available scale factor components are a mixture of dominant and fill scale factor components, and a second region, Region 2, bounded by "evenly filled” and "all endpoints” in which the available scale factor components are a mixture of fill and excess endpoint energy scale factor components.
  • the "all dominant” boundary condition occurs when the direction-weighted_xcor is one.
  • Region 1 dominant plus fill
  • Region 2 fill plus endpoint
  • the "evenly filled” boundary point may be considered to be in either Region 1 or Region 2. As mentioned below, the precise boundary point is not critical.
  • the fill scale factor components increase in value, reaching a maximum as the dominant scale factor component(s) reach a zero value, at which point as the fill scale factor components decline in value, the excess endpoint energy scale factor components increase in value.
  • the result when applied to an appropriate matrix that receives the module's input signals, is an output signal distribution that provides a compact sound image when the input signals are highly correlated, spreading (widening) from compact to broad as the correlation decreases, and progressively splitting or bowing outward into multiple sound images, each at an endpoint, from broad, as the correlation continues to decrease to highly uncorrelated.
  • FIGS. 9A and 9B through FIGS. 16A and 16B illustrate the output scale factors of a module for various examples of input signal conditions.
  • a single, stand-alone module is assumed so that the scale factors it produces for a variable matrix are the final scale factors.
  • the module and an associated variable matrix have two input channels (such as left L and right R) that coincide with two endpoint output channels (that may also be designated L and R).
  • there are three interior output channels such as left middle Lm, center C, and right middle Rm).
  • the input energy levels shown as two vertical arrows, are equal.
  • both the direction-weighted_xcor (and the effective_xcor) is 1.0 (full correlation).
  • there is only one non-zero scale factor shown in FIG. 9B as a single vertical arrow at C, which is applied to the center interior channel C output, resulting in a spatially compact dominant signal.
  • the input energy levels are equal, but direction-weighted_xcor is less than 1.0 and more than random_xcor. Consequently, the scale factor components are that of Region 1 - mixed dominant and fill scale factor components.
  • the greater of the normalized dominant scale factor component (from block 361) and the normalized fill scale factor component (from block 363) is applied to each output channel (by block 367) so that the dominant scale factor is located at the same central output channel C as in FIG. 10B, but is smaller, and the fill scale factors appear at each of the other output channels, L, LM, RM and R (including the endpoints L and R).
  • the scale factors are that of the boundary condition between Regions 1 and 2 ⁇ the evenly filled condition in which there are no dominant or endpoint scale factors, just fill scale factors having the same value at each output (hence, "evenly filled"), as indicated by the identical arrows at each output.
  • the fill scale factor levels reach their highest value in this example.
  • fill scale factors may be applied unevenly, such as in a tapered manner depending on input signal conditions.
  • the direction-weighted_xcor (such as produced by block 441 of FIG. 4B) is the same as the neighbor-compensated_xcor (such as produced by block 439 of FIG. 4B).
  • the input energy levels are not equal (L is greater than R).
  • the neighbor-weighted_xcor is equal to random_xcor in this example, the resulting scale factors, shown in FIG. 14B, are not fill scale factors applied evenly to all channels as in the example of FIGS. 11A and 11B.
  • the unequal input energy levels cause a proportional increase in the direction-weighted_xcor (proportional to the degree to which the nominal ongoing primary direction departs from its central position) such that it becomes greater than the neighbor-compensated_xcor, thereby causing the scale factors to be weighted more towards all dominant (as illustrated in FIG. 8).
  • This is a desired result because strongly L- or R- weighted signals should not have broad width; they should have a compact width near the L or R channel endpoint.
  • output_channel_sub_i sf ( i ) ⁇ ( L t _Coeff ( i ) ⁇ L t + R t _Coeff ( i ) ⁇ R t )
  • this example demonstrates that the signal outputs at the Lout, Cout, MidRout and Rout are unequal because Lt is larger than Rt even though the scale factors for those outputs are equal.
  • the fill scale factors may be equally distributed to the output channels as shown in the examples of FIGS. 10B, 11B, 12B and 14B.
  • the fill scale factor components may be varied with position in some manner as a function of the dominant (correlated) and/or endpoint (uncorrelated) input signal components (or, equivalently, as a function of the direction-weighted_xcor value.)
  • the fill scale factor component amplitudes may curve convexly, such that output channels near the nominal ongoing primary direction receive more signal level than channels farther away.
  • the fill scale factor component amplitudes may flatten to an even distribution, and for direction-weighted_xcor ⁇ random_xcor, the amplitudes may curve concavely, favoring channels near the endpoint directions.
  • FIG. 15B Examples of such curved fill scale factor amplitudes are set forth in FIG. 15B and FIG. 16B.
  • the FIG. 15B output results from an input (FIG. 15A) that is the same as in FIG. 10A, described above.
  • the FIG. 16B output results from an input (FIG. 16A) that is the same as in FIG. 12B, described above.
  • Each module in a multiple-module arrangement requires two mechanisms in order to support communication between it and a supervisor, such as supervisor 201 of FIG. 2:
  • Higher-order (HO) neighbor levels are neighbor levels of one or more higher-order modules that share the inputs of a lower-level module.
  • the above calculation of neighbor levels relates only to modules at a particular input that have the same hierarchy: all the three-input modules (if any), then all the two-input modules, etc.
  • An HO-neighbor level of a module is the sum of all the neighbor levels of all the higher order modules at that input. ( i.e., the HO neighbor level at an input of a two-input module is the sum of all the third, fourth, and higher order modules, if any, sharing the node of a two-input module).
  • a module Once a module knows what its HO-neighbor levels are at a particular one of its inputs, it subtracts them, along with the same-hierarchy-level neighbor levels, from the total input energy level of that input to get the neighbor-compensated level at that input node. This is shown in FIG. 4B where the neighbor levels for input 1 and input m are subtracted in combiners 431 and 433, respectively, from the outputs of the variable slow smoothers 425 and 427, and the higher-order neighbor levels for input 1, input m and the common energy are subtracted in combiners 431, 433 and 435, respectively, from the outputs of the variable slow smoothers 425, 427 and 429.
  • HO-neighbor levels also are used to compensate the common energy across the input channels (e.g., accomplished by the subtraction of an HO-neighbor level in combiner 435).
  • the rationale for this difference is that the common level of a module is not affected by adjacent modules of the same hierarchy, but it can be affected by a higher-order module sharing all the inputs of a module.
  • the total common signal level observed by the two-input module includes common elements of the three input module that do not belong to the latter output channel, so one subtracts the square root of the pairwise products of the HO neighbor levels from the common energy of the two-input module to determine how much common energy is due solely to its interior channel (the latter one mentioned).
  • the smoothed common energy level from block 429) has subtracted from it the derived HO common level to yield a neighbor-compensated common energy level (from combiner 435) that is used by the module to calculate (in block 439) the neighbor-compensated_xcor.
  • the present invention and its various aspects may be implemented in analog circuitry, or more probably as software functions performed in digital signal processors, programmed general-purpose digital computers, and/or special purpose digital computers. Interfaces between analog and digital signal streams may be performed in appropriate hardware and/or as functions in software and/or firmware. Although the present invention and its various aspects may involve analog or digital signals, in practical applications most or all processing functions are likely to be performed in the digital domain on digital signal streams in which audio signals are represented by samples.

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Stereophonic System (AREA)
  • Machine Translation (AREA)
  • Stereo-Broadcasting Methods (AREA)
  • Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)

Claims (52)

  1. Procédé permettant de convertir M signaux d'entrée audio, chacun étant associé à une direction, à N signaux de sortie audio, chacun étant associé à une direction, dans lequel N est supérieur à M et M est égal à deux ou plus, comprenant les étapes consistant à :
    fournir une ou plusieurs matrices variables (203 ; 24-34)
    pour chaque matrice variable (203 ; 24-34), appliquer à celle-ci m desdits M signaux d'entrée audio et
    dériver à partir de-là n desdits N signaux de sortie audio, dans lequel, lorsqu'il y a une matrice variable, m est égal à M et n est égal N et, lorsqu'il y a une pluralité de matrices, m est un sous-ensemble de M et n est un sous-ensemble de N et les valeurs de m et n pour une matrice peuvent différer de celles des autres matrices,
    commander chaque matrice variable en réponse aux m signaux d'entrée qui lui sont appliqués de telle sorte qu'un champ acoustique généré par les n signaux de sortie dérivés de celui-ci présente une image sonore compacte dans la direction primaire en cours nominale des m signaux d'entrée qui lui sont appliqués lorsque ces signaux d'entrée sont hautement corrélés, l'image s'étalant de compacte à large à mesure que la corrélation diminue et se séparant progressivement en de multiples images sonores compactes, chacune dans une direction associée à un signal d'entrée qui lui est appliqué, à mesure que la corrélation continue de diminuer jusqu'à arriver à un niveau hautement non corrélé, et
    dériver lesdits N signaux de sortie audio à partir des signaux de sortie desdites une ou plusieurs matrices variables (203 ; 24-34).
  2. Procédé selon la revendication 1, dans lequel chacune desdites matrices variables (203 ; 24-34) est une matrice variable ayant des coefficients variables ou est une matrice variable ayant des coefficients fixes et des sorties variables, et chaque matrice variable (203 ; 24-34) est commandée en modifiant les coefficients variables ou en modifiant les sorties variables.
  3. Procédé selon la revendication 1, dans lequel chacune desdites matrices variables (203 ; 24-34) est commandée en réponse aux mesures :
    (1) des niveaux relatifs de ses signaux d'entrée, et
    (2) de l'intercorrélation de ses signaux d'entrée,
  4. Procédé selon la revendication 3, dans lequel pour une mesure de l'intercorrélation des signaux d'entrée appliqués à une matrice variable (203 ; 24-34) ayant des valeurs comprises dans un premier éventail, limité par une valeur maximum et une valeur de référence, le champ acoustique présente une image sonore compacte lorsque la mesure de l'intercorrélation correspond à ladite valeur maximum et présente une image largement étalée lorsque la mesure de l'intercorrélation correspond à ladite valeur de référence, et pour une mesure de l'intercorrélation des signaux d'entrée appliqués à une matrice variable (203 ; 24-34) ayant des valeurs comprises dans un deuxième éventail, limité par ladite valeur de référence et un valeur minimum, le champ acoustique présente ladite image largement étalée lorsque la mesure de l'intercorrélation correspond à ladite valeur de référence et présente une pluralité d'images sonores compactes, chacune dans une direction associée à un signal d'entrée appliqué à la matrice variable (203 ; 24-34), lorsque la mesure de l'intercorrélation correspond à ladite valeur minimum.
  5. Procédé selon la revendication 4, dans lequel ladite valeur de référence correspond à environ la valeur d'une mesure de l'intercorrélation des signaux d'entrée appliqués à chaque matrice variable (203 ; 24-34), dans le cas d'une énergie égale dans chacun des signaux de sortie de cette matrice variable.
  6. Procédé selon la revendication 3, dans lequel une mesure des niveaux relatifs des signaux d'entrée de la matrice variable (203 ; 24-34) se fait en réponse à un niveau d'énergie lissée de chaque signal d'entrée de ce type.
  7. Procédé selon la revendication 3 ou la revendication 6, dans lequel une mesure des niveaux relatifs des signaux d'entrée de la matrice variable (203 ; 24-34) correspond à une direction primaire en cours nominale de ces signaux d'entrée.
  8. Procédé selon la revendication 3, dans lequel une mesure de l'intercorrélation des signaux d'entrée d'une matrice variable (203 ; 24-34) est effectuée en réponse à une énergie commune lissée de ces signaux d'entrée divisée par la Mième racine carrée du produit du niveau d'énergie lissée de chaque signal d'entrée de ce type, où M est égal au nombre de signaux d'entrée de la matrice variable (203 ; 24-34).
  9. Procédé selon l'une quelconque des revendications 6, 7 ou 8, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'une matrice variable (203 ; 24-34) est obtenu par un lissage dans le domaine temporel à constante de temps variable.
  10. Procédé selon l'une quelconque des revendications 6, 7 ou 8, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'une matrice variable (203 ; 24-34) est obtenu par un lissage dans le domaine fréquentiel et un lissage dans le domaine temporel à constante de temps variable.
  11. Procédé selon la revendication 8, dans lequel l'énergie commune des signaux d'entrée d'une matrice variable (203 ; 24-34) est obtenue par une multiplication des niveaux d'amplitude de ces signaux d'entrée.
  12. Procédé selon la revendication 11, dans lequel l'énergie commune lissée des signaux d'entrée d'une matrice variable (203 ; 24-34) est obtenue par un lissage dans le domaine temporel à constante de temps variable de l'énergie commune des signaux d'entrée.
  13. Procédé selon la revendication 12, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'une matrice variable (203 ; 24-34) est obtenu par un lissage dans le domaine temporel à constante de temps variable.
  14. Procédé selon la revendication 11, dans lequel l'énergie commune lissée des signaux d'entrée d'une matrice variable (203 ; 24-34) est obtenue par un lissage dans le domaine fréquentiel et un lissage dans le domaine temporel à constante de temps variable de l'énergie commune de ces signaux d'entrée.
  15. Procédé selon la revendication 14, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'une matrice variable (203 ; 24-34) est obtenu par un lissage dans le domaine fréquentiel et un lissage dans le domaine temporel à constante de temps variable.
  16. Procédé selon l'une quelconque des revendications 9, 10, 12, 13, 14 et 15, dans lequel ledit lissage dans le domaine temporel à constante de temps variable est effectué par un lissage ayant à la fois une constante de temps fixe et une constante de temps variable.
  17. Procédé selon l'une quelconque des revendications 9, 10, 12, 13, 14 et 15, dans lequel ledit lissage dans le domaine temporel à constante de temps variable est effectué par un lissage ayant seulement une constante de temps variable.
  18. Procédé selon la revendication 16 ou la revendication 17, dans lequel ladite constante de temps variable est variable par paliers.
  19. Procédé selon la revendication 16 ou la revendication 17, dans lequel ladite constante de temps variable est variable d'une manière continue.
  20. Procédé selon la revendication 16 ou la revendication 17, dans lequel ladite constante de temps variable est commandée en réponse aux mesures des niveaux relatifs des signaux d'entrée d'une matrice variable (203 ; 24-34) et leur intercorrélation.
  21. Procédé selon la revendication 6, dans lequel le niveau de l'énergie lissée de chaque signal d'entrée d'une matrice variable (203 ; 24-34) est obtenu par un lissage dans le domaine temporel à constante de temps variable des niveaux d'énergie de chaque signal d'entrée avec sensiblement la même constante de temps.
  22. Procédé selon la revendication 3, dans lequel les mesures des niveaux relatifs des signaux d'entrée d'une matrice variable (203 ; 24-34) et leur intercorrélation sont chacun obtenus par un lissage dans le domaine temporel à constante de temps variable dans lequel la même constante de temps est appliquée à chaque lissage.
  23. Procédé selon la revendication 8, dans lequel ladite mesure de l'intercorrélation correspond à une première mesure de l'intercorrélation des signaux d'entrée d'une matrice variable (203 ; 24-34) et une mesure supplémentaire de l'intercorrélation est obtenue en appliquant une mesure des niveaux relatifs de ces signaux d'entrée à ladite première mesure de l'intercorrélation pour produire une mesure d'intercorrélation à direction pondérée.
  24. Procédé selon la revendication 23, dans lequel encore une autre mesure de l'intercorrélation des signaux d'entrée d'une matrice variable (203 ; 24-34) est obtenue en appliquant un facteur d'échelle à peu près égal à une valeur d'une mesure de l'intercorrélation de ces signaux d'entrée dans le cas d'une énergie égale dans chacune des sorties de la matrice variable (203 ; 24-34).
  25. Procédé selon la revendication 1, dans lequel lorsqu'il y a plus d'une matrice variable (203 ; 24-34), lesdites matrices variables (203 ; 24-34) sont également commandées en réponse à des informations qui compensent l'effet d'une ou plusieurs autres matrices variables (203 ; 24-34) qui reçoivent le même signal d'entrée.
  26. Procédé selon la revendication 1 ou la revendication 25, dans lequel la dérivation desdits N signaux de sortie audio des signaux de sortie de plus d'une matrice variable (203 ; 24-34) comporte la compensation des multiples matrices variables (203 ; 24-34) produisant le même signal de sortie.
  27. Procédé permettant de convertir N signaux d'entrée audio, chacun étant associé à une direction, en N signaux de sortie audio, chacun étant associé à une direction, dans lequel N est supérieur à M et M est égal à deux ou plus, comprenant les étapes consistant à :
    fournir une matrice variable M : N (203) réagissant aux signaux de commande,
    appliquer lesdits M signaux d'entrée audio à ladite matrice variable (203),
    fournir un ou plusieurs générateurs de signaux de commande de matrice variable (24-34, 201),
    pour chaque générateur, appliquer m desdits M signaux d'entrée audio et dériver à partir de là un ensemble de signaux de commande à matrice variable pour n desdits N signaux de sortie audio, où m est un sous-ensemble de M et n est un sous-ensemble de N et les valeurs de m et n pour un générateur peuvent différer de celles des autres générateurs,
    commander chaque générateur de signaux de commande à matrice variable (24-34, 201) en réponse aux m signaux d'entrée qui lui sont appliqués de telle sorte que lorsque les signaux de commande générés par celui-ci sont appliqués à ladite matrice variable M : N (203), un champ acoustique généré par les n signaux de sortie produits présente une image sonore compacte dans la direction primaire en cours nominale de m signaux d'entrée qui ont produit les signaux de commande appliqués lorsque ces signaux d'entrée sont hautement corrélés, l'image s'étalant de compacte à large à mesure que la corrélation diminue et se séparant progressivement en de multiples images sonores compactes, chacune dans une direction associée à un signal d'entrée qui a produit les signaux de commande appliqués, à mesure que la corrélation continue de diminuer jusqu'à un niveau hautement non corrélé, et
    dériver lesdits N signaux de sortie audio de ladite matrice variable (203).
  28. Procédé selon la revendication 27, dans lequel ladite matrice variable M : N (203) est une matrice variable ayant des coefficients variables ou est une matrice variable ayant des coefficients fixes et des sorties variables, et ladite matrice variable (203) est commandée en modifiant les coefficients variables ou en modifiant les sorties variables.
  29. Procédé selon la revendication 27, dans lequel chacun desdits générateurs de signaux de commande à matrice variable (24-34, 201) est commandé en réponse aux mesures :
    (1) des niveaux relatifs des m signaux d'entrée appliqués au générateur, et
    (2) de l'intercorrélation des m signaux d'entrée appliqués au générateur.
  30. Procédé selon la revendication 29, dans lequel pour une mesure de l'intercorrélation des m signaux d'entrée appliqués à un générateur ayant des valeurs comprises dans un premier éventail, limité par une valeur maximum et une valeur de référence, le champ acoustique présente une image sonore compacte lorsque la mesure de l'intercorrélation correspond à ladite valeur maximum et présente une image largement étalée lorsque la mesure de l'intercorrélation correspond à ladite valeur de référence, et pour une mesure de l'intercorrélation des signaux d'entrée appliqués à un générateur ayant des valeurs comprises dans un deuxième éventail, limité par ladite valeur de référence et une valeur minimum, le champ acoustique présente ladite image largement étalée lorsque la mesure de l'intercorrélation correspond à ladite valeur de référence et présente une pluralité d'images sonores compactes, chacune dans une direction associée à un signal d'entrée appliqué au générateur, lorsque la mesure de l'intercorrélation correspond à ladite valeur minimum.
  31. Procédé selon la revendication 30, dans lequel ladite valeur de référence correspond à environ la valeur d'une mesure de l'intercorrélation des m signaux d'entrée appliqués à chaque générateur, dans le cas d'une énergie égale dans chacun des signaux de sortie à matrice variable.
  32. Procédé selon la revendication 29, dans lequel une mesure des niveaux relatifs des m signaux d'entrée d'un générateur se fait en réponse à un niveau d'énergie lissée de chaque signal d'entrée de ce type.
  33. Procédé selon la revendication 29 ou la revendication 32, dans lequel une mesure des niveaux relatifs des m signaux d'entrée du générateur correspond à une direction primaire en cours nominale de ces signaux d'entrée.
  34. Procédé selon la revendication 29, dans lequel une mesure de l'intercorrélation des m signaux d'entrée d'un générateur est effectuée en réponse à une énergie commune lissée de ces signaux d'entrée divisée par la mième racine carrée du produit du niveau d'énergie lissée de chaque signal d'entrée de ce type, où m est égal au nombre de signaux d'entrée du générateur.
  35. Procédé selon l'une quelconque des revendications 32, 33 ou 34, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'un générateur est obtenu par un lissage dans le domaine temporel à constante de temps variable.
  36. Procédé selon l'une quelconque des revendications 32, 33 ou 34, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'un générateur est obtenu par un lissage dans le domaine fréquentiel et un lissage dans le domaine temporel à constante de temps variable.
  37. Procédé selon la revendication 34, dans lequel l'énergie commune des signaux d'entrée d'un générateur est obtenue par une multiplication des niveaux d'amplitude de ces signaux d'entrée.
  38. Procédé selon la revendication 37, dans lequel l'énergie commune lissée des m signaux d'entrée d'un générateur est obtenue par un lissage dans le domaine temporel à constante de temps variable de l'énergie commune des signaux d'entrée.
  39. Procédé selon la revendication 38, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'un générateur est obtenu par un lissage dans le domaine temporel à constante de temps variable.
  40. Procédé selon la revendication 37, dans lequel l'énergie commune lissée des signaux d'entrée d'un générateur est obtenue par un lissage dans le domaine fréquentiel et un lissage dans le domaine temporel à constante de temps variable de l'énergie commune de ces signaux d'entrée.
  41. Procédé selon la revendication 40, dans lequel le niveau d'énergie lissée de chaque signal d'entrée d'un générateur est obtenu par un lissage dans le domaine fréquentiel et un lissage dans le domaine temporel à constante de temps variable.
  42. Procédé selon l'une quelconque des revendications 35, 36, 38, 39, 40 et 41, dans lequel ledit lissage dans le domaine temporel à constante de temps variable est effectué par un lissage ayant à la fois une constante de temps fixe et une constante de temps variable.
  43. Procédé selon l'une quelconque des revendications 35, 36, 38, 39, 40 et 41, dans lequel ledit lissage dans le domaine temporel à constante de temps variable est effectué par un lissage ayant seulement une constante de temps variable.
  44. Procédé selon la revendication 42 ou la revendication 43, dans lequel ladite constante de temps variable est variable par paliers.
  45. Procédé selon la revendication 42 ou la revendication 43, dans lequel ladite constante de temps variable est variable d'une manière continue.
  46. Procédé selon la revendication 42 ou la revendication 43, dans lequel ladite constante de temps variable est commandée en réponse aux mesures des niveaux relatifs des m signaux d'entrée d'un générateur et leur intercorrélation.
  47. Procédé selon la revendication 32, dans lequel le niveau de l'énergie lissée de chaque signal d'entrée d'un générateur est obtenu par un lissage dans le domaine temporel à constante de temps variable des niveaux d'énergie de chaque signal d'entrée avec sensiblement la même constante de temps.
  48. Procédé selon la revendication 29, dans lequel les mesures des niveaux relatifs des signaux d'entrée d'un générateur et leur intercorrélation sont chacun obtenus par un lissage dans le domaine temporel à constante de temps variable dans lequel la même constante de temps est appliquée à chaque lissage.
  49. Procédé selon la revendication 34, dans lequel ladite mesure de l'intercorrélation correspond à une première mesure de l'intercorrélation des signaux d'entrée d'un générateur et une mesure supplémentaire de l'intercorrélation est obtenue en appliquant une mesure des niveaux relatifs de ces signaux d'entrée à ladite première mesure de l'intercorrélation pour produire une mesure d'intercorrélation à direction pondérée.
  50. Procédé selon la revendication 49, dans lequel encore une autre mesure de l'intercorrélation des signaux d'entrée d'un générateur est obtenue en appliquant un facteur d'échelle à peu près égal à une valeur d'une mesure de l'intercorrélation de ces signaux d'entrée dans le cas d'une énergie égale dans chacune des sorties de la matrice variable (203).
  51. Procédé selon la revendication 27, dans lequel lorsqu'il y a plus d'un générateur de facteurs d'échelle à matrice variable, lesdits générateurs de facteurs d'échelle à matrice variable sont également commandés en réponse à des informations qui compensent l'effet d'un ou plusieurs autres générateurs de facteurs d'échelle à matrice variable qui reçoivent le même signal d'entrée.
  52. Procédé selon la revendication 51, dans lequel la dérivation desdits N signaux de sortie audio de ladite matrice variable (203) comporte la compensation de multiples générateurs de facteurs d'échelle à matrice variable produisant des facteurs d'échelle pour le même signal de sortie.
EP03770229A 2002-08-07 2003-08-06 Modulation spatiale de canal audio Expired - Lifetime EP1527655B1 (fr)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US40198302P 2002-08-07 2002-08-07
US401983P 2002-08-07
PCT/US2003/024570 WO2004019656A2 (fr) 2001-02-07 2003-08-06 Modulation spatiale de canal audio

Publications (2)

Publication Number Publication Date
EP1527655A2 EP1527655A2 (fr) 2005-05-04
EP1527655B1 true EP1527655B1 (fr) 2006-10-04

Family

ID=33489220

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03770229A Expired - Lifetime EP1527655B1 (fr) 2002-08-07 2003-08-06 Modulation spatiale de canal audio

Country Status (17)

Country Link
EP (1) EP1527655B1 (fr)
JP (1) JP4434951B2 (fr)
KR (1) KR100988293B1 (fr)
CN (1) CN1672464B (fr)
AT (1) ATE341923T1 (fr)
AU (1) AU2003278704B2 (fr)
BR (2) BRPI0305746B1 (fr)
CA (1) CA2494454C (fr)
DE (1) DE60308876T2 (fr)
DK (1) DK1527655T3 (fr)
ES (1) ES2271654T3 (fr)
HK (1) HK1073963A1 (fr)
IL (1) IL165941A (fr)
MX (1) MXPA05001413A (fr)
MY (1) MY139849A (fr)
PL (1) PL373120A1 (fr)
TW (1) TWI315828B (fr)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10147431B2 (en) 2013-07-22 2018-12-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, method for providing at least four audio channel signals on the basis of an encoded representation, method for providing an encoded representation on the basis of at least four audio channel signals and computer program using a bandwidth extension
CN113424257A (zh) * 2018-12-07 2021-09-21 弗劳恩霍夫应用研究促进协会 用于使用直达分量补偿进行与基于DirAC的空间音频编码有关的编码、解码、场景处理和其他过程的装置、方法和计算机程序

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7508947B2 (en) * 2004-08-03 2009-03-24 Dolby Laboratories Licensing Corporation Method for combining audio signals using auditory scene analysis
KR101261212B1 (ko) 2004-10-26 2013-05-07 돌비 레버러토리즈 라이쎈싱 코오포레이션 오디오 신호 처리 방법 및 장치
DE602005009244D1 (de) * 2004-11-23 2008-10-02 Koninkl Philips Electronics Nv Einrichtung und verfahren zur verarbeitung von audiodaten, computerprogrammelement und computerlesbares medium
TWI397901B (zh) * 2004-12-21 2013-06-01 Dolby Lab Licensing Corp 控制音訊信號比響度特性之方法及其相關裝置與電腦程式
US8090586B2 (en) 2005-05-26 2012-01-03 Lg Electronics Inc. Method and apparatus for embedding spatial information and reproducing embedded signal for an audio signal
WO2007004828A2 (fr) 2005-06-30 2007-01-11 Lg Electronics Inc. Appareil et procede de codage et decodage de signal audio
US8185403B2 (en) 2005-06-30 2012-05-22 Lg Electronics Inc. Method and apparatus for encoding and decoding an audio signal
JP2009500656A (ja) 2005-06-30 2009-01-08 エルジー エレクトロニクス インコーポレイティド オーディオ信号をエンコーディング及びデコーディングするための装置とその方法
JP4859925B2 (ja) 2005-08-30 2012-01-25 エルジー エレクトロニクス インコーポレイティド オーディオ信号デコーディング方法及びその装置
WO2007055463A1 (fr) 2005-08-30 2007-05-18 Lg Electronics Inc. Dispositif pour coder et decoder un signal audio et procede correspondant
US7788107B2 (en) 2005-08-30 2010-08-31 Lg Electronics Inc. Method for decoding an audio signal
JP5173811B2 (ja) 2005-08-30 2013-04-03 エルジー エレクトロニクス インコーポレイティド オーディオ信号デコーディング方法及びその装置
US7646319B2 (en) 2005-10-05 2010-01-12 Lg Electronics Inc. Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor
CN101283250B (zh) 2005-10-05 2013-12-04 Lg电子株式会社 信号处理的方法和装置以及编码和解码方法及其装置
KR100878828B1 (ko) 2005-10-05 2009-01-14 엘지전자 주식회사 신호 처리 방법 및 이의 장치, 그리고 인코딩 및 디코딩방법 및 이의 장치
US7672379B2 (en) 2005-10-05 2010-03-02 Lg Electronics Inc. Audio signal processing, encoding, and decoding
US7696907B2 (en) 2005-10-05 2010-04-13 Lg Electronics Inc. Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor
US7751485B2 (en) 2005-10-05 2010-07-06 Lg Electronics Inc. Signal processing using pilot based coding
US7653533B2 (en) 2005-10-24 2010-01-26 Lg Electronics Inc. Removing time delays in signal paths
US7752053B2 (en) 2006-01-13 2010-07-06 Lg Electronics Inc. Audio signal processing using pilot based coding
US7965848B2 (en) 2006-03-29 2011-06-21 Dolby International Ab Reduced number of channels decoding
JP5366104B2 (ja) * 2008-06-26 2013-12-11 オランジュ マルチチャネル・オーディオ信号の空間合成
EP2398257B1 (fr) 2008-12-18 2017-05-10 Dolby Laboratories Licensing Corporation Translation spatiale de canaux audio
US9197978B2 (en) * 2009-03-31 2015-11-24 Panasonic Intellectual Property Management Co., Ltd. Sound reproduction apparatus and sound reproduction method
CN101527874B (zh) * 2009-04-28 2011-03-23 张勤 一种动声声场系统
TWI444989B (zh) 2010-01-22 2014-07-11 Dolby Lab Licensing Corp 針對改良多通道上混使用多通道解相關之技術
JP5323210B2 (ja) * 2010-09-30 2013-10-23 パナソニック株式会社 音響再生装置および音響再生方法
ES2683821T3 (es) * 2012-03-22 2018-09-28 Dirac Research Ab Diseño de controlador de precompensación de audio usando un conjunto variable de altavoces de soporte
EP2830332A3 (fr) 2013-07-22 2015-03-11 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Procédé, unité de traitement de signal et programme informatique permettant de mapper une pluralité de canaux d'entrée d'une configuration de canal d'entrée vers des canaux de sortie d'une configuration de canal de sortie
CN107710790B (zh) * 2015-06-24 2021-06-22 索尼公司 用于处理声音的装置、方法及程序
CN106604199B (zh) * 2016-12-23 2018-09-18 湖南国科微电子股份有限公司 一种数字音频信号的矩阵处理方法及装置
US11019449B2 (en) * 2018-10-06 2021-05-25 Qualcomm Incorporated Six degrees of freedom and three degrees of freedom backward compatibility
TWI740206B (zh) * 2019-09-16 2021-09-21 宏碁股份有限公司 訊號量測的校正系統及其校正方法
CN114327040A (zh) * 2021-11-25 2022-04-12 歌尔股份有限公司 振动信号生成方法、装置、电子设备及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659619A (en) * 1994-05-11 1997-08-19 Aureal Semiconductor, Inc. Three-dimensional virtual audio display employing reduced complexity imaging filters
US6009179A (en) * 1997-01-24 1999-12-28 Sony Corporation Method and apparatus for electronically embedding directional cues in two channels of sound
US6072878A (en) * 1997-09-24 2000-06-06 Sonic Solutions Multi-channel surround sound mastering and reproduction techniques that preserve spatial harmonics
AUPP271598A0 (en) * 1998-03-31 1998-04-23 Lake Dsp Pty Limited Headtracked processing for headtracked playback of audio signals
EP1054575A3 (fr) * 1999-05-17 2002-09-18 Bose Corporation Décodeur directionnel

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10147431B2 (en) 2013-07-22 2018-12-04 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Audio decoder, audio encoder, method for providing at least four audio channel signals on the basis of an encoded representation, method for providing an encoded representation on the basis of at least four audio channel signals and computer program using a bandwidth extension
CN113424257A (zh) * 2018-12-07 2021-09-21 弗劳恩霍夫应用研究促进协会 用于使用直达分量补偿进行与基于DirAC的空间音频编码有关的编码、解码、场景处理和其他过程的装置、方法和计算机程序
US11838743B2 (en) 2018-12-07 2023-12-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and computer program for encoding, decoding, scene processing and other procedures related to DirAC based spatial audio coding using diffuse compensation
US11856389B2 (en) 2018-12-07 2023-12-26 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Apparatus, method and computer program for encoding, decoding, scene processing and other procedures related to DirAC based spatial audio coding using direct component compensation
CN113424257B (zh) * 2018-12-07 2024-01-19 弗劳恩霍夫应用研究促进协会 从包括至少两个声道的信号产生声场描述的装置、方法
US11937075B2 (en) 2018-12-07 2024-03-19 Fraunhofer-Gesellschaft Zur Förderung Der Angewand Forschung E.V Apparatus, method and computer program for encoding, decoding, scene processing and other procedures related to DirAC based spatial audio coding using low-order, mid-order and high-order components generators

Also Published As

Publication number Publication date
DE60308876D1 (de) 2006-11-16
HK1073963A1 (en) 2005-10-21
MXPA05001413A (es) 2005-06-06
TWI315828B (en) 2009-10-11
TW200404222A (en) 2004-03-16
AU2003278704A1 (en) 2004-03-11
IL165941A (en) 2010-06-30
ES2271654T3 (es) 2007-04-16
KR100988293B1 (ko) 2010-10-18
CN1672464B (zh) 2010-07-28
DE60308876T2 (de) 2007-03-01
PL373120A1 (en) 2005-08-08
JP2005535266A (ja) 2005-11-17
IL165941A0 (en) 2006-01-15
DK1527655T3 (da) 2007-01-29
MY139849A (en) 2009-11-30
CN1672464A (zh) 2005-09-21
CA2494454C (fr) 2013-10-01
ATE341923T1 (de) 2006-10-15
BRPI0305746B1 (pt) 2018-03-20
JP4434951B2 (ja) 2010-03-17
AU2003278704B2 (en) 2009-04-23
BR0305746A (pt) 2004-12-07
EP1527655A2 (fr) 2005-05-04
KR20050035878A (ko) 2005-04-19
CA2494454A1 (fr) 2004-03-04

Similar Documents

Publication Publication Date Title
US11805379B2 (en) Audio channel spatial translation
EP1527655B1 (fr) Modulation spatiale de canal audio
US7660424B2 (en) Audio channel spatial translation
WO2004019656A2 (fr) Modulation spatiale de canal audio
CA2437764C (fr) Modulation de canal audio
KR101341523B1 (ko) 스테레오 신호들로부터 멀티 채널 오디오 신호들을생성하는 방법
AU2002251896A1 (en) Audio channel translation
US20040062401A1 (en) Audio channel translation
EP3745744A2 (fr) Traitement audio
US7330552B1 (en) Multiple positional channels from a conventional stereo signal pair
Noisternig et al. D3. 2: Implementation and documentation of reverberation for object-based audio broadcasting

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20050224

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL LT LV MK

17Q First examination report despatched

Effective date: 20050701

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1073963

Country of ref document: HK

DAX Request for extension of the european patent (deleted)
GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

GRAS Grant fee paid

Free format text: ORIGINAL CODE: EPIDOSNIGR3

GRAA (expected) grant

Free format text: ORIGINAL CODE: 0009210

AK Designated contracting states

Kind code of ref document: B1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LI LU MC NL PT RO SE SI SK TR

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: SK

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20061004

Ref country code: SI

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20061004

Ref country code: RO

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20061004

Ref country code: IT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT;WARNING: LAPSES OF ITALIAN PATENTS WITH EFFECTIVE DATE BEFORE 2007 MAY HAVE OCCURRED AT ANY TIME BEFORE 2007. THE CORRECT EFFECTIVE DATE MAY BE DIFFERENT FROM THE ONE RECORDED.

Effective date: 20061004

Ref country code: CZ

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20061004

REG Reference to a national code

Ref country code: GB

Ref legal event code: FG4D

REG Reference to a national code

Ref country code: CH

Ref legal event code: NV

Representative=s name: WILLIAM BLANC & CIE CONSEILS EN PROPRIETE INDUSTRI

Ref country code: CH

Ref legal event code: EP

REG Reference to a national code

Ref country code: IE

Ref legal event code: FG4D

REF Corresponds to:

Ref document number: 60308876

Country of ref document: DE

Date of ref document: 20061116

Kind code of ref document: P

REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1073963

Country of ref document: HK

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: BG

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070104

REG Reference to a national code

Ref country code: SE

Ref legal event code: TRGR

REG Reference to a national code

Ref country code: DK

Ref legal event code: T3

ET Fr: translation filed
PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: PT

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070316

REG Reference to a national code

Ref country code: ES

Ref legal event code: FG2A

Ref document number: 2271654

Country of ref document: ES

Kind code of ref document: T3

PLBE No opposition filed within time limit

Free format text: ORIGINAL CODE: 0009261

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: NO OPPOSITION FILED WITHIN TIME LIMIT

26N No opposition filed

Effective date: 20070705

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: MC

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20070831

Ref country code: GR

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070105

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: EE

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20061004

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: IE

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20070806

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: LU

Free format text: LAPSE BECAUSE OF NON-PAYMENT OF DUE FEES

Effective date: 20070806

Ref country code: CY

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20061004

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: HU

Free format text: LAPSE BECAUSE OF FAILURE TO SUBMIT A TRANSLATION OF THE DESCRIPTION OR TO PAY THE FEE WITHIN THE PRESCRIBED TIME-LIMIT

Effective date: 20070405

REG Reference to a national code

Ref country code: CH

Ref legal event code: PFA

Owner name: DOLBY LABORATORIES LICENSING CORPORATION

Free format text: DOLBY LABORATORIES LICENSING CORPORATION#100 POTRERO AVENUE#SAN FRANCISCO CALIFORNIA 94103-4813 (US) -TRANSFER TO- DOLBY LABORATORIES LICENSING CORPORATION#100 POTRERO AVENUE#SAN FRANCISCO CALIFORNIA 94103-4813 (US)

REG Reference to a national code

Ref country code: CH

Ref legal event code: PCAR

Free format text: NOVAGRAAF SWITZERLAND SA;CHEMIN DE L'ECHO 3;1213 ONEX (CH)

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 14

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 15

REG Reference to a national code

Ref country code: FR

Ref legal event code: PLFP

Year of fee payment: 16

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 60308876

Country of ref document: DE

Representative=s name: WINTER, BRANDL - PARTNERSCHAFT MBB, PATENTANWA, DE

Ref country code: DE

Ref legal event code: R082

Ref document number: 60308876

Country of ref document: DE

Representative=s name: WINTER, BRANDL, FUERNISS, HUEBNER, ROESS, KAIS, DE

REG Reference to a national code

Ref country code: DE

Ref legal event code: R082

Ref document number: 60308876

Country of ref document: DE

Representative=s name: WINTER, BRANDL - PARTNERSCHAFT MBB, PATENTANWA, DE

Ref country code: DE

Ref legal event code: R081

Ref document number: 60308876

Country of ref document: DE

Owner name: VIVO MOBILE COMMUNICATION CO., LTD., DONGGUAN, CN

Free format text: FORMER OWNER: DOLBY LABORATORIES LICENSING CORP., SAN FRANCISCO, CALIF., US

REG Reference to a national code

Ref country code: FI

Ref legal event code: PCE

Owner name: VIVO MOBILE COMMUNICATION CO., LTD.

REG Reference to a national code

Ref country code: GB

Ref legal event code: 732E

Free format text: REGISTERED BETWEEN 20220224 AND 20220302

REG Reference to a national code

Ref country code: NL

Ref legal event code: PD

Owner name: VIVO MOBILE COMMUNICATION CO., LTD.; CN

Free format text: DETAILS ASSIGNMENT: CHANGE OF OWNER(S), ASSIGNMENT; FORMER OWNER NAME: DOLBY LABORATORIES LICENSING CORPORATION

Effective date: 20220316

REG Reference to a national code

Ref country code: ES

Ref legal event code: PC2A

Owner name: VIVO MOBILE COMMUNICATION CO., LTD.

Effective date: 20220523

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: GB

Payment date: 20220630

Year of fee payment: 20

REG Reference to a national code

Ref country code: BE

Ref legal event code: PD

Owner name: VIVO MOBILE COMMUNICATION CO., LTD.; CN

Free format text: DETAILS ASSIGNMENT: CHANGE OF OWNER(S), ASSIGNMENT; FORMER OWNER NAME: DOLBY LABORATORIES LICENSING CORPORATION

Effective date: 20220620

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: NL

Payment date: 20220715

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: TR

Payment date: 20220804

Year of fee payment: 20

Ref country code: SE

Payment date: 20220714

Year of fee payment: 20

Ref country code: IT

Payment date: 20220712

Year of fee payment: 20

Ref country code: FI

Payment date: 20220809

Year of fee payment: 20

Ref country code: ES

Payment date: 20220901

Year of fee payment: 20

Ref country code: DK

Payment date: 20220809

Year of fee payment: 20

Ref country code: DE

Payment date: 20220608

Year of fee payment: 20

Ref country code: AT

Payment date: 20220725

Year of fee payment: 20

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: FR

Payment date: 20220709

Year of fee payment: 20

Ref country code: BE

Payment date: 20220718

Year of fee payment: 20

REG Reference to a national code

Ref country code: AT

Ref legal event code: PC

Ref document number: 341923

Country of ref document: AT

Kind code of ref document: T

Owner name: VIVO MOBILE COMMUNICATION CO., LTD., CN

Effective date: 20221018

PGFP Annual fee paid to national office [announced via postgrant information from national office to epo]

Ref country code: CH

Payment date: 20220802

Year of fee payment: 20

P01 Opt-out of the competence of the unified patent court (upc) registered

Effective date: 20230526

REG Reference to a national code

Ref country code: DE

Ref legal event code: R071

Ref document number: 60308876

Country of ref document: DE

REG Reference to a national code

Ref country code: DK

Ref legal event code: EUP

Expiry date: 20230806

REG Reference to a national code

Ref country code: NL

Ref legal event code: MK

Effective date: 20230805

REG Reference to a national code

Ref country code: CH

Ref legal event code: PL

REG Reference to a national code

Ref country code: BE

Ref legal event code: MK

Effective date: 20230806

REG Reference to a national code

Ref country code: ES

Ref legal event code: FD2A

Effective date: 20230828

REG Reference to a national code

Ref country code: GB

Ref legal event code: PE20

Expiry date: 20230805

REG Reference to a national code

Ref country code: AT

Ref legal event code: MK07

Ref document number: 341923

Country of ref document: AT

Kind code of ref document: T

Effective date: 20230806

REG Reference to a national code

Ref country code: SE

Ref legal event code: EUG

PG25 Lapsed in a contracting state [announced via postgrant information from national office to epo]

Ref country code: GB

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20230805

Ref country code: ES

Free format text: LAPSE BECAUSE OF EXPIRATION OF PROTECTION

Effective date: 20230807