Method for audio peak reduction using all-pass filter
11881829 ยท 2024-01-23
Assignee
- AAC Microtech (Changzhou) Co., Ltd. (Changzhou, CN)
- Aac Acoustic Technologies (Shenzhen) Co., Ltd. (Shenzhen, CN)
Inventors
- Sebastian Schlecht (Tampere, FI)
- Leonardo Fierro (Tampere, FI)
- Vesa Valimaki (Tampere, FI)
- Juha Backman (Tampere, FI)
Cpc classification
International classification
Abstract
Provided is a method for audio peak reduction using an all-pass filter, including: determining a delay parameter m and a gain parameter g based on a formula (1):
absolute peak map
y.sub.m,g(n) represents a processed signal with a time-domain response function and is calculated based on a formula (2): y.sub.m,g(n)=(h.sub.s*x)(n)(2), where h.sub.s represents an impulse response function, x (n) represents an input signal, and h.sub.s is calculated based on formula (3):
This method is widely used in the reproduction, storage and broadcasting of sound, and the computational complexity is small, which is a supplement to the traditional nonlinear compression algorithm.
Claims
1. A method for audio peak reduction using an all-pass filter, comprising: determining a delay parameter m and a gain parameter g based on a formula (1):
y.sub.m,g(n)=(h.sub.s*x)(n)(2), where h.sub.s represents an impulse response function, x(n) represents an input signal, and h.sub.s is calculated based on a formula (3):
2. The method as described in claim 1, wherein the delay parameter m is synced to a dominant transient peak in an autocorrelation function.
3. The method as described in claim 1, wherein a feedback choice is solved with a gradient descent on the gain parameter g, where a gain gradient of the gradient descent is computed by a filter derivative and an optimal step size of the gradient descent is optimally solved with linear programming.
4. The method as described in claim 3, wherein a gain gradient at time n is calculated based on a formula (4):
5. The method as described in claim 4, wherein a transfer function of the gain gradient is calculated based on a formula (5):
6. The method as described in claim 5, wherein a conservative upper bound for the gain gradient is calculated based on a formula (6):
|y.sub.m,g(n)|.sub.n=0.sup.=|h.sub.s(n)|.(6).
7. The method as described in claim 4, wherein an optimal step size is calculated based on a formula (7):
8. The method as described in claim 7, wherein the formula (7) is simplified to be a formula (8):
9. The method as described in claim 7, wherein signflipped gain amplitude and gradient lines are calculated based on a formula (9):
10. The method as described in claim 9, wherein an optimal step size is calculated based on a formula (10):
Description
BRIEF DESCRIPTION OF DRAWINGS
(1) In order to better illustrate technical solutions in embodiments of the present invention or in the related art, the accompanying drawings used in the embodiments and in the related art are briefly introduced as follows. It should be noted that the drawings described as follows are merely part of the embodiments of the present invention, and other drawings can also be acquired by those skilled in the art without paying creative efforts.
(2)
(3)
(4)
(5)
(6)
DESCRIPTION OF EMBODIMENTS
(7) The embodiments described below with reference to the accompanying drawings are exemplary and are merely used to explain the present invention, but not to limit the present invention.
(8) An embodiment of the present invention provides a method for audio peak reduction using an all-pass filter, which can avoid distortion introduced by a traditional nonlinear compressor, and provides peak reduction by acting on the signal phase. In this way, the signal energy around a waveform peak can be smeared while maintaining the total energy of the signal. The method includes the following steps.
(9) A delay parameter m and a gain parameter g of the all-pass filter is calculated based on a formula (1) as follows.
(10)
(11) In the formula (1), absolute peak map
(12)
y.sub.m,g(n) represents a processed signal with a time-domain response function and can be calculated based on a formula (2) as follows.
y.sub.m,g(n)=(h.sub.s*x)(n)(2).
(13) In the formula (1), h.sub.s represents an impulse response function, x(n) represents an input signal, and h.sub.s can be calculated based on a formula (3) as follows.
(14)
(15) As the structure is sparse, the non-zero values of the all-pass filter impulse response parameter are placed on a regular grid. In turn, the all-pass filter can generate large group delays with minimal computational effort. The delay parameter m and the gain parameter g shape the group delay of the filter. Depending on choices of the delay parameter m and the gain parameter g, the filter can reduce the peak value of a signal.
(16) The delay parameter m and the gain parameter g of the all-pass filter can be determined based on the above-mentioned formula (1). When the absolute peak map
(17)
(18) takes the minimum value, values of the delay parameter m and the gain parameter g can be determined.
(19) In the related art, the absolute peak map Y(m, g) can be computed with an exhaustive grid search.
(20) Therefore, an embodiment of the present invention provides a computationally efficient method for linear compression of the audio wave form. All examples are at a sample rate of 44.1 kHz
(21) In this embodiment, the delay parameter m is synced to the dominant transient peaks in the autocorrelation function R.sub.xx(m).
(22) Overall, a good choice is found in syncing the delay parameter m to one among the two most dominant negative peaks and the two most dominant positive peaks of the autocorrelation function R.sub.xx(m). This design further reduces the search space, without significantly affecting the reduction performance. An all-pass filter following this design is named synced all-pass filter (SyncAPF).
(23) Further, assuming that the delay parameter m is fixed and the gain parameter g is optimized, the feedback choice is solved with a gradient descent (GD) on the gain parameter g, where the gradient is computed by a filter derivative and the optimal step size of the GD can be optimally solved with linear programming.
(24) Given a processed signal with an initial gain g, the gain gradient at time n can be calculated based on a formula (4).
(25)
(26) In the formula, h.sub.s is the derivative of the impulse response function h.sub.s of the all-pass filter. The corresponding transfer function is calculated based on a formula (5).
(27)
(28) While the derivative h.sub.s of the impulse response function h.sub.s retains the sparsity and, consequently, the efficiency of the original filter: the total number of multiplications simply increases from one to two. Assuming the amplitude of x(n) only spans the [1,1] range, a conservative upper bound for the gradient is introduced based on (4). Please refer to a formula (6).
|y.sub.m,g(n).sub.n=0.sup.|h.sub.s(n)|(6).
(29) For small changes of the feedback gain, signal samples carrying low values will not produce a relevant impact on the peak value, i.e. the peak amplitude variation is a smooth function of the gain.
(30) A standard GD determines a suitable step size along the direction of the given gradient for the parameter update. The optimal step size is given based on a formula (7) by stating the formula (1) as a gradient descent.
(31)
(32) The formula (7) can be simplified by removing the absolute value, to obtain formula (8).
(33)
(34) In addition, formula (9) is provided.
(35)
(36) The formula (9) are the signflipped amplitude and gradient lines. This is only
(37) accurate if y.sub.m,g+y.sub.m,g,g(n) does not cross the zero axis in the region of interest. Nonetheless, this simplification is quasi-optimal: as the gradient is relatively small, only large values of {tilde over (y)}.sub.m,g (n) contribute to the solution for small step sizes. This is equivalent to the following linear program.
(38)
(39) Thus, the step size is obtained, and the values for the new gain parameter g.sub.i+1=g.sub.i+ can be updated, where i is the current iteration.
(40) Linear programming can be sped up with a good initialization of the gain parameter g, as GD is bound to only find local minima and multiple initializations might be necessary. A statistical pre-evaluation determined that g=0.7 are strong candidate for gain initialization as those are the most consistently impacting gain values for the all-pass filter, please refer to
(41) Another element affecting performance and computational cost of GD is the number of iterations. An optional choice will be three iterations, as it has been shown to provide an acceptable tradeoff between computational time and achieved peak reduction.
(42) The cost of an iteration step is 1 multiplication (MUL) and 2 additions (ADD) (APF) plus 2 MUL and 3 ADD per sample, or a total of 3 MUL and 5 ADD per sample. The overall computational cost can be further reduced with fast linear programming and by selectively updating peak signal and gradient values.
(43) Based on the embodiments described above, the exponentiallydecaying sine example provides further insight on the delay choice algorithm. With reference to
(44) Processing of a mallet percussion is shown in
(45) Based on the embodiments described above, the present invention provides a computationally efficient method for linear compression of the audio waveform. In a scheme, for each transient peak, the delay line of the all-pass filter is synced to match delay of the peaks of the signal's auto-correlation function. In another scheme, iteratively clipping the input signal while recovering the magnitude spectrum also results in a reduction in the peak signal value. This method is widely used in the reproduction, storage and broadcasting of sound, and the computational complexity is small, which is a supplement to the traditional nonlinear compression algorithm. In future work, the method can be generalized to frequency-dependent active filters, and can be adapted to online processing by optimizing the all-pass filter for each signal frame.
(46) The structure, features and effects of the present invention have been described in detail above according to the embodiments shown in the drawings. It should be noted that the above description merely illustrates preferred embodiments of the present invention, and does not constitute a limitation to a scope of the present invention. Any modifications, amendments, or equivalent changes based on a concept of the present invention shall fall within a scope of the present invention.