IP Library › Granted Patent US 10,405,120
Granted Patent B2
US 10,405,120 · App. 15/647,121 · Granted Sep 3, 2019

Adaptive panner of audio objects

Inventors: Jun Wang (Beijing, CN); Giulio Cengarle (Barcelona, ES); Juan Felix Torres (Milsons Point, AU); Daniel Arteaga (Barcelona, ES)
Assignees: Dolby Laboratories Licensing Corporation; Dolby International AB
H04S3/002H04S7/30H04S7/308H04R5/02H04R5/04H04S2400/11H04S2400/13H04S2420/03
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,405,120
App. No.
15/647,121
Granted
Sep 3, 2019
Kind
B2
Abstract

An audio object including audio content and object metadata is received. The object metadata indicates an object spatial position of the audio object to be rendered by audio speakers in a playback environment. Based on the object spatial position and source spatial positions of the audio speakers, initial gain values for the audio speakers are determined. The initial gain values can be used to select a set of audio speakers from among the audio speakers. Based on the object spatial position and a set of source spatial positions at which the set of audio speakers are respectively located in the playback environment, a set of non-negative optimized gain values for the set of audio speakers is determined. The audio object at the object spatial position is rendered with the set of optimized gain values for the set of audio speakers.

Claims (53)

1. A computer-implemented method, comprising:

receiving an audio object comprising audio content and object metadata, the object metadata of the audio object indicating an object spatial position of the audio object to be rendered by a plurality of audio speakers in a playback environment, each audio speaker in the plurality of audio speakers being located in a respective source spatial position in a plurality of source spatial positions in the playback environment;

determining, based on the object spatial position of the audio object and the plurality of source spatial positions of the plurality of audio speakers, one or more pluralities of precomputed optimized gain values for the plurality of audio speakers, each audio speaker in the plurality of audio speakers being assigned with one or more respective precomputed optimized gain values in the one or more pluralities of precomputed optimized gain values, each plurality of precomputed optimized gain values in the one or more pluralities of precomputed optimized gain values corresponding to a respective precomputed spatial position in one or more precomputed spatial positions at least one of which is different from the object spatial position of the audio object;

determining, based on the object spatial position of the audio object and the one or more pluralities of precomputed optimized gain values, a plurality of optimized non-negative gain values for the plurality of audio speakers;

causing the audio object at the object spatial position to be rendered with the plurality of optimized gain values for the plurality of audio speakers, each audio speaker in the plurality of audio speakers being assigned with a respective optimized gain value in the plurality of optimized gain values.

2. The method as recited in claim 1 , wherein each of the one or more respective precomputed optimized gain values is from a respective plurality of precomputed optimized gain value in the one or more pluralities of precomputed optimized gain values.

3. An apparatus comprising a processor and configured to perform the method recited in claim 2 .

4. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 2 .

5. The method as recited in claim 1 , wherein each plurality of precomputed optimized gain values in the one or more pluralities of precomputed optimized gain values is generated by a first gain calculation method that generates nonnegative gain values and negative gain values; and wherein a plurality of final gain values is generated by a second different gain calculation method that maintains nonnegativity of nonnegative optimized gain values and turns negative gain values non-negative.

6. An apparatus comprising a processor and configured to perform the method recited in claim 5 .

7. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 5 .

8. The method as recited in claim 5 , wherein the first gain calculation method represents one of an inverse-matrix gain calculation method, or a gain calculation method that does not preclude negative gain values.

9. An apparatus comprising a processor and configured to perform the method recited in claim 8 .

10. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 8 .

11. The method as recited in claim 5 , wherein the second gain optimizer represents one of a multiplicative-update gain optimizer, an interior point optimizer, a quadratic-programming gain optimizer, a gradient descent gain optimizer, or a gain optimizer that maintains nonnegativity of nonnegative optimized gain values and turns negative gain values non-negative.

12. An apparatus comprising a processor and configured to perform the method recited in claim 11 .

13. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 11 .

14. The method as recited in claim 1 , wherein the object spatial position represents a spatial position in a spatial trajectory of the audio object.

15. An apparatus comprising a processor and configured to perform the method recited in claim 14 .

16. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 14 .

17. The method as recited in claim 1 , wherein the object spatial position is related to audio content in one of one or more audio frames, or one or more subdivision of an audio frame.

18. An apparatus comprising a processor and configured to perform the method recited in claim 17 .

19. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 17 .

20. The method as recited in claim 1 , wherein the set of optimized non-negative gain values is at least in part derived through interpolating the or more pluralities of precomputed optimized gain values.

21. An apparatus comprising a processor and configured to perform the method recited in claim 20 .

22. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 20 .

23. The method as recited in claim 1 , wherein the one or more pluralities of precomputed optimized gain values are one or more pluralities of precomputed optimized gain values for a plurality of precomputed object spatial positions in the playback environment.

24. An apparatus comprising a processor and configured to perform the method recited in claim 23 .

25. The method as recited in claim 23 , wherein the plurality of precomputed object spatial positions in the playback environment is determined based on a specific sparseness setting.

26. An apparatus comprising a processor and configured to perform the method recited in claim 25 .

27. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 25 .

28. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 23 .

29. The method as recited in claim 1 , wherein the or more pluralities of precomputed optimized gain values are precomputed and stored in a lookup table in offline processing.

30. An apparatus comprising a processor and configured to perform the method recited in claim 29 .

31. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 29 .

32. A computer-implemented method, comprising:

determining a set of precomputed spatial positions, at least one of which is different from an object spatial position of an audio object, distributed in the playback environment;

determining a plurality of source spatial positions for a plurality of audio speakers in a playback environment, each audio speaker in the plurality of audio speakers being located in a respective source spatial position in the plurality of source spatial positions in the playback environment;

generating, based at least in part on the plurality of source spatial positions, a set of pluralities of precomputed optimized gain values for the set of precomputed spatial positions, each plurality of precomputed optimized gain values in the set of pluralities of precomputed optimized gain values corresponding to a respective precomputed spatial position in the set of precomputed spatial positions;

causing the audio object at the object spatial position to be rendered with a set of optimized gain values for the set of audio speakers, each audio speaker in the set of audio speakers being assigned with a respective optimized gain value in the plurality of optimized gain values, the set of optimized gain values being determined based on the object spatial position of the audio object and one or more pluralities of precomputed optimized gain values selected from the set of pluralities of precomputed optimized gain values.

33. The method as recited in claim 32 , wherein the one or more pluralities of precomputed optimized gain values are selected from the set of pluralities of precomputed optimized gain values stored in a lookup table.

34. An apparatus comprising a processor and configured to perform the method recited in claim 33 .

35. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 33 .

36. The method as recited in claim 32 , wherein the set of optimized gain values for the set of audio speakers is obtained by interpolating the one or more pluralities of precomputed optimized gain values selected from the set of pluralities of precomputed optimized gain values.

37. An apparatus comprising a processor and configured to perform the method recited in claim 36 .

38. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 36 .

39. The method as recited in claim 32 , wherein the set of optimized gain values for the set of audio speakers is set to a specific plurality of precomputed optimized gain values in the set of pluralities of precomputed optimized gain values.

40. An apparatus comprising a processor and configured to perform the method recited in claim 39 .

41. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 39 .

42. An apparatus comprising a processor and configured to perform the method recited in claim 1 .

43. An apparatus comprising a processor and configured to perform the method recited in claim 32 .

44. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 1 .

45. A non-transitory computer readable storage medium, storing software instructions, which when executed by one or more processors cause performance of the method recited in claim 32 .

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2017
From: WANG, JUN; CENGARLE, GIULIO; TORRES, JUAN FELIX; ARTEAGA, DANIEL
To: DOLBY LABORATORIES LICENSING CORPORATION; DOLBY INTERNATIONAL AB
Reel/Frame 043025/0310 →
Priority Claims (2)
ES 201630341 · Mar 22, 2016 · national
EP 16181436 · Jul 27, 2016 · regional
Continuity (3)
Continuation 15451241 · Mar 6, 2017
Provisional Application 62345602 · Jun 3, 2016
Related Publication 20170353810A1 · Dec 7, 2017
Cited By (1)
US 12,621,621