Multi channel audio compressor

The spatially aware multi-channel audio compressor addresses the challenge of preserving spatial integrity and avoiding dynamic artifacts in large-scale sound systems by adjusting sidechain weights based on loudspeaker distances and angles, ensuring balanced and immersive audio experiences.

WO2026017755A1PCT designated stage Publication Date: 2026-01-22L-ACOUSTICS
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/EP2025/070389
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-07-17
Filing Date
2025-07-16
Publication Date
2026-01-22

AI Technical Summary

Technical Problem

Multi-channel compression in large-scale sound systems faces challenges in preserving the spatial integrity of individual sound objects while avoiding dynamic artifacts associated with channel linking, particularly in immersive audio where unlinked compression disrupts sound localization and fully linked compression introduces temporal incoherence.

Method used

A spatially aware multi-channel audio compressor that adjusts sidechain weights based on the distance and angle between loudspeakers, using a sidechain gain matrix with weights that decrease with increasing distance or angle, and incorporates a pre-processing function to prevent phase interactions.

Benefits of technology

Preserves the spatial integrity of sound objects and avoids dynamic artifacts by optimizing the sidechain matrix based on loudspeaker positions, ensuring balanced and immersive audio experiences across large-scale systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure EP2025070389_22012026_PF_FP_ABST
    Figure EP2025070389_22012026_PF_FP_ABST
Patent Text Reader

Abstract

A multi-channel audio compressor (100) comprises: inputs for receiving N input audio signals I(i) (111, 112, 113, 114), with i=1 to N; a preprocessing function (120) for generating respective N pre-processed audio signals from the N input audio signals; a sidechain gain matrix (130) for generating N sidechain audio signals from the N pre-processed audio signals by applying a set of weights W(i,j), with i=1 to N and j=1 to N; a set of N mono-channel compressors (141, 142, 143, 144) for generating N output audio signals (151, 152, 153, 154) for N corresponding loudspeakers L(i), with i=1 to N, wherein each mono-channel compressor (141, 142, 143, 144) generates a respective output audio signal O(i) (151, 152, 153, 154) for loudspeaker L(i) from a corresponding input audio signal I(i) (111, 112, 113, 114) and a corresponding sidechain audio signal S(i); wherein a weight W(i,j) applied to a pre-processed audio signal P(j) contributing to a sidechain audio signal S(i) is adjusted based at least on a distance D(i,j) and / or a angle A(I,j) between the loudspeakers L(i) and L(j).
Need to check novelty before this filing date? Find Prior Art

Description

MULTI CHANNEL AUDIO COMPRESSORTECHNICAL FIELD

[0001] Various example embodiments relate generally to a multi-channel audio compressor and an associated method.BACKGROUND

[0002] In stereo Dynamic Range Compression (DRC), a prevalent method to ensure a consistent stereo image and balanced inter-aural loudness is through ‘linking’ the left and right channels. This approach counters the challenges posed by unlinked compression, where separate mono-channel compressors for each channel can disrupt the stereo balance. Specifically, in unlinked compression, differing reactions of each channel to the compression threshold can lead to an altered stereo image, as one channel may be compressed while the other remains unaffected. In contrast, linked compression uses a shared sidechain signal, typically an average or sum of both channels, to drive the monochannel compressors. This technique ensures uniform compression across both channels, preserving the original loudness differences and maintaining the stereo effect. This simple method is shown to enhance speech intelligibility and effectively preserves the intended stereo image.

[0003] In stereo recordings, the left and right channels are typically similar: most elements of the mix will go through both. Therefore, the dynamics in the two channels are similar, and linked compression generally behaves well. However, for object-based immersive and spatial audio, the effectiveness of linked compression is limited. Most spatial panning algorithms aim to render each sound object on a selected few loudspeakers, to maximize spatial unmasking and reduce precedence effects. Therefore, each loudspeaker feed will feature independent signals with different dynamics. Additionally, in a live context, the scale of speaker systems for immersive audio typically exceeds that of stereo systems. So, it is common for two uncorrelated sounds with different dynamics to be separated by a large physical distance.

[0004] Attempting to naively link the stereo channels in such cases could yield perceptible discrepancies in the dynamic behaviour as illustrated by FIG. 1.

[0005] FIG. 1 illustrates the dynamic artifacts due to propagation delays generated by linked compression with immersive audio contents.

[0006] In this example, two speakers 210, 220 are part of a large-scale immersive sound system, separated by a distance d. Speaker 1 plays a kick drum with a sharp attack (“kick channel”), and speaker 2 plays a sustained droning synthetizer (“synth channel”).

[0007] Each channel goes through a mono-channel compressor that reacts to the sum of all the channels. This is the multichannel equivalent of stereo linking. This setup can be described as “fully” linked, since each compressor is equally influenced by the collective input from all channels.

[0008] This causes the “synth” channel to visibly duck, in line with the dynamics of the channel “kick”. In FIG. 1 , a listener at position Pos2 (equidistant from both speakers) will hear the intended effect. However, a listener at position Pos1 will first hear the kickcoming from speaker 1 , and the synth reacting to the kick with a delay t « — , u0being theV0 speed of sound. Likewise, a listener at position Pos3 will first hear the synth “ducking”, then the kick with some delay t.

[0009] Listening tests show that when the distance between two linked speakers exceeds approximately 8 meters, this delayed response, or "pumping" effect, becomes markedly noticeable, corresponding to a maximum acceptable time offset of about 20-25 milliseconds at the extreme lateral positions. This problem cannot be solved by delaying signals before their summation in the sidechain for specific channels as this only solves the issue for one listening position, but exacerbates the problem for others. Thus, while unlinked compression can disrupt sound object localization, fully linked compression introduces temporal incoherence in dynamic effects.

[0010] Multi-channel compression in large-scale sound systems is challenging as the spatial integrity of individual sound objects need to be preserved while avoiding the dynamic artifacts associated with channel linking.SUMMARY

[0011] The scope of protection is set out by the independent claims. The embodiments, examples and features, if any, described in this specification that do not fall under the scope of the protection are to be interpreted as examples useful for understanding the various embodiments or examples that fall under the scope of protection.

[0012] According to a first aspect, a multi-channel audio compressor is disclosed. This multi-channel audio compressor is a spatially aware multi-channel audio compressor. This multi-channel audio compressor is configured to compress a plurality of mono-channel audio signals for reproduction on a set of loudspeakers having a spatial configuration. The multi-channel audio compressor comprises: inputs for receiving N input audio signals l(i), with i=1 to N; a preprocessing function for generating respective N pre-processed audio signals from the N input audio signals; a sidechain gain matrix for generating N sidechain audio signals from the N pre-processed audio signals by applying a set of weights W(i,j), with i=1 to N and j=1 to N; a set of N mono-channel compressors for generating N outputaudio signals for N corresponding loudspeakers L(i), with i=1 to N, wherein each monochannel compressor generates a respective output audio signal O(i) for loudspeaker L(i) from a corresponding input audio signal l(i) and a corresponding sidechain audio signal S(i); wherein a weight W(i,j) applied to a pre-processed audio signal P(j) contributing to a sidechain audio signal S(i) is adjusted based on at least one of a distance D(i,j) and an angle A(l,j) between the loudspeakers L(i) and L(j).

