Procedural Audio

There is a double buffer system. You can see it initialized in FXAudio2SoundSource::SubmitPCMRTBuffers (or FCoreAudioSoundSource) and then it gets replenished in HandleRealTimeSource as needed. If you’re getting a consistent click regardless of changing the size of the buffer I would assume that you have a discontinuity in the data you’re putting in to the array which results in the click.