Some questions about RNBO integration to a custom game/app.

photex's icon

Moin!

I've been reading over RNBO and developing some intuition for how it can be used effectively for a real-time application which uses miniaudio as its audio engine (but SoLoud is another option). I'm happy to provide more context if that helps the discussion, but here are my initial questions that hopefully some folks might have some input on:

  • When exporting to C++ and targeting a custom application and audio library:

    • If a rnbo patch (device?) is the source of a sound (footsteps, creature sfx), is it correct to say that I would instantiate the device for each entity associated with it?

    • All rnbo processing works on de-interleaved data correct?

    • My game loads all audio data using a custom format where all buffers are loaded as a single chunk of data, with a sample index that gives names to regions of the audio bank. It works with uncompressed and compressed audio, but I think using compressed audio wouldn't be possible here with RNBO because I can only create buffer references with uncompressed sample arrays as buffer inputs to a patch. Is this correct?

    • Is it possible to extend RNBO with custom objects? I can create a max external representing the spatialization system in the game and I can prototype an audio graph this way with my rnbo patches and so on, but that will always be a completely separate construction from the way the game works. (For context, I'm using steamaudio for spatialization).

Thanks for any feedback and helping me get a broader understanding of RNBO. :D