projects
/
rtaudio-cdist.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
fa8b676
)
#170 : Insert missing render memcpy when !doConvertBuffer in WASAPI
author
Marcus Tomlinson
<themarcustomlinson@gmail.com>
Thu, 13 Dec 2018 23:16:42 +0000
(23:16 +0000)
committer
Marcus Tomlinson
<themarcustomlinson@gmail.com>
Fri, 14 Dec 2018 17:58:49 +0000
(17:58 +0000)
RtAudio.cpp
patch
|
blob
|
history
diff --git
a/RtAudio.cpp
b/RtAudio.cpp
index 7c87572fd79964819720eab69ccbce4cbaf1dd45..ace0572fe9b440610663fbc6a9a4f4d34276fcba 100644
(file)
--- a/
RtAudio.cpp
+++ b/
RtAudio.cpp
@@
-4860,8
+4860,7
@@
bool RtApiWasapi::probeDeviceOpen( unsigned int device, StreamMode mode, unsigne
stream_.doConvertBuffer[mode] = false;
if ( stream_.userFormat != stream_.deviceFormat[mode] ||
stream_.nUserChannels[0] != stream_.nDeviceChannels[0] ||
stream_.doConvertBuffer[mode] = false;
if ( stream_.userFormat != stream_.deviceFormat[mode] ||
stream_.nUserChannels[0] != stream_.nDeviceChannels[0] ||
- stream_.nUserChannels[1] != stream_.nDeviceChannels[1] ||
- stream_.userInterleaved )
+ stream_.nUserChannels[1] != stream_.nDeviceChannels[1] )
stream_.doConvertBuffer[mode] = true;
else if ( stream_.userInterleaved != stream_.deviceInterleaved[mode] &&
stream_.nUserChannels[mode] > 1 )
stream_.doConvertBuffer[mode] = true;
else if ( stream_.userInterleaved != stream_.deviceInterleaved[mode] &&
stream_.nUserChannels[mode] > 1 )
@@
-5318,6
+5317,12
@@
void RtApiWasapi::wasapiThread()
stream_.convertInfo[OUTPUT] );
}
stream_.convertInfo[OUTPUT] );
}
+ else {
+ // no further conversion, simple copy userBuffer to deviceBuffer
+ memcpy( stream_.deviceBuffer,
+ stream_.userBuffer[OUTPUT],
+ stream_.bufferSize * stream_.nUserChannels[OUTPUT] * formatBytes( stream_.userFormat ) );
+ }
// Convert callback buffer to stream sample rate
renderResampler->Convert( convBuffer,
// Convert callback buffer to stream sample rate
renderResampler->Convert( convBuffer,