int audioCallback( void *outputBuffer, void *inputBuffer, unsigned int nBufferFrames, double streamTime, RtAudioStreamStatus status, void *userData ) { LightFluidSynth *synth = (LightFluidSynth *)userData; switch (AUDIO_FORMAT) { case RTAUDIO_FLOAT32: { float *buf = (float *)outputBuffer; synth->writeStereoFloat(buf, nBufferFrames); } break; case RTAUDIO_SINT16: { int16_t *buf = (int16_t *)outputBuffer; synth->writeStereoS16((short *)buf, nBufferFrames); } break; case RTAUDIO_SINT32: { int32_t *buf = (int32_t *)outputBuffer; synth->writeStereoS32((int *)buf, nBufferFrames); } break; } return 0; }
int audioCallback( void *outputBuffer, void *inputBuffer, unsigned int nBufferFrames, double streamTime, RtAudioStreamStatus status, void *userData ) { LightFluidSynth *synth = (LightFluidSynth *)userData; #if AUDIO_FORMAT==RTAUDIO_FLOAT32 float *buf = (float *)outputBuffer; synth->writeStereoFloat(buf, nBufferFrames); #elif AUDIO_FORMAT==RTAUDIO_SINT16 short *buf = (short *)outputBuffer; synth->writeStereoS16((short *)buf, nBufferFrames); #elif AUDIO_FORMAT==RTAUDIO_SINT32 int *buf = (int *)outputBuffer; synth->writeStereoS32((int *)buf, nBufferFrames); #endif return 0; }