diff --git a/libraries/entities/src/EntityItemProperties.cpp b/libraries/entities/src/EntityItemProperties.cpp index a32dcf78c0..7d5c01fd25 100644 --- a/libraries/entities/src/EntityItemProperties.cpp +++ b/libraries/entities/src/EntityItemProperties.cpp @@ -1357,6 +1357,7 @@ EntityPropertyFlags EntityItemProperties::getChangedProperties() const { * * @typedef {object} Entities.EntityProperties-Sound * @property {string} soundURL="" - The URL of the sound to play, as a wav, mp3, or raw file. Supports stereo and ambisonic. + * Note: ambisonic sounds can only play as localOnly. * @property {boolean} playing=true - Whether or not the sound should play. * @property {number} volume=1.0 - The volume of the sound, from 0 to 1. * @property {number} pitch=1.0 - The relative sample rate at which to resample the sound, within +/- 2 octaves. diff --git a/libraries/entities/src/SoundEntityItem.cpp b/libraries/entities/src/SoundEntityItem.cpp index 575efabb2e..997225515c 100644 --- a/libraries/entities/src/SoundEntityItem.cpp +++ b/libraries/entities/src/SoundEntityItem.cpp @@ -336,10 +336,14 @@ bool SoundEntityItem::restartSound() { options.volume = _volume; options.loop = _loop; options.orientation = getWorldOrientation(); - options.localOnly = _localOnly; + options.localOnly = _localOnly || _sound->isAmbisonic(); // force localOnly when ambisonic options.secondOffset = _timeOffset; options.pitch = _pitch; + // stereo option isn't set from script, this comes from sound metadata or filename + options.stereo = _sound->isStereo(); + options.ambisonic = _sound->isAmbisonic(); + if (_injector) { DependencyManager::get()->setOptionsAndRestart(_injector, options); } else {