Function steam_audio::ffi::iplCreateAmbisonicsRotator [] [src]

pub unsafe extern "C" fn iplCreateAmbisonicsRotator(
    context: IPLhandle,
    order: IPLint32,
    rotator: *mut IPLhandle
) -> IPLerror

Creates an Ambisonics Rotator object. An Ambisonics Rotator object is used to apply an arbitrary rotation to audio data encoded in Ambisonics. This is primarily useful in the following situations:

  • If you have an Ambisonics audio buffer whose coefficients are defined relative to world space coordinates, you can convert them to listener space using an Ambisonics Rotator object. This is necessary when using a Convolution Effect object, since its output is defined in world space, and will not change if the listener looks around.

  • If your final mix is encoded in Ambisonics, and the user is using headphones with head tracking, you can use the Ambisonics Rotator object to make the sound field stay "in place" as the user looks around in the real world. This is achieved by using the Ambisonics Rotator object to apply the inverse of the user's rotation to the final mix.

\param context The Context object used by the audio engine. \param order The order of the Ambisonics data to rotate. \param rotator [out] Handle to the created Ambisonics Rotator object.

\return Status code indicating whether or not the operation succeeded.