Real-time sound propagation for dynamic sources
AssigneeMicrosoft Corporation
InventorsNikunj Raghuvanshi, John Michael Snyder, Ming Chieh Lin, Naga K. Govindaraju
Life of this patent
Estimating the term…
Abstract
Described herein are techniques pertaining to real-time propagation of an arbitrary audio signal in a fixed virtual environment with dynamic audio sources and receivers. A wave-based numerical simulator is configured to compute response signals in the virtual environment with respect to a sample signal at various source and receiver locations. The response signals are compressed and placed in the frequency domain to generate frequency responses. Such frequency responses are selectively convolved with the arbitrary audio signal to allow real-time propagation with moving sources and receivers in the virtual environment.
Claims20
A method comprising the following computer-executable acts:
- receiving an audio signal;
- receiving a first location, wherein the first location is a desired location of a source of the audio signal in a virtual three-dimensional environment;
- receiving a second location, wherein the second location is a desired location of a receiver of the audio signal in the virtual three-dimensional environment;
- accessing a precomputed data file responsive to receipt of the audio, the first location, and the second location, wherein the precomputed data file is based at least in part upon computed response signals with respect to a sample signal simulated as being emitted from a plurality of source locations and to a plurality of receiver locations in the virtual three-dimensional environment;
- and
- modifying the audio signal in real-time based at least in part upon the precomputed data file such that the audio signal is perceived by a listener to have originated from the first location while the listener is at the second location.
A system that facilitates real-time playback of an audio signal in a three-dimensional environment where a source of the audio signal and a receiver of the audio signal are dynamic, comprising:
- a data repository that comprises a data file, wherein the data file comprises data pertaining to a simulation of a sample audio signal transmitted in the three-dimensional environment from a plurality of different source locations to the receiver in a plurality of different receiver locations;
- a receiver component that receives the audio signal from the source;
- a location determiner component that determines a first location and a second location, wherein the first location is a location of the source in the three-dimensional environment and the second location is a location of the receiver in the three-dimensional environment;
- and
- a playback component that accesses the data file in the data repository based at least in part upon the first location and the second location and automatically causes the audio to be perceived by a listener as being initiated from the first location when the listener is at the second location.
A computer-readable medium comprising instructions that, when executed by a processor, cause the processor to perform acts comprising:
- receiving an audio signal;
- receiving a location of a source of the audio signal in a virtual three-dimensional environment;
- receiving a location of a receiver of the audio signal;
- accessing a data repository that comprises a data file, wherein the data file comprises data pertaining to a wave-based numerical simulation executed in the three-dimensional environment, wherein the data pertaining to the numerical simulation comprises response signals, wherein the response signals are based at least in part upon:
- early reflection data with respect to a simulated sample signal output from a particular source location and received at a particular receiver location;
- and
- late reverberation data with respect to the simulated sample signal output from the particular source location and received at the particular receiver location;
- and
- convolving the received audio signal with the response data to automatically and in real-time cause the audio signal to be perceived by a listener as if the audio signal was transmitted from the location of the source and the listener was located at the location of the receiver.
Dependencies are inferred from the claim text.