C#, OpenAL Dependency Issues

View: New views
9 Messages — Rating Filter:   Alert me  

C#, OpenAL Dependency Issues

by aconstantin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hello again,

Having to inevitably reinstall Windows, I found myself surrounded by dependency issues when trying to re-run my VC# app using the Tao Framework.

At 1st, I ran into this :
InnerException : {"Unable to load DLL 'alut.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E)"}
Souce : Tao.OpenAL

The apparent reason (which I found, again, with forum help) was I didn't have alut.dll installed, and I needed to include it in my \System32 folder. This solved the matter.

Now, I seem to have similar problems, because an alcIsExtensionPresent() call for AL_EXT_EFX now returns ALC_FALSE.
I've downloaded & ran oalinst.exe from Creative, which I thought would solve the problem, but it didn't.
I also saw that the Tao \lib\OpenAL32.dll and \lib\wrap_oal.dll differ than that of Creative's.
I replaced the ones installed with these ones (hoping for a miracle), in \System32, but again, with no effect.

I know my current sound card (X-Fi Xtreme Audio Notebook) supports this extension...I just don't know what other dependencies I've omitted...more to the point, where exactly is "alcIsExtensionPresent" looking...

Can anyone shed some light on the matter ?

Thank you,

Alex.

---using---
- VC# 2005
- Tao Framework 2.1.0

Re: C#, OpenAL Dependency Issues

by Jason Daly :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

aconstantin wrote:

> Now, I seem to have similar problems, because an alcIsExtensionPresent()
> call for AL_EXT_EFX now returns ALC_FALSE.
> I've downloaded & ran oalinst.exe from Creative, which I thought would solve
> the problem, but it didn't.
> I also saw that the Tao \lib\OpenAL32.dll and \lib\wrap_oal.dll differ than
> that of Creative's.
> I replaced the ones installed with these ones (hoping for a miracle), in
> \System32, but again, with no effect.
>
> I know my current sound card (X-Fi Xtreme Audio Notebook) supports this
> extension...I just don't know what other dependencies I've omitted...more to
> the point, where exactly is "alcIsExtensionPresent" looking...
>  

alcIsExtensionPresent looks at whatever implementation you open.  This
could be one of the wrapper implementations (Generic Hardware or Generic
Software), or it could be a native implementation.

First thing to check is that you've installed the latest drivers for
your X-Fi card.  If it can't find the native implementation (ctoal.dll),
you'll end up with a wrapper implementation, which  you probably don't want.


Next thing is to make sure you're opening the device you think you are.
Try this:

alcGetString(<device id>, ALC_DEVICE_SPECIFIER)

(replace <device id> with the result of the alcOpenDevice function) and
see what device actually was opened.

Hope this helps,

--"J"
_______________________________________________
Openal mailing list
Openal@...
http://opensource.creative.com/mailman/listinfo/openal

Re: C#, OpenAL Dependency Issues

by aconstantin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


Jason Daly <jdaly@...> wrote:
First thing to check is that you've installed the latest drivers for
your X-Fi card. If it can't find the native implementation (ctoal.dll),
you'll end up with a wrapper implementation, which you probably don't want.

Next thing is to make sure you're opening the device you think you are.
Try this:
alcGetString(, ALC_DEVICE_SPECIFIER)

(replace with the result of the alcOpenDevice function) and
see what device actually was opened.

Hope this helps,

--"J"
Hi.

Did what you suggested :

My AutoUpdater says my drivers are up-to-date & the device opened is "Generic Hardware", so I guess it should be OK.

I'm at a stand-still ... I would have to think there must be some external dependencies i forgot about...since neither my project nor the sound card & drivers have changed since the Win reinstall.

Thank you for your support ... I'm still hoping for enlightenment on the matter :)

Alex.


_______________________________________________
Openal mailing list
Openal@...
http://opensource.creative.com/mailman/listinfo/openal

---using---
- VC# 2005
- Tao Framework 2.1.0

Re: C#, OpenAL Dependency Issues

by Jason Daly :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Alex Constantin wrote:

Jason Daly jdaly@... wrote:
First thing to check is that you've installed the latest drivers for
your X-Fi card. If it can't find the native implementation (ctoal.dll),
you'll end up with a wrapper implementation, which you probably don't want.

Next thing is to make sure you're opening the device you think you are.
Try this:
alcGetString(, ALC_DEVICE_SPECIFIER)