[0013] Each of the weights W(i,j) may vary as a function of the distance D(i,j) such that the weight W(i,j) decreases when the distance increases.

[0014] Each of the weights W(i,j) may vary as a function of the distance D(i,j) when the distance D(i,j) is below a distance ceiling. The distance ceiling may be the same for all the weights W(i,j).

[0015] Each of the weights W(i,j) may decrease when the distance D(i,j) increases based on a distance gradient when the distance is below the distance ceiling. The distance gradient may be the same for all the weights W(i,j).

[0016] The weight W(i,j) may be inversely proportional to the distance D(i,j) between the loudspeakers L(i) and L(j).

[0017] Each of the weights W(i,j) may vary as a function of the angle A(i,j) such that the weight W(i,j) decreases when the angle increases, preferably when the angle is below the angle ceiling.

[0018] Each of the weights W(i,j) may vary as a function of the angle A(i,j) when the angle A(i j) is below an angle ceiling. The angle ceiling may be the same for all the weights W(i,j).

[0019] The weight W(i,j) may be inversely proportional to the angle A(l,j) between the loudspeakers L(i) and L(j).

[0020] Each of the weights W(i,j) may decrease when the angle A(i,j) increases based on an angle gradient. The angle gradient may be the same for all the weights W(i,j).

[0021] The multi-channel audio compressor may comprise a downmix function applied to several or all of the N output audio signals of the mono-channel compressors to derive a subwoofer signal.

[0022] The pre-processing function may comprise a user-configured filter applicable to each input audio signal l(i) to generate a corresponding pre-processed audio signal P(i).

[0023] The pre-processing function may comprise a rectification function configured to prevent phase interactions when the audio signals are combined in the sidechain gain matrix. The rectification function may be one of: a square function, an absolute value, or a clipping function applied on the filtered input audio signal (i).

[0024] Each of the sidechain audio signals S(i) may be generated from one or morecontributing pre-processed audio signals that are combined by a combination function applying the set of weights W(i,j). The combination function may include a weighted sum, a weighted average, or a weighted maximum.

[0025] According to a second aspect, an audio system is disclosed. The audio system may comprise a multi-channel audio compressor according to the first aspect and weight computation means configured to compute each of the weights W(i,j) applied by the sidechain gain matrix.

[0026] In embodiments, the weight computation means are configured to obtain speaker spatial configuration data, the speaker spatial configuration data including (a) either respective spatial positions of the loudspeakers or (b) the distances D(i,j) and / or angles A(i,j) between each pair of loudspeakers L(i) and L(j).

[0027] The audio system may further comprise a user interface comprising at least one user interface element for adjusting at least one parameter of a weighting function applied by the weight computation means for computing the weights W(i,j) based at least on the distance D(i,j) and / or the angle A(i,j) between the loudspeakers L(i) and L(j).

[0028] In embodiments, the at least one parameter comprises a gradient and / or a ceiling, wherein the weight computation means are configured to compute each of the weights W(i,j) as a function of the gradient and / or ceiling.

[0029] The audio system may further comprise a source processing block, wherein: the source processing block is configured to receive source audio signals and to apply processing to the received source audio signals; the multi-channel spatial compressor is configured to receive the processed source audio signals and to generate, for each or at least one processed source audio signal, a respective output audio signal by compressing individually each or the at least one processed source audio signal.

[0030] The audio system may further comprise a downmix function configured to generate an audio signal for a subwoofer by performing a summation of some or all of the output audio signals at the output of the mono-channel compressors of the multi-channel audio compressor.

[0031] According to a third aspect, a method comprises: receiving N input audio signals l(i), with i=1 to N; preprocessing the N input audio signals to generate respective N pre-processed audio signals; applying a sidechain gain matrix for generating N sidechain audio signals from the N pre-processed audio signals based on a N by N matrix of weights W(i,j), with i=1 to N and j=1 to N; generating, by a set of N mono-channel compressors, N output audio signals for N corresponding loudspeakers L(i), with i=1 to N, wherein each mono-channel compressor generates a respective output audio signal O(i) for loudspeaker L(i) from a corresponding input audio signal l(i) and a corresponding sidechain audio signalS(i); wherein a weight W(i,j) applied to a pre-processed audio signal P(j) contributing to a sidechain audio signal S(i) is adjusted based on at least one of a distance D(i,j) and an angle A(i,j) between the loudspeakers L(i) and L(j).

[0032] The additional technical features related to the multi-channel audio compressor previously described are also applicable to the method described above.

[0033] The multi-channel audio compressor according to the first aspect may comprise means for performing the method according to the second aspect. The means may be adapted for performing one or more or all steps of the method according to the second aspect. The means may include at least one processor and at least one memory storing instructions that, when executed by the at least one processor, cause the apparatus to perform one or more or all steps of a method according to the second aspect. The means may include circuitry (e.g., processing circuitry) to perform one or more or all steps of a method according to the second aspect.

[0034] According to another aspect, a computer program comprises instructions that, when executed by an apparatus, cause the multi-channel audio compressor to perform one or more or all steps of a method according to the second aspect. The instructions may cause the multi-channel audio compressor to perform one or more or all steps of a method according to the second aspect.BRIEF DESCRIPTION OF THE DRAWINGS

[0035] Example embodiments will become more fully understood from the detailed description given herein below and the accompanying drawings, which are given by way of illustration only and thus are not limiting of this disclosure.

[0036] FIG. 1 , already described, illustrates the limitations of fully linked Dynamic Range Compression (DRC) according to an example.

[0037] FIG. 2A is a block diagram of a multi-channel audio compressor according to an example.

[0038] FIG. 2B is a block diagram of an audio system according to an example.

[0039] FIG. 3A and 3B are examples of pre-processing functions and rectification functions that may be used in the multi-channel audio compressor.

[0040] FIG. 4 is a user interface for configuring a spatially aware multi-channel audio compressor according to an example.

[0041] FIG. 5 is a block diagram of an audio system according to an example.

[0042] FIG. 6 illustrate an example use case.

[0043] FIG. 7 is a flowchart of a method for audio compression according to an example.

[0044] FIG. 8 is a block diagram illustrating an exemplary hardware structure of a computing device according to an example.

[0045] It should be noted that these drawings are intended to illustrate various aspects of systems, devices, methods and structures used in example embodiments described herein. The use of similar or identical reference numbers in the various drawings is intended to indicate the presence of a similar or identical element or feature.DETAILED DESCRIPTION

