From 0c0c3dd70d0d8626363d9841ec2950ab28a8b580 Mon Sep 17 00:00:00 2001 From: Squareys Date: Wed, 4 Nov 2015 19:21:39 +0100 Subject: [PATCH] Audio: Implement support for AL_EXT_float32. Signed-off-by: Squareys --- src/Magnum/Audio/Buffer.cpp | 3 +++ src/Magnum/Audio/Buffer.h | 19 ++++++++++++++++++- 2 files changed, 21 insertions(+), 1 deletion(-) diff --git a/src/Magnum/Audio/Buffer.cpp b/src/Magnum/Audio/Buffer.cpp index 270b3b61f..1ef108196 100644 --- a/src/Magnum/Audio/Buffer.cpp +++ b/src/Magnum/Audio/Buffer.cpp @@ -36,6 +36,9 @@ Debug& operator<<(Debug& debug, const Buffer::Format value) { _c(Mono16) _c(Stereo8) _c(Stereo16) + + _c(MonoFloat32) + _c(StereoFloat32) #undef _c } diff --git a/src/Magnum/Audio/Buffer.h b/src/Magnum/Audio/Buffer.h index 1d3b0e60d..d1a50ed52 100644 --- a/src/Magnum/Audio/Buffer.h +++ b/src/Magnum/Audio/Buffer.h @@ -31,6 +31,9 @@ #include #include +#include +#include "MagnumExternal/OpenAL/extensions.h" + #include #include "Magnum/Magnum.h" @@ -52,7 +55,21 @@ class Buffer { Mono8 = AL_FORMAT_MONO8, /**< 8-bit unsigned mono */ Mono16 = AL_FORMAT_MONO16, /**< 16-bit signed mono */ Stereo8 = AL_FORMAT_STEREO8, /**< 8-bit interleaved unsigned stereo */ - Stereo16 = AL_FORMAT_STEREO16 /**< 16-bit interleaved signed stereo */ + Stereo16 = AL_FORMAT_STEREO16, /**< 16-bit interleaved signed stereo */ + + /** + * @brief 32-bit mono + * + * @requires_al_extension extension @al_extension{EXT,float32} + */ + MonoFloat32 = AL_FORMAT_MONO_FLOAT32, + + /** + * @brief 32-bit interleaved stereo + * + * @requires_al_extension extension @al_extension{EXT,float32} + */ + StereoFloat32 = AL_FORMAT_STEREO_FLOAT32, }; /**