Offline rendering of elements - recreating an audio app

Hello! We are working on a game which features several “audio applications”. In our game, you open up audio files and work on them.

So we were wondering how to properly display sound data without having to rely on realtime playback to get DSP data. Basically, we would need to re-create some parts of a standard audio editing program, with the audio data being presented faster-than-realtime.

Any suggestions on how to tackle this is highly appreciated!

Filippo

Hi,

You are able to extract PCM data without playing the sound: FMOD Engine | Advanced Core Api Topics - Extracting Pcm Data From A Sound would this be a valid option?

Is this a similar issue as you were experiencing before: Visualizing both classic Loudness x Time and Spectrogram?

Hello Connor, hhank you for your answer!

Yes, it is a similar issue as we were experiencing before. Since my last post, we have explored our options in this regard. As far as we could see, the approach you posted requires audio files to be present outside of FMOD.

Since we handle all our game’s audio through FMOD, this does not really work for us. We haven’t found a way to read data in the same way from an FMOD event, or through the banks. We tried playing around with DSPs extensively.
However, they require the event to run in order to listen to data, and also cannot do it faster than realtime. We’d need the entire audio clip/event data as fast as possible. We have read about custom DSP plugins. Would that be able to bypass these limitations then? We used timeline markers and event user properties to pass custom per-event-data in our current prototype, but that made our workflow much more error prone and tedious.

If you know a way to query advanced info of events and their components (sub events, clips, effects, parameters, etc.) from outside FMOD, that’d be very useful to us. Thank you in advance!

Hi Connor,

as an additional way to explain what we would need, our coder made a little “interactive” explainer quickly: https://gemini.google.com/share/698be75ec6fb

We’re basically trying to (partly) recreate an audio editor :sweat_smile:

Let us know if you need any more details, happy to answer in any way we can!

Filippo

Dear Connor,

just checking if you could give us some pointers as to how to solve our conundrum :smiley: Let me know if you need any more input from my side. Thanks!

Cheers from Munich,

Filippo