diff options
Diffstat (limited to 'alc/backends/oss.cpp')
-rw-r--r-- | alc/backends/oss.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/alc/backends/oss.cpp b/alc/backends/oss.cpp index 59cc44e4..b3f8936a 100644 --- a/alc/backends/oss.cpp +++ b/alc/backends/oss.cpp @@ -277,6 +277,7 @@ int OSSPlayback::mixerProc() SetRTPriority(); althrd_setname(MIXER_THREAD_NAME); + const size_t frame_step{mDevice->channelsFromFmt()}; const ALuint frame_size{mDevice->frameSizeFromFmt()}; std::unique_lock<OSSPlayback> dlock{*this}; @@ -306,7 +307,7 @@ int OSSPlayback::mixerProc() ALubyte *write_ptr{mMixData.data()}; size_t to_write{mMixData.size()}; - aluMixData(mDevice, write_ptr, static_cast<ALuint>(to_write/frame_size)); + aluMixData(mDevice, write_ptr, static_cast<ALuint>(to_write/frame_size), frame_step); while(to_write > 0 && !mKillNow.load(std::memory_order_acquire)) { ssize_t wrote{write(mFd, write_ptr, to_write)}; |