Ok.. I’ve scoured the forums to no avail.. if this has been posted already im sorry for the deja-vu. Im just wondering how i can get the waveform for the left and right channels seperatly.. i browsed through the SDK and i couldn’t reallly find anything to help me… Does the DSP engine process r/l channels seperatly? Any help is appreciated..
-Alex Gumz
- Sigmatikal asked 16 years ago
- You must login to post comments
Glory be the great moron that wrote the above message. Cockmonster your IQ is comparable to that of a common house-fly, and for the message you just posted i believe that you warrant a spot on the local banned list.
If you can’t contribute anything useful then i suggest you find another set of forums to post at such as http://www.morons.com
++Cire.
- Cire answered 16 years ago
- You must login to post comments
Amen, Cire.
I know I’ve seen some references to getting “stereo” values for VU, not sure about spectrum but I’m sure the two are related. I’m interested in a clearer formula for the stereo VU – and I’m using FSOUND Streams (.mp3/.wav) not FMUSIC…
- K6Deux answered 16 years ago
- You must login to post comments
Hello,
Could you explain a little bit more about the structure of get_spectrum DSP function.
I use VB and in the VB example it is not implemented.
sorry for my english
A french newbee in FMOD.
- MINOS answered 16 years ago
- You must login to post comments
Hi, I guess I’m not understanding this correctly; I am experimenting with the DSP callback, and to start with something “easy” I am trying to simply set the volume of one channel to zero. I compiled the DSP sample, and replaced the DSP_ReverbCallback function with the following:
void *DSP_ReverbCallback(void *originalbuffer, void *newbuffer, int length, int param)
{
int mixertype = FSOUND_GetMixer();
/*
must be 16bit stereo integer buffer.. sorry fpu (32bit float) dont support this.
*/
if (mixertype == FSOUND_MIXER_BLENDMODE || mixertype == FSOUND_MIXER_QUALITY_FPU)
{
return newbuffer;
}
// Set every other sample to zero, thus setting volume for one
// channel to zero.
//
for (int i = 0; i < length; i++)
{
if (i % 2)
((int *)newbuffer)[i] = 0;
}
/*
Reverb history has been mixed into new buffer, so return it.
*/
return newbuffer;
}
Since every other sample is left/right/left/right/etc., this should set the volume for every other sample to zero, thereby setting the channel to zero, correct? But instead, both channels still play back in stereo, although at a reduced volume. Can anyone see where I’m shooting myself in the foot? Thanks.
Mike
- Mike answered 16 years ago
- You must login to post comments
Dammit, I’m so old-skool I’m thinking that Visual C integers are still 16 bits! :^( Thanx Brett.
Mike
- Mike answered 16 years ago
- You must login to post comments
Please login first to submit.