[Openal] Reverb problems
Daniel PEACOCK
dpeacock at creativelabs.com
Wed Jul 30 09:53:02 PDT 2008
Hi Mariusz,
The problem is directly related to the fact that Realtek claim support for
EAX 2.0 - but only deliver half of the features. EAX 2.0 comprises a
global "Listener" object that controls the reverb parameters, and a per
voice (Source in OpenAL terminology) "Buffer" object that controls things
like reverb sends, obstruction and occlusion. Last time I checked the
Realtek drivers ignored *all* EAX 2.0 Buffer Object properties. This is
why you cannot enable or disable reverb sends on a per Source basis.
(This issue is nothing new ... http://techreport.com/articles.x/11171/1 ).
Until Realtek update their drivers and add the missing support, the
"Generic Software" device is the only way to deliver correct support for
the EFX extension on Realtek devices.
Dan
Creative Labs, Inc.
Notice
The information in this message is confidential and may be legally
privileged. It is intended solely for the addressee. Access to this
message by anyone else is unauthorized. If you are not the intended
recipient, any disclosure, copying or distribution of the message, or
any action taken by you in reliance on it, is prohibited and may be
unlawful. If you have received this message in error, please delete it
and contact the sender immediately. Thank you.
"Mariusz 'MX'
Szaflik"
<mxadd at o2.pl> To
Sent by: <openal at opensource.creative.com>
openal-bounces at op cc
ensource.creative
.com Subject
[Openal] Reverb problems
07/30/2008 02:15
AM
Hi
I have some troubles with reverb on OpenAL
(win XP 32bit, sp3, Realtek AC97 audio)
Enumeration shows 2 devices in this system ('Generic software' and 'Generic
hardware', the 'Generic hardware is the default one)
the problem is only on 'Generic hardware' device:
I'm creating reverb:
// Initializing reverb
alGenAuxiliaryEffectSlots(1, &m_AUX_ReverbSlotID);
alGenEffects(1, &m_AUX_ReverbEffect);
alEffecti(m_AUX_ReverbEffect, AL_EFFECT_TYPE, AL_EFFECT_EAXREVERB);
// all is ok, no errors
// setting reverb params
alEffectf(m_AUX_ReverbEffect, AL_EAXREVERB_DENSITY, ...); // all other
params follow
// no errors again
// setting to slot
alAuxiliaryEffectSloti(m_AUX_ReverbSlotID, AL_EFFECTSLOT_EFFECT,
m_AUX_ReverbEffect);
now i have couple of 'sources'
i want the reverb to be aplied only to some of them,
so for those sources I call:
alSource3i(m_ALSource, AL_AUXILIARY_SEND_FILTER, m_AUX_ReverbSlotID, 0,
AL_FILTER_NULL);
and now the problem:
for 'generic hardware' device reverb is present for ALL sources, no mather
what,
for 'generic software' all is correct, reverb is only on sources that I'v
binded to it,
is there any trick to to 'fix' the 'generic hardware' implementation, or
I'm
doomed to 'generic software' ?
BTW on other mahine with Creative X-Fi - all is fine, on X-Fi reverb is
handled correctly, so only those AC97 realtek stuff seems to be broken.
_______________________________________________
Openal mailing list
Openal at opensource.creative.com
http://opensource.creative.com/mailman/listinfo/openal
ForwardSourceID:NT0006355A
More information about the Openal
mailing list