diff options
author | Chris Robinson <[email protected]> | 2016-03-09 22:57:38 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2016-03-09 22:57:38 -0800 |
commit | 3e2672ec9f5c2a84a0f871bd0379ee387f9a95ce (patch) | |
tree | 13df9f8f0823f55d4ee2759fd3314dc9b174634f /OpenAL32/Include | |
parent | 3b9fe27cbe466ecb2a1aad8013f2dc256d708aaa (diff) |
Track the virtual and real output buffers ecplicitly
Diffstat (limited to 'OpenAL32/Include')
-rw-r--r-- | OpenAL32/Include/alMain.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/OpenAL32/Include/alMain.h b/OpenAL32/Include/alMain.h index 8c75cb83..f79002fe 100644 --- a/OpenAL32/Include/alMain.h +++ b/OpenAL32/Include/alMain.h @@ -494,9 +494,20 @@ struct ALCdevice_struct alignas(16) ALfloat ResampledData[BUFFERSIZE]; alignas(16) ALfloat FilteredData[BUFFERSIZE]; - /* Dry path buffer mix. */ + /* Dry path buffer mix (will be aliased by the virtual or real output). */ alignas(16) ALfloat (*DryBuffer)[BUFFERSIZE]; + /* Virtual output, to be post-processed to the real output. */ + struct { + ALfloat (*Buffer)[BUFFERSIZE]; + ALuint NumChannels; + } VirtOut; + /* "Real" output, which will be written to the device buffer. */ + struct { + ALfloat (*Buffer)[BUFFERSIZE]; + ALuint NumChannels; + } RealOut; + /* Running count of the mixer invocations, in 31.1 fixed point. This * actually increments *twice* when mixing, first at the start and then at * the end, so the bottom bit indicates if the device is currently mixing |