State of OpenAL?

Member
Posts: 79
Joined: 2002.08
Post: #1
I'm interested in using OpenAL as the sound API but I'd like to get some clear information from somebody who knows.

Is it Mach-O only? If so, is it possible to call it via the CFM to Mach-O bridge?

What is needed to use OpenAL in Mac OS X?

Is a framework needed? This is no good if the user needs to install a framework before it works.
Or can everything needed to use OpenAL be included in the game bundle without the need for any other installation?

Basically what I'd like to see is a bundle I can load and call or library to link to. I don't want anything external that can't be included in the game bundle.

Or if there are other good free solutions, I'd like to hear about them too.

KenD

CodeBlender Software - http://www.codeblender.com
Quote this message in a reply
DoG
Moderator
Posts: 869
Joined: 2003.01
Post: #2
Last time I asked, there was a Carbon port of OpenAL, as well as a CoreAudio one, IIRC, though both need huge amounts of work, the Carbon port being more functional at the moment.
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #3
FMOD is free for freeware and only $100 for a shareware title. Lots of people here use it and like it. They provide both CFM and Mach-O binaries. You can try for free before you buy.
Quote this message in a reply
Member
Posts: 196
Joined: 2002.04
Post: #4
Quote:Originally posted by KenD
What is needed to use OpenAL in Mac OS X?
Is a framework needed? This is no good if the user needs to install a framework before it works.
Or can everything needed to use OpenAL be included in the game bundle without the need for any other installation?
KenD


Well, the last time I downloaded OpenAL it just plain didn't install. Honestly, OpenAL is a big pain all around. And yes, you can use other frameworks by using dynamic linking. Here are the links:

Dynamic linking: http://cocoadevcentral.com/articles/000042.php#000042

OpenAL download (that doesn't work yet): http://developer.creative.com/landing.as...=31&top=38

Hope this helps,
Iceman
Quote this message in a reply
Member
Posts: 164
Joined: 2002.04
Post: #5
I never had trouble with OpenAL, it worked great for me in Black Shades and the OS X port (I think), haven't tried the Carbon version though.
Quote this message in a reply
deekpyro
Unregistered
 
Post: #6
HA HA...yea David, no problems here with OpenAL and Black Shades.

-Derek
Quote this message in a reply
Member
Posts: 79
Joined: 2002.08
Post: #7
FMOD looks like a good library but their strict license doesn't work for me at this point.

I looked at the OpenAL source a little and noticed that it's using the old Sound Manager on Mac. Shouldn't OAL on OS X then have the same thread issues as SoundTerrain for example?
I'm not sure I want to go with something that uses the old SoundManager.
Looks like CoreAudio would be a good choice if I just could make any sense out of it.
Perhaps OAL will be changed to use CA one day?

KenD

CodeBlender Software - http://www.codeblender.com
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #8
http://www.portaudio.com/

I found this free library a while back. It's like a cross-platform version of CoreAudio (APIs seem very similar). It uses CoreAudio on Mac OS X.

Unfortunately, that means you've got a fair amount of work to do yourself reimplementing panning stereo sound, sound file loading, &c, but if you're considering CoreAudio, it might be suitable.

I think the docs are better than the docs for CoreAudio Wink
Quote this message in a reply
Member
Posts: 116
Joined: 2002.04
Post: #9
OpenAL is servicible. It can be used in CFM, or Mach-O projects.

We're using it in a Mach-O project and it's working well enough. It would be better if it used CoreAudio underneath the hood, but I'm sure that will get done eventually.

Incidentally, I didn't like how the OS X version installed itself as a framework (since users are not likely to have it installed and I don't want them to have to install it). Rather than putting it as a private framework in my bundle, I just created a static library version of the project and compile it into my app.

Wade
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #10
Be careful of linking OpenAL and other LGPL programs statically into your program, you will have to release your program under the LGPL, which requires providing full source code. Dynamically (such as with a framework inside the app bundle) is not a problem.
Quote this message in a reply
Member
Posts: 116
Joined: 2002.04
Post: #11
Quote:Originally posted by OneSadCookie
Be careful of linking OpenAL and other LGPL programs statically into your program, you will have to release your program under the LGPL, which requires providing full source code. Dynamically (such as with a framework inside the app bundle) is not a problem.


Sigh....you're right.

I had totally missed that in reading the license.

God I hate the GPL and its derivitives. While the thought was good, it does far more to harm programmers than help them.

Wade
Quote this message in a reply
Member
Posts: 233
Joined: 2003.05
Post: #12
Anyone had experience with SDL_Mixer?

I'm getting it started now, and was wondering if anybody had any idea what kind of problems I might run into.

Plus, that IS another option if anyone is using SDL to begin with.

Aaron

"Pay no attention to that man behind the curtain." - Wizard of Oz
Quote this message in a reply
Luminary
Posts: 5,143
Joined: 2002.04
Post: #13
Uh, can't remember if this is under SDL_mixer's banner, but I've had problems with certain midi files in SDL.

Otherwise, nothing to report.
Quote this message in a reply
Member
Posts: 233
Joined: 2003.05
Post: #14
Just wanted to add that getting SDL_Mixer to work was a breeze (installer packages for the dev binaries! Shock) and it's well documented. Plus, you don't have to reinvent the wheel for stereo panning effects.

If you are interested here are some links. You do have to use SDL with SDL_Mixer, but SDL is great if you are thinking cross-platform at all.

http://www.libsdl.org/index.php
http://www.libsdl.org/projects/SDL_mixer/index.html
http://kekkai.org/roger/sdl/mixer/index.html

I'd take a look at ogg vorbis as well:
http://www.illadvised.com/~jordy/
http://www.nouturn.com/oggdrop/download.html
http://www.vorbis.com/

There's another thread here that goes into some details about mp3 vs ogg.

An alternative to all this will be SpriteWorld X (recently announced on iDevGames front page) which is being put on top of SDL. It doesn't currently have sound support, but if/when it is finished it will be a nice easy API to projects started quickly. Looking forward to it.

Aaron

"Pay no attention to that man behind the curtain." - Wizard of Oz
Quote this message in a reply
Founder
Posts: 1,138
Joined: 2002.04
Post: #15
I might have seen a new article on OpenAL over at GameDev.net

Cheers

Carlos A. Camacho,
Founder
iDevGames
Quote this message in a reply
Post Reply 

Possibly Related Threads...
Thread: Author Replies: Views: Last Post
  [C++] How do you implement a state chart or state machine? riruilo 1 3,197 Jul 27, 2009 10:37 PM
Last Post: wadesworld
  State Tables and Event Handling geolycosa 1 2,592 Aug 29, 2005 12:58 PM
Last Post: ThemsAllTook
  Problem reading mouse button state Bossa Nova 3 3,174 Jul 23, 2003 12:09 PM
Last Post: Iceman