METHOD AND APPARATUS FOR DECODING STEREO LOUDSPEAKER SIGNALS FROM A HIGHER-ORDER AMBISONICS AUDIO SIGNAL

Abstract
Decoding of Ambisonics representations for a stereo loudspeaker setup is known for first-order Ambisonics audio signals. But such first-order Ambisonics approaches have either high negative side lobes or poor localisation in the frontal region. The invention deals with the processing for stereo decoders for higher-order Ambisonics HOA.
Description
TECHNICAL FIELD

The invention relates to a method and to an apparatus for decoding stereo loudspeaker signals from a higher-order Ambisonics audio signal using panning functions for sampling points on a circle.


BACKGROUND

Decoding of Ambisonics representations for a stereo loudspeaker or headphone setup is known for first-order Ambisonics, e.g. from equation (10) in J. S. Bamford, J. Vender-kooy, “Ambisonic sound for us”, Audio Engineering Society Preprints, Convention paper 4138 presented at the 99th Convention, October 1995, New York, and from Xiph Wiki-Ambisonics http://wiki.xiph.org/index.php/Ambisonics #Default_channel_conversions_from_B-Format. These approaches are based on Blumlein stereo as disclosed in GB patent 394325.


Another approach uses mode-matching: M. A. Poletti, “Three-Dimensional Surround Sound Systems Based on Spherical Harmonics”, J. Audio Eng. Soc., vol. 53(11), pp. 1004-125 November 2005.


Invention

Such first-order Ambisonics approaches have either high negative side lobes as with Ambisonics decoders based on Blumlein stereo (GB 394325) with virtual microphones having figure-of-eight patterns (cf. section 3.3.4.1 in S. Weinzierl, “Handbuch der Audiotechnik”, Springer, Berlin, 2008), or a poor localisation in the frontal direction. With negative side lobes, for instance, sound objects from the back right direction are played back on the left stereo loudspeaker.


A problem to be solved by the invention is to provide an Ambisonics signal decoding with improved stereo signal output.


This invention describes the processing for stereo decoders for higher-order Ambisonics HOA audio signals. The desired panning functions can be derived from a panning law for placement of virtual sources between the loudspeakers. For each loudspeaker, a desired panning function for all possible input directions is defined. The Ambisonics decoding matrix is computed similar to the corresponding description in J. M. Batke, F. Keiler, “Using VBAP-derived panning functions for 3D Ambisonics decoding”, Proc. of the 2nd International Symposium on Ambisonics and Spherical Acoustics, May 6-7, 2010, Paris, France, URL http://ambisonics10.ircam.fr/drupal/files/proceedings/presentations/O14_47.pdf, and WO 2011/117399 A1. The panning functions are approximated by circular harmonic functions, and with increasing Ambisonics order the desired panning functions are matched with decreasing error. In particular, for the frontal region in-between the loudspeakers, a panning law like the tangent law or vector base amplitude panning (VBAP) can be used. For the directions to the back beyond the loudspeaker positions, panning functions with a slight attenuation of sounds from these directions are used.


A special case is the use of one half of a cardioid pattern pointing to the loudspeaker direction for the back directions.


In the invention, the higher spatial resolution of higher order Ambisonics is exploited especially in the frontal region and the attenuation of negative side lobes in the back directions increases with increasing Ambisonics order.


The invention can also be used for loudspeaker setups with more than two loudspeakers that are placed on a half circle or on a segment of a circle smaller than a half circle.


Also, it facilitates more artistic downmixes to stereo where some spatial regions receive more attenuation. This is beneficial for creating an improved direct-sound-to-diffuse-sound ratio enabling a better intelligibility of dialogs.


A stereo decoder according to the invention meets some important properties: good localisation in the frontal direction between the loudspeakers, only small negative side lobes in the resulting panning functions, and a slight attenuation of back directions. Also, it enables attenuation or masking of spatial regions which otherwise could be perceived as disturbing or distracting when listening to the two-channel version.


