History

Preliminary support for Ambisonic audio injectors.

Supports 4-channel WAV files, presumed to be B-format (FuMa) first-order Ambisonic. Supports WAV with arbitrary sample rate (needs optimization). Supports soundfield volume and orientation set via script. Supports localOnly client-side injection using simple (non-spatialized) test renderer.

Ken Cooke committed 9 years ago

Commit e93e1a71 parent 452f08111 files · +168 −17Browse files

Showing the changes to libraries/script-engine/src/AudioScriptingInterface.cpp (1 of 11 files). Show all

Unified · Split

libraries/script-engine/src/AudioScriptingInterface.cpp+3−0
@@ -45,6 +45,9 @@ ScriptAudioInjector* AudioScriptingInterface::playSound(SharedSoundPointer sound · 44 unmodified lines
45 // stereo option isn't set from script, this comes from sound metadata or filename45 // stereo option isn't set from script, this comes from sound metadata or filename
46 AudioInjectorOptions optionsCopy = injectorOptions;46 AudioInjectorOptions optionsCopy = injectorOptions;
47 optionsCopy.stereo = sound->isStereo();47 optionsCopy.stereo = sound->isStereo();
48 optionsCopy.ambisonic = sound->isAmbisonic();
49 optionsCopy.localOnly = sound->isAmbisonic(); // always localOnly for Ambisonic
50
48 auto injector = AudioInjector::playSound(sound->getByteArray(), optionsCopy);51 auto injector = AudioInjector::playSound(sound->getByteArray(), optionsCopy);
49 if (!injector) {52 if (!injector) {
50 return NULL;53 return NULL;