Go to file
Aaron Lindsay 60e7d26308 Merge branch 'master' of git://repo.or.cz/openal-soft 2012-03-18 02:34:42 -04:00
Alc Merge branch 'master' of git://repo.or.cz/openal-soft 2012-03-18 02:34:42 -04:00
OpenAL32 Merge branch 'master' of git://repo.or.cz/openal-soft 2012-03-18 02:34:42 -04:00
build Move the default out-of-tree build dir to build 2009-09-12 17:54:27 -07:00
cmake Use a better method for determining if shared functions exist 2011-07-23 00:48:19 -07:00
examples Print out unsupported audio format info from ffmpeg 2012-02-28 04:04:52 -08:00
include/AL Finalize ALC_SOFT_loopback 2012-03-15 15:21:15 -07:00
utils Print out a more descriptive name for the opened device in openal-info 2012-03-01 06:59:51 -08:00
.gitignore Move the default out-of-tree build dir to build 2009-09-12 17:54:27 -07:00
CMakeLists.txt Merge branch 'master' of git://repo.or.cz/openal-soft 2012-03-13 22:53:12 -04:00
COPYING Initial import 2007-11-13 18:02:18 -08:00
README Add Android info to README 2011-10-25 20:39:33 -04:00
XCompile.txt Fix CMAKE_FIND_ROOT_PATH in XCompile.txt 2011-07-13 01:31:17 -07:00
alsoftrc.sample Revert the default stereo layout back to -90 and +90 degrees 2012-03-12 22:49:10 -07:00
config.h.in Merge branch 'master' of git://repo.or.cz/openal-soft 2011-10-03 21:22:55 -04:00
env-vars.txt Add a text file describing the available environment variables 2012-02-19 23:03:04 -08:00
hrtf.txt Simply (hopefuly) the explanation about the HRIR set ordering 2012-03-12 18:42:21 -07:00
openal.pc.in Improve static builds with MinGW 2010-11-28 16:19:11 -08:00

README

Android
=======
https://github.com/AerialX/openal-soft-android

Build with cmake using a toolchain file made for the Android NDK.
For example, this one works:
https://github.com/AerialX/libbricks/blob/master/cmake/toolchain.android.cmake
Use its NDK_CPU_X86, NDK_CPU_ARM, and NDK_CPU_ARM_V7A/NDK_CPU_ARM_VFPV3
options as needed to build for the various configurations.

The OpenSL backend will be built if configured for API Level 9 (2.3) or later,
otherwise the JNI backend will be used. It's recommended that you compile
OpenAL Soft as a shared library (the default) when using the JNI backend.

You may also try setting ANDROID_LOW_LATENCY to build the untested JNI
backend performance patch.

Precompiled binaries are offered in the downloads tab of this repo. Not
necessarily up to date or configured to your liking.
https://github.com/AerialX/openal-soft-android/downloads

Source Install
==============

To install OpenAL Soft, use your favorite shell to go into the build/
directory, and run:

cmake ..

Assuming configuration went well, you can then build it, typically using GNU
Make (KDevelop, MSVC, and others are possible depending on your system setup
and CMake configuration).

Please Note: Double check that the appropriate backends were detected. Often,
complaints of no sound, crashing, and missing devices can be solved by making
sure the correct backends are being used. CMake's output will identify which
backends were enabled.

For most systems, you will likely want to make sure ALSA, OSS, and PulseAudio
were detected (if your target system uses them). For Windows, make sure
DirectSound was detected.


Utilities
=========

The source package comes with an informational utility, openal-info, and is
built by default. It prints out information provided by the ALC and AL sub-
systems, including discovered devices, version information, and extensions.


Configuration
=============

OpenAL Soft can be configured on a per-user and per-system basis. This allows
users and sysadmins to control information provided to applications, as well
as application-agnostic behavior of the library. See alsoftrc.sample for
available settings.


Acknowledgements
================

Special thanks go to:

Creative Labs for the original source code this is based off of.

Christopher Fitzgerald for the current reverb effect implementation, and
helping with the low-pass filter.

Christian Borss for the 3D panning code the current implementation is heavilly
based on.

Ben Davis for the idea behind the current click-removal code.