In comparison to WO 2011/117399 A1, the desired panning function is defined circle segment-wise, and in the frontal region in-between the loudspeaker positions a well-known panning processing (e.g. VBAP or tangent law) can be used while the rear directions can be slightly attenuated. Such properties are not feasible when using first-order Ambisonics decoders.


In principle, the inventive method is suited for decoding stereo loudspeaker signals l(t) from a higher-order Ambisonics audio signal a(t), said method including the steps:

    • calculating, from azimuth angle values of left and right loudspeakers and from the number S of virtual sampling points on a circle, a matrix G containing desired panning functions for all virtual sampling points,


      wherein






G
=

[





g
L

(

ϕ
1

)








g
L

(

ϕ
S

)







g
R

(

ϕ
1

)








g
R

(

ϕ
S

)




]





and the gL(ϕ) and gR(ϕ) elements are the panning functions for the S different sampling points;

    • determining the order N of said Ambisonics audio signal a(t);
    • calculating from said number S and from said order N a mode matrix Ξ and the corresponding pseudo-inverse Ξ+ of said mode matrix E, wherein Ξ=[y*(ϕ1), y*(ϕ2), . . . , y*(ϕs)] and y*(ϕ)=[Y−N(ϕ), . . . , Y0(ϕ), . . . , YN(ϕ)]T is the complex conjugation of the circular harmonics vector y(ϕ)=[Y−N(ϕ), . . . , Y0(ϕ), . . . , YN(ϕ)]T of said Ambisonics audio signal a(t) and Ym(ϕ) are the circular harmonic functions;
    • calculating from said matrices G and Ξ+ a decoding matrix D=GΞ+;
    • calculating the loudspeaker signals l(t)=Da(t).


In principle, the inventive method is suited for determining a decoding matrix D that can be used for decoding stereo loudspeaker signals l(t)=Da(t) from a 2-D higher-order Ambisonics audio signal a(t), said method including the steps:

    • receiving the order N of said Ambisonics audio signal a(t);
    • calculating, from desired azimuth angle values (ϕL, ϕR) of left and right loudspeakers and from the number S of virtual sampling points on a circle, a matrix G containing desired panning functions for all virtual sampling points,


      wherein






G
=

[





g
L

(

ϕ
1

)








g
L

(

ϕ
S

)







g
R

(

ϕ
1

)








g
R

(

ϕ
S

)




]





and the gL(ϕ) and gR(ϕ) elements are the panning functions for the S different sampling points;

    • calculating from said number S and from said order N a mode matrix Ξ and the corresponding pseudo-inverse Ξ+ of said mode matrix Ξ, wherein Ξ=[y*(ϕ1), y*(ϕ2), . . . , y*(ϕs)] and y*(ϕ)=[Y*−N(ϕ), . . . , Y*0(ϕ), . . . , Y*N(ϕ)]T is the complex conjugation of the circular harmonics vector y(ϕ)=[Y−N(ϕ), . . . , Y0(ϕ), . . . , YN(ϕ)]T of said Ambisonics audio signal a(t) and Ym(ϕ) are the circular harmonic functions;
    • calculating from said matrices G and Ξ+ a decoding matrix D=GΞ+.


In principle, the inventive apparatus is suited for decoding stereo loudspeaker signals l(t) from a higher-order Ambisonics audio signal a(t), said apparatus including:

    • means being adapted for calculating, from azimuth angle values of left and right loudspeakers and from the number S of virtual sampling points on a circle, a matrix G containing desired panning functions for all virtual sampling points,


      wherein






G
=

[





g
L

(

ϕ
1

)








g
L

(

ϕ
S

)







g
R

(

ϕ
1

)








g
R

(

ϕ
S

)




]





and the gL(ϕ) and gR(ϕ) elements are the panning functions for the S different sampling points;

    • means being adapted for determining the order N of said Ambisonics audio signal a(t);
    • means being adapted for calculating from said number S and from said order N a mode matrix Ξ and the corresponding pseudo-inverse Ξ+ of said mode matrix E, wherein Ξ=[y*(ϕ1), y*(ϕ2), . . . , y*(ϕs)] and y*(ϕ)=[Y*−N(ϕ) . . . , Y*0(ϕ), . . . , Y*N(ϕ)]T is the complex conjugation of the circular harmonics vector y(ϕ)=[Y−N(ϕ), . . . , Y0(ϕ), . . . , YN(ϕ)]T of said Ambisonics audio signal a(t) and Ym(ϕ) are the circular harmonic functions;
    • means being adapted for calculating from said matrices G and Ξ+ a decoding matrix D=GΞ+;
    • means being adapted for calculating the loudspeaker signals l(t)=Da(t).