[0046] Detailed example embodiments are disclosed herein. However, specific structural and / or functional details disclosed herein are merely representative for purposes of describing example embodiments and providing a clear understanding of the underlying principles. However, these example embodiments may be practiced without these specific details. These example embodiments may be embodied in many alternate forms, with various modifications, and should not be construed as limited to only the embodiments set forth herein. In addition, the figures and descriptions may have been simplified to illustrate elements and I or aspects that are relevant for a clear understanding of the present invention, while eliminating, for purposes of clarity, many other elements that may be well known in the art or not relevant for the understanding of the invention.

[0047] The multi-channel audio compressor for dynamic range compression and associated compression method that addresses the challenges of multi-channel compression in large-scale sound systems is disclosed. The multi-channel audio compressor focuses on preserving the spatial integrity of individual sound objects while avoiding the dynamic artifacts associated with channel linking.

[0048] The compression method is adaptable to any number of input and output channels and relies on a procedural configuration of the sidechain matrix that considers the physical positions of loudspeakers to optimize the effect. In embodiments, the distances (in a distance-based configuration of the computation of the weights applied by the sidechain matrix) and / or angles (in an angle-based configuration of the computation of the weights applied by the sidechain matrix) between pairs of loudspeakers are used to adjust the weights of the sidechain matrix. Thus the multi-channel audio compressor is also referred to herein as the spatial compressor or spatially-aware compressor.

[0049] The terms “loudspeaker” or “speaker” are used here interchangeably.

[0050] In embodiments, two high-level parameters that allow users to customize the sidechain matrix in an intuitive and efficient way are used.

[0051] A first high level parameter (hereafter the linking range) is used as a ceiling: the ceiling being a distance ceiling in a distance-based configuration, the ceiling being an angle ceiling in an angle-based configuration. A same ceiling may be used for all channelsand / or for all weights of the sidechain matrix.

[0052] A second high level parameter (hereafter the linking amount) is used as gradient for adjusting the decrease ofthe weight with respect to the distance, or respectively the angle. A same gradient may be used for all channels and / or for all weights of the sidechain matrix.

[0053] FIG. 2A shows a block diagram of a multi-channel audio compressor 100 configured for compressing a plurality of mono-channel audio signals for reproduction on a set of loudspeakers having a spatial configuration according to an example.

[0054] There may be any number of input and output channels (and same number of input and output channels, as there is one mono-channel signal per speaker) and dimensions of the sidechain gain matrix may be adapted to any number of input and output channels. In this example, N=4 input channels and N=4 output channels are shown.

[0055] The multi-channel audio compressor 100 receives N input audio signals l(i), i=1 to N (see 111 , 112, 113 and 114 in FIG. 2A), where each input audio signal corresponds to an audio channel, N being an integer. Preferably, N is strictly greater than two because, even if the multi-channel can work for a stereo configuration (when N=2), this configuration does not offer a good immersive and spatial audio experience.

[0056] The multi-channel audio compressor 100 includes a pre-processing function 120, a sidechain gain matrix 130 applying weights W(i,j) and a set of N mono-channel compressors 141 to 144 configured to perform Dynamic Range Compression (DRC) to generate respective output audio signals O(i), i=1 to N (see 151 , 152, 153 and 154 in FIG. 2A), where each output audio signal corresponds to an audio channel and is to be fed to a respective loudspeaker L(i).

[0057] The pre-processing function 120 is adapted for generating respective N pre- processed audio signals from the N input audio signals l(i). A user-configured filter may be applied to each input audio signal l(i) to generate a corresponding pre-processed audio signal P(i) (which can also be called a “filtered signal”). Further a rectification function may be applied to prevent phase interactions (particularly phase cancellation) when the audio signals are combined in the sidechain gain matrix 130. Rectification may be done by squaring the filtered signal (this implies taking the square root after the sidechain matrix has combined the signals after application ofthe weights), taking the absolute value, or clipping. The result should be strictly positive. Each of the pre-processed audio signal P(i) may thus be a filtered and / or rectified audio signal.

[0058] The sidechain gain matrix 130 is adapted for generating N sidechain audio signals from the N pre-processed audio signals P(i) by applying a set of weights W(i,j), with i=1 to N and j=1 to N. Each of the sidechain audio signals S(i) is generated from one ormore contributing pre-processed audio signals that are combined by a combination function with weighting. Example combination functions may include a weighted sum, a weighted average, or a weighted maximum. The weighting is based on the respective physical positions of the loudspeakers.

[0059] In embodiments, the weight W(i,j) applied to a pre-processed audio signal P(j) for contributing to a sidechain audio signal S(i) is automatically adjusted based on the distance D(i,j) and / or angle A(l,j) between the loudspeakers L(i) and L(j).

[0060] The weighting may for example be inversely proportional to the distance D(i,j) and / or angle A(l J) between the loudspeakers L(i) and L(j).

[0061] The angle between the loudspeakers L(i) and L(j) may be an angle in a two- dimensional plan in which the loudspeakers are physically located. The angle may be relative to a user-specified origin, corresponding for example to a central position for an audience. The angle may for example be specified in degrees. The origin for the definition of the angle may be a point in 3D space (for example a centre point in the audience space) that can be set automatically or set by the user. The angles between speakers are measured relative to this origin.

[0062] In embodiments, the shape of the weighting function can be adjusted via one or more linking parameters, including at least one of: a ceiling and a gradient. The ceiling and gradient may be the same for all the weights.

[0063] For example, the ceiling may be an angle ceiling or a distance ceiling. For example, a weight W(i,j) may vary as a function of the distance D(i,j), but only when the distance D(i,j) is below a distance ceiling DT such that W(i,j) = 0 when D(i,j) > DT. For example, a weight W(i,j) may vary as a function of the angle A(i,j), but only when the angle A(i,j) is below an angle ceiling AT such that W(i,j) = 0 when A(i,j) > AT. This allows to define a linking range between two loudspeakers L(i) and L(j). This linking range may be defined as the distance (or respectively the angle) beyond which loudspeakers cannot interact.

[0064] The gradient may be a distance gradient applied to the distance D(i,j) and / or an angle gradient applied to the angle A(i,j). For example, each of the weights W(i,j) decreases when the distance D(i,j) increases based on a distance gradient. For example, each of the weights W(i,j) may decrease when the angle A(i,j) increases based on an angle gradient. Each of these gradients allows to define a linking amount between two loudspeakers L(i) and L(j). The linking amount controls the contribution of adjacent loudspeakers. A low linking amount leads to negligible contribution from nearby speakers, while a high linking amount results in a partially linked behaviour, where all channels within the linking range contribute equally.

