I’ve been using fmod for about a year now, and have never found to need to look anywhere else for an audio solution…until now….

I found another system that offer a simple function that cannot be dont with fmod ( or can it ), and it opened up a whole heap of options for me..

What i needed to do is anaylyse a stream (wav, mp3 whatever), i need to be able to plot a waveform, extract bpm, colour energy and key from an audio source. I got the detetion and anaylsis sorted it’s just getting the Waveform data. Bass offer’s the option of obtaing the decoded waveform without playing the file, which means i can read,plot and anylalse a 4 min mp3 in 3 seconds ( with an accurate bpm, waveform peak file, energy level, gain values the works)

is this something that could be made available in fmod, open a stream for decoding and fft only and a function to pass this info .

At the moment i’m using Bass for the reading and ploting of audio, and fmod for playback which is not ideal. I’d MUCH prefer to use fmod for everything.

I think i would open up a lot of possibilities for use.

Any thoughts?…

oh…and im using a stupid foldable keyboard so sorry for typos.

cheers, good luck in the rugby ( not :) )

  • You must to post comments

I am very interested in reading stream data too.
I just don’t want to write the decoding of mp3 and ogg myself.

It is kinda possible right now if you open another instance of fmod and use the NOSOUND flag or something like that, and then just use FSound_update.
To get the data you could then simply make a dsp callback and attach it to the stream(s) you want to process.

The biggest problem I’m having with this is that I don’t think you have precise time information of the data in the callback.
What I think would be very great is if the callback also included position, either in milliseconds or in samples since the start of the stream.
This position would then be the position of the first sample the callback passes to you.
(So it also has to be accurate when skipping by using settime/setposition)

  • You must to post comments
Showing 1 result
Your Answer

Please first to submit.