The invention relates to a method and to an apparatus for generating from a multi-channel 2D audio input signal a 3D sound representation signal which includes a HOA representation signal and channel object signals.
Recently a new format for 3D audio has been standardised as MPEG-H 3D Audio [1], but only a small number of 3D audio content in this format is available. To easily generate much of such content it is desired to convert existing 2D content, like 5.1, to 3D content which contains sound also from elevated positions. This way, it is possible to create 3D content without completely remixing the sound from the original sound objects.
Currently there is no simple and satisfying way to create 3D audio from existing 2D content. The conversion from 2D to 3D sound should spatially redistribute the sound from existing channels. Furthermore, this conversion (also called upmixing should enable a mixing artist to control this process.
There are a variety of representations of three-dimensional sound including channel-based approaches like 22.2, object based approaches and sound field oriented approaches like Higher Order Ambisonics (HOA). An HOA representation offers the advantage over channel based methods of being independent of a specific loudspeaker set-up and that its data amount is independent of the number of sound sources used. Thus, it is desired to use HOA as a format for transport and storage for this application.
A problem to be solved by the invention is to create with improved quality 3D audio from existing 2D audio content. This problem is solved by the method disclosed in claim 1. An apparatus that utilises this method is disclosed in claim 2.
Advantageous additional embodiments of the invention are disclosed in the respective dependent claims.
The 3D audio format for transport and storage comprises channel objects and an HOA representation. The HOA representation is used for an improved spatial impression with added height information. The channel objects are signals taken from the original 2D channel-based content with fixed spatial positions. These channel objects can be used for emphasising specific directions, e.g. if a mixing artist wants to emphasise the frontal channels. The spatial positions of the channel objects may be given as spherical coordinates or as an index from a list of available loudspeaker positions. The number of channel objects is Cch≤C, where C is the number of channels of the channel-based input signal. If an LFE (low frequency effects) channel exists it can be used as one of the channel objects.
For the HOA part, a representation of order N is used. This order determines the number O of HOA coefficients by O=(N+1)2. The HOA order affects the spatial resolution of the HOA representation, which improves with a growing order N. Typical HOA representations using order N=4 consist of O=25 HOA coefficient sequences.
The used signals (channel objects and HOA representation) can be data compressed in the MPEG-H 3D Audio format. The 3D audio scene can be rendered to the desired loudspeaker positions which allows playback on every type of loudspeaker setup.
In principle, the inventive method is adapted for generating from a multi-channel 2D audio input signal a 3D sound representation which includes a HOA representation and channel object signals, wherein said 3D sound representation is suited for a presentation with loudspeakers after rendering said HOA representation and combination with said channel object signals, said method including:
In principle the inventive apparatus is adapted for generating from a multi-channel 2D audio input signal a 3D sound representation which includes a HOA representation and channel object signals, wherein said 3D sound representation is suited for a presentation with loudspeakers after rendering said HOA representation and combination with said channel object signals, said apparatus including means adapted to:
Exemplary embodiments of the invention are described with reference to the accompanying drawings, which show in:
Even if not explicitly described, the following embodiments may be employed in any combination or sub-combination.
A.1 Use of Stems for Different Spatial Distribution
For film productions typically three separate stems are available: dialogue, music and special sound effects. A stem in this context means a channel-based mix in the input format for one of these signal types. The channel-wise weighted sum of all stems builds the final mix for delivery in the original format.
In general, it is assumed that the existing 2D content used as input signal (e.g. 5.1 surround) is available separately for each stem. Each of these stems indexed k=1, . . . , K may have separate metadata for upmixing to 3D audio.
Mk denotes the metadata used in the upmix process for the k-th stem. These metadata were generated by human interaction in a studio. The output of each upmixing step or stage 11, 12 (for the k-th stem) consists of a signal vector ych(k)(t) carrying a number Cch of channel objects and a signal vector yHOA(k)(t) carrying a HOA representation with O HOA coefficients. The channel objects for all stems and the HOA representations for all stems are combined individually in combiners 13, 14 by
y
ch(t)=Σk=1(k)(t), (1)
y
HOA(t)=Σk=1(k)(t). (2)
This kind of processing can also be applied in case no separate stems are available, i.e. K=1. But with the different signal types available in separate stems the spatial distribution of the created 3D sound field can be controlled more flexible. To correctly render the audio scene on the play-back side, the fixed positions of channel objects are stored, too.
A.2 Overview of Upmixing for Each Stem
The processing of one individual stem k is shown in
The metadata Mk shown in
M
k=(a(k), Xk, gch(k), grem(k)), (3)
the elements of which are described below.
The set I={1, 2, . . . , C} (4)
defines the channel indices of all input signals. For the channel objects, a vector a is defined which contains the channel indices of the input signals to be used for the transport signals ych(k)(t) of the channel objects. The number of elements in a is Cch.
Throughout this application small boldface letters are used as symbols for vectors. The same letter in non-boldface type, with a subscript integer index c, indicates the c-th element of that vector.
Thus, the vector a is defined by a=[a1, a2, . . . , ac
C
rem(k)=C−Cch(k). (5)
In each of the vectors a, a(k), r(k) every channel index can occur only once.
In
The metadata gch(k) and grem(k) define vectors with gain factors for the channel objects and the remaining channels. With these gain values the individual scaled signals are obtained with the gain applying steps or stages 221 and 222 by
{tilde over (x)}
ch,c
(k)(t)=gch,c(k)·xch,c(k)(t), c=1, . . . , Cch(k), (6)
{tilde over (x)}
rem,c
(k)(t)=grem,c(k)·xrem,c(k)(t), c=1, . . . , Crem(k). (7)
The zero channels adding step or stage 23 adds to signal vector {tilde over (x)}ch(k)(t) zero values corresponding to channel indices that are contained in a, but not in a(k). This way, the channel object output ych(k)(t) is extended to Cch channels. These channel objects are defined by
It is assumed that a and therefore also Cch are available as global information.
A.2.1 Creation of Additional Sound Signals for Spatial Distribution
The decorrelated signals creating step or stage 24 creates additional signals from the input channels x(k)(t) for further spatial distribution. In general these additional signals are decorrelated signals from the original input channels in order to avoid comb filtering effects or phantom sources when these newly created signals are added to the sound field. For the parameterisation of these additional signals a tuple
X
k=(T1(k), . . . , Tdecorr(k)(k)) (9)
from the metadata is used. Xk contains for each additional signal j a tuple Tj(k) of parameters with
T
j
(k)=(αj(k), fj(k), Ωj(k), gj(k)), j=1, . . . , Cdecorr(k), (10)
where Cdecorr(k) is the number of additional (decorrelated) signals in stem k. I.e., αj(k) and fj(k) are contained in Xk.
The creation of the decorrelated signals in step/stage 24 is shown in more detail in
In a mixer step or stage 31 the input signals to the decorrelators are computed by mixing the input channels using the vectors αj(k) containing the mixing weights:
x
decorrln,j
(k)(t)=αj(k)Tx(k)(t)=Σc=1Cαj,c(k)·xc(k)(t), j=1, . . . , Cdecorr(k). (11)
αj(k) and fj(k) are contained in Xk. This way a (down)mix of the input channels can be used as input to each decorrelator. In the special case where only one of the input channels is used directly as input to the decorrelator, the vector αj(k) with the mix gains contains at one position the value ‘one’ and ‘zero’ elsewhere. For j1≠j2 it is possible that αj
In step or stage 32 the decorrelated signals are computed. A typical approach for the decorrelation of audio signals is described in [4], where for example a filter is applied to the input signal in order to change its phase while the sound impression is preserved by preserving the magnitude spectrum of the signal. Other approaches for the computation of decorrelated signals can be used instead. For example, arbitrary impulse responses can be used that add reverberation to the signal and can change the magnitude spectrum of the signal. The configuration of each decorrelator is defined by fj(k), which is an integer number specifying e.g. the set of filter coefficients to be used. If the decorrelator uses long finite impulse response filters, the filtering operation can be efficiently realised using fast convolution. In case multiple decorrelated signals are generated from multiple identical input signals and the decorrelation is based on frequency domain processing (e.g. fast convolution using the FFT or a filter bank approach) this can be implemented most efficiently by performing only once the frequency analysis of the common input signal and applying the frequency domain processing and synthesis for each output channel separately.
The j-th element of the output vector xdec) orr(t) of step/stage 32 is computed by
x
decorr,j
(k)(t)=decorrf
where the function decorrf
The resulting signal xdecorr,j(k)(t) is the output of step/stage 24 in
{tilde over (x)}
decorr,j
(k)(t)=gj(k)·xdecorr,j(k)(t), j=1, . . . , Cdecorr(k), (13)
which are the elements of signal vector {tilde over (x)}decorr(k)(t).
A.2.2 Conversion of Spatially Distributed Signals to HOA
The signals from the signal vectors {tilde over (x)}rem(k)(t) and {tilde over (x)}decorr(k)(t) are converted to HOA as general plane waves with individual directions of incidence. First, in a combining step or stage 26, these signals are grouped into the signal vector xspat(k)(t) by
I.e., basically the elements of the two vectors {tilde over (x)}rem(k)(t) and {tilde over (x)}decorr(k)(t) are concatenated. The number of elements in vector xspat(k)(t) is Cspat(k)=Crem(k)+Cdecorr(k).
In HOA and spatial conversion step or stage 27 for each element of xspat(k)(t) a spatial direction is defined that is used for its conversion to HOA. Step/stage 27 also receives parameter N and positions (i.e. spatial positions for HOA conversion for remaining channels and decorrelated signals) from a second combining step or stage 29. Step or stage 28 extracts Ωj(k) with j=1, . . . , Cdecorr(k) from Xk. Step or stage 29 combines the positions Ωrem,c(k), c=1, . . . , Crem(k) of remaining channels and the positions Ωrem,c(k), c=1, . . . , Cdecorr(k) of decorrelated signals (taken from X k using step/stage 28).
In step/stage 27, the first Crem(k) elements (elements taken from {tilde over (x)}rem(k)(t)) are spatially positioned at the original channel directions as defined for the corresponding channels from input signal x(k)(t). These directions are defined as Ωrem,c(k) with c=1, . . . , Crem(k), where each direction vector contains the corresponding inclination and azimuth angles, see equation (27). The directions of the signals from vector {tilde over (x)}decorr(k)(t) are defined as Ωj(k) with j=1, . . . , Cdecorr(k), see equation (10). The choice of these directions influences the spatial distribution of the resulting 3D sound field. It is also possible to use time-varying spatial directions which are adapted to the audio content.
A mode vector dependent on direction Ω for HOA order N is defined by
s(Ω):=[S00(Ω) S1−1(Ω) S10(Ω) S11(Ω) . . . SNN−1(Ω) SNN(Ω)]T, (15)
where the spherical harmonics as defined in equation (33) are used. The mode matrix for the different directions of the signals from xspat(k)(t) is then defined by
κ·[s(Ωrem,1(k)) s(Ωrem,C
κ>0 being an arbitrary positive real-valued scaling factor. This factor is chosen such that, after rendering, the loudness of the signals converted to HOA matches the loudness of objects.
The HOA representation signal is then computed in step/stage 27 by
c
(k)(t)=Ψ(k)·xspat(k)(t) ∈O×1. (17)
This HOA representation can directly be taken as the HOA transport signal, or a subsequent conversion to a so-called equivalent spatial domain representation can be applied. The latter representation is obtained by rendering the original HOA representation c(k)(t) (see section C for definition, in particular equation (31)) consisting of O HOA coefficient sequences to the same number O of virtual loudspeaker signals wj(k)(t), 1≤j≤O, representing general plane wave signals. The order-dependent directions of incidence {circumflex over (Ω)}j(N), 1≤j≤O, may be represented as positions on the unit sphere (see also section C for the definition of the spherical coordinate system), on which they should be distributed as uniformly as possible (see e.g. [3] on the computation of specific directions). The advantage of this format is that the resulting signals have a value range of [−1,1] suited for a fixed-point representation. Thereby a control of the play-back level is facilitated.
Regarding the rendering process in detail, first all virtual loudspeaker signals are summarised in a vector as
w
(k)(t):=[w1(k)(t) . . . w0(k)(t)]T. (18)
Denoting the scaled mode matrix with respect to the virtual directions {circumflex over (Ω)}j(N), 1≤j≤O, by {circumflex over (Ψ)}, which is defined by
{circumflex over (Ψ)}:=κ·[s({circumflex over (Ω)}1(N)) s({circumflex over (Ω)}2(N)) . . . s({circumflex over (Ω)}O(N))]∈O×O, (19)
the rendering process can be formulated as a matrix multiplication
Thus, dependent on the use of the conversion to the spatial domain representation, the output HOA transport signal is
A.2.3 Use of Gains for Original Channels and Additional Sound Signals
With the gain factors applied to the channel objects and signals converted to HOA as defined in equations (6), (7), (13), the spatial distribution of the resulting 3D sound field is controlled. In general, it is also possible to use time-varying gains in order to use a signal-adaptive spatial distribution. The loudness of the created mix should be the same as for the original channel-based input. For adjusting the gain values to get the desired effect, in general a rendering of the transport signals (channel objects and HOA representation) to specific loudspeaker positions is required. These loudspeaker signals are typically used for a loudness analysis. The loudness matching to the original 2D audio signal could also be performed by the audio mixing artist when listening to the signals and adjusting the gain values.
In a subsequent processing in a studio, or at a receiver side, signal yHOA(k)(t) is rendered to loudspeakers, and signal ych(k)(t) is added to the corresponding signals for these loudspeakers.
First, the input signals are mixed according to equation (11) in order to obtain Cdecorr(k) channels contained in the signal vector xdecorrln(k)(t). Second, the desired gain factors are applied to these signals according to
{tilde over (x)}
decorrln,j
(k)(t)=gj(k)·xdecorrln,j(k)(t), j=1, . . . , Cdecorr(k). (23)
Third, the resulting signals in {tilde over (x)}decorrln,j(k)(t) are fed into decorrelators 451 using the corresponding parameters (see also equation (12)):
x
decorr,j
(k)(t)=decorrf
B Exemplary Configuration
In this section an exemplary configuration for the conversion of a 5.1 surround sound to 3D sound is considered. The signal flow for this example is shown in
For the channel objects Cch=4 channels are used, which are namely the front left/right/center channels and the LFE channel. Thus, the vector with the input channel indices for the channel objects is a=[1,2,3,4]T . In this example, the same number of channel objects is used for all stems. Thus, a(k)=a=[1,2,3,4]T and r(k)=[5,6]T for 1≤k≤K. With K=3 stems this results in Cch(k)=Cch=4 for k ∈ {1,2,3}. The number of remaining channels is therefore Crem(k)=C−Cch(k)=2 . In the given example the number of decorrelated signals is Cdecorr(k)=7. For the first six decorrelated signals the decorrelator 531 to 536 is applied with different filter settings to the individual input channels. The seventh decorrelator 57 is applied to a downmix of the input channels (except the LFE channel). This downmix is provided using multipliers or dividers 551 to 555 and a combiner 56. In this example the filter settings are fj(k)=j for j=1, . . . , Cdecorr(k).
The spatial directions used for the conversion to HOA are given in Table 2:
Table 3 shows for upmix to 3D example gain factors for all channels, which gain factors are applied in gain steps or stages 511-514, 521, 522, 541-546 and 58, respectively:
In this example the left/right surround channel signals are converted in step or stage 59 to HOA using the typical loudspeaker positions of these channels. From each of the channels L, R, L RS, RS one decorrelated version is placed at an elevated position with a modified azimuth value compared to the original loudspeaker position in order to create a better envelopment. From each of the left/right surround channels an additional decorrelated signal is placed in the 2D plane at the sides (azimuth angles ±90 degrees). The channel objects (except LFE) and the surround channels converted to HOA are slightly attenuated. The original loudness is maintained by the additional sound objects placed in the 3D space. The decorrelated version of the downmix of all input channels except the LFE is placed for HOA conversion above the sweet spot.
C Basics of Higher Order Ambisonics
Higher Order Ambisonics (HOA) is based on the description of a sound field within a compact area of interest, which is assumed to be free of sound sources. In that case the spatio-temporal behaviour of the sound pressure p(t,x) at time t and position x within the area of interest is physically fully determined by the homogeneous wave equation. In the following a spherical coordinate system is assumed as shown in
Then it can be shown (cf. [5]) that the Fourier transform of the sound pressure with respect to time denoted by t(.), i.e.
P(ω,x)=t(p(t,x))=∫−∞∞p(t,x)e−iωtdt, (25)
with ω denoting the angular frequency and i indicating the imaginary unit, can be expanded into the series of Spherical Harmonics according to
P(ω=kcs,r,θ,ϕ)=Σn=0NΣm=−nnAnm(k)jn(kr)Snm(θ,ϕ). (26)
In equation (26), cs denotes the speed of sound and k denotes the angular wave number, which is related to the angular frequency ω by
Further, jn(.) denotes the spherical Bessel functions of the first kind and Snm(θ,ϕ) denotes the real valued Spherical Harmonics of order n and degree m, which are defined in section C.1. The expansion coefficients Anm(k) depend only on the angular wave number k. Note that it has been implicitly assumed that sound pressure is spatially band-limited. Thus the series is truncated with respect to the order index n at an upper limit N, which is called the order of the HOA representation.
Since the area of interest (i.e. the sweet spot) is assumed to be free of sound sources, the sound field can be represented by a superposition of an infinite number of general plane waves arriving from all possible directions
Ω=(θ,ϕ), (27)
(t,x)=GPW(t,x,Ω)dΩ, (28)
i.e. where 2 indicates the unit sphere in the three-dimensional space and pGPW(t,x,Ω) denotes the contribution of the general plane wave from direction Ω to the pressure at time t and position x.
Evaluating the contribution of each general plane wave to the pressure in the coordinate origin xORIG=(0 0 0)T provides a time and direction dependent function
c(t,Ω)=GPW(t,x,Ω)|x=x
which is then for each time instant expanded into a series of Spherical Harmonics according to
c(t,Ω)=(θ,ϕ))=Σn=0NΣm=−nncnm(t)Snm(θ,ϕ). (30)
The weights cnm(t) of the expansion, regarded as functions over time t, are referred to as continuous-time HOA coefficient sequences and can be shown to always be real-valued. Collected in a single vector c(t) according to
c(t)=[c00(t) c1−1(t) c10(t) c11(t) c2−2(t) c2−1(t) c20(t) c21(t) c22(t) . . . cNN−1(t) cNN(t)]T (31)
they constitute the actual HOA sound field representation. The position index of an HOA coefficient sequence cnm(t) within the vector c(t) is given by n(n+1)+1+m. The overall number of elements in the vector c(t) is given by O=(N+1)2. It should be noted that the knowledge of the continuous-time HOA coefficient sequences is theoretically sufficient for perfect reconstruction of the sound pressure within the area of interest, because it can be shown that their Fourier transforms with respect to time, i.e. Cnm(ω)=t(cnm(t)), are related to the expansion coefficients Anm(k) (from equation (26)) by
A
n
m(k)=inCnm(ω=kcs). (32)
C.1 Definition of Real Valued Spherical Harmonics
The real valued spherical harmonics Snm(θ,ϕ) (assuming SN3D normalisation according to chapter 3.1 of [2]) are given by
with
The associated Legendre functions Pn,m(x) are defined as
with the Legendre polynomial Pn(x) and, unlike in [5], without the Condon-Shortley phase term There are also alternative definitions of ‘spherical harmonics’. In such case the transformation described is also valid.
For a storage or transmission of the 3D sound representation signal a superposition of channel objects and HOA representations of separate stems can be used.
Multiple decorrelated signals can be generated from multiple identical multi-channel 2D audio input signals x(k)(t) based on frequency domain processing, for example by fast convolution using an FFT or a filter bank. A frequency analysis of the common input signal is carried out only once and that frequency domain processing and is applied for each output channel separately.
The described processing can be carried out by a single processor or electronic circuit, or by several processors or electronic circuits operating in parallel and/or operating on different parts of the complete processing. The instructions for operating the processor or the processors according to the described processing can be stored in one or more memories. The at least one processor is configured to carry out these instructions.
[1] ISO/IEC JTC1/SC29/WG11 DIS 23008-3. Information technology—High efficiency coding and media delivery in heterogeneous environments—Part 3: 3D audio, July 2014.
[2] J. Daniel, “Représentation de champs acoustiques, application à la transmission et à la reproduction de scènes sonores complexes dans un contexte multimédia”, PhD thesis, Université Paris 6, 2001. URL http://gyronymo.free.fr/audio3D/downloads/These-original-version.zip
[3] J. Fliege, U. Maier, “A two-stage approach for computing cubature formulae for the sphere”, Technical report, Fachbereich Mathematik, Universität Dortmund, 1999. Node numbers are found at http://www.mathematik.uni-dortmund.de/lsx/research/projects/fliege/nodes/nodes.html.
[4] G. S. Kendall, “The decorrelation of audio signals and its impact on spatial imaginery”, Computer Music Journal, vol. 19, no. 4, pp. 71-87, 1995.
[5] E. G. Williams, “Fourier Acoustics”, Applied Mathematical Sciences, vol. 93, Academic Press, 1999.
Number | Date | Country | Kind |
---|---|---|---|
15306796.2 | Nov 2015 | EP | regional |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/EP2016/077382 | 11/11/2016 | WO | 00 |