aboutsummaryrefslogtreecommitdiffstats
path: root/alc
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2019-12-02 11:39:30 -0800
committerChris Robinson <[email protected]>2019-12-02 11:51:27 -0800
commit799c60f3bbf041c5eafeb6b3acb7fc5d3f395718 (patch)
tree205e8772dcf9e90ae482f1702c0b5ab3c570e68e /alc
parent58e4d643d3daa1d181901f6618ba96919f199f55 (diff)
Add an interface to set a B-Format buffer's layout and scaling
Diffstat (limited to 'alc')
-rw-r--r--alc/alc.cpp1
-rw-r--r--alc/inprogext.h15
2 files changed, 16 insertions, 0 deletions
diff --git a/alc/alc.cpp b/alc/alc.cpp
index 0a90a14f..05f90d38 100644
--- a/alc/alc.cpp
+++ b/alc/alc.cpp
@@ -825,6 +825,7 @@ constexpr ALchar alExtList[] =
"AL_EXT_SOURCE_RADIUS "
"AL_EXT_STEREO_ANGLES "
"AL_LOKI_quadriphonic "
+ "AL_SOFTX_bformat_ex "
"AL_SOFT_block_alignment "
"AL_SOFT_deferred_updates "
"AL_SOFT_direct_channels "
diff --git a/alc/inprogext.h b/alc/inprogext.h
index ad3ea288..d1890e70 100644
--- a/alc/inprogext.h
+++ b/alc/inprogext.h
@@ -77,6 +77,21 @@ AL_API void AL_APIENTRY alGetPointervSOFT(ALenum pname, void **values);
#define AL_EFFECTSLOT_TARGET_SOFT 0xf000
#endif
+#ifndef AL_SOFT_bformat_ex
+#define AL_SOFT_bformat_ex
+#define AL_AMBISONIC_LAYOUT_SOFT 0x1997
+#define AL_AMBISONIC_SCALING_SOFT 0x1998
+
+/* Ambisonic layouts */
+#define AL_FUMA_SOFT 0x0000
+#define AL_ACN_SOFT 0x0001
+
+/* Ambisonic scalings (normalization) */
+/*#define AL_FUMA_SOFT*/
+#define AL_SN3D_SOFT 0x0001
+#define AL_N3D_SOFT 0x0002
+#endif
+
#ifdef __cplusplus
} /* extern "C" */
#endif