3D audio rendering using volumetric audio rendering and scripted audio level-of-detail
AssigneeApple Inc.
InventorsDavid Thall, Christopher A. Wolfe, James E. McCartney
Life of this patent
Estimating the term…
Abstract
An audio engine is provided for acoustically rendering a three-dimensional virtual environment. The audio engine uses geometric volumes to represent sound sources and any sound occluders. A volumetric response is generated based on sound projected from a volumetric sound source to a listener, taking into consideration any volumetric occluders in-between. The audio engine also provides for modification of a level of detail of sound over time based on distance between a listener and a sound source. Other aspects are also described and claimed.
Claims21
A digital audio processing system for acoustically rendering a three-dimensional virtual environment, comprising
- a processor and memory, wherein the memory has stored therein instructions that when executed by the processor:
- receive listener information about a listener including a position in the three-dimensional virtual environment and an orientation;
- receive information about a sound producing object in the three-dimensional virtual environment including a geometric volume of the sound producing object, an audio characteristic of the sound producing object, and a position of the sound producing object in the three-dimensional virtual environment;
- receive information about a sound occluding object in the three-dimensional virtual environment, the information including a geometric volume of the sound occluding object, an audio characteristic of the sound occluding object, and a position of the sound occluding object in the three-dimensional virtual environment;
- determine, based on the listener information, the sound occluding object information, and the sound producing object information, i) a portion of the geometric volume of the sound producing object for which produced sound projected to the listener will be occluded by the sound occluding object, ii) and a portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will not be occluded by the sound occluding object;
- determine an amount of energy from i) and an amount of energy from ii);
- and
- generate an audio signal as a volumetric response of the sound producing object based on the determined amount of energy from i) and the determined amount of energy from ii).
A method for acoustically rendering a three-dimensional virtual environment, the method comprising:
- receiving listener information about a listener including a position in the three-dimensional virtual environment and an orientation;
- receiving information about at least one sound producing object in the three-dimensional virtual environment, the information including a geometric volume of the sound producing object, one or more audio characteristics of the sound producing object, and a position of the sound producing object in the three-dimensional virtual environment;
- receiving information about at least one sound occluding object in the three-dimensional virtual environment, the information including a geometric volume of the sound occluding object, one or more audio characteristics of the sound occluding object, and a position of the sound occluding object in the three-dimensional virtual environment;
- determining, based on the listener information, the sound occluding object information, and the sound producing object information, a portion of the geometric volume of the sound producing object for which produced sound projected to the listener will be occluded by the sound occluding object, and a portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will not be occluded by the sound occluding object;
- determining an amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will be occluded by the sound occluding object and an amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will not be occluded by the sound occluding object;
- and
- generating an audio signal as a volumetric response of the sound producing object based on the determined amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will be occluded by the sound occluding object and the determined amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will not be occluded by the sound occluding object.
A non-transitory computer readable storage medium storing computer executable instructions that when executed by a processor perform a method for acoustically rendering a three-dimensional virtual environment, the method comprising:
- receiving listener information about a listener including a position in the three-dimensional virtual environment and an orientation;
- receiving information about a sound producing object in the three-dimensional virtual environment, the information including a geometric volume of the sound producing object, one or more audio characteristics of the sound producing object, and a position of the sound producing object in the three-dimensional virtual environment;
- receiving information about at least one sound occluding object in the three-dimensional virtual environment, the information including a geometric volume of the sound occluding object, one or more audio characteristics of the sound occluding object, and a position of the sound occluding object in the three-dimensional virtual environment;
- determining, based on the listener information, the sound occluding object information, and the sound producing object information, a portion of the geometric volume of the sound producing object for which produced sound projected to the listener will be occluded by the sound occluding object, and a portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will not be occluded by the sound occluding object;
- determining an amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will be occluded by the sound occluding object and an amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will not be occluded by the sound occluding object;
- and
- generating a volumetric response of the sound producing object based on the determined amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will be occluded by the sound occluding object and the determined amount of energy from the portion of the geometric volume of the sound producing object for which the produced sound projected to the listener will not be occluded by the sound occluding object.
Dependencies are inferred from the claim text.