Is OpenAL still active for the PC? I read there were some changes over time. It sounds ideal for what I'm doing, but I'm confused on its current state.
Is OpenAL still active for the PC?
Moderators - Reputation: 8442
Posted 09 May 2014 - 01:58 PM
OpenAL is still active. I know it is part of the light-weight-java-game-library. At one point, Creative had released the library as open source, but then around 2005 they changed their mind and closed it.
So if you look for OpenAL that's what you'll find. But since the software was out there, OpenALSoft forked the project and continues to develop.
Last time I looked, lwjgl had switched to the OpenALSoft version, so I'm assuming it's stable, but I haven't actually used it, so don't take my word for it.
I think, therefore I am. I think? - "George Carlin"
My Website: Indie Game Programming
My Twitter: https://twitter.com/indieprogram
My Book: http://amzn.com/1305076532
Crossbones+ - Reputation: 8196
Posted 09 May 2014 - 04:05 PM
So even if OpenAL is closed, is it not accessible anymore with Creative? My preference is to be with the standard if at all possible.Creative's implementation has not been the standard for years (well, technically, it is the standard of course). OpenAL Soft is the (de-facto) standard. It's being developed and supported, and it contains some very useful extensions and compiles for a CPU generation that isn't 10 years old (and most importantly, it works reliably).
In theory, Creative's implementation could offer superior hardware acceleration and special X-RAM and whatnot functionality, but let's be realistic. Sound is either mixed in software and D/A-ed on the on-mainboard soundchip nowadays, or mixed on the graphics card (my nVidia card does that, for example) and transmitted digitally via HDMI (or similar). Hardly anyone has a dedicated soundcard any more.
Crossbones+ - Reputation: 8196
Posted 10 May 2014 - 06:36 AM
The interesting part of OpenAL is: If you are using OpenAL for Windows, it does use DirectSound.
Which is however not very "interesting" as of Windows Vista and later, since DirectSound is now a pure software emulation.
OpenAL is merely an API that lets you define some parameters (like sound sources and their position in space). The implementation then does some rather involved reverbing calculations, and lastly forwards two completely mixed stereo channels (or 6 or 8 channels in the case of 5.1 or 7.1) to some operating-system API that throws the digital bits to the speaker. The OS doesn't do anything special, and there is no special hardware required or involved.
Also, OpenAL does not necessarily use DirectSound, it is not specified what output it must use. OpenAL Soft has for example configurable (both at compile-time and runtime) outputs, including DirectSound and WinMM, and even writing sound output to a WAV file (not very useful, but still pretty cool). This allows you to run programs that use OpenAL even on old computers where DirectSound is not available.
Crossbones+ - Reputation: 2114
Posted 16 May 2014 - 09:03 PM
Not sure if you care about these platforms, but OpenAL is still supported on UNIX flavours.
- iOS: Works really well, although there's a bug in Apple's implementation that only happens on iOS 7. Sadly, I haven't been able to track down.
- MacOSX: Supported, however, the default OpenAL framework just wouldn't work in 64-bit mode. To get around this, I use OpenAL-Soft instead.
- Android: My experience with OpenAL-Soft on Android hasn't been too great so far. Audio latency and bugs are issues in my game.
- Linux: I honestly don't know enough about OpenAL on Linux, but I assume you might be able to have hardware level support on this OS still. Don't quote me on that though.
- Blackberry (QNX): No problems yet.
I really miss the days where my NV based onboard audio would fully accelerate OpenAL and EAX. But quite frankly, I'm quite satisfied with OpenAL-Soft. The ability to write custom reverb effects is really great. Although I haven't found much in terms of C/C++ tutorials on this, I've only been able to find delphi and C# (easy translation).
http://www.noeska.com/doal/lesson17.aspx (Delphi; easily translated).
http://guildofwriters.org/wiki/Adding_echos_to_sounds (audio presets for EFX).
I hope this helps.
"Yo mama so fat, she can't be frustum culled." - yoshi_lol
"One objection to a “critique of C#” would be that you can’t talk about C# without talking about the whole “.Net experience”. However, one can approach the topic of Hitler without a complete discussion of Nationalist Socialism, so I feel justified." - Steve White.