0
0

I am using a DSP that is attached to each individual stream. I want to add a reverb to the DSP ( I know this is done in the tutorial, and couldnt see any clues as to my problem. ) Im mixing in the last DSP buffer with the current DSP buffer using FSOUND_MixBuffers like so:

[code:3f913ave]
void * mbMediaEngine::fmodDirectional(void * originalbuffer, void * newbuffer, int length, int param)
{
int i=0,mode;

mbAudioRecordrec = (mbAudioRecord)param;

int mixertype = FSOUND_GetMixer();

if (mixertype == FSOUND_MIXER_BLENDMODE || mixertype == FSOUND_MIXER_QUALITY_FPU)
{
return newbuffer;
}

signed short * src = (signed short *) newbuffer;

mode = FSOUND_Stream_GetMode(rec->stream);

if(rec->echo_init)
{
signed short * temp_echo_buffer = new signed short[length2];
memcpy(temp_echo_buffer,src,length
4);
int freq = FSOUND_GetFrequency(rec->channel);

 FSOUND_DSP_MixBuffers(src,rec->echo_buffer,length,freq,100,128,mode);

 memcpy(rec->echo_buffer,temp_echo_buffer,length*4);
 free(temp_echo_buffer);

}
else
{
memcpy(rec->echo_buffer, src, length*4);
}
rec->echo_init = true;
return src;
}
[/code:3f913ave]

This works fine untill the stream reaches a point with a high bass value. At this point noise is created and the sound crackles. I have copied the tutorial code and that didnt make a difference so reverted back to the above code. The strange thing is the noise is only created in the left channel??

  • You must to post comments
0
0

Also note this being developed on a pocket PC

  • You must to post comments
Showing 1 result
Your Answer

Please first to submit.