(replace with the result of the alcOpenDevice function) and
see what device actually was opened.

Hope this helps,

--"J"
Hi.

Did what you suggested :

My AutoUpdater says my drivers are up-to-date & the device opened is "Generic Hardware", so I guess it should be OK.

That's not OK.  That's the problem.  You should see something identifying your implementation as a Creative X-Fi native implementation (I don't have access to an X-Fi card right now, so I can't post the exact string).

Generic Hardware won't have any support for EFX at all (it's just a wrapper around DirectSound3D).


I'm at a stand-still ... I would have to think there must be some external dependencies i forgot about...since neither my project nor the sound card & drivers have changed since the Win reinstall.

OpenAL doesn't have any external dependencies (other than OS-level stuff).  For some reason the OpenAL router isn't finding your native implementation.  Can you locate the ctoal.dll file anywhere?


--"J"


_______________________________________________
Openal mailing list
Openal@...
http://opensource.creative.com/mailman/listinfo/openal

Re: C#, OpenAL Dependency Issues

by aconstantin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message


> I'm at a stand-still ... I would have to think there must be some
> external dependencies i forgot about...since neither my project nor
> the sound card & drivers have changed since the Win reinstall.

OpenAL doesn't have any external dependencies (other than OS-level
stuff).  For some reason the OpenAL router isn't finding your native
implementation.  Can you locate the ctoal.dll file anywhere?

--"J"


.. Now that you mentioned it, no, I can't actually find it.  Isn't the OpenAL 1.1 installer supposed to put this file where it belongs ? (because the one from creative's site doesn't, for some reason) ... I read somewhere that it is the hardware DLL, which before the new AL installer ran was called "OpenAL32.dll" ... i have the latter ...

  Could this be the source of my troubles ? and if so, where can I find it ?


---using---
- VC# 2005
- Tao Framework 2.1.0

Re: C#, OpenAL Dependency Issues

by Dan Peacock-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi All,

Firstly, I need to correct a couple of comments ...

The X-Fi Xtreme Audio card is a host-based X-Fi card so some of the
filenames are different compared to a hardware-based X-Fi card.
Specifically, the native OpenAL device is stored in a DLL called
sens_oal.dll (not ct_oal.dll).   This component is only installed on
Windows Vista (it is not needed on Win XP)

On Windows XP you can use the "Generic Hardware" device to get EAX 2,
3, 4 and EFX Extension support on the X-Fi Xtreme Audio card.  (The
EFX Extension is available via "Generic Hardware" when ever the
soundcard supports at least EAX version 2.0.   The EFX Extension is
also available (with an EAX 2.0 feature set) via the "Generic
Software" device).

I'm guessing you are using WinXP because you shouldn't have been able
to open the "Generic Hardware" device on Vista.  Is that right?

Does the TAO Framework have support for the ALC_EXT_EFX ?  I couldn't
tell from their website as it only mentions support for OpenAL 1.1.

If the TAO framework does include support for the extension, then I
would check to make sure that your Audio Hardware Acceleration Slider
is set to FULL.  This can be found in the Sound and Audio Devices
panel from the Windows Control Panel.

Dan



On 6/5/08, aconstantin <alex.constantin@...> wrote:

>
>
> > I'm at a stand-still ... I would have to think there must be some
> > external dependencies i forgot about...since neither my project nor
> > the sound card & drivers have changed since the Win reinstall.
>
> OpenAL doesn't have any external dependencies (other than OS-level
> stuff).  For some reason the OpenAL router isn't finding your native
> implementation.  Can you locate the ctoal.dll file anywhere?
>
> --"J"
>
>
> .. Now that you mentioned it, no, I can't actually find it.  Isn't the
> OpenAL 1.1 installer supposed to put this file where it belongs ? (because
> the one from creative's site doesn't, for some reason) ... I read somewhere
> that it is the hardware DLL, which before the new AL installer ran was
> called "OpenAL32.dll" ... i have the latter ...
>
>  Could this be the source of my troubles ? and if so, where can I find it ?
>
>
>
> --
> View this message in context: http://www.nabble.com/C-%2C-OpenAL-Dependency-Issues-tp17675662p17681369.html
> Sent from the OpenAL - User mailing list archive at Nabble.com.
>
> _______________________________________________
> Openal mailing list
> Openal@...
> http://opensource.creative.com/mailman/listinfo/openal
>
_______________________________________________
Openal mailing list
Openal@...
http://opensource.creative.com/mailman/listinfo/openal

