This application claims the benefit, under 35 U.S.C. §365 of International Application PCT/EP2014/063306, filed Jun. 24, 2014, which was published in accordance with PCT Article 21(2) on Jan. 15, 2015 in English and which claims the benefit of European patent application No. 13305986.5, filed Jul. 11, 2013.
The invention relates to a method and to an apparatus for generating from a coefficient domain representation of HOA signals a mixed spatial/coefficient domain representation of said HOA signals, wherein the number of the HOA signals can be variable.
Higher Order Ambisonics denoted HOA is a mathematical description of a two- or three-dimensional sound field. The sound field may be captured by a microphone array, designed from synthetic sound sources, or it is a combination of both. HOA can be used as a transport format for two- or three-dimensional surround sound. In contrast to loudspeaker-based surround sound representations, an advantage of HOA is the reproduction of the sound field on different loudspeaker arrangements. Therefore, HOA is suited for a universal audio format.
The spatial resolution of HOA is determined by the HOA order. This order defines the number of HOA signals that are describing the sound field. There are two representations for HOA, which are called the spatial domain and the coefficient domain, respectively. In most cases HOA is originally represented in the coefficient domain, and such representation can be converted to the spatial domain by a matrix multiplication (or transform) as described in EP 2469742 A2. The spatial domain consists of the same number of signals as the coefficient domain. However, in spatial domain each signal is related to a direction, where the directions are uniformly distributed on the unit sphere. This facilitates analysing of the spatial distribution of the HOA representation. Coefficient domain representations as well as spatial domain representations are time domain representations.
In the following, basically, the aim is to use for PCM transmission of HOA representations as far as possible the spatial domain in order to provide an identical dynamic range for each direction. This means that the PCM samples of the HOA signals in the spatial domain have to be normalised to a pre-defined value range. However, a drawback of such normalisation is that the dynamic range of the HOA signals in the spatial domain is smaller than in the coefficient domain. This is caused by the transform matrix that generates the spatial domain signal from the coefficient domain signals.
In some applications HOA signals are transmitted in the coefficient domain, for example in the processing described in EP 13305558.2 in which all signals are transmitted in the coefficient domain because a constant number of HOA signals and a variable number of extra HOA signals are to be transmitted. But, as mentioned above and shown EP 2469742 A2, a transmission in the coefficient domain is not beneficial. As a solution, the constant number of HOA signals can be transmitted in the spatial domain and only the extra HOA signals with variable number are transmitted in the coefficient domain. A transmission of the extra HOA signals in the spatial domain is not possible since a time-variant number of HOA signals would result in time-variant coefficient-to-spatial domain transform matrices, and discontinuities, which are suboptimal for a subsequent perceptual coding of the PCM signals, could occur in all spatial domain signals.
To ensure the transmission of these extra HOA signals without exceeding a pre-defined value range, an invertible normalisation processing can be used that is designed to prevent such signal discontinuities, and that also achieves an efficient transmission of the inversion parameters.
Regarding the dynamic range of the two HOA representations and normalisation of HOA signals for PCM coding, it is derived in the following whether such normalisation should take place in coefficient domain or in spatial domain.
In the coefficient time domain, the HOA representation consists of successive frames of N coefficient signals dn(k), n=0, . . . , N−1, where k denotes the sample index and n denotes the signal index.
These coefficient signals are collected in a vector d(k)=[d0(k), . . . , dN-1(k)]T in order to obtain a compact representation.
Transformation to spatial domain is performed by the N×N transform matrix
as defined in EP 12306569.0, see the definition of ΞGRID in connection with equations (21) and (22).
The spatial domain vector w(k)=[w0(k) . . . wN-1(k)]T is obtained from
w(k)=Ψ−1d(k), (1)
where Ψ−1 is the inverse of matrix Ψ.
The inverse transformation from spatial to coefficient domain is performed by
d(k)=Ψw(k). (2)
If the value range of the samples is defined in one domain, then the transform matrix Ψ automatically defines the value range of the other domain. The term (k) for the k-th sample is omitted in the following.
Because the HOA representation is actually reproduced in spatial domain, the value range, the loudness and the dynamic range are defined in this domain. The dynamic range is defined by the bit resolution of the PCM coding. In this application, ‘PCM coding’ means a conversion of floating point representation samples into integer representation samples in fix-point notation.
For the PCM coding of the HOA representation, the N spatial domain signals have to be normalised to the value range of −1≦wn<1 so that they can be up-scaled to the maximum PCM value Wmax and rounded to the fix-point integer PCM notation
w′n=└wnWmax┘. (3)
Remark: this is a generalised PCM coding representation. The value range for the samples of the coefficient domain can be computed by the infinity norm of matrix Ψ, which is defined by
∥Ψ∥∞=maxnΣm=1N=|ψnm|, (4)
and the maximum absolute value in the spatial domain wmax=1 to −∥Ψ∥∞wmax≦dn<∥Ψ∥∞wmax. Since the value of ∥Ψ∥∞ is greater than ‘1’ for the used definition of matrix Ψ, the value range of dn increases.
The reverse means that normalisation by ∥Ψ∥∞ is required for a PCM coding of the signals in the coefficient domain since −1≦dn/∥Ψ∥∞<1. However, this normalisation reduces the dynamic range of the signals in coefficient domain, which would result in a lower signal-to-quantisation-noise ratio. Therefore a PCM coding of the spatial domain signals should be preferred.
A problem to be solved by the invention is how to transmit part of spatial domain desired HOA signals in coefficient domain using normalisation, without reducing the dynamic range in the coefficient domain. Further, the normalised signals shall not contain signal level jumps such that they can be perceptually coded without jump-caused loss of quality. This problem is solved by the methods disclosed in claims 1 and 6. Apparatuses that utilise these methods are disclosed in claims 2 and 7, respectively.
In principle, the inventive generating method is suited for generating from a coefficient domain representation of HOA signals a mixed spatial/coefficient domain representation of said HOA signals, wherein the number of said HOA signals can be variable over time in successive coefficient frames, said method including the steps:
In principle the inventive generating apparatus is suited for generating from a coefficient domain representation of HOA signals a mixed spatial/coefficient domain representation of said HOA signals, wherein the number of said HOA signals can be variable over time in successive coefficient frames, said apparatus including:
In principle, the inventive decoding method is suited for decoding a mixed spatial/coefficient domain representation of coded HOA signals, wherein the number of said HOA signals can be variable over time in successive coefficient frames and wherein said mixed spatial/coefficient domain representation of coded HOA signals was generated according to the above inventive generating method, said decoding including the steps:
In principle the inventive decoding apparatus is suited for decoding a mixed spatial/coefficient domain representation of coded HOA signals, wherein the number of said HOA signals can be variable over time in successive coefficient frames and wherein said mixed spatial/coefficient domain representation of coded HOA signals was generated according to the above inventive generating method, said decoding apparatus including:
Advantageous additional embodiments of the invention are disclosed in the respective dependent claims.
Exemplary embodiments of the invention are described with reference to the accompanying drawings, which show in:
Regarding the PCM coding of an HOA representation in the spatial domain, it is assumed that (in floating point representation) −1≦wn<1 is fulfilled so that the PCM transmission of an HOA representation can be performed as shown in
The HOA decoder de-multiplexes the signals w′ from the received transmission HOA format in de-multiplexer step or stage 14, and re-transforms them in step or stage 15 to the coefficient domain signals d′ using equation (2). This inverse transform increases the dynamic range of d′ so that the transform from spatial domain to coefficient domain always includes a format conversion from integer (PCM) to floating point.
The standard HOA transmission of
According to the invention, the processing described in connection with
In step or stage 20, the HOA encoder separates the HOA vector d into two vectors d1 and d2, where the number M of HOA coefficients for the vector d1 is constant and the vector d2 contains a variable number K of HOA coefficients. Because the signal indices n are time-invariant for the vector d1, the PCM coding is performed in spatial domain in steps or stages 21, 22, 23, 24 and 25 with signals corresponding w1 and w1′ shown in the lower signal path of
The number of HOA coefficients, or the size, K of the vector d2 is time-variant and the indices of the transmitted HOA signals n can change over time. This prevents a transmission in spatial domain because a time-variant transform matrix would be required, which would result in signal discontinuities in all perceptually encoded HOA signals (a perceptual coding step or stage is not depicted). But such signal discontinuities should be avoided because they would reduce the quality of the perceptual coding of the transmitted signals. Thus, d2 is to be transmitted in coefficient domain. Due to the greater value range of the signals in coefficient domain, the signals are to be scaled in step or stage 26 by factor 1/∥Ψ∥∞ before PCM coding can be applied in step or stage 27. However, a drawback of such scaling is that the maximum absolute value of ∥Ψ∥∞ is a worst-case estimate, which maximum absolute sample value will not occur very frequently because a normally to be expected value range is smaller. As a result, the available resolution for the PCM coding is not used efficiently and the signal-to-quantisation-noise ratio is low.
The output signal d2″ of de-multiplexer step/stage 24 is inversely scaled in step or stage 28 using factor ∥Ψ∥∞. The resulting signal d2′″ is combined in step or stage 29 with signal d1′, resulting in decoded coefficient domain HOA signal d′.
According to the invention, the efficiency of the PCM coding in coefficient domain can be increased by using a signal-adaptive normalisation of the signals. However, such normalisation has to be invertible and uniformly continuous from sample to sample. The required block-wise adaptive processing is shown in
In the adaptive normalisation in step/stage 36, a uniformly continuous transition function is applied to the samples of the current input coefficient block in order to continuously change the gain from a last input coefficient block to the gain of the next input coefficient block. This kind of processing requires a delay of one block because a change of the normalisation gain has to be detected one input coefficient block ahead. The advantage is that the introduced amplitude modulation is small, so that a perceptual coding of the modulated signal has nearly no impact on the de-normalised signal.
Regarding implementation of the adaptive normalisation, it is performed independently for each HOA signal of D2(j). The signals are represented by the row vectors xnT of the matrix
wherein n denotes the indices of the transmitted HOA signals. xn is transposed because it originally is a column vector but here a row vector is required.
When starting the processing of the first block xn(0) the recursive input values are initialised by pre-defined values: the coefficients of vector xn(−1) can be set to zero, gain value gn(−2) should be set to ‘1’, and xn,max,sm(−2) should be set to a pre-defined average amplitude value.
Thereafter, the gain value of the last block gn(j−1), the corresponding value en(j−1) of the side information vector e(j−1), the temporally smoothed maximum value xn,max,sm(j−1) and the normalised signal vector xn′(j−1) are the outputs of the processing.
The aim of this processing is to continuously change the gain values applied to signal vector xn(j−1) from gn(j−2) to gn(j−1) such that the gain value gn(j−1) normalises the signal vector xn(j) to the appropriate value range.
In the first processing step or stage 41, each coefficient of signal vector xn(j)=[xn,0(j) . . . xn,L-1(j)] is multiplied by gain value gn(j−2), wherein gn(j−2) was kept from the signal vector xn(j−1) normalisation processing as basis for a new normalisation gain. From the resulting normalised signal vector xn(j) the maximum xn,max of the absolute values is obtained in step or stage 42 using equation (5):
xn,max=max0≦l<L|gn(j−2)xn,l(j)| (5)
In step or stage 43, a temporal smoothing is applied to xn,max using a recursive filter receiving a previous value xn,max,sm(j−2) of said smoothed maximum, and resulting in a current temporally smoothed maximum xn,max,sm(j−1). The purpose of such smoothing is to attenuate the adaptation of the normalisation gain over time, which reduces the number of gain changes and therefore the amplitude modulation of the signal. The temporal smoothing is only applied if the value xn,max is within a pre-defined value range. Otherwise xn,max,sm(j−1) is set to xn,max (i.e. the value of xn,max is kept as it is) because the subsequent processing has to attenuate the actual value of xn,max to the pre-defined value range. Therefore, the temporal smoothing is only active when the normalisation gain is constant or when the signal xn(j) can be amplified without leaving the value range. xn,max,sm(j−1) is calculated in step/stage 43 as follows:
wherein 0<a≦1 is the attenuation constant.
In order to reduce the bit rate for the transmission of vector e, the normalisation gain is computed from the current temporally smoothed maximum value xn,max,sm(j−1) and is transmitted as an exponent to the base of ‘2’. Thus
xn,max,sm(j−1)2e
has to be fulfilled and the quantised exponent en(j−1) is obtained from
in step or stage 44.
In periods, where the signal is re-amplified (i.e. the value of the total gain is increased over time) in order to exploit the available resolution for efficient PCM coding, the exponent en(j) can be limited, (and thus the gain difference between successive blocks) to a small maximum value, e.g. ‘1’. This operation has two advantageous effects. On one hand, small gain differences between successive blocks lead to only small amplitude modulations through the transition function, resulting in reduced cross-talk between adjacent sub-bands of the FFT spectrum (see the related description of the impact of the transition function on perceptual coding in connection with
The value of the total maximum amplification
gn(j−1)=gn(j−2)2e
can be limited e.g. to ‘1’. The reason is that, if one of the coefficient signals exhibits a great amplitude change between two successive blocks, of which the first one has very small amplitudes and the second one has the highest possible amplitude (assuming the normalisation of the HOA representation in the spatial domain), very large gain differences between these two blocks will lead to large amplitude modulations through the transition function, resulting in severe cross-talk between adjacent sub-bands of the FFT spectrum. This might be suboptimal for a subsequent perceptual coding a discussed below.
In step or stage 45, the exponent value en(j−1) is applied to a transition function so as to get a current gain value gn(j−1). For a continuous transition from gain value gn(j−2) to gain value gn(j−1) the function depicted in
where l=0, 1, 2, . . . ,L−1. The actual transition function vector
hn(j−1)=[hn(0) . . . hn(L−1)]T
with
hn(l)=gn(j−2)f(l)−e
is used for the continuous fade from gn(j−2) to gn(j−1). For each value of en(j−1) the value of hn(0) is equal to gn(j−2) since f(0)=1. The last value of f(L−1) is equal to 0.5, so that hn(L−1)=gn(j−2)0.5−e
In step or stage 46, the samples of the signal vector xn(j−1) are weighted by the gain values of the transition vector hn(j−1) in order to obtain
xn′(j−1)=xn(j−1)hn(j−1), (12)
where the ‘’ operator represents a vector element-wise multiplication of two vectors. This multiplication can also be considered as representing an amplitude modulation of the signal xn(j−1).
In more detail, the coefficients of the transition vector hn(j−1) [hn(0) . . . hn(L−1)]T are multiplied by the corresponding coefficients of the signal vector xn(j−1), where the value of hn(0) is hn(0)=gn(j−2) and the value of hn(L−1) is hn(L−1)=gn(j−1). Therefore the transition function continuously fades from the gain value gn(j−2) to the gain value gn(j−1) as depicted in the example of
The adaptive de-normalisation processing at decoder or receiver side is shown in
In step or stage 61 the exponent is applied to the transition function. To recover the value range of xn(j−1), equation (11) computes the transition vector hn(j−1) from the received exponent en(j−1), and the recursively computed gain gn(j−2). The gain gn(j−1) for the processing of the next block is set equal to hn(L−1).
In step or stage 62 the inverse gain is applied. The applied amplitude modulation of the normalisation processing is inverted by
xn′″(j−1)=xn″(j−1)hn(j−1)−1, (13)
where
and ‘’ is the vector element-wise multiplication that has been used at encoder or transmitter side. The samples of xn′(j−1) cannot be represented by the input PCM format of xn″(j−1) so that the de-normalisation requires a conversion to a format of a greater value range, like for example the floating point format.
Regarding side information transmission, for the transmission of the exponents en(j−1) it cannot be assumed that their probability is uniform because the applied normalisation gain would be constant for consecutive blocks of the same value range. Thus entropy coding, like for example Huffman coding, can be applied to the exponent values in order to reduce the required data rate.
One drawback of the described processing could be the recursive computation of the gain value gn(j−2). Consequently, the de-normalisation processing can only start from the beginning of the HOA stream.
A solution for this problem is to add access units into the HOA format in order to provide the information for computing gn(j−2) regularly. In this case the access unit has to provide the exponents
en,access=log2gn(j−2) (14)
for every t-th block so that gn(j−2)=2e
The impact on a perceptual coding of the normalised signal xn′(j−1) is analysed by the absolute value of the frequency response
of the function hn(l). The frequency response is defined by the Fast Fourier Transform (FFT) of hn(l) as shown in equation (15).
Since the amplitude modulation of xn(j−1) by hn(l) in time domain is equivalent to a convolution by Hn(u) in frequency domain, a steep decay of the frequency response Hn(u) reduces the cross-talk between adjacent sub-bands of the FFT spectrum of xn′(j−1). This is highly relevant for a subsequent perceptual coding of xn′(j−1) because the sub-band cross-talk has an influence on the estimated perceptual characteristics of the signal. Thus, for a steep decay of Hn(u), the perceptual encoding assumptions for xn′(j−1) are also valid for the un-normalised signal xn(j−1).
This shows that for small exponents a perceptual coding of xn′(j−1) is nearly equivalent to the perceptual coding of xn(j−1) and that a perceptual coding of the normalised signal has nearly no effects on the de-normalised signal as long as the magnitude of the exponent is small.
The inventive processing can be carried out by a single processor or electronic circuit at transmitting side and at receiving side, or by several processors or electronic circuits operating in parallel and/or operating on different parts of the inventive processing.
Number | Date | Country | Kind |
---|---|---|---|
13305986 | Jul 2013 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2014/063306 | 6/24/2014 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2015/003900 | 1/15/2015 | WO | A |
Number | Date | Country |
---|---|---|
2469742 | Jun 2012 | EP |
2743922 | Jun 2014 | EP |
2800401 | Nov 2014 | EP |
Entry |
---|
Daniel et al., “Multichannel audio coding based on minimum audible angle”, 40th International Conference: Spacial Audio: Sense the sound of space, Tokyo, Japan, Oct. 8, 2010, pp. 1-10. |
Number | Date | Country | |
---|---|---|---|
20160150341 A1 | May 2016 | US |