Setting Up OpenAl

Started by
7 comments, last by Ructions 20 years ago
I can seen to get openal to work right i have installed the sdk and places the header files and lib in the right place i think but i still can get it to work any ideas Thanks Ructions
Advertisement
One tip: use fmod, it is easier, just as free to use and maybe even more enhanced!
Ye But I dont want to have to learn something totally new at the moment openal is implemented like opengl so it be quicker to learn at the moment.
I tried OpenAL for like 2 hours and my code became a mess (and still almost no result). I implemented fmod in half an hour in my contest entry.
The problems i had had to do with my sound card drivers, fmod supports many more. I really reccommend it to you .
What do you mean by ''doesn''t work''? Without specificity it''s hard to know what you did, much less what you did to cause a problem you haven''t told us what is.
quote:Original post by Tree Penguin
One tip: use fmod, it is easier, just as free to use and maybe even more enhanced!

It''s only "just as free to use" for some people, kind-of negating the truth of the statement. Not to say that it might not be an option.
quote:Original post by Tree Penguin
The problems i had had to do with my sound card drivers, fmod supports many more. I really reccommend it to you .

OpenAL uses DirectSound in Windows. Anything DirectSound supports, OpenAL supports.

Then can you explain why my SBLive Player 5.1 with the latest drivers had problems with OpenAL (and fmod not, using directsound)?
quote:Original post by Tree Penguin
Then can you explain why my SBLive Player 5.1 with the latest drivers had problems with OpenAL (and fmod not, using directsound)?

Did Creative include a special (and evidently broken) build of OpenAL with the drivers (meant to interface directly to Creative-specific something-or-other)? They were planning on doing so (without the "broken" bit); I was unaware that they''d followed through already. If so, whine at Creative if it isn''t fixed with newer drivers and/or remove/replace that OpenAL binary.

For now, I''d redistribute a tested OpenAL binary with anything I "shipped". While it would disable any system-wide-installed binaries, it''d avoid problems like that. (This is what Epic does with Unreal Tournament 2003 and 2004 and what other publishers have done with games based on those engines, as far as I know.)

quote:Original post by Null and Void
OpenAL uses DirectSound in Windows. Anything DirectSound supports, OpenAL supports.


Well that''s the fallback drivers, my Audigy2 ZS card has built in support for openAL without the use of direct sound(this is no suprise since openAL was originaly created by both Loki and Creative).
I have created a simple openAL wrapper class that works just fine.

I did have some problems with it though allthough most of the problems where some small stupid things like passing the index to a struct in a array (that among other things contain the source) to the openAL functions, instead of the source itself.

check if you can run openAL at all(use the demo apps included in the SDK).
If it runns then it''s your fault, try reading some tuturials.
If not then try and fiddle with the drivers, if you have a creative card then you can download drivers from their site.
if not then try putting the openAL32.dll file where you have your app.

---------------------------------
For an overdose of l33tness, flashbang.nu
Runctions,

I used openAL for the first time & got it working in a few minutes... however... I used the Alut library, so the initialization routine was VERY VERY simple, it handles getting your sound device for you. so it looks something like this:

/*   this include the lib so you don''t have to      add it in the project settings   */#pragma comment( lib, "alut.lib" )float ListenerPos[] = { 0.0, 0.75, -8.0 };float ListenerVel[] = { 0.0, 0.0, 0.0 };/* Orientation of the listener.   (first 3 elements are "at", second 3 are "up")   */float ListenerOri[] = { 0.0, 0.0, -1.0, 0.0, 1.0, 0.0 };void InitAL(void) {    alutInit(NULL, 0);    alListenerfv(AL_POSITION,    ListenerPos);    alListenerfv(AL_VELOCITY,    ListenerVel);    alListenerfv(AL_ORIENTATION, ListenerOri);}


& once you get going... you can read the openAL specification to learn about some of its capabilities. btw - don''t scoff at this non-modular piece of crap code... its been long since replaced. But this shows you the idea...
after this you just generate your sources, buffers, & load in the sounds & play them at will. Any Qs ????
Whatsoever you do, do it heartily as to the Lord, and not unto men.

This topic is closed to new replies.

Advertisement