Cabbage Logo
Back to Cabbage Site

Possible to create plugin effects for FMOD Studio?

I apologize if there is an obvious answer to this question: is Cabbage able to create plugin effects for fmod?

Ultimately I’d like to build a vocoder plugin for use in FMOD Studio and, thanks to the great tutorials provided, have been able to create and run some plugin sound modules in FMOD. However, I’m confused on how to get plugins effects to be recognized in FMOD Studio’s effects section.

Is it possible to create an effects module for FMOD Studio using Cabbage?

I’ve just looked through the source code and it appears that the current implementation doesn’t handle audio input at all. I can take a look. Do effects work basically the same way as other sound events in FMOD. If I add audio processing to the current interface will that do the trick, or are these effect plugins entirely different things? There is a gain plugin example that ships with the FMOD API, I guess I should try that out first to see how it works…

Ok, I see now how the effects work. Let me see how hard this might be. Darn it I like a challenge…

[edit] I see now how this works. Just need to implement it. It looks like we will need a unique plugin binary for synths and another for effects.

I’ve created an effects plugin interface that passes my very simple test. It works in the same way as the regular version but relies on a different plugin library. Can you test it out and let me know? You can find the relevant files here:

You can’t export from Cabbage with this one yet, but you can create plugins manually by copying and pasting the fmod_csound_fx.dylib file to your plugins folder, and then renaming it the same as your .csd file. Let me know how it goes.

@EoinSmith I’m pinging your here too, as this pre-release also sorts the issues of plugins not loading in version 2.N of FMOD. Just replace the fmod dylib you have in your Cababge content folders and you should be good to go. Let me know if you have any issues. :wink:

Rory thanks so much for this, I’m helping a friend so that where my initial question stemmed from. I’ll download this and test it out.

Eoin

Tried and tested. Working. I can also export from Cabbage too?

Not yet, well, if you replace the fmod_csound.dylib on your Cabbage application contents folder you can export synths, but effects won’t export until I modify Cabbage.

sorry yeh I saw the previous post, I was able to render the simple noise from Cabbage no problem. Thanks a mill Rory

Wow, thanks so much for looking into this! I’m unable to test as I’m on a windows machine. Could you post .dll versions as well?

I’ll try to get a Windows version built at some point over the weekend. :+1:

1 Like

@rorywalsh Have you had the chance to build a Windows version?

I’m just looking into it now…

I’ve uploaded two windows version here. Can you try them out and let me know? You’ll have to manually copy and rename them for each .csd file, but if they work Ok I will add them to Cabage :wink:

Just tried using several plugin sounds and plugin effects in FMOD version 2.01.05 and they all worked! Many thanks!!!

Great to hear. I will update the Cabbage installers when I get a chance, and also add FMOD effect to the export menu.

Hi there, any news on support for FMOD effects plugins in Cabbage?

I’m also curious as to the Csound distribution situation for FMOD — if I wanted to include a cabbage plugin in my FMOD session in a Unity game, would that game have to then ship with a distribution of Csound? I expect this might be problematic for platforms like Playstation, Xbox, Nintendo Switch, etc…

Support for effects were added a few months back. Can you try one the latest beta builds? You can grab one from here, just click the Drop button/link.

Yes. But in many cases it would jut be the csound library. You would of course need to build it for whatever platform you wish to target. Playstation is FreeBSD right? Linux based OSs are the easiest to build Csound on. But yeah, you will need a version of Csound for that OS.

Right, so if I’m working on a commercial game, I could include my Cabbage plugin, and since I’m just including a Csound distribution and not modifying it, the LGPL license wouldn’t then apply to the game that I put this into?

Thanks for pointing me to that beta, I’ve managed to get my fx plugin working in an FMOD session, but I had some issues with the GUI code throwing up errors until I stripped it all out.

Interestingly, FMOD was also giving me “more than one variable with name x” errors, which were referring to lines of code I had commented-out. Once I deleted them completely the error went away.

That’s interesting and odd! But I’m glad you managed to get it going Ok. I so rarely use FMOD these days.

There are no issues with using Csound in commercial projects as long as you include the Csound library. You can use whatever license you wish for your game. Please keep us updated about your work. It would be great to hear if you manage to get this working on any of the popular game consoles :+1:

Ah, thanks for clearing that up, Rory :slight_smile:

I’ll have to do some proper profiling to see how efficiently it performs in a game. I’m usually pretty limited in which DSP effects I can run in real-time, especially when it comes to consoles, so I may end up having to learn to write FMOD plugins in C++ so they can run natively. I’ll definitely let you know how I go though!