Пример #1
0
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;
}
Пример #2
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;
}