diff options
-rw-r--r-- | OpenAL32/Include/alMain.h | 4 | ||||
-rw-r--r-- | OpenAL32/Include/alSource.h | 6 |
2 files changed, 10 insertions, 0 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h index 24027c99..6c18a387 100644 --- a/OpenAL32/Include/alMain.h +++ b/OpenAL32/Include/alMain.h @@ -584,6 +584,10 @@ void SetDefaultWFXChannelOrder(ALCdevice *device); ALboolean IsValidType(ALenum type); ALboolean IsValidChannels(ALenum type); +#define HRTF_BITS (7) +#define HRTF_LENGTH (1<<HRTF_BITS) +#define HRTF_LENGTH_MASK (HRTF_LENGTH-1) + void al_print(const char *fname, unsigned int line, const char *fmt, ...) PRINTF_STYLE(3,4); #define AL_PRINT(...) al_print(__FILE__, __LINE__, __VA_ARGS__) diff --git a/OpenAL32/Include/alSource.h b/OpenAL32/Include/alSource.h index e43792c3..30b949db 100644 --- a/OpenAL32/Include/alSource.h +++ b/OpenAL32/Include/alSource.h @@ -86,11 +86,17 @@ typedef struct ALsource // Source Type (Static, Streaming, or Undetermined) ALint lSourceType; + /* HRTF info */ + ALfloat HrtfHistory[HRTF_LENGTH]; + ALuint HrtfOffset; + // Current target parameters used for mixing ALboolean NeedsUpdate; struct { ALint Step; + ALfloat HrtfCoeffs[HRTF_LENGTH][2]; + /* A mixing matrix. First subscript is the channel number of the input * data (regardless of channel configuration) and the second is the * channel target (eg. FRONT_LEFT) */ |