[0065] The contributions of other channels to a given channel / may be definedbased on a combination function, being a weighted sum, a weighted average or a weighted maximum. For example, for a distance-based configuration, the sidechain signal S(i) that drives the mono-channel compressor on channel i may be determined based on one of equations (1), (2) and (3):where P(k) is the kthchannel after pre-processing, N is the number of channels, dklis the distance between the loudspeakers associated with channel i and k, and wa ff( is the weighting function parametrised by a, the linking range, and p, the linking amount.

[0066] The linking range (i.e., the distance ceiling for a distance-based configuration) can be set for example to 4, 5, 8 or up to 10 meters by default to guarantee acceptable dynamic behaviour for the audience especially for listeners who would be located closed to one of the loudspeakers. This constraint ensures the time of arrival difference stays within 30ms. In the case where the listening area is defined and smaller, a higher ceiling may be defined still guaranteeing an acceptable time of arrival difference for everyone.

[0067] For an angle-based configuration dklis replaced by dkl, dklbeing the angle between the loudspeakers associated with channel i and k (relative to the user-specified origin). The linking range is then specified as an angle ceiling.

[0068] Hybrid configurations based on both a distance-based configuration and angle-based configuration may be used.

[0069] Examples of weighting functions are provided below for a distance-based configuration when using a weighted sum as combination function. These functions can be easily adapted for an angle-based configuration and / or when using another combination function, such as a weighted average or a weighted maximum.

[0070] For a distance-based configuration using a weighted sum, the combination function that gives the sidechain signal S(p) that drives the mono-channel compressor on channel p may be written as:where P(fc) is the kthchannel after pre-processing, N is the number of channels, dpkis the distance between the loudspeakers associated with channel p and k, and wajff(x) is the weighting function parametrised by a, the linking range, and p, the linking amount.

[0071] For an angle-based configuration, dvkis replaced by 6^; the angle between the loudspeakers associated with channel p and k (relative to the user-specified origin).

[0072] In embodiments, the weighting function wa ff(x) satisfies the conditions A, B, C expressed as follows:A. = 1 (The contribution weight of a speaker to itself (d = 0) is always 1)B. If x £ [0, a], waJ?(x) = 0, (Speakers outside of the linking range do not contribute)C. If G [0, a], ^waJ?(x) < 0, (The weight decreases with the distance or angle x over the specified linking range).

[0073] A low linking amount results in minimal contribution from nearby speakers, while a high linking amount should result in a partially linked behaviour, where all channels within range contribute equally. Thus the linking amount and linking range allow to adjust the level of contribution of all speakers one to each other’s by adjusting only one parameter.

[0074] Below are some examples of weighting functions that satisfy the conditions A, B and C.

[0075] Example 1: Linear weighting functionWe can define w(0) = 1 and w(a) = p, then use linear interpolation to compute w(x) for values between 0 and a:For a strictly positive linking range a > 0, and a linking amount p G [0,1],This weighting function’s advantage is its simplicity.

[0076] Example 2: Inverse Power weighting functionFor a strictly positive linking range a > 0, and a linking amount p G [0,1],This weighting function works well for a distance-based linking mode, as it enables some common physically based attenuation functions, such as the inverse-square law if p = 0.

[0077] Example 3: Exponential weighting function( 0, if x [0, a] wa,p (x) = ] --(1-0)crnq(e « if x G [0, a]For a strictly positive linking range a, and a linking amount p G [0,1],This weighting function yields a linear profile in the log domain, which can result in a more intuitive user experience (since loudness perception is logarithmic).

[0078] Example 4: Trigonometric weighting functionFor a strictly positive linking range a ]0, 2TT], and a positive linking amount p [0,1], This weighting function is well-suited for an angle-based linking mode (i.e., x = 0 ).

[0079] The above illustrates some example weighting functions that satisfy the 3 outlined conditions A, B and C. In practice, a weighting function may combine angles and distances, and even incorporate some proprietary metadata about speaker usage. The aim is to optimize the user experience, i.e. to let users achieve good results with the least effort, by adjusting the linking amount and linking range.

[0080] The compression method addresses the challenges of multi-channel compression in large-scale sound systems, focusing on preserving the spatial integrity of individual sound objects while avoiding the dynamic artifacts associated with channel linking. This compression method is adaptable to any number of channels and relies on a procedural configuration of the sidechain matrix that considers the physical positions of loudspeakers to optimize the effect. The configuration of the sidechain matrix may be performed based on only two high-level parameters applicable to all weights that allow users to customize the sidechain matrix in an intuitive and efficient way.

[0081] FIG. 2B is a block diagram of an audio system 135 according to an example.

[0082] The audio system 135 comprises a multi-channel audio compressor 100, for example a multi-channel audio compressor as described by reference to FIG. 2A or a multichannel audio compressor according to any example disclosed herein.

[0083] The audio system 135 comprises weight computation means 131. The weight computation means 131 are configured to compute the weights W(i,j) applied by the sidechain gain matrix 130 of the multi-channel audio compressor 100. The weights W(i,j) may be computed using a weighting function based at least on the distance D(i,j) and / or the angle A(i,j) between the loudspeakers L(i) and L(j). Any example of weighting function disclosed herein may be used. The weight computation means 131 may be implemented by software and / or hardware.

[0084] The weight computation means 131 may be configured to obtain the distance D(i,j) and / or the angle A(i,j) between each pair of loudspeakers L(i) and L(j) to compute the weights W(i,j) applied by the sidechain gain matrix 130. The weight computation means (131) may be configured to receive speaker spatial configuration data. The speaker spatial configuration data may include spatial positions of the loudspeakers from which the distances D(i,j) and / or angles A(i,j) between each pair of loudspeakers L(i) and L(j) may be computed by the weight computation means (131). Alternatively, the received speakerspatial configuration data may include the distances D(i,j) and / or angles A(i,j) between each pair of loudspeakers L(i) and L(j).

[0085] The audio system 135 may further comprise a user interface 132. The user interface 132 may comprise at least one user interface element for adjusting at least one weighting function parameter of the weighting function applied by the weight computation means 131. The weight computation means 131 are configured to compute the weights using the weighting function. The user interface 132 may be implemented for example as disclosed by reference to FIG. 4.

[0086] In embodiments, the at least one weighting function parameter may comprise a gradient and / or a ceiling, wherein the weight computation means 131 are configured to compute each of the weights W(i,j) as a function of the gradient and / or the ceiling.

[0087] In embodiments, the weight computation means 131 are configured to compute each of the weights W(i,j) as a function of the distance D(i,j) such that the weight W(i,j) decreases when the distance D(i,j) increases when the distance is below the distance ceiling, and the at least one weighting function parameter comprises the distance gradient and / or the distance ceiling.

[0088] In embodiments, the weight computation means 131 are configured to compute each of the weights W(i,j) as a function of the angle A(i,j) such that the weight W(i,j) angle A(i,j) increases based on an angle gradient when the angle A(i,j) is below an angle ceiling, and the at least one weighting function parameter comprises the angle gradient and / or the angle ceiling.

