[Openal] EFX Clarifications 2

Daniel PEACOCK dpeacock at creativelabs.com
Mon Sep 15 03:19:00 PDT 2008





> > The exact formulas used for these properties are not available
> (they are Creative IP).  All the properties except
> AL_EFFECTSLOT_GAIN are used to control the send level from each
> Source to the Effect Slot (this is completely different to what you
> wrote below).
>
> No need for the exact formulas, I just wanted to know how they
> effected each-other. :)
>
> Actually, I made a mistake, I didn't mean AL_EFFECTSLOT_GAIN, I
> meant the gain related to the send level for each source.
>
> >> AL_EFFECTSLOT_AUXILIARY_SEND_AUTO
> >> AL_ROOM_ROLLOFF_FACTOR
> >> AL_REVERB_ROOM_ROLLOFF_FACTOR
> >> AL_AUXILIARY_SEND_FILTER_GAIN_AUTO
> > and AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO
> >
> > AL_EFFECTSLOT_AUXILIARY_SEND_AUTO is equivalent to the EAX 4.0 FX
> Slot "Environment" flag.
> >
> > When it is "off" (false) it means that a source's send signal to
> the effect is the same as the signal sent to the dry path, minus
> Direct Filter Gain and Gain HF and plus the Send Filter Gain and Gain HF.
>
> So when off, the dry path attenuation (its gain and distance
> attenuation) is applied to the send gain in place of what is below.

Yes - but Direct Filter Gain and Gain HF only ever apply to the dry path,
and Send Filter Gain and Gain HF only ever apply to the send path.  This is
so you can still adjust the wet dry mix.

> > When it is "on" a source's send signal is attenuated by 1) reverb
> statistical model based on reverb decay time and source to listener
> distance, 2) Room RollOff (summation of Reverb Room RollOff Factor
> and Source Room RollOff Factor), 3) air absorption, and 4) source
> directivity (cone parameters).
>
> Due to OpenAL's linear gain, these are all multiplied together then,
right?

If you computed everything in linear gain they would be multiplied together
yes.

> Since Generic Hardware and Generic Software force
> AL_EFFECTSLOT_AUXILIARY_SEND_AUTO on (for my system, anyway),

This property does require EAX 4 and above.

> how
> come the distance attenuation of the dry path still applies to the
> send gain?  Or is this an issue with card/drivers?

Distance is a factor in the reverb statistical model.

> > (1) is disabled if AL_AUXILIARY_SEND_FILTER_GAIN_AUTO is off (false)
>
> Is the statistical model just a more advanced form of distance
> attenuation?  Is this what I'm mistaking for the distance
> attenuation of the dry path above?

It does take source to listener distance into account - so is probably what
you are hearing.

Dan
Creative Labs



More information about the Openal mailing list