Ambisonics Encode Effect
Typedefs
-
typedef struct _IPLAmbisonicsEncodeEffect_t *IPLAmbisonicsEncodeEffect
Encodes a point source into Ambisonics.
Given a point source with some direction relative to the listener, this effect generates an Ambisonic audio buffer that approximates a point source in the given direction. This allows multiple point sources and ambiences to mixed to a single Ambisonics buffer before being spatialized.
Functions
-
IPLerror iplAmbisonicsEncodeEffectCreate(IPLContext context, IPLAudioSettings *audioSettings, IPLAmbisonicsEncodeEffectSettings *effectSettings, IPLAmbisonicsEncodeEffect *effect)
Creates an Ambisonics encode effect.
- Parameters:
context – The context used to initialize Steam Audio.
audioSettings – Global audio processing settings.
effectSettings – The settings to use when creating the Ambisonics encode effect.
effect – [out] The created Ambisonics encode effect.
- Returns:
Status code indicating whether or not the operation succeeded.
-
IPLAmbisonicsEncodeEffect iplAmbisonicsEncodeEffectRetain(IPLAmbisonicsEncodeEffect effect)
Retains an additional reference to an Ambisonics encode effect.
- Parameters:
effect – The Ambisonics encode effect to retain a reference to.
- Returns:
The additional reference to the Ambisonics encode effect.
-
void iplAmbisonicsEncodeEffectRelease(IPLAmbisonicsEncodeEffect *effect)
Releases a reference to an Ambisonics encode effect.
- Parameters:
effect – The Ambisonics encode effect to release a reference to.
-
void iplAmbisonicsEncodeEffectReset(IPLAmbisonicsEncodeEffect effect)
Resets the internal processing state of an Ambisonics encode effect.
- Parameters:
effect – The Ambisonics encode effect to reset.
-
IPLAudioEffectState iplAmbisonicsEncodeEffectApply(IPLAmbisonicsEncodeEffect effect, IPLAmbisonicsEncodeEffectParams *params, IPLAudioBuffer *in, IPLAudioBuffer *out)
Applies an Ambisonics encode effect to an audio buffer.
This effect CANNOT be applied in-place.
- Parameters:
effect – The Ambisonics encode effect to apply.
params – Parameters for applying the effect.
in – The input audio buffer. Must be 1-channel.
out – The output audio buffer. Must have as many channels as needed for the Ambisonics order specified when creating the effect.
- Returns:
IPL_AUDIOEFFECTSTATE_TAILCOMPLETE
to indicate that this effect does not generate any tail samples.
Structures
-
struct IPLAmbisonicsEncodeEffectSettings
Settings used to create an Ambisonics encode effect.
-
struct IPLAmbisonicsEncodeEffectParams
Parameters for applying an Ambisonics encode effect to an audio buffer.
Public Members
-
IPLVector3 direction
Vector pointing from the listener towards the source.
Need not be normalized; Steam Audio will automatically normalize this vector. If a zero-length vector is passed, the output will be order 0 (omnidirectional).
-
IPLVector3 direction