[0089] The audio system 135 may comprise an interface 133 (for example a user interface, an application program interface, a hardware interface or any other suitable means adapted for inputting data to the weight computation means 131) for providing speaker spatial configuration data to the weight computation means 131.

[0090] In embodiments, the user interface 132 comprises at least one user interface element for selecting a weighting function to be applied by the weight computations means 131.

[0091] The user interface 132 allows to dynamically adjust the weighting function parameter(s) during audio playback by the speakers having a given spatial configuration (i.e., the spatial configuration may be fixed, non-varying).

[0092] FIG. 3A and 3B illustrate example embodiments where a pre-processing function 120 and a rectification function 150 are applied.

[0093] In both FIG. 3A and 3B, the pre-processing function 120 is a high-pass filter (that may be different / adapted for each channel), which enables the mono-compressors tobe less reactive to low-frequency components. When a rectification function is applied, it is important to put the high pass filter before the rectification function (i.e. before any nonlinear operation), because such filters can produce negative values even if the input is strictly positive. Thus, by putting them first, we ensure that the sidechain signals sent to the compressors remain strictly positive.

[0094] In FIG. 3A, the rectification function 150 first consists in squaring the signals previously filtered by the pre-processing function 150 before sending them to the gain matrix 130; then taking the square-root of each signal generated by the gain matrix before sending them to the mono-compressors. When rectifying by squaring the signals, the outputs of the sidechain gain matrix are power signals, not amplitude signals. So, it is recommended to take the square root to convert back to an amplitude signal. In FIG. 3B, the rectification function 150 consist in taking the absolute value of each signal previously filtered by the pre-processing function 150 before sending them to the gain matrix 130.

[0095] FIG. 4 shows an example of a user interface 300 for configuration of audio parameters for a multi-channel audio compressor 100.

[0096] The user interface 300 includes user interface elements to adjust values of various audio parameters, the audio parameters including at least one parameter of the weighting function, for example the linking amount and / or linking range as described herein.

[0097] The linking range may be expressed in meters in a distance-based configuration of the multi-channel audio compressor. The linking range may be expressed in degrees in an angle-based configuration of the multi-channel audio compressor. The linking amount may be expressed in % in a distance-based or angle-based configuration of the multi-channel audio compressor.

[0098] Other dynamic range compression parameters such as sidechain high-pass frequency, threshold, ratio, attack time, release time, make-up, mix may be adjusted manually by a user.

[0099] As illustrated by FIG. 4, the user interface 300 may include user interface elements to adjust per-channel (or per-speaker as there is one channel each output audio signal generated) threshold (e.g., in dB) and per-channel / speaker make-up gain (e.g., in dB) to be applied by the respective mono channel compressors 141-144.

[0100] The threshold (i.e. compression threshold) corresponds to the level of input signal at which a mono-channel compressor 141-144 begins to reduce gain. Audio above the threshold will be compressed by the ratio set, and audio below the threshold is not compressed. An offset may be defined for the threshold: this offset is added to the global threshold value. For example, if the global threshold is -10dB and the threshold offset for channel 1 is +5 dB, the mono-channel compressor 141-144 on channel 1 uses -10 + 5 = -5dB.

[0101] Make-up gain (often simply called 'make-up') refers to a regular gain applied to the signal after compression. It is used to adjust the overall loudness of the compressed signal, in particular to compensate for the loss of level. An offset may be defined for the make-up gain: this offset added to the global make-up value.

[0102] As the linking amount and linking range may result in flattening of the spatial balance (especially with large loudspeaker layouts), the offsets for the threshold and makeup gain of each channel / speaker may be adjusted by a user to correct the behaviour of the multi-channel audio compressor. FIG. 4 shows example threshold offsets and make-up offsets adjusted per speaker.

[0103] Another option, less granular but still convenient, is to provide one threshold offset and make-up offset for each speaker group (frontal, surrounds, heights, etc).

[0104] FIG. 5 is a block diagram of an audio system according to an example. This figure shows signal flow of a strategy for computing the subwoofer feed.

[0105] The audio system 400 includes a multi-channel audio compressor 420 corresponding to the multi-channel audio compressor 100 described by reference to FIG. 2A.

[0106] The audio system 400 may include a source processing block 410 for applying processing to source audio signals 405: for example, panning (e.g., sound objects rendering through algorithms like VBAP (Vector- Based Amplitude Panning) and MDAP (Multiple-Direction Amplitude Panning)), spatialization effects, audio effects (e.g., reverb, delays, other filters), etc.

[0107] At the output of the multi-channel audio compressor 420, a downmix function430 may be added to generate an audio signal 435 (e.g., a mono audio signal) for a subwoofer.

[0108] The downmix function 430 performs a summation of some or all of the output audio signals 425 at the output of the mono-channel compressors (see the mono-channel compressors 141-144 in FIG. 2A) of the multi-channel audio compressor 420.

[0109] Depending on the user’s needs,- Some channels may be excluded from the summation (e.g., height speakers)- Some weighting may be applied via gains before summation, for example such that speakers located physically close to the subwoofer contribute more than speakers physically further away, where the weights may be based on respective distance and / or angle between loudspeakers to achieve such behaviour.

[0110] Special consideration may be given to the feed for the subwoofer. In many multi-channel audio systems, it is common to have at least one subwoofer speaker, whosesignal is derived from a downmix of specific channels (some feeds may be excluded, such as some surround speakers and / or ceiling speakers) to provide support to the rest of the system in the low-frequency band. To ensure cohesive dynamics between the subwoofer and the other loudspeakers, the subwoofer feed signal 435 may be generated by a monodownmix function 430 added after the multi-channel compressor (in such a case the subwoofer does not have a mono channel compressor but the subwoofer feed signal 435 is generated from some or all of the outputs 425 of the mono-channel compressors 141- 144 of the other audio channels). Performing the downmix summation after the signals are compressed guarantees that the dynamic behaviour of the subwoofer matches the rest of the system.

[0111] The ‘spatially-aware’ multi-channel audio compressors described herein significantly reduces the user's workload in achieving an optimal sidechain matrix.

[0112] It effectively maintains the spatial image of sound objects rendered through algorithms like VBAP (Vector-Based Amplitude Panning) and MDAP (Multiple-Direction Amplitude Panning), by means of the linking range and linking amount parameters. It avoids dynamic artifacts in large-scale speaker systems due to propagation delays, by means of the linking range parameter. It allows for individual channel adjustments to maintain the spatial balance of the final mix. It is efficient, as the computation of sidechain signals can be parallelized, and the configuration of the sidechain matrix does not require frequent updates.

[0113] Example use cases are described below.

[0114] Example use case #1 : Live Concert

