panda3d
panda3d copied to clipboard
Include alext.h header file to enable using OpenAL Extensions
Description
If panda3d ever wants the ability to utilize OpenAL-Soft extensions, then the alext.h file will need to be included in the audio source via <AL/alext.h>.
Blockers
On my macOS 14.x, there's no alext.h file in my Frameworks folders, so I'm assuming Apple stopped including them at some point, for some reason. Thus, trying to include <OpenAL/alext.h> fails with the frameworks linked. The solution would be to just use a custom build, however, it seems that the makepanda build relies solely on the OpenAL framework, as when I tried to use the openal-disabled libs in the latest thirdparty zip, it failed to link, likely because the libs are outdated.
I'm not sure what the best path forward for this is, either to start building openal again in the prebuilt thirdparty zips, or some more flexibility in the CLI of makepanda, perhaps.
Use Case
I would love to add support for controlling HRTF via the ALC_SOFT_HRTF extension. This would allow greater control of audio playback fidelity for headphone users in games.
We could conditionally make use of the extension if HAVE_OPENAL_FRAMEWORK is not defined.