Re: C#, OpenAL Dependency Issues

by aconstantin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi everyone,

I'm sorry to put everyone "on th hunt" for my problem, but I'm finding out quite important information from this discussion...So, Generic Hardware is OK, for my sound-card after all.

Aside from that, clearly, some app isn't doing it's job (at least not as it should)... If you say the card has different naming conventions, then this issue should have been solved by the Auto-Updater, if not by its accompanying CD, right ?

To answer your question, Dan, I'm using XP, sadly, by necessity, not by choice...hardware limitations, and all that.

Out of curiosity, I've made a "full cavity search" on my drives for the *oal*.dll ... it just found "wrap_oal.dll" and some "OAL.dll" a downloaded demo (http://www.blitzbasic.com/Community/posts.php?topic=71469) is using... by the way, a question here, since the author didn't state : the app lets me choose exactly what to use : GH on X-Fi / GS on X-Fi / GH on Realtek HD (my on-board card) / GS on Realtek HD.... and effects work (with the 1st choice)... anyone know how he does it ?

I've gone and disabled the Realtek HD, to see what happens...I still get "GH" as the opened device, in my project, but still the EFX is (apparently) not supported.

Tao Framework supports ALC_EFX_EXT ... I'm only speaking from past experience, because up to this tiresome XP reinstall, everything <<worked>> as it was...the echo & the flanger sounded great... (now I'm being nostalgic...)

...And my Audio Hardware Acceleration Slider is set to Full.

Alex.


Dan Peacock-2 wrote:
Hi All,

Firstly, I need to correct a couple of comments ...

The X-Fi Xtreme Audio card is a host-based X-Fi card so some of the
filenames are different compared to a hardware-based X-Fi card.
Specifically, the native OpenAL device is stored in a DLL called
sens_oal.dll (not ct_oal.dll).   This component is only installed on
Windows Vista (it is not needed on Win XP)

On Windows XP you can use the "Generic Hardware" device to get EAX 2,
3, 4 and EFX Extension support on the X-Fi Xtreme Audio card.  (The
EFX Extension is available via "Generic Hardware" when ever the
soundcard supports at least EAX version 2.0.   The EFX Extension is
also available (with an EAX 2.0 feature set) via the "Generic
Software" device).

I'm guessing you are using WinXP because you shouldn't have been able
to open the "Generic Hardware" device on Vista.  Is that right?

Does the TAO Framework have support for the ALC_EXT_EFX ?  I couldn't
tell from their website as it only mentions support for OpenAL 1.1.

If the TAO framework does include support for the extension, then I
would check to make sure that your Audio Hardware Acceleration Slider
is set to FULL.  This can be found in the Sound and Audio Devices
panel from the Windows Control Panel.

Dan
---using---
- VC# 2005
- Tao Framework 2.1.0

Re: C#, OpenAL Dependency Issues

by aconstantin :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Having finally sorted my problem out (with all of your help), I give you the fuzzy logic :

At the time I began to work on my app, I've referenced the old Tao Framework 2.0.0 in the VC# project. The .dlls then got saved in the projects \Release folder, and somehow didn't get updated (& worked!) when I installed the new version (2.1.0)
... Upon Win reinstallation, I installed only v2.1.0, and the projects' own libraries (although linked to the new installation) remained the same.

Thinking of what Dan said to me, about the wrong DLLs are being loaded, I took a look at the Tao dlls in the projects' folders, and saw there was a size difference between them and the ones in the Tao install directory. I replaced them, and everything is now going fine.

Thank you for all your help.
Best regards,

Alex





---using---
- VC# 2005
- Tao Framework 2.1.0

Re: C#, OpenAL Dependency Issues

by Jason Daly :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

aconstantin wrote:
> Hi everyone,
>
> I'm sorry to put everyone "on th hunt" for my problem, but I'm finding out
> quite important information from this discussion...So, Generic Hardware is
> OK, for my sound-card after all.
>  

Sorry about that.  I thought the X-Fi ExpressCard was a native hardware
device, not a host-based device, and I also thought that Generic
Hardware didn't support EFX.

Apparently, I need to do more homework before I post next time  :-)


--"J"
_______________________________________________
Openal mailing list
Openal@...
http://opensource.creative.com/mailman/listinfo/openal
LightInTheBox - Buy quality products at wholesale price