Hello,

VS 2008

I am filling the buffer with the read method in the code below, using SlimDX to capture the audio input from the microphone.

The problem I have is that the buffer will overrun. It there anyway to create a circuler buffer that once it gets to the the end it will start over again?

Many thanks for any suggestions,

Code:
private void bgwAudioInput_DoWork(object sender, DoWorkEventArgs e)
        {
            Int16[] samples = new Int16[8192 / sizeof(Int16)];
            Int16 audioValue = 0;
            int i = 0;
            captureBuff.Start(true);
          
            while (captureAudio)
            {
                if (!this.bgwAudioInput.CancellationPending)
                {
                    captureBuff.Read(samples, 0, true);
                    audioValue = Math.Abs(samples[i++]);
                    this.bgwAudioInput.ReportProgress(audioValue);
                }
            }
}