Bug 662

Summary: Add a flag to favour OpenALSoft
Product: [JogAmp] Joal Reporter: Julien Gouesse <gouessej>
Component: coreAssignee: Sven Gothel <sgothel>
Status: RESOLVED FIXED    
Severity: enhancement CC: gouessej, xerxes
Priority: ---    
Version: 1.0   
Hardware: All   
OS: all   
Type: --- SCM Refs:
joal 92e931caf64cf24e2b885d2552e64aebcf70a45a
Workaround: ---
Bug Depends on: 567    
Bug Blocks:    

Description Julien Gouesse 2013-01-06 23:07:45 CET
OpenAL hardware implementation does not evolve any more whereas OpenALSoft is actively maintained. In some cases, it is preferable to use it even though the hardware implementation is available. For example, alGenAuxiliaryEffectSlots is not implemented in some drivers whereas it is implemented in OpenALSoft which has more effects.

It would be fine to create an ALProfile with a flag indicating whether we want to favour OpenALSoft if both hardware and software implementations are available (some methods to check the availability of functions and extensions would be useful too).
Comment 1 Xerxes RĂ„nby 2013-01-25 12:51:45 CET
I have observed this bug as well during jMonkeyEngine 3 startup.
The issue is really about missing support for OpenAL EFX extension in JOAL itself.
I will mark this bug to depend on PR567 https://jogamp.org/bugzilla/show_bug.cgi?id=567
Comment 2 Sven Gothel 2013-02-01 11:58:10 CET
    OpenAL Library Selection (Bug 662): Use String value of new property 'joal.openal.lib'. OSX: Prefer system OpenAL (nou OpenAL-Soft output device support)
    
    + * Select preferred OpenAL native library type via system properties,
    + * i.e. System-OpenAL or bundled Soft-OpenAL.<br/>
    + * If the preferred choice fails, implementation falls back to the other.
    + * <PRE>
    +    -Djoal.openal.lib=auto     Prefer System-OpenAL over bundled Soft-OpenAL for OSX. Prefer bundled Soft-OpenAL over System-OpenAL for all others. This is the default
    +    -Djoal.openal.lib=system   Prefer System-OpenAL over bundled Soft-OpenAL for all.
    +    -Djoal.openal.lib=soft     Prefer bundled Soft-OpenAL over System-OpenAL for all.
    +   </PRE>
    + * Note: You may use the 'jnlp.' prefix, allowing using above property names w/ Applets and WebStart,
    + * e.g. 'jnlp.joal.openal.lib=system'.
    + * </p>