Lossless band splitting and band joining using all-pass filters
Patent Information
- Application Number
- JP2023004311
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2015-12-21
- Filing Date
- 2023-01-16
- Publication Date
- 2025-03-06
- Estimated Expiration
- 2036-12-21
AI Technical Summary
【0008】 フィードバックが用いられて、伝達関数に極を作り、これは、2,3の係数でよい周波数弁別性を可能にする。極を最大位相にすることは、因果性のある(casual)バンドジョイナが位相歪を取り除くことを可能にすることによって、Kleinmann及びLacroixの従来技術を向上する。サンプルに対する逆方向の演算は、最大位相極を持つフィルタリングが安定的に実現されることを可能にする。
Smart Images

Figure 0007641305000024 
Figure 0007641305000025 
Figure 0007641305000026
Abstract
Description
[Technical field]
[0001] The present invention relates to the processing of sampled signals, and in particular to lossless band splitting and band joining of such signals. [Background technology]
[0002] Many applications require that a sampled signal be split into two or more frequency bands to produce subband signals that can be processed or transmitted separately at lower sampling rates, and then recombined to produce a signal at the full sampling rate. Polyphase filtering networks (including quadrature mirror filters) for performing the splitting and joining have been the subject of extensive research. Signal artifacts potentially introduced by band splitting techniques include passband ripple and aliasing, but designs are known in which the ripple is zero, and for transmission applications in which the subband signals are provided unaltered to the final band joining filter, any alias products present in the subband signals are cancelled upon final recombination.
[0003] The term "lossless" is often used to describe such designs in the communications literature, where perfect computation is assumed, and even designs so named may or may not provide exact reconstruction in the presence of computational round-off errors. In this document, we adopt the terminology from the audio literature, where "lossless" implies exact bit-for-bit reconstruction of a signal that has already been quantized. A lossless decoder must therefore reverse any computational errors or quantization made by the encoder.
[0004] "Lifting" techniques have often been used to achieve lossless processing, and band splitting / joining architectures using lifting are described in A.R. Calderbank, I. Daubechies, W. Sweldens, and B.L. Yeo, "Wavelet Transforms That Map Integers to Integers," Applied And Computational Harmonic Analysis 5, 332-369 (1998), especially with reference to Figures 4 and 5 therein. In order for an encoder to separate a sampled signal into low frequency (LF) and high frequency (HF) bands and then for a corresponding decoder to combine the bands, such architectures typically require that the encoder and decoder each implement two finite impulse response (FIR) filters. The filters can be inconveniently long, requiring a number of taps, each inversely proportional to the width of the transition between the LF and HF bands. Also, the two-FIR design does not provide LF and HF responses that are mirror images about half the Nyquist frequency; to achieve greater symmetry, at least three FIR filters would be required in each of the encoder and decoder.
[0005] Another type of band splitting and joining in the communications literature uses IIR filtering. Although IIR filters can generally achieve higher slopes for a given number of operations than FIR filters can, IIR band splitting and joining filters in the literature do not achieve lossless reconstruction. For example, in “Efficient Design of Low Delay IIR QMF Banks for Speech Subband Coding” by Kleinmann T and Lacroix A in Proceedings of EUSIPCO-96 Eighth European Signal Processing Conference Trieste, Italy, 10-13 September 1996, the reconstructed amplitude The response is flat, but the group delay increases around the crossover frequency. The scheme above would not be lossless even if it were realized without quantization errors. Summary of the Invention [Problem to be solved by the invention]
[0006] What is needed, therefore, is an economical IIR architecture that provides lossless reconstruction. For applications where the encoder transmits LF and HF bands separately to a consumer product, it is particularly desirable to minimize the computational complexity of the decoder. [Means for solving the problem]
[0007] In a first aspect, the present invention provides a method for splitting an original stream of quantized signal samples having an original sample rate into two output sub-streams of quantized signal samples having half the original sample rate, the two output sub-streams respectively representing higher and lower frequency components of the original stream, the method comprising the steps of reformatting the original stream into two intermediate streams respectively representing even and odd samples of the original stream, providing the two output sub-streams by filtering and matrixing the two intermediate streams, the filtering and matrixing steps including producing a quantized signal having samples using a quantizer, producing samples of the quantized signal in reverse time order, and producing samples of the quantized signal based on feedback obtained from previously produced samples of the quantized signal, each output sub-stream being associated to a respective intermediate stream by a respective transfer function with a maximum phase pole.
[0008] Feedback is used to create a pole in the transfer function, which allows frequency discrimination by a factor of a few. Making the pole maximum phase improves on the prior art of Kleinmann and Lacroix by allowing a causal band joiner to remove phase distortion. A backward operation on the samples allows filtering with a maximum phase pole to be achieved in a stable manner.
[0009] Preferably, for any output substream, the transfer functions from both intermediate substreams have the same DC gain magnitude, so that the use of sum and difference matrix operations ensures that the band splitter directs purely DC to one output and purely the Nyquist frequency to the other output.
[0010] In some embodiments, the filtering and matrixing step comprises processing overlapping blocks of samples of the two intermediate sub-streams, discarding the last portions of each processed block of samples that correspond to overlaps with other blocks, and combining the remaining portions of each processed block of samples.
[0011] In this way, a band splitter according to the invention can process audio in a forward direction as a whole, and operate locally on blocks in a reverse time direction. Overlap and discard allows transients that occur when the processing of each block begins to dissipate before they reach the section that affects the band splitter output.
[0012] Preferably, the two output sub-streams jointly contain the information required to enable the original quantized stream to be accurately reconstructed by a properly initialized Band Joiner.
[0013] This way the operation is exactly reversed, band splitting, lossless processing of each band. Transmission, systems involving band joining can be made to be lossless as a whole.
[0014] Preferably, two separate input streams do not produce the same output substreams and residual states in the filter.
[0015] In this way, no information about the signal samples is lost in the operation of the band splitter, since each possible set of outputs is produced by at most one stream of inputs. As a result, the band splitter can be described as lossless. Filter states need to be included in the comparison, since filtering spreads the influence of the inputs over time.
[0016] In some embodiments, the filtering and matrixing step includes filtering two intermediate streams to produce two filtered intermediate streams, and matrixing the filtered intermediate streams to produce the two output sub-streams.
[0017] This way the implementation can use two filtering operations for more efficient implementation with simple matrix operations, but the trade-off is sometimes the opposite and a lower order all-pass filter is used.
[0018] Preferably, performing said matrix operation is performed using sum and difference matrices.
[0019] Preferably, said output sub-streams are derived from said quantized signal by an invertible linear process without further quantization.
[0020] This way the band splitter can operate with only one quantization in the signal path, resulting in lower quantization noise at the band splitter output.
[0021] Since the feedback comes from the quantization, subsequent processes can unambiguously determine the quantized signal and hence the feedback from the output substreams. Knowledge of the feedback is important so that the state variables in the Band Joiner can accurately track those in the Band Splitter.
[0022] The present invention in a second aspect provides a band splitter arranged to carry out the method of the first aspect.
[0023] The present invention in a third aspect provides a recording medium comprising data obtained based on the high frequency output and the low frequency output of a band splitter according to the second aspect.
[0024] In this way, the recorded media can be provided to both consumers who use a Band Joiner to reconstruct a copy of the full bandwidth audio, and to consumers who do not use a Band Joiner and enjoy reduced bandwidth audio.
[0025] The present invention in a fourth aspect provides a method for combining two subband streams of quantized signal samples, each having a subband sample rate, the method providing an output stream of quantized signal samples having twice the subband sample rate, the output stream having higher and lower frequency components respectively represented by the two subband streams, the method comprising: providing two quantized intermediate substreams, and interleaving the two quantized intermediate substreams to provide the output stream, such that the intermediate substreams are respectively even and odd samples of the output stream, each intermediate substream being associated with a respective subband stream by a respective transfer function that is an infinite impulse response (IIR) with maximum phase zero, the matrixing and filtering steps including quantization configured to ensure that the output stream contains information required to enable the quantized signal samples of each subband stream to be accurately restored by a properly initialized band splitter.
[0026] In this way, the operation of the prior art Kleinmann and Lacroix band joiner is improved to ensure that it can be exactly inverted by the operation of our band splitter. First, the phase distortion of those prior art band splitter, band joiner combinations is eliminated. Second, while the subband streams produced by our band splitter will inevitably contain quantization noise, the proper quantization in our band join method cancels the noise introduced by the band split quantization instead of adding more noise.
[0027] Preferably, the transfer functions for both intermediate streams for any given subband stream have the same DC gain magnitude, so the use of sum and difference matrices can ensure that the DC at the output comes purely from one input, and the Nyquist frequency comes purely from the other output.
[0028] To aid in understanding, note that if the operation of a Band Joiner can be reversed by a subsequent Band Splitter, then the operation of the Band Splitter can also be reversed by the same Band Joiner placed after the Band Splitter.
[0029] In one embodiment, the step of matrixing and filtering the two subband streams includes matrixing the two subband streams to produce two matrixed substreams, and filtering the two matrixed substreams with two different quantization filters, respectively, to produce the two quantized intermediate substreams.
[0030] In this way, the implementation can achieve higher implementation efficiency using simple matrix operations and two filtering operations, but the tradeoff is sometimes the opposite, resulting in the use of a lower order all-pass filter.
[0031] In one embodiment, the matrixing step includes quantization, which operates to invert less preferred band splitter embodiments in which the matrixing is performed after filtering and incorporates further quantization.
[0032] Preferably, the quantization included within the signal processing loop is performed by a vector quantizer.
[0033] In this way, the Band Joiner can losslessly reverse the operation of the preferred Band Splitter embodiment, whose output sub-streams are derived from the quantized signal, without further quantization.
[0034] Preferably, the filtering step is characterized by two different all-pass responses.
[0035] In this way, the discrimination of the band splitter is derived from the range of 90 degree differential phase shifts exhibited by the two all-pass filters, which leads to effective discrimination with a small number of coefficients.
[0036] In one embodiment, the first all-pass response is a square root of 1.0 and 0.527864045. -15The second allpass response has coefficients in the range 1.0 and 0.105572809. -15 The coefficients are in
[0037] In one embodiment, the first all-pass response is a square root of 1.0, 0.3644245374. -15 Within, and 0.01036373471 of 2 -15 The second allpass response has coefficients in the range 1.0, 0.8365625224. -15 Within, and 0.09327361235 of 2 -15 The coefficients are in
[0038] In this way, a ripple-free band splitter transfer function suitable for applications in which band-split audio is listened to can be obtained from either a first or second order allpass. A practical implementation would require rounding off non-unit coefficients, but the 2 -15 The tolerance of corresponds to rounding to a common coefficient size of signed 16 bits.
[0039] The invention in a fifth aspect provides a band splitter comprising: an input configured to receive an input stream of signal samples at a sampling rate; two outputs configured to provide two output streams, each having half the sampling rate of the input stream; a deinterleaving unit having an input and two outputs, the input of the deinterleaving unit being coupled to the input of the band splitter, the outputs of the deinterleaving unit respectively comprising even and odd samples of the input stream; and an output, each of the inputs to the sum and difference unit being coupled to a respective output of the band splitter outputs, each all-pass filter being configured to receive samples of the input stream in reverse time order.
[0040] Thus, sum and difference all-pass filter operations allow good discrimination with few coefficients. Reverse time order operations allow all-pass filters in which maximum phase poles are stably realized. These can be inverted by causal all-pass filters with minimum phase poles in the corresponding band joiners, and no phase or amplitude errors arise from the splitting into bands.
[0041] In one embodiment, the band splitter also includes a quantizer, and each all-pass filter has a second input configured to receive feedback derived from the output of the sum and difference units, such that the sum and difference units are integrated within the filter.
[0042] Preferably, the sum and difference units are integrated within the filter, with each all-pass filter having a second input arranged to receive feedback derived from the outputs of the sum and difference units.
[0043] In this way, the band splitter can operate with only one quantization in the signal path, and at the output of the band splitter, one quantization is generated for each of the high and low frequency components of the original signal. This allows all noise approximations to be lower.
[0044] Preferably, the band splitter also comprises a quantizer, each all-pass filter being configured to provide an output sample equal to a quantized sum of a linear combination of samples of the input stream including a previously received sample of the input stream, and a feedback sample previously received by the second input of the all-pass filter, and a current sample received after the previously received input sample, up to a current sample.
[0045] In one embodiment, one of the two filters is characterized by an infinite impulse response (IIR) with coefficients 340 / 32768 and 11941 / 32768, and the other all-pass filter is characterized by an IIR with coefficients 3056 / 32768 and 27412 / 32768.
[0046] In this way, the coefficients used for a second order allpass approximate the ripple-free band splitter transfer function. These values are rounded for a fixed-point implementation with 16-bit coefficients.
[0047] In a preferred embodiment, the band splitter comprises a blocking unit having an input and an output, and a combining unit having an input, said blocking unit configured to receive a stream of samples provided to its input, split the stream into overlapping blocks of samples, each block having a start and an end, and provide the overlapping blocks at its output, the output of the blocking unit is coupled to a first input of the all-pass filter, said all-pass filter configured to process in reverse time order within each overlapping block of samples and provide a processed block of samples at its output, the output of the all-pass filter is coupled to an input of the combining unit, said combining unit is configured to receive the overlapping processed blocks of samples provided to its input, discard overlapping portions from each processed block and combine remaining portions to provide a continuous stream of processed samples.
[0048] In this way, each block of samples is processed in reverse time, allowing the maximum phase pole to be steadily achieved. However, successive blocks can be processed in normal order, allowing the band splitting to proceed with finite look-ahead. The overlap and discard allow time for transients that occur as the band splitter starts up on each block to die down before processing the samples that contribute to the output. Because of the reverse-time processing, these transients occur at the end of each block.
[0049] The invention in a sixth aspect provides a band joiner comprising two inputs arranged to receive first and second streams of input quantised signal samples, an output arranged to provide an output stream having a sampling rate twice the sampling rate of the respective input streams, a sum and difference unit having two inputs and two outputs arranged as a sum output and a difference output respectively, two all-pass filters each having a first input and output, and an interleaving unit having two inputs and an output, wherein an input of the sum and difference unit is connected to an input of the band joiner, a first input of each of the two all-pass filters is connected to the sum output and the difference output of the sum and difference unit respectively, an input of the interleaving unit is coupled to an output of the all-pass filters and an output of the interleaving unit is coupled to an output of the band joiner, wherein the band joiner is lossless.
[0050] In this way, the lossless characteristic can be achieved by the band joiner according to the present invention and the band splitter according to the present invention. The system of splitters improves the operation of the Kleinmann and Lacroix band joiner by allowing the input to the band joiner to be exactly replicated, thus eliminating not only the phase distortion of Kleinmann and Lacroix, but also the noise introduced by the quantization of the band splitter.
[0051] In one embodiment, the sum and difference unit scales one of its inputs by a factor of two before taking the sum or difference.
[0052] In this way, the sum and difference matrices can tolerate a factor of two difference in the gains at the two inputs resulting from a band splitter that uses identity determinants of the sum and difference units.
[0053] Preferably, the band joiner further comprises a quantizer, each all-pass filter being configured to provide an output equal to a quantized sum of a linear combination of previously provided output samples and input samples up to the current sample, including a sample previously received by the first input of the all-pass filter and a current sample received after the previously received sample.
[0054] Preferably, the quantizer is a vector quantizer arranged to jointly quantize within both all-pass filters.
[0055] In this way, the Band Joiner can invert the operation of a Band Joiner operating in the preferred low noise mode using a single quantization instead of separate quantization in the matrix operations and filtering.
[0056] Preferably, the band joiner comprises a vector quantizer having two inputs and two outputs, the inputs of the vector quantizer being connected to the outputs of each of the two all-pass filters and the outputs of the vector quantizer being connected to the output of the band joiner, each all-pass filter having a second input configured to receive feedback derived based on the output of the vector quantizer.
[0057] Preferably, the band joiner further comprises a quantizer, each all-pass filter being configured to provide an output equal to a quantized sum of a linear combination of previously provided samples of feedback and input samples up to a current sample, including a sample previously received by the first input of the all-pass filter and a current sample received after the previously received sample.
[0058] Preferably, the Band Joiner is configured to process the signal pairs produced by the Band Splitter such that the output of the Band Joiner is a lossless replica of the stream of signal samples received by the Band Splitter.
[0059] Thus, the lossless operation of the BandJoiner clearly offers the advantages of no phase distortion as outlined above, and no net quantization noise.
[0060] Preferably, the Band Joiner includes an all-pass filter having state variables, and if the Band Joiner is operated twice to provide a first output stream and a second output stream, and the initialization of the state variables is identical but the input streams received on the two occasions are different, then there is a difference between the first and second output streams or there is a difference between the states of the filters after each operation.
[0061] This ensures that the Band Joiner does not lose information since after the operation the different inputs are distinguishable and therefore lossless.
[0062] In one embodiment, the first all-pass filter is characterized by an IIR coefficients of 340 / 32768 and 11941 / 32768, and the second all-pass filter is characterized by an IIR coefficients of 3056 / 32768 and 27412 / 32768.
[0063] In this way, the coefficients are used for a second order allpass that approximates the ripple-free band splitter transfer function. These values are rounded for a fixed-point implementation using 16-bit coefficients.
[0064] In a seventh aspect, the present invention provides an encoder comprising a lossless band splitter; A transmission system is provided that includes a decoder with a lossless band joiner, the band splitter and band joiner each including an all-pass filter with a dithered quantizer, the transmission system also providing synchronized dithering for the quantizer in the band splitter and the quantizer in the band joiner.
[0065] In this way, the quantizations of the band splitter can benefit from the use of dithering while synchronizing to preserve the lossless behavior of the combined system. These quantizations are audible if the band split signals are listened to directly.
[0066] As will be appreciated by those skilled in the art, the present invention provides techniques and apparatus for lossless band splitting and band joining of sampled signals that provide lossless reconstruction. Further modifications and enhancements will be apparent to those skilled in the art in light of this disclosure. [Brief description of the drawings]
[0067] Examples of the invention will now be described in detail with reference to the accompanying drawings. [Figure 1] FIG. 1 shows a known Lossy IIR band splitter and band joiner. [Diagram 2] FIG. 2 shows the band splitter and band joiner of FIG. 1 conceptually illustrating the correction of phase distortion. [Diagram 3] FIG. 3 shows the amplitude response of a first-order IIR band splitter, where the solid line is the LF signal and the dotted line is the HF signal. [Figure 4] FIG. 4 shows the amplitude response of a second-order IIR band splitter, where the solid line is the LF signal and the dotted line is the HF signal. [Figure 5A] FIG. 5A shows a known lossless IIR filter architecture. [Figure 5B] FIG. 5B shows the inverse of the filter shown in FIG. 5A. [Figure 6]FIG. 6 shows a histogram of the time it takes for a pair of randomly initialized lossless all-pass filters to converge to the same state. [Figure 7] FIG. 7 shows a band splitter similar to that of FIG. 2, but in which all-pass filtering with lossless sum and difference operations is integrated. [Figure 8] FIG. 8 shows a band joiner which corresponds to the band splitter shown in FIG. [Figure 9A] FIG. 9A shows an extension of the Band Joiner operations 31 and 13 shown in FIG. [Figure 9B] FIG. 9B shows a simplified version of the combined operations shown in FIG. 9A. [Figure 10] FIG. 10 shows a vector quantizer representation of the operations performed by the band joiner shown in FIG. [Figure 11] FIG. 11 illustrates the quantization achieved by the vector quantizer shown in FIG. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0068] Allpass with time reversal The prior art structure of Figure 1, reproduced from the above-mentioned paper by Kleinmann and Lacroix, is designed to split an incoming sampled signal 11 into two subband signals 9 and 10 sampled at half the original rate, and then recombine them to produce an output signal 12. Typically, subband signal 9 is an "LF" signal that contains predominantly low frequency information from input signal 11, and subband signal 10 is an "HF" signal that contains predominantly high frequency information from input signal 11.
[0069] Note that sum and difference unit 3 inverts the effect of sum and difference unit 2, preserving the overall scaling by a factor of 2. Units 2 and 3 may be identical. Thus, the operation of Figure 1 can be written as follows:
[0070] The signal 11 is separated into even and odd sample streams by a deinterleaving unit 1.
[0071] The even samples are filtered by filter 5 having transfer function E0 and the odd samples are filtered by filter 6 having transfer function E1.
[0072] · The two sum and difference units 2 and 3 both have a null effect save for the scaling by 2.
[0073] In turn, the even samples are filtered by filter 7 having transfer function E1 and the odd samples are filtered by filter 8 having transfer function E0.
[0074] The even and odd sample streams are recombined in an interleaving unit 4.
[0075] Thus, the even samples from the deinterleaving unit are filtered by E0 and then by E1, while the odd samples are filtered by E1 and then by E0. Since the filtering is commutative, it is clear that the total effect of FIG. 1 is to scale the stream 11 by a factor of 2 in amplitude and filter it with the transfer function E0.E1. z in the interleaving unit -1 There is also a one sample delay introduced by the element. do.
[0076] If filters 5 and 6 were straight through pass, i.e. if E0=1 and E1=1, signal 10 would have a zero response to the zero frequency signal components of input 11, and similarly signal 9 would have a zero response to the original signal components at the Nyquist frequency of signal 11, i.e. half the sampling frequency. Thus the very low and very high frequencies would have been separated. Other frequencies would be imperfectly separated, but this is due to the "z -1 " This is due to the frequency dependent phase shift produced by the delay. The purpose of filters 5 and 6 is to roughly compensate for this phase shift so that good discrimination between high and low frequencies is maintained over a significant bandwidth.
[0077] Thus, response E0 should provide a phase shift that corresponds to a phase shift of E1 that is approximately equal to a delay of one sample period of signal 11 at low frequencies. E0 and E1 are Since the band splitters and band joiners shown in Figure 1 are realized with half the number of filters, they must therefore be designed as a pair of all-pass filters whose phase difference is approximately equal to half the sample frequency at the local sampling frequency. We will present a suitable design shortly, but we first need to address the issue that the band splitters and band joiners shown in Figure 1 are all-pass and therefore have transfer functions (E0.E1) that introduce phase distortion. The problem was recognized in the Kleinmann and Lacroix paper referenced above, but in communications practice some residual phase distortion was deemed to be tolerable and a completely lossless solution was not sought.
[0078] Conceptually, the unwanted transfer function (E0.E1) is the inverse filter (E0.E1) -1 Ignoring for the moment the fact that this inverse filter is non-causal, which is a considerable practical difficulty, in Fig. 2, the conceptual inverse filter (E0.E1) -1 Incorporating this into filters 5' and 6', These in turn are conceptual responses E1 -1 and E0 -1 Each of the two components will have the following characteristics:
[0079] A suitable design methodology for generating pairs of all-pass filters whose sum and difference exhibit Butterworth, Chebyshev or elliptic responses is described in PP Vaidyanathan, SK Mitra and Y. Neuvo. “A New Approach to the Realization of Low Sensitivity IIR Digital Filters”, IEEE Trans. on Acoustics, Speech and Signal Processing, vol. ASSP-34, no. 2, pp. 350-361, April 1986.
[0080] For audio applications where zero ripple is desired and sharp corners are undesirable, we have found the following filter to be suitable:
[0081] primary
[0082]
number
[0083] secondary
[0084]
number
[0085] Here and hereafter in this document, -1 is one sample at the subband sample rate. represents the delay of the loop, which is appropriate for implementation but differs from the notation used by Kleinmann and Lacroix.
[0086] A scale factor of 1 / 2 is inserted, and the low-pass and high-pass responses are lopass = (E1 -1 +E0 -1 ) / 2, hipass = (E1 -1 -E0 -1 ) / 2. It is well known that the time-reverse of an all-pass filter is also the inverse. This means that, for example, -1 Substitute z for which has the same effect as swapping the numerator and denominator.
[0087] Note that reverse-time processing is not necessarily unrealistic. In some consumer applications, the encoder separates the audio signal into LF and HF components, which are transmitted separately and then combined at the consumer's decoder. Since pre-encoding of the audio track is usually performed as a file-wise process, reverse-time processing is conceptually less difficult than forward processing. Therefore, the non-causal all-pass filter E1 -1 and E0 -1 can be realized as causal filters in reverse time, with lopass = Rev (E1 + E0) / 2, hipass = Rev (E1 - E0) / 2.
[0088] The resulting low-pass and high-pass responses are shown in Figure 3 for a first order filter and in Figure 4 for a second order filter. The frequencies have been scaled so that f=1 is the crossover frequency, which is equal to the subband Nyquist frequency, and f=2 is the original This design conserves total power and the low-pass and high-pass curves are symmetric about f=1, and are -3 dB each. At f=0.5, the filter attenuates by 38 dB, and at f=0.25, the filter attenuates by 70 dB. provides 69 dB attenuation at f=0.5 and 126 dB attenuation at f=0.25, which may be considered significant given the low computational cost of these designs.
[0089] Assuming exact arithmetic throughout, with proper initialization, the above prescription will provide exact reconstruction by the Band Joiner of the signal presented to the Band Splitter. We now consider how filtering can be done when using quantized arithmetic.
[0090] Lossless Minimum Phase IIR Filtering The famous "Direct form I" realization of minimum-phase IIR filters As shown in WO 96 / 37048, “Lossless Coding Method for Waveform Data”, Figures 6c and 6d of this document are reproduced here as Figures 5A and 5B, respectively. Other figures in this document show several other topologies with the same or similar functionality. Figure 5A shows the z transform (1 + A(z -1 )) / (1 + B(z -1 )) with first-order lossless FIG. 5B shows the IIR filter, and the z-transform (1 + B(z -1 )) / (1 + A(z -1 )) The inverse filter shown in Fig.
[0091] 5A is assumed to be quantized with a step size, and quantizer 20 quantizes to that same step size, thus ensuring that the output is similarly quantized. The coefficients of filters 21 and 22 have finite word lengths, and quantizer 20 also ensures that the recirculating signal does not get arbitrarily long word lengths through repeated multiplications by fractional coefficients in filter 22.
[0092] The operation of FIG. 5A is deterministic and operates on the inputs as explained in WO 96 / 37048. Assuming that has already been quantized, and assuming that the state variables in filters 21' and 22' have been initialized to the same values as the state variables of filters 21 and 22, the cascade of Figures 5A and 5B will reproduce at the output of Figure 5B an exact replica of the input to Figure 5A. In some designs, this initialization is performed explicitly, while other designs rely on probabilistic convergence between the states of the two filters, accepting that the reproduction will not be lossless unless and until such convergence is obtained.
[0093] Reverse-time realization of noncausal IIR filters. We will now consider how to calculate the first-order all-pass filter E0 and its inverse E0 -1 Here we will see how this can be achieved. Here,
[0094]
number
[0095] Or, more simply,
[0096]
number
[0097] where k=0.527864045. In particular, the denominator of E0 is minimum phase, so E0 is stable. |k| < 1 to ensure that the filter is causal and can be realized by standard means.
[0098] We use the sample values {x i} input sequence is E0 in the encoder -1 The sequence presented to and transmitted by iConsider the LF pass of an encoding-decoding application, where we create a vector of 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, i}, which is expressed by the following recursive relation:
[0099]
number
[0100] E0 in the encoder -1 To infer the operation of the filter,
[0101]
number
[0102] Causality is determined by the value {y i} is computed in decreasing order of i, as indicated by the notation i = n .. 1. This requires that the filter E0 -1 To initialize the computation, the encoder first calculates the time for a given signal value {x i , i=1..n} along with y n The value of is required It is necessary. n can be chosen arbitrarily, e.g., to be zero. The decoder also needs initialization, and a simple way is for the encoder to initialize the filtered values {y i , i=1..n} along with the original The decoder then performs the remaining calculations, running from i=2 onwards. It uses x1 as the state initialization for the computation and also uses x1 directly as its first output value.
[0103] Given such an initialization, the decoder can then reproduce the original signal {x i} can be reconstructed exactly. E1 and E1-1 An exactly similar approach with k=0.1055728090 can be used to achieve
[0104] Lossless inverse time processing For lossless processing, we take the quantized input sequence {x i} and fractional coefficients Assume that the result of the multiplication must be quantized. The recursive relationship above is replaced by:
[0105]
number
[0106] Here, Q i is the input sequence {x i}. The transmitted sequence {y i} then contains the values quantized to the same step size. i "i" " is the quantization Q, as in a dithered quantizer, However, in an encoder-decoder pair, the Q of each encoder i is the corresponding Q in the decoder. i which in the case of dithering is usually achieved by identical pseudo-random sequence generators that are synchronized between the encoder and the decoder.
[0107] It is not required that the quantized values be integer multiples of the step size, i.e., a random offset as described in co-pending patent application PCT / GB2015 / 050910. In some cases it is advantageous to use a quantizer with Q I is a vector quantizer, then the signal {x i} and {y i} can be vector-valued.
[0108] Block-wise inverse time encoding In both the unquantized and lossless cases, the complete output sequence {x n Exact reconstruction of} requires initialization of the decoder state with, for example, the value x1.
[0109] In non-quantized processes using exact arithmetic, failure to provide exact initialization will result in a transient error proportional to the impulse response of E0, which is a decaying exponential function when E0 is first order, or more generally a linear combination involving decaying sinusoids. This transient error will decrease rapidly as i increases, and will become stable within a few samples or even 20-30 samples. After samples this is usually not an issue.
[0110] In a "lossless" quantized process, inaccurate initialization will result in a similar initial transient error. Once the transient settles, this error will be noise-like unless and until the state of the decoding filter E0 is synchronized with the encoding state. For higher order filters, this state synchronization may never occur, but for the second order filter E0 considered in this paper, with a properly dithered quantizer, it has been shown that synchronization is not achieved until 120 sample periods after the initial transient settles and the error becomes noise-like. -12 We speculate that the probability of existence is less than For the second order filters shown, the initial transient takes about 30 samples to decay by 96 dB and about 45 samples to decay by 144 dB. Thus, these filters are nearly perfect. It can be said with a high degree of certainty that after 165 samples the system settles into a state independent of initialization.
[0111] This reasoning can now be applied to reverse-time filtering: if a block of 1165 samples taken from the start of a longer file is filtered in reverse time, the first 1000 filtered samples will therefore be the same with almost perfect probability, since only the first 1000 samples of the entire file are filtered in reverse time. Reverse-time filtering of the entire file is therefore unnecessary, and the file can be processed in blocks overlapping by at least 165 samples. The blocks can be processed in any order, in particular forward, or in parallel, with inverse time filtering being used within each block and the last 165 samples of each block being discarded. This principle also allows live processing of a stream of samples, although subject to delays introduced by block processing and overlap.
[0112] The 165 sample estimate is based on two quantized filters, 15 The quantization step of The read / write head is initialized 100,000 times to different randomly chosen signal values. This filter is of second order and has coefficients k1=0.8365625224 and k2=0.09327361235 as given before, and their respective quantizers are The quantizers are dithered with the same "RPDF" dither with a square probability density function and a peak-to-peak amplitude equal to one quantization step. Figure 6 is a histogram of the time it takes for the two quantizers to come into alignment. The vertical axis is the logarithm of the number of trials to the base 10, and the horizontal axis is time in sample periods. In most trials, the quantizers take about 30 sample periods to synchronize, and the number that are out of sync decreases by about a factor of 10 every 10 sample periods thereafter.
[0113] Second-order recursive relations For reference, the recursive relationship shown above can also be extended to second-order filtering. For example, the numerical representation of E0 is
[0114]
number
[0115] which is
[0116]
number
[0117] where k1 = 0.3644245374 and k2 = 0.01036373471.
[0118] where the decoding and encoding equations are:
[0119]
number
[0120] and the conceptual filters E0 and E0 -1 The initialization condition for the encoder is that any convenient value, such as zero, is set to the quantity y n-1 and y n , which are referenced but not calculated. The encoder converts the original values x1 and x2 into the filtered values {y i , i=1..n}. The decoder then initializes x1 and x2 with The first two output values are used directly for the remaining calculations from i=3 onwards. It is also used for state initialization.
[0121] Initialization can alternatively be omitted if exact reconstruction is not required for the first few dozen decoded samples.
[0122] Lossless Sum and Difference Figure 2 shows sum and difference networks 2 in the band splitter and inverse sum and difference networks 3 in the band joiner. The band splitter and band joiner are redrawn in Figures 7 and 8 to show a lossless allpass network 16 incorporating a lossless allpass.
[0123] In the above discussion of realizing anti-causal filters, we were content with the configuration of units 2 and 3 to introduce a scaling of 2. But if we go further for lossless operation, this factor of 2 becomes difficult to use, since we require that the inputs to filters 7 and 8 are exact lossless replicas of the outputs from filters 5' and 6'. We present several ways of dealing with this problem.
[0124] The simplest approach is to incorporate a scaling by 2 into unit 3 so that it is the exact inverse of unit 2.
[0125] So unit 2 is
[0126]
number
[0127] Calculate, Unit 3,
[0128]
number
[0129] , which is a replica of unit 2 combined with a scaling by 0.5.
[0130] However, this implementation is difficult to use as part of a system with lossless compression of the Lf and Hf signals, because E and O are independently quantized values, whereas L and H are not.
[0131]
number
[0132] Because of this, there is common information in the outputs of L and H (they have a common lsb), and if Any lossless compression would be inefficient if it did not exploit this redundancy, but having to exploit this interesting redundancy is an onerous requirement to impose.
[0133] To avoid this problem, the sum and difference unit 2 preferably has determinant ±1, and a reasonable choice is to use a sum and half difference:
[0134]
number
[0135] Therefore, unit 3 calculates:
[0136]
number
[0137] The calculation of 0.5(OE) requires quantization, which introduces additional noise into the Hf output of the band splitter, L=E+O H=OQ(0.5L) This can be done in a lossless manner by
[0138] The inverse operation for unit 3 is O=H+Q(0.5L) E=LO It is.
[0139] Integration of all-pass lossless sums and differences By integrating all-pass filtering with sum and difference operations, it is further possible to reduce the amount of quantization noise in the Lf output. This is particularly useful in the system described in WO2013186561, where the Lf output of the band splitter can be heard by those who do not have access to the bandwidth extension data. This also removes the need for additional quantization in the Hf audio path.
[0140] This is illustrated in Figures 7 and 8, where the sum and difference operations 2 and 14
[0141]
number
[0142] and the inverse sum and difference operations 3, 13 and 15 are intended to be realized by:
[0143]
number
[0144] In contrast to the last part, these can now be performed with exact arithmetic.
[0145] Figure 7 shows the reorganization of 5', 6' and 2 in the band splitter. Filter 16 replaces 5' and is an all-pass
[0146]
number
[0147] where quantization is postponed until after the sum and difference operations 2 and feedback is taken from it after an additional inverse sum and difference operation. Similarly, filter 17 replaces 6'. The net effect is that vector quantization is performed inside both of the all-passes and the Lf and Hf signals are quantized separately.
[0148] Figure 8 shows the operation of the Band Joiner. If Figure 8 is applied to the output of Figure 7, then operation 3 repeats operation 15 of Figure 7, ensuring that the inputs to filters A(z) and B(z) replicate their inputs in Figure 7. If we assume that the previous output of Figure 8 replicates the input to Figure 7, and that quantizer 31 subtracts the same quantization error that quantizer 30 added, then we can inductively conclude that Figure 8 performs exactly the inverse of the operations of Figure 7.
[0149] We now consider what conditions must be met for quantizer 31 in order for the quantization error of quantizer 30 to be nullified.
[0150] First, we need to consider the case where the two output values are equidistant from the input value. If quantizer 30 wraps around the tie towards -∞, then quantizer 31 wraps around the tie towards +∞. (This is different from the case in Figures 5A and 5B because the Band Joiner Quantizer is now in the main signal path, rather than a side-chain modification of the quantization.)
[0151] Second, if we assume that the inputs and outputs of Figure 7 are quantized to multiples of the step size Δ, then the same is true for the outputs from Figure 8, but they are derived from the output of the quantizer 31 by the inverse sum and difference matrices:
[0152]
number
[0153] If rewritten, it becomes as follows.
[0154]
number
[0155] If E and O are both even multiples of Δ, or both odd multiples of Δ, then L is an even multiple of Δ. and H is a multiple of Δ. But if E and O have opposite odd-parity, then L is an odd multiple of Δ and H is an odd multiple of Δ / 2.
[0156] Thus, the band joiner of FIG. 8 first quantizes L, and then quantizes H to a multiple of Δ or a multiple of Δ plus Δ / 2, depending on whether L is even or odd, respectively. It is necessary to.
[0157] One way to do this is to H Before using a quantizer to quantize to integer values of Δ for L 9A, and also extends the following operation 13, which implements the inverse sum and difference.
[0158]
number
[0159] The operation in 13 of adding 0.5L cancels out the operation in H of subtracting it, The combined operation is simplified as shown in FIG. 9B.
[0160] An alternative view shown in Figure 10 is that operations 14, 31 and 13 of Figure 8 form a vector quantizer 32 which achieves the quantization shown in Figure 11. The dots are the quantized outputs in EO space. The diagonal boxes are the regions which are quantized to their respective output values. The L and H axes are also shown, for which the quantization regions are square and also axis aligned, but with alternating L rows staggered to form a brick pattern.
[0161] Arithmetic operations variants It will be appreciated that there are many ways to rearrange the operations without affecting the essence of the invention.
[0162] For example, FIG. 8 represents the signal path from the input to the quantizer input as follows:
[0163]
number
[0164] Multiplying it together
[0165]
number
[0166] The two filters with sum and difference operations are L / H and Q L in / Q H in The filter has been modified to four filters with associated coefficients on all four paths between 1 and 2. Obviously, the essence of the invention remains unchanged by such modifications.
Claims
1. 1. A method for combining two subband streams of quantized signal samples, comprising the steps of: each band stream having a subband sample rate; the two subband streams are obtained by applying a lossless band splitting method to a quantized audio signal, The method includes providing an output stream of quantized signal samples having twice a subband sample rate, the output stream having higher and lower frequency components respectively represented by the two subband streams; The method comprises: performing matrixing and filtering on the two subband streams to provide two quantized intermediate substreams; interleaving the two quantized intermediate sub-streams to provide the output stream, such that the intermediate sub-streams are even and odd samples, respectively, of the output stream; Including, Each intermediate substream is related to a respective subband stream by a respective transfer function that is an infinite impulse response (IIR) that includes a maximum phase zero; the steps of matrixing and filtering include quantization that allows the two subband streams of quantized signal samples to be exactly reconstructed applying the lossless band splitting method to the output stream. method.
2. For any given subband stream, the transfer functions for both intermediate streams have the same DC gain magnitude. The method of claim 1.
3. The step of performing a matrix operation and filtering on the two subband streams includes: matrixing the two subband streams to produce two matrixed substreams; 2. The method of claim 1, comprising producing the two quantized intermediate sub-streams by filtering the two matrixed sub-streams with two different quantization filters, respectively.
4. The step of performing a matrix operation includes quantization. The method according to claim 3.
5. The filtering step includes quantization performed by a vector quantizer that jointly quantizes across the two different quantization filters. The method according to claim 3.
6. Each of the transfer functions from each of the two subband streams to each of the two quantized intermediate substreams is an all-pass response. The method of claim 1.
7. The first allpass response is a square root of 1.0 and 0.527864045. -15 The second allpass response has coefficients in the range of 1.0 and 0.105572809. -15 With coefficients in The method according to claim 6.
8. The first all-pass response is 2, 1.0, 0.3644245374. -15 Within, and 0.01036373471 of 2 -15 The second allpass response has coefficients in the range 1.0, 0.8365625224. -15 Within, and 0.09327361235 of 2 -15 With coefficients in The method according to claim 6.
9. A band joiner configured to carry out the method of any one of claims 1-8.
10. A computer program arranged to cause a processor to carry out the method according to any one of claims 1 to 8 when said computer program is executed by said processor.
Citation Information
Patent Citations
A Lossless Encoding Method for Waveform Data
JP1999511299A
Advanced quantizer
US20160042744A1