In one example, the present invention is directed to a method for determining a decoding matrix D for decoding stereo loudspeaker signals from a higher-order Ambisonics audio signal, said method comprising:

    • determining the order N of the Ambisonics audio signal;
    • determining based on azimuth angle values of loudspeakers and a number S of virtual sampling points on a sphere, a matrix G containing desired panning function values for all virtual sampling points;
    • determining a matrix Ξ+ based on the number S and an order N of the Ambisonics audio signal;
    • determining from said matrices G and Ξ+ a decoding matrix D.


In one example, the present invention is directed to an apparatus for determining a decoding matrix D for decoding stereo loudspeaker signals from a higher-order Ambisonics audio signal, said apparatus comprising:

    • means for determining the order N of the Ambisonics audio signal;
    • means for determining based on azimuth angle values of loudspeakers and a number S of virtual sampling points on a sphere, a matrix G containing desired panning function values for all virtual sampling points;
    • means for determining a matrix Ξ+ based on the number S and the order N;
    • means for determining from said matrices G and Ξ+ a decoding matrix D.


Advantageous additional embodiments of the invention are disclosed in the respective dependent claims.





DRAWINGS

Exemplary embodiments of the invention are described with reference to the accompanying drawings:



FIG. 1 illustrate desired panning functions, loudspeaker positions ϕL=30°, ϕR=−30°;



FIG. 2 illustrate desired panning functions as polar diagram, loudspeaker positions ϕL=30°, ϕR=−30°;



FIG. 3 illustrate resulting panning function for N=4, loudspeaker positions ϕL=30°, ϕR=−30°;



FIG. 4 illustrate resulting panning functions for N=4 as polar diagram, loudspeaker positions ϕL=30°, ϕR=−30°;



FIG. 5 illustrates block diagram of the processing according to the invention.





EXEMPLARY EMBODIMENTS

In a first step in the decoding processing, the positions of the loudspeakers have to be defined. The loudspeakers are assumed to have the same distance from the listening position, whereby the loudspeaker positions are defined by their azimuth angles. The azimuth is denoted by ϕ and is measured counter-clockwise. The azimuth angles of the left and right loudspeaker are ϕL and ϕR, and in a symmetric setup ϕR=−ϕL. A typical value is ϕL=30°. In the following description, all angle values can be interpreted with an offset of integer multiples of 2π (rad) or 360°.


The virtual sampling points on a circle are to be defined. These are the virtual source directions used in the Ambisonics decoding processing, and for these directions the desired panning function values for e.g. two real loudspeaker positions are defined. The number of virtual sampling points is denoted by S, and the corresponding directions are equally distributed around the circle, leading to











ϕ
s

=

2

π


s
S



,

s
=
1

,


,

S
.





(
1
)







S should be greater than 2N+1, where N denotes the Ambisonics order. Experiments show that an advantageous value is S=8N.


The desired panning functions gL(ϕ) and gR (ϕ) for the left and right loudspeakers have to be defined. In contrast to the approach from WO 2011/117399 A1 and the above-mentioned Batke/Keiler article, the panning functions are defined for multiple segments where for the segments different panning functions are used. For example, for the desired panning functions three segments are used:

    • a) For the frontal direction between the two loudspeakers a well-known panning law is used, e.g. tangent law or, equivalently, vector base amplitude panning (VBAP) as described in V. Pulkki, “Virtual sound source positioning using vector base amplitude panning”, J. Audio Eng. Society, 45(6), pp. 456-466, June 1997.
    • b) For directions beyond the loudspeaker circle section positions a slight attenuation for the back directions is defined, whereby this part of the panning function is approaching the value of zero at an angle approximately opposite the loudspeaker position.
    • c) The remaining part of the desired panning functions is set to zero in order to avoid playback of sounds from the right on the left loudspeaker and sounds from the left on the right loudspeaker.


