{\r
case RTAUDIO_SINT8:\r
{\r
- char* convInBuffer = ( char* ) inBuffer;\r
for ( unsigned int channel = 0; channel < channelCount; channel++ )\r
{\r
- char fromSample = convInBuffer[ frameInSample + channel ];\r
- char toSample = convInBuffer[ frameInSample + channelCount + channel ];\r
+ char fromSample = ( ( char* ) inBuffer )[ frameInSample + channel ];\r
+ char toSample = ( ( char* ) inBuffer )[ frameInSample + channelCount + channel ];\r
char sampleDiff = ( char ) ( ( toSample - fromSample ) * inSampleDec );\r
( ( char* ) outBuffer )[ frameOutSample + channel ] = fromSample + sampleDiff;\r
}\r
}\r
case RTAUDIO_SINT16:\r
{\r
- short* convInBuffer = ( short* ) inBuffer;\r
for ( unsigned int channel = 0; channel < channelCount; channel++ )\r
{\r
- short fromSample = convInBuffer[ frameInSample + channel ];\r
- short toSample = convInBuffer[ frameInSample + channelCount + channel ];\r
+ short fromSample = ( ( short* ) inBuffer )[ frameInSample + channel ];\r
+ short toSample = ( ( short* ) inBuffer )[ frameInSample + channelCount + channel ];\r
short sampleDiff = ( short ) ( ( toSample - fromSample ) * inSampleDec );\r
( ( short* ) outBuffer )[ frameOutSample + channel ] = fromSample + sampleDiff;\r
}\r
}\r
case RTAUDIO_SINT24:\r
{\r
- S24* convInBuffer = ( S24* ) inBuffer;\r
for ( unsigned int channel = 0; channel < channelCount; channel++ )\r
{\r
- int fromSample = convInBuffer[ frameInSample + channel ].asInt();\r
- int toSample = convInBuffer[ frameInSample + channelCount + channel ].asInt();\r
+ int fromSample = ( ( S24* ) inBuffer )[ frameInSample + channel ].asInt();\r
+ int toSample = ( ( S24* ) inBuffer )[ frameInSample + channelCount + channel ].asInt();\r
int sampleDiff = ( int ) ( ( toSample - fromSample ) * inSampleDec );\r
( ( S24* ) outBuffer )[ frameOutSample + channel ] = fromSample + sampleDiff;\r
}\r
}\r
case RTAUDIO_SINT32:\r
{\r
- int* convInBuffer = ( int* ) inBuffer;\r
for ( unsigned int channel = 0; channel < channelCount; channel++ )\r
{\r
- int fromSample = convInBuffer[ frameInSample + channel ];\r
- int toSample = convInBuffer[ frameInSample + channelCount + channel ];\r
+ int fromSample = ( ( int* ) inBuffer )[ frameInSample + channel ];\r
+ int toSample = ( ( int* ) inBuffer )[ frameInSample + channelCount + channel ];\r
int sampleDiff = ( int ) ( ( toSample - fromSample ) * inSampleDec );\r
( ( int* ) outBuffer )[ frameOutSample + channel ] = fromSample + sampleDiff;\r
}\r
}\r
case RTAUDIO_FLOAT32:\r
{\r
- float* convInBuffer = ( float* ) inBuffer;\r
for ( unsigned int channel = 0; channel < channelCount; channel++ )\r
{\r
- float fromSample = convInBuffer[ frameInSample + channel ];\r
- float toSample = convInBuffer[ frameInSample + channelCount + channel ];\r
+ float fromSample = ( ( float* ) inBuffer )[ frameInSample + channel ];\r
+ float toSample = ( ( float* ) inBuffer )[ frameInSample + channelCount + channel ];\r
float sampleDiff = ( toSample - fromSample ) * inSampleDec;\r
( ( float* ) outBuffer )[ frameOutSample + channel ] = fromSample + sampleDiff;\r
}\r
}\r
case RTAUDIO_FLOAT64:\r
{\r
- double* convInBuffer = ( double* ) inBuffer;\r
for ( unsigned int channel = 0; channel < channelCount; channel++ )\r
{\r
- double fromSample = convInBuffer[ frameInSample + channel ];\r
- double toSample = convInBuffer[ frameInSample + channelCount + channel ];\r
+ double fromSample = ( ( double* ) inBuffer )[ frameInSample + channel ];\r
+ double toSample = ( ( double* ) inBuffer )[ frameInSample + channelCount + channel ];\r
double sampleDiff = ( toSample - fromSample ) * inSampleDec;\r
( ( double* ) outBuffer )[ frameOutSample + channel ] = fromSample + sampleDiff;\r
}\r