C Specification
The XrSoundObjectConfigBD structure is defined as:
// Provided by XR_BD_spatial_audio_rendering
typedef struct XrSoundObjectConfigBD {
XrStructureType type;
const void* next;
XrBool32 enabled;
XrPosef pose;
XrSpace baseSpace;
float mainVolume;
float reflectionGain;
XrBool32 enableDoppler;
const XrSoundObjectDistanceAttenuationBD* directSoundAttenuation;
const XrSoundObjectDistanceAttenuationBD* indirectSoundAttenuation;
} XrSoundObjectConfigBD;
Members
Description
Applications may specify the directivity and/or the shape of a sound object:
-
To describe the sound object’s shape, applications chain XrSoundObjectShapeSphereBD to XrSoundObjectConfigBD::
next -
To describe the directivity of a sound object by a cardioid polar pattern, applications chain XrSoundObjectDirectivityCardioidBD to XrSoundObjectConfigBD::
next.
If the application does not chain XrSoundObjectShapeSphereBD, the sound object is defined as an infinitesimally small point. If the application does not change XrSoundObjectDirectivityCardioidBD, the sound object is defined to be omnidirectional (uniform sound emission intensity over all directions).
The behavior below specifies how the runtime renders audio when tracking
quality changes for the baseSpace.
-
While the
baseSpacepose is valid, but not tracked (i.e. xrLocateSpace reports its location withXR_SPACE_LOCATION_POSITION_VALID_BITandXR_SPACE_LOCATION_ORIENTATION_VALID_BITset, but notXR_SPACE_LOCATION_POSITION_TRACKED_BITandXR_VIEW_STATE_POSITION_TRACKED_BIT), the runtime must keep rendering the sound object using the most recent valid pose of that space. -
While the
baseSpacepose is neither valid nor tracked (i.e. xrLocateSpace reports its location withXR_SPACE_LOCATION_POSITION_VALID_BITandXR_SPACE_LOCATION_ORIENTATION_VALID_BITunset), the runtime should keep rendering the sound object using the most recent valid pose of that space relative to its parent.
See Also
Document Notes
For more information, see the OpenXR Specification
This page is extracted from the OpenXR Specification. Fixes and changes should be made to the Specification, not directly.
Copyright
Copyright 2014-2026 The Khronos Group Inc.
This work is licensed under a Creative Commons Attribution 4.0 International License.