CPC H04S 7/30 (2013.01) [H04S 5/005 (2013.01)] | 20 Claims |
1. A method, comprising:
receiving, by a processing system comprising a processor and a memory, a multichannel audio stream, the processing system operating under control of an operating system, the operating system configured to prevent provision of an input audio stream from a source to multiple destinations;
forming, by the processing system, a front channel audio stream of the multichannel audio stream, wherein the forming a front channel audio stream comprises combining a first subset of audio channels of the multichannel audio stream to form the front channel audio stream;
forming, by the processing system, a surround channel audio stream of the multichannel audio stream, wherein the forming a surround channel audio stream comprises combining a second subset of audio channels of the multichannel audio stream to form the surround channel audio stream;
exposing, to the processing system, a virtual audio device in the memory, the virtual audio device comprising a first address corresponding to a first audio destination and a second address corresponding to a second audio destination, wherein the virtual audio device includes a source code that embeds a functionality capable of routing audio data of the front channel audio stream of the multichannel audio stream to the first audio destination and audio data of the surround channel audio stream of the multichannel audio stream to the second audio destination, and wherein the virtual audio device comprises no hardware and no firmware;
writing, by the processing system, the audio data of the front channel audio stream of the multichannel audio stream to the first address of the virtual audio device to enable provision and routing of the front channel audio stream to the first audio destination to be read and processed by other devices;
providing, by the processing system, the front channel audio stream of the multichannel audio stream to a primary set of speakers positioned in front of a listener;
writing, by the processing system, the audio data of the surround channel audio stream of the multichannel audio stream to the second address of the virtual audio device to enable provision and routing of the multichannel audio stream to the second audio destination to be read and processed by the other devices;
wherein the virtual audio device does not process or configure the audio data of the front channel audio stream of the multichannel audio stream and the audio data of the surround channel audio stream of the multichannel audio stream, and wherein the virtual audio device reemits the audio data of the front channel audio stream written to the first address and the audio data of the surround channel audio stream written to the second address to the processing by the other devices;
providing, by the processing system, the surround channel audio stream to a supplemental speaker positioned behind the listener; and
synchronizing the front channel audio stream and the surround channel audio stream.
|