The points or angle values where the desired panning functions are reaching zero are defined by ϕL,0 for the left and ϕR,0 for the right loudspeaker. The desired panning functions for the left and right loudspeakers can be expressed as:











g
L

(
ϕ
)

=

{






g

L
,
1


(
ϕ
)

,





ϕ
R

<
ϕ
<

ϕ
L









g

L
,
2


(
ϕ
)

,





ϕ
L

<
ϕ
<

ϕ

L
,
0








0
,





ϕ

L
,
0


<
ϕ
<

ϕ
R










(
2
)














g
R

(
ϕ
)

=

{







g

R
,
1


(
ϕ
)

,





ϕ
R

<
ϕ
<

ϕ
L









g

R
,
2


(
ϕ
)

,





ϕ

R
,
0


<
ϕ
<

ϕ
R







0
,





ϕ
L

<
ϕ
<

ϕ

R
,
0






.






(
3
)







The panning functions gL,1(ϕ) and gR,1(ϕ) define the panning law between the loudspeaker positions, whereas the panning functions gL,2(ϕ) and gR,2(ϕ) typically define the attenuation for backward directions. At the intersection points the following properties should be satisfied:











g

L
,
2


(

ϕ
L

)

=


g

L
,
1


(

ϕ
L

)





(
4
)














g

L
,
2


(

ϕ

L
,
0


)

=
0




(
5
)














g

R
,
2


(

ϕ
R

)

=


g

R
,
1


(

ϕ
R

)





(
6
)














g

R
,
2


(

ϕ

R
,
0


)

=
0.




(
7
)







The desired panning functions are sampled at the virtual sampling points. A matrix containing the desired panning function values for all virtual sampling points is defined by:









G
=

[





g
L

(

ϕ
1

)








g
L

(

ϕ
S

)







g
R

(

ϕ
1

)








g
R

(

ϕ
S

)




]





(
8
)







The real or complex valued Ambisonics circular harmonic functions are Ym(ϕ) with m=−N, . . . , N where N is the Ambisonics order as mentioned above. The circular harmonics are represented by the azimuth-dependent part of the spherical harmonics, cf. Earl G. Williams, “Fourier Acoustics”, vol. 93 of Applied Mathematical Sciences, Academic Press, 1999.


With the real-valued circular harmonics











S
m

(
ϕ
)

=



N
~

m



{





cos

(

m

ϕ

)

,




m

0







sin

(




"\[LeftBracketingBar]"

m


"\[RightBracketingBar]"



ϕ

)

,




m
<
0










(
9
)







the circular harmonic functions are typically defined by











Y
m

(
ϕ
)

=

{







N
m



e

im

ϕ



,




complex
-
valued








S
m

(
ϕ
)

,




real
-
valued




,






(
10
)







wherein Ñm and Nm are scaling factors depending on the used normalisation scheme.


The circular harmonics are combined in a vector










y

(
ϕ
)

=



[



Y

-
N


(
ϕ
)

,


,


Y
0

(
ϕ
)

,


,


Y
N

(
ϕ
)


]

T

.





(
11
)







Complex conjugation, denoted by (⋅)*, yields











y
*

(
ϕ
)

=



[



Y

-
N

*

(
ϕ
)

,


,


Y
0
*

(
ϕ
)

,


,


Y
N
*

(
ϕ
)


]

T

.





(
12
)







The mode matrix for the virtual sampling points is defined by









Ξ
=


[



y
*

(

ϕ
1

)

,


y
*

(

ϕ
2

)

,


,


y
*

(

ϕ
S

)


]

.





(
13
)







The resulting 2-D decoding matrix is computed by










D
=

G


Ξ
+



,




(
14
)







with Ξ+ being the pseudo-inverse of matrix Ξ. For equally distributed virtual sampling points as given in equation (1), the pseudo-inverse can be replaced by a scaled version of ΞH, which is the adjoint (transposed and complex conjugate) of Ξ. In this case the decoding matrix is










D
=

α

G


Ξ
H



,




(
15
)







wherein the scaling factor α depends on the normalisation scheme of the circular harmonics and on the number of design directions S.


Vector l(t) representing the loudspeaker sample signals for time instance t is calculated by










l

(
t
)

=


Da

(
t
)

.





(
16
)







When using 3-dimensional higher-order Ambisonics signals a(t) as input signals, an appropriate conversion to the 2-dimensional space is applied, resulting in converted Ambisonics coefficients a′(t). In this case equation (16) is changed to l(t)=Da′(t).


It is also possible to define a matrix D3D, which already includes that 3D/2D conversion and is directly applied to the 3D Ambisonics signals a(t).


In the following, an example for panning functions for a stereo loudspeaker setup is described. In-between the loudspeaker positions, panning functions gL,1(ϕ) and gR,1(ϕ) from eq. (2) and eq. (3) and panning gains according to VBAP are used. These panning functions are continued by one half of a cardioid pattern having its maximum value at the loudspeaker position. The angles ϕL,0 and ϕR,0 are defined so as to have positions opposite to the loudspeaker positions:










ϕ

L
,
0


=


ϕ
L

+
π





(
17
)













ϕ

R
,
0


=


ϕ
R

+

π
.






(
18
)







Normalised panning gains are satisfying gL,1L)=1 and gR,1R)=1. The cardioid patterns pointing towards ϕL and ϕR are defined by:











g

L
,
2


(
ϕ
)

=


1
2



(

1
+

cos

(

ϕ
-

ϕ
L


)


)






(
19
)














g

R
,
2


(
ϕ
)

=


1
2




(

1
+

cos

(

ϕ
-

ϕ
R


)


)

.






(
20
)







For the evaluation of the decoding, the resulting panning functions for arbitrary input directions can be obtained by









W
=

D

ϒ





(
21
)







where Υ is the mode matrix of the considered input directions. W is a matrix that contains the panning weights for the used input directions and the used loudspeaker positions when applying the Ambisonics decoding process.



FIG. 1 and FIG. 2 depict the gain of the desired (i.e. theoretical or perfect) panning functions vs. a linear angle scale as well as in polar diagram format, respectively.


The resulting panning weights for Ambisonics decoding are computed using eq. (21) for the used input directions. FIG. 3 and FIG. 4 show, calculated for an Ambisonics order N=4, the corresponding resulting panning functions vs. a linear angle scale as well as in polar diagram format, respectively.


The comparison of FIGS. 3/4 with FIGS. 1/2 shows that the desired panning functions are matched well and that the resulting negative side lobes are very small.


In the following, an example for a 3D to 2D conversion is provided for complex-valued spherical and circular harmonics (for real-valued basis functions it can be carried out in a similar way). The spherical harmonics for 3D Ambisonics are:













Y
^

n
m

(

θ
,
φ

)

=


M

n
,
m





P
n
m

(

cos

(
θ
)

)



e

im

φ




,




(
21
)







wherein n=0, . . . , N is the order index, m=−n, . . . , n is the degree index, Mn,m is the normalisation factor dependent on the normalisation scheme, θ is the inclination angle and Pnm(⋅) are the associated Legendre functions. With given Ambisonics coefficients Ãnm for the 3D case, the 2D coefficients are calculated by











A
m

=


α
m




A
^




"\[LeftBracketingBar]"

m


"\[RightBracketingBar]"


m



,

m
=

-
N


,


,
N




(
22
)







with the scaling factors











α
m

=


N
m



M




"\[LeftBracketingBar]"

m


"\[RightBracketingBar]"


,
m





P



"\[LeftBracketingBar]"

m


"\[RightBracketingBar]"


m

(
0
)




,

m
=

-
N


,


,

N
.





(
23
)







In FIG. 5, step or stage 51 for calculating the desired panning function receives the values of the azimuth angles ϕL and ϕR of the left and right loudspeakers as well as the number S of virtual sampling points, and calculates there from—as described above—matrix G containing the desired panning function values for all virtual sampling points. From Ambisonics signal a(t) the order N is derived in step/stage 52. From S and N the mode matrix Ξ is calculated in step/stage 53 based on equations 11 to 13.


Step or stage 54 computes the pseudo-inverse Ξ+ of matrix E. From matrices G and Ξ+ the decoding matrix D is calculated in step/stage 55 according to equation 15. In step/stage 56, the loudspeaker signals l(t) are calculated from Ambisonics signal a(t) using decoding matrix D. In case the Ambisonics input signal a(t) is a three-dimensional spatial signal, a 3D-to-2D conversion can be carried out in step or stage 57 and step/stage 56 receives the 2D Ambisonics signal a′(t).

Claims
  • 1. A method for decoding an Higher-Order Ambisonics (HOA) audio signal, the method comprising: receiving the HOA audio signal;determining a matrix G of panning function values, wherein the matrix G contains, for each of a number S of virtual sampling points on a sphere, gain vectors g1 . . . gs, wherein at least a first-panning function value for a first virtual sampling point located opposite to a loudspeaker position approaches zero, and at least a second panning function value for a second source located close to the loudspeaker position has a value not approaching zero;receiving a mode matrix, wherein the mode matrix was determined based on the number S of virtual sampling points and an order of the HOA audio signal;determining a decoding matrix D based on the matrix G and the mode matrix; andrendering, by at least one processor, the HOA audio signal to stereo loudspeaker signals based on the decoding matrix D.
  • 2. The method of claim 1, wherein the matrix G has a size L×S, wherein L corresponds to a number of loudspeakers.
  • 3. The method of claim 2, wherein the gain vectors g1 . . . gs, are directed to achieve a panned mix in S directions of the L loudspeakers.
  • 4. A non-transitory computer-readable medium having stored thereon instructions, that when executed by one or more processors, cause one or more processors to perform the method of claim 1.
  • 5. An apparatus for decoding an Higher-Order Ambisonics (HOA) audio signal, the apparatus comprising: a first receiver configured to receive the HOA audio signal;a first processor for determining a matrix G of panning function values, wherein the matrix G contains, for each of a number S of virtual sampling points on a sphere, gain vectors g1 . . . gs, wherein at least a first panning function value for a first virtual sampling point located opposite to a loudspeaker position approaches zero, and at least a second panning function value for a second source located close to the loudspeaker position has a value not approaching zero;a second receiver for receiving a mode matrix, wherein the mode matrix was determined based on the number S of virtual sampling points and an order of the HOA audio signal;a second processor for determining a decoding matrix D based on the matrix G and the mode matrix; anda renderer for rendering the HOA audio signal to stereo loudspeaker signals based on the decoding matrix D.
Priority Claims (1)
Number Date Country Kind
12305356.3 Mar 2012 EP regional
CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No. 17/521,762, filed Nov. 8, 2021, which is a continuation of U.S. patent application Ser. No. 16/538,080, filed Aug. 12, 2019, now U.S. Pat. No. 11,172,317, which is a division of U.S. patent application Ser. No. 15/876,404, filed Jan. 22, 2018, now U.S. Pat. No. 10,433,090 which is division of U.S. patent application Ser. No. 15/479,108, filed Apr. 4, 2017, now U.S. Pat. No. 9,913,062, which is continuation of Ser. No. 14/386,784, filed Sep. 19, 2014, now U.S. Pat. No. 9,666,195, which U.S. National Stage Entry of PCT/EP2013/055792, filed Mar. 20, 2013, which claims priority to European Patent Application No. 12305356.3, filed Mar. 28, 2012, each of which is incorporated by reference in its entirety.

Divisions (2)
Number Date Country
Parent 15876404 Jan 2018 US
Child 16538080 US
Parent 15479108 Apr 2017 US
Child 15876404 US
Continuations (3)
Number Date Country
Parent 17521762 Nov 2021 US
Child 18661390 US
Parent 16538080 Aug 2019 US
Child 17521762 US
Parent 14386784 Sep 2014 US
Child 15479108 US