[0115] In this example, the multi-channel compression system is configured for a large-scale concert hall with an extensive 32-channel audio setup. During a live performance, the music transitions from a quiet solo by the singer to a full band accompaniment. The mixing engineer must be able to quickly manage this dynamic shift. By simply adjusting global compression parameters such as the compression threshold, ratio, and makeup gain, the engineer ensures that the subtle nuances of the solo performance are clearly audible to the audience, without the following segment being too loud.

[0116] However, if the multi-channel audio compressor was fully linked, dynamic artefacts (such as those illustrated by reference to FIG. 1) would appear. Likewise, if it was fully unlinked, the spatialization of sound sources coming through multiple speakers would be compromised. The system's linking parameters allow the mixing engineer to fine-tune the balance between the preservation of spatial audio cues, and the dynamic behaviour ofthe mix. This balance is particularly important here due to the scale of the system, where a lot of speakers will be separated by a large distance (>8 meters).

[0117] The result is the loudest peaks of the mix being kept to a safe level without compromising on the spatial integrity of the mix.

[0118] In another scenario, the multi-channel compression system may be applied to a large concert setting, featuring a potent frontal speaker system complemented by less powerful surround speakers. The concert's musical content may be characterized by heavy, impactful sounds, notably with punchy drum beats that dominate the audio landscape.

[0119] In such a scenario, by adjusting the threshold and make-up gain offsets, the mix engineer can control the energy emanating from the high-powered frontal speaker system. This adjustment ensures that the frontal speaker system's pinpoint accuracy in delivering the intense drum transients is not compromised. Simultaneously, it prevents the surround content from becoming overly prominent, thus maintaining a balanced and immersive audio experience. The multi-channel compression system's design and functionality allow for these nuanced adjustments, ensuring that even in the midst of a high- energy concert, the spatial image and dynamic texture of the music are preserved without introducing any unwanted dynamic artifacts.

[0120] Example use case #2: Studio Mixing and Mastering

[0121] FIG. 6 illustrate this example use case.

[0122] In the studio setting, particularly for mixing and mastering an immersive audio mix, the multi-channel compression system offers unique capabilities. The linking range and / or linking amount enables dynamic effects, such as controlled pumping effects that add rhythm and depth to the mix. By adjusting these parameters, the mixing engineer can precisely dictate how different sound objects interact with each other.

[0123] In the mastering phase, the focus shifts towards optimizing the overall loudness of the mix. To achieve this, the mixing engineer employs a large compression ratio, such that the parts of the mix exceeding the compression threshold are highly compressed. This enables a significant boost in the make-up gain, effectively increasing the loudness of the final mix. The compression threshold and makeup are adjusted perceptually to serve the artistic purpose of the mix and / or to match a target loudness (often measured in LUFS). The system's capability to retain some or all of the relative level differences between channels (by adjusting the linking amount) ensures that the immersive quality of the mix is not compromised.

[0124] This is illustrated by FIG. 6. The upper part of the figure shows the audio levels before the multi-channel audio compressor (i.e., before the sidechain matrix and the mono-compressors of the multi-channel audio compressor) for a plurality of channels #1 to#12 showing the effect of the linking range and / or linking amount.

[0125] The middle part of the figure shows the audio levels after compression by the mono-compressors for a plurality of channels #1 to #12.

[0126] The lower part of the figure shows the audio levels after compression by the mono-compressors for a plurality of channels #1 to #12 when a make-up gain is applied.

[0127] This figure shows that the dynamic range of the overall mix has been reduced when comparing the audio signals before and after the multi-channel audio compressor while maintaining the relative loudness differences between channels, preserving the spatial balance, illustrating the above mastering approach for loudness optimization.

[0128] Example use case #3: Home Theatre System

[0129] A common issue associated with watching TV programs at home is the fluctuation in loudness between different segments, such as dialogue, advertisements, and music, or even when switching channels. DRC is effective in addressing such fluctuations and the audio systems described herein supports any number of channels and thus can accommodate a variety of systems.

[0130] In a home theatre system, all loudspeakers are likely to be within 8 meters of each other, so the linking range and amount can both be set to high values. Loudness fluctuations can be removed while maintaining the spatial image of sound objects and the overall spatial balance of the mix.

[0131] FIG. 7 shows a flowchart of a method for audio compression according to one or more example embodiments. The steps of the method may be implemented by a multi-channel audio compressor according to any example described herein.

[0132] While the steps are described in a sequential manner, the person skilled in the art will appreciate that some steps may be omitted, combined, performed in different order and I or in parallel.

[0133] In step 610, N input audio signals l(i) are received, with i=1 to N;

[0134] In step 620, the N input audio signals are pre-processed to generate respective N pre-processed audio signals.

[0135] In step 630, a sidechain gain matrix is applied for generating N sidechain audio signals from the N pre-processed audio signals based on a N by N matrix of weights W(i,j), with i=1 to N and j=1 to N;

[0136] In step 640, a set of N mono-channel compressors generate respectively N output audio signals for N corresponding loudspeakers L(i), with i=1 to N. Each monochannel compressor generates a respective output audio signal O(i) for loudspeaker L(i)from a corresponding input audio signal l(i) and a corresponding sidechain audio signal S(i);

[0137] A weight W(i,j) applied to a pre-processed audio signal P(j) contributing to a sidechain audio signal S(i) is adjusted based on at least one of the distance D(i,j) and the angle A(l,j) between the loudspeakers L(i) and L(j).

[0138] In embodiments, each of the weights W(i,j) varies as a function of the distance D(i,j) such that the weight W(i,j) decreases when the distance increases. Each of the weights W(i,j) may vary as a function of the distance D(i,j) when the distance D(i,j) is below a distance ceiling. The distance ceiling may be the same for all the weights W(i,j)

[0139] In embodiments, each of the weights W(i,j) decreases when the distance D(i,j) increases based on a distance gradient when the distance is below the distance ceiling. For example, the weight W(i,j) may be inversely proportional to the distance D(i,j) between the loudspeakers L(i) and L(j). The distance gradient may be the same for all the weights W(i,j).

[0140] In embodiments, each of the weights W(i,j) varies as a function of the angle A(i,j) such that the weight W(i,j) decreases when the angle increases, preferably when the angle is below the angle ceiling. Each of the weights W(i,j) may vary as a function of the angle A(i,j) when the angle A(i,j) is below an angle ceiling. The angle ceiling may be the same for all the weights W(i,j).

[0141] In embodiments, each of the weights W(i,j) decreases when the angle A(i,j) increases based on an angle gradient. For example, the weight W(i,j) may be inversely proportional to the angle A(l,j) between the loudspeakers L(i) and L(j). The angle gradient may be the same for all the weights W(i,j).

[0142] It should be appreciated by those skilled in the art that any functions, engines, block diagrams, flow diagrams, state transition diagrams, flowchart and I or data structures described herein represent conceptual views of illustrative circuitry embodying the principles of the invention. Similarly, it will be appreciated that any flow charts, flow diagrams, state transition diagrams, pseudo code, and the like represent various processes.

[0143] Although a flow chart may describe operations as a sequential process, many of the operations may be performed in parallel, concurrently or simultaneously. Also, some operations may be omitted, combined or performed in different order. A process may be terminated when its operations are completed but may also have additional steps not disclosed in the figure or description. A process may correspond to a method, function, procedure, subroutine, subprogram, etc. When a process corresponds to a function, its termination may correspond to a return of the function to the calling function or the main function.

[0144] Each described unit, function, engine, block, step described herein can beimplemented in hardware, software, firmware, middleware, microcode, or any suitable combination thereof.

[0145] When implemented in software, firmware, middleware or microcode, instructions to perform the necessary tasks may be stored in a computer readable medium that may be or not included in a computing device. The instructions may be transmitted over the computer-readable medium and be loaded onto the device. The instructions are configured to cause the device to perform one or more functions disclosed herein. For example, as mentioned above, according to one or more examples, at least one memory may comprise or store instructions, the at least one memory and the instructions may be configured to, with at least one processor, cause the device to perform the one or more functions. Additionally, the processor, memory and instructions, serve as means for providing or causing execution by the device of one or more functions disclosed herein.

[0146] The computing device may be a general-purpose computer and I or computing system, a special purpose computer and I or computing system, a programmable processing device, a machine, etc. The computing device may be or may comprise or may be part of: a user equipment, client device, mobile phone, laptop, computer, data server, computer, cloud-based server, web server, application server, proxy server, etc.

[0147] FIG. 8 illustrates an example embodiment of a computing device 9000. The computing device 9000 may be used for performing one or more functions disclosed herein for a multichannel audio compressor and / or one or more or all steps of any method disclosed herein.

[0148] As represented schematically, the computing device 9000 may comprise at least one processor 9010 and at least one memory 9020. The computing device 9000 may comprise one or more communication interfaces 9040 (e.g. network interfaces for access to a wired I wireless network, including Ethernet interface, WIFI interface, etc) connected to the processor and configured to communicate via wired I non wired communication link(s). The computing device 9000 may comprise user interfaces 9030 (e.g. keyboard, mouse, display screen, etc) connected with the processor. The computing device 9000 may further include one or more media drives 9050 for reading a computer-readable storage medium (e.g. digital storage disc 9060 (CD-ROM, DVD, Blue Ray, etc), USB key 9080, etc). The processor 9010 is connected to each of the other components 9020, 9030, 9040, 9050 in order to control operation thereof.

[0149] The memory 9020 may comprise a random-access memory (RAM), cache memory, non-volatile memory, backup memory (e.g., programmable or flash memories), read-only memory (ROM), a hard disk drive (HDD), a solid-state drive (SSD) or any combination thereof. The ROM of the memory 9020 may be configured to store, amongstother things, an operating system of the computing device 9000 and / or one or more computer program code of one or more software applications. The RAM of the memory 9020 may be used by the processor 9010 for the temporary storage of data.

[0150] The processor 9010 may be configured to store, read, load, execute and / or otherwise process instructions 9070 stored in a computer-readable storage medium 9060, 9080 and I or in the memory 9020 such that, when the instructions are executed by the processor, causes the computing device 9000 to perform one or more or all steps of any method described herein.

[0151] The instructions may correspond to program instructions or computer program code. The instructions may comprise one or more code segments. A code segment may represent a procedure, function, subprogram, program, routine, subroutine, module, software package, class, or any combination of instructions, data structures or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and / or receiving information, data, arguments, parameters or memory contents. Information, arguments, parameters, data, etc, may be passed, forwarded, or transmitted via any suitable technique including memory sharing, message passing, token passing, network transmission, etc.

[0152] When provided by a processor, the functions may be provided by a single dedicated processor, by a single shared processor, or by a plurality of individual processors, some of which may be shared. The term “processor” should not be construed to refer exclusively to hardware capable of executing software and may implicitly include one or more processing circuits, whether programmable or not. A processor or likewise a processing circuit may correspond to a digital signal processor (DSP), a network processor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a System-on-Chips (SoC), a Central Processing Unit (CPU), an arithmetic logic unit (ALU), a programmable logic unit (PLU), a processing core, a programmable logic, a microprocessor, a controller, a microcontroller, a microcomputer, a quantum processor, any device capable of responding to and / or executing instructions in a defined manner and / or according to a defined logic. Other hardware, conventional or custom, may also be included. A processor or processing circuit may be configured to execute instructions adapted for causing the device to perform one or more functions disclosed herein for the device.

[0153] A computer readable medium or computer readable storage medium may be any tangible storage medium suitable for storing instructions readable by a computer or a processor. A computer readable medium may be more generally any storage medium capable of storing and / or containing and / or carrying instructions and / or data. The computer readable medium may be a non-transitory computer readable medium. The term “non- transitory”, as used herein, is a limitation of the medium itself (i.e., tangible, not a signal) asopposed to a limitation on data storage persistency (e.g., RAM vs. ROM).

[0154] A computer-readable medium may be a portable or fixed storage medium. A computer readable medium may comprise one or more storage device like a permanent mass storage device, magnetic storage medium, optical storage medium, digital storage disc (CD-ROM, DVD, Blue Ray, etc), USB key or dongle or peripheral, a memory suitable for storing instructions readable by a computer or a processor.

[0155] A memory suitable for storing instructions readable by a computer or a processor may be for example: read only memory (ROM), a permanent mass storage device such as a disk drive, a hard disk drive (HDD), a solid-state drive (SSD), a memory card, a core memory, a flash memory, or any combination thereof.

[0156] In the present description, the wording "means configured to perform one or more functions" or “means for performing one or more functions” may correspond to one or more functional blocks comprising circuitry that is adapted for performing or configured to perform the concerned function(s). The block may perform itself this function or may cooperate and I or communicate with other one or more blocks to perform this function. The "means" may correspond to or be implemented as "one or more modules", "one or more devices", "one or more units", etc. A “processing unit” may correspond for example to means for performing one or more processing functions. The means may comprise at least one processor and at least one memory including computer program code, wherein the at least one memory and the computer program code are configured to, with the at least one processor, cause a device to perform the concerned function(s).

[0157] The term circuitry may cover digital signal processor (DSP) hardware, network processor, application specific integrated circuit (ASIC), field programmable gate array (FPGA), etc. The circuitry may be or include, for example, hardware, programmable logic, a programmable processor that executes software or firmware, and / or any combination thereof (e.g. a processor, control unit / entity, controller) to execute instructions or software and control transmission and receptions of signals, and a memory to store data and / or instructions.

[0158] Although the terms first, second, etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, a first element could be termed a second element, and similarly, a second element could be termed a first element, without departing from the scope of this disclosure. As used herein, the term "and / or," includes any and all combinations of one or more of the associated listed items.

[0159] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting. As used herein, the singular forms "a,""an," and "the," are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises," "comprising," "includes," and / or "including," when used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0160] While aspects of the present disclosure have been particularly shown and described with reference to the embodiments above, it will be understood by those skilled in the art that various additional embodiments may be contemplated by the modification of the disclosed machines, systems and methods without departing from the scope of what is disclosed. Such embodiments should be understood to fall within the scope of the present disclosure as determined based upon the claims and any equivalents thereof.

Claims

CLAIMS1. A multi-channel audio compressor (100, 420) configured for compressing a plurality of mono-channel audio signals for reproduction on a set of loudspeakers having a spatial configuration, the multi-channel audio compressor (100, 420) comprising: inputs for receiving N mono-channel input audio signals l(i) (111 , 112, 113, 114), with i=1 to N; a pre-processing function (120) for generating respective N pre-processed audio signals P(i) from the N input audio signals l(i) (111 , 112, 113, 114); a sidechain gain matrix (130) for generating N sidechain audio signals from the N pre- processed audio signals by applying a set of weights W(i,j), with i=1 to N and j=1 to N; a set of N mono-channel compressors (141 , 142, 143, 144) for generating N output audio signals for N corresponding loudspeakers L(i), with i=1 to N, wherein each monochannel compressor (141 , 142, 143, 144) generates a respective output audio signal O(i) (151 , 152, 153, 154) for loudspeaker L(i) from a corresponding input audio signal l(i) (111 , 112, 113, 114) and a corresponding sidechain audio signal S(i); wherein a weight W(i,j) applied to a pre-processed audio signal P(j) contributing to a sidechain audio signal S(i) is based at least on a distance D(i,j) and / or an angle A(i,j) between the loudspeakers L(i) and L(j).

2. The multi-channel audio compressor (100, 420) of claim 1 , wherein each of the weights W(i,j) varies as a function of the distance D(i,j) such that the weight W(i,j) decreases when the distance increases.

3. The multi-channel audio compressor (100, 420) of claim 1 or 2, wherein each of the weights W(i,j) varies as a function of the distance D(i,j) when the distance D(i,j) is below a distance ceiling.

4. The multi-channel audio compressor (100, 420) of claim 3, wherein the distance ceiling is the same for all the weights W(i,j).

5. The multi-channel audio compressor (100, 420) of any of claims 1 to 4, wherein each of the weights W(i,j) decreases when the distance D(i,j) increases based on a distance gradient when the distance is below the distance ceiling.

6. The multi-channel audio compressor (100, 420) of any of claims 1 to 5, wherein the weight W(i,j) is inversely proportional to the distance D(i,j) between the loudspeakers L(i)and L(j).

7. The multi-channel audio compressor (100, 420) of any of claims 5 to 6, wherein the distance gradient is the same for all the weights W(i,j).

8. The multi-channel audio compressor (100, 420) of any of claims 1 to 7, wherein each of the weights W(i,j) varies as a function of the angle A(i,j) such that the weight W(i,j) decreases when the angle increases.

9. The multi-channel audio compressor (100, 420) of any of claims 1 to 8, wherein each of the weights W(i,j) varies as a function of the angle A(i,j) when the angle A(i,j) is below an angle ceiling.

10. The multi-channel audio compressor (100, 420) of claim 9, wherein the angle ceiling is the same for all the weights W(i,j).11 . The multi-channel audio compressor (100, 420) of any of claims 1 to 10, wherein each of the weights W(i,j) decreases when the angle A(i,j) increases based on an angle gradient.

12. The multi-channel audio compressor (100, 420) of any of claims 1 to 11 , wherein the weight W(i,j) is inversely proportional to the angle A(IJ) between the loudspeakers L(i) and L(j).

13. The multi-channel audio compressor (100, 420) of claim 11 , wherein the angle gradient is the same for all the weights W(i,j).

14. The multi-channel audio compressor (100, 420) of any of the preceding claims, comprising a downmix function applied to several or all of the N output audio signals of the mono-channel compressors to derive at least one subwoofer signal.

15. An audio system (135), comprising a multi-channel audio compressor (100) according to any of the preceding claims and weight computation means (131) configured to compute each of the weights W(i,j) applied by the sidechain gain matrix (130).

16. An audio system (135) according to claim 15, wherein the weight computation means (131) are configured to obtain speaker spatial configuration data, the speaker spatialconfiguration data including either (a) respective spatial positions of the loudspeakers or (b) the distances D(i,j) and / or angles A(i,j) between each pair of loudspeakers L(i) and L(j).

17. An audio system (135) according to claim 15 or 16, further comprising a user interface (132, 300) comprising at least one user interface element for adjusting at least one parameter of a weighting function applied by the weight computation means (131) for computing the weights W(i,j) based at least on the distance D(i,j) and / or the angle A(i,j) between the loudspeakers L(i) and L(j).

18. An audio system (135) according to claim 17, wherein the at least one parameter comprises a gradient and / or a ceiling, wherein the weight computation means (131) are configured to compute each of the weights W(i,j) as a function of the gradient and / or ceiling.

19. An audio system (135, 400) according to any of claims 15 to 18, further comprising a source processing block (410) and a downmix function (430), wherein the source processing block (410) is configured to receive source audio signals and to apply processing to the received source audio signals; wherein the multi-channel spatial compressor (100, 420) is configured to receive the processed source audio signals and to generate, for each or at least one processed source audio signal, a respective output audio signal by compressing individually each or the at least one processed source audio signal; wherein the downmix function (430) is configured to generate an audio signal for a subwoofer by performing a summation of some or all of the output audio signals at the output of the mono-channel compressors of the multi-channel audio compressor.

20. A method ,for compressing a plurality of mono-channel audio signals for reproduction on a set of loudspeakers having a spatial configuration, the method comprising: receiving (610) N mono-channel input audio signals l(i), with i=1 to N; preprocessing (620) the N input audio signals to generate respective N pre-processed audio signals; applying (630) a sidechain gain matrix for generating N sidechain audio signals from the N pre-processed audio signals based on a N by N matrix of weights W(i,j), with i=1 to N and j=1 to N; generating (640), by a set of N mono-channel compressors, N output audio signals for N corresponding loudspeakers L(i), with i=1 to N, wherein each mono-channel compressor generates a respective output audio signal O(i) for loudspeaker L(i) from acorresponding input audio signal l(i) and a corresponding sidechain audio signal S(i); wherein a weight W(i,j) applied to a pre-processed audio signal P(j) contributing to a sidechain audio signal S(i) is based at least on a distance D(i,j) and / or an angle A(i,j) between the loudspeakers L(i) and L(j).

Citation Information

Patent Citations

  • Center protection dynamic range control

    US20200154206A1

  • Spatially aware multiband compression system with priority

    US20200294519A1