VL.FMODStudio

FMOD is an adaptive audio engine and authoring tool (FMOD Studio) mainly intended for games. Who says it can’t be useful for media installations or anywhere else VL might end up though?

I wrapped some essential functionality of the FMOD Studio API and put it into a straightforward nodeset with dynamic enums and pins.

It’s all very barebones atm. But if all you need is some ambience with dynamic parameters and one shot events, it’s enough. Here’s an example:

There’s obviously much more ground to cover here, hopefully will get to it again sometime soon.

VL.FMODStudio is now available as an easy to install nuget, just do

nuget install VL.FMODStudio -pre

And you should have it working with no additional setup.
Let me know how it goes, thanks!

To learn more about FMOD:
https://fmod.com/

10 Likes

really nice, @domj! it works really well so far and has a huuuge potential. thanks for exploring this!

1 Like

Thanks! Yeah, I think it can be used in quite a lot of ways ranging from kiosks to immersive experiences. Although it should be noted that such use (on commercial projects) requires a license. No idea how much it is as it’s not the standard game use, they seem to be handling this on a case by case basis.

https://www.fmod.com/licensing

On another note, I’m now rearranging it into a nuget structure so it’s easier to get up and running.

As for the next features to wrap, I think FFT and Meter readouts could be quite useful. Then sound spatialisation. Maybe direct wave file playback, using the low level API.

What do you see yourself using it for? Which FMOD features do you find essential?

Ah, I just read the part where it says free for projects under 500k and 5k for projects between 500k and 1.5m. so, I’d be curious what their prices are for installations and so

Even that free license, even though not applicable to installations, has a caveat:

Note: Free Indie License may only be used 1 time each 12 months. Additional use in that period incurs a fee of $2,000 per game.

I think the other license fees will depend on the scale of the project.
If you have something specific in mind, might be best to just ask them. Hopefully it’s not too prohibitive.

Super interesting, thanks for exploring this @domj

I recently looked into WWISE (Wwise | Audiokinetic) which is an industry standard for game audio. Unfortunately their licensing scheme also excludes many things (probably also interactive installations):


(from here: Wwise for Games | Audiokinetic)

but it also might be worth a look…

I came across Wwise when looking into this.

FMOD’s documentation style is much more to the point and they also provide C# wrappers. Whereas I couldn’t find anything like that for Wwise. So you’d have to write your own or maybe somehow modify the Unity integration. They really push and document well their Wwise Authoring API, but that’s just a way to remotely call methods on their authoring tool, not the engine itself.

Further FMOD Studio feels very close to Ableton Live and therefore might be easier to pick up by musicians and albeit it does feel somewhat limitied to Wwise, it’s really easy to pick up and most tasks are really fast. Wwise has more of an IDE feel to it. It’s probably more powerful and flexible and the plugin ecosystem seems to be further along as well.

Both are solid engines used in countless titles, so it’s down to what you need and preference. But Wwise is probably more of a pain to integrate into a .NET stack.

As for the license @motzi , I think it will be the same approach as FMOD. You just have to contact them, don’t think they’d just straight up exclude the use in such scenarios, just hard to put a fixed price on something so varied.

Hi @domj, very interesting stuff you have here.

Apologies if my comment is a little off topic.

I am in the middle of evaluating some options to work with spatialized audio ina a project and your demo caught my attention. However after looking around for a while in FMOD’s documentation and website I am still not clear if I can use their tools/API to control a custom audio rig (30+ speakers).

Do you have any idea if something like that can be done via FMOD and FMODStudio?

Thanks

Hi @ravazquez, thanks!

I think you’re not off-topic at all, this is exactly the kind of questions that should be asked, with a project in mind. It’s nice to have a discussion about the possibilities.

By what I was able to dig up, FMOD & FMOD Studio have built-in support for up to 7.1.4 speaker setups (this is “front left, front right, center, low frequency, surround left, surround right, back left, back right, top front left, top front right, top back left, top back right.”), totalling 12. FMOD should also provide you with proper spatialization. I have not yet integrated 3D sounds in this library but it should be fairly straightforward (when not dealing with occlusions).

https://www.fmod.com/resources/documentation-studio?version=1.10&page=welcome-to-fmod-studio.html#surround-714

As for 30+ speaker setups, I couldn’t find anything concrete but it may be possible. FMOD does support ASIO and also there is a special Raw speaker mode which should allow for non-standard multi speaker setups.

https://www.fmod.com/resources/documentation-api?version=2.0&page=core-api-common.html#fmod_speakermode_raw

So in theory maybe. Also you might still get, again in theory, spatilization (incl. Doppler) if each channel was set manually with the correct 3D parameters. But this may be more Core rather than Studio territory.

As setSpeakerPosition docu https://www.fmod.com/resources/documentation-api?version=2.0&page=core-api-system.html#system_setspeakerposition says:

Users of the Studio API should be aware this function does not affect the speaker positions used by the Spatializer DSPs, it is purely for Core API spatialization via ChannelControl::set3DAttributes.

If you have more specifics, it might be worth to ask about the feasibility of such a thing in the FMOD forum, they tend to be fairly helpful.

Alternatives that could handle this for sure would be pd, Max MSP or possibly VVVV.Audio, but you’d probably have to roll your own spatialization or find some ready made solution.

1 Like

hello,
for a vvvv.audio + vst approach you may have a look at this project it supports up to 64 channels in / out
you can run 9.x input audio and pan them in a 22.2 setup
http://research.spa.aalto.fi/projects/sparta_vsts/plugins.html
C.

1 Like

Regarding max/msp there is ircam spat: https://forum.ircam.fr/projects/detail/spat/ so you wouldn’t have to patch your own spatialization there.

Got a response from the FMOD team regarding licensing for installations:

We provide 3 tiers of license price for game users typically, as advertised on our website. Note these are for ‘commercial titles’ that charge money to be purchased or used. I have more about this at the bottom of the email for the free entry case.

Game licenses are free for ‘indies’ if the budget is less than $500k USD , $5k for budgets between $500k USD and 1.5m, and $15k for budgets above $1.5m

If an indie does more than 1 game a year the price is $2000 per game after the first free on.

For installations, we usually charge per installation location, based on the budget levels above. The only difference is we don’t offer a free/indie tier for sub $500k budgets, so the price would be $2000 in those cases, if there is an entry fee.

If you have free entry, we would consider that no charge, as it falls under our EULA as non commercial. We only charge a license fee if the software FMOD is used in charges a fee to use it.

Meaning that the pricing is the same as for games (https://fmod.com/licensing), unless you have no entry fee in which case the use is free.

I think these are reasonable price points and warrant further development of this integration. Even though the $2000 jump from no entry to any entry might disqualify some uses.

1 Like

Hello again @domj, trying to get this to work on a new machine and I seem to be having issues getting the fmodstudio dl recognized.

Could you clarify the setup procedure to get the demos up and running please?

Also, do I need to download FMOD Studio or FMOD Engine? And which version is this tailored for exactly, I see the wrappers point to 2.0, is that the one?

Thanks for any help you can provide.

Ok, I checked my file structure and it looks like this:

image

Create a lib-native folder right next to the lib one.
Place the following libraries in there.

  • fmod.dll
  • fmodL.dll
  • fmodstudio.dll
  • fmodstudioL.dll
  • fsbank.dll
  • libfsbvorbis64.dll

These files can be found in the FMOD Studio API installation (comes with FMOD Engine https://fmod.com/download)
C:\Program Files (x86)\FMOD SoundSystem\FMOD Studio API Windows\api
in the three contained folders in lib/x64, eg:
C:\Program Files (x86)\FMOD SoundSystem\FMOD Studio API Windows\api\fsbank\lib\x64

I’m not sure if ALL of them are needed but it certainly works with these.

I do plan on making it into an easier to install nuget but currently it’s not my priority.

Hi @domj, I still cannot seem to get it to work, I’ve placed the dll’s you suggested pretty much everywhere my imagination has sug
gested, but I keep getting this:

image

Any further suggestions? Do I need anything in my PATH variable maybe?

I seem to have it working now, no idea what did it in the end, will report back if I find anything,

1 Like

VL.FMODStudio is now available as an easy to install nuget, just do

nuget install VL.FMODStudio -pre

And you should have it working with no additional setup.
Let me know how it goes, thanks!

5 Likes

There has been an update to the Licensinng of FMod. Previously

If an indie does more than 1 game a year the price is $2000 per game after the first free on.

The main difference is that Indies can make as many projects as they want for games/projects funded below 500K USD, and with annual company revenues below 200K USD. Revenue, not profit.

Its worth asking again how these changes effect the installation sector.

END USER LICENCE AGREEMENT

This End User Licence Agreement (EULA) is a legal agreement between you and Firelight Technologies Pty Ltd (ACN 099 182 448) (us or we) and governs your use of FMOD Studio Authoring Tool and FMOD Studio Engine, together the Software.

1. GRANT OF LICENCE

1.1 FMOD Studio Authoring Tool

This EULA grants you the right to use FMOD Studio Authoring Tool for all use, including Commercial use, subject to the following:

  1. FMOD Studio Authoring Tool is used to create content for use with the FMOD Studio Engine only;
  2. FMOD Studio Authoring Tool is not redistributed in any form.
1.2 FMOD Studio Engine

This EULA grants you the right to use FMOD Studio Engine, for personal (hobbyist), educational (students and teachers) or Non-Commercial use only, subject to the following:

  1. FMOD Studio Engine is integrated and redistributed in a software application (Product) only;
  2. FMOD Studio Engine is not distributed as part of a game engine or tool set;
  3. FMOD Studio Engine is not used in any Commercial enterprise or for any Commercial production or subcontracting, except for the purposes of Evaluation or Development of a Commercial Product;
  4. Non-Commercial use does not involve any form of monetisation, sponsorship or promotion;
  5. Product includes attribution in accordance with Clause 3.

This EULA grants you the right to use FMOD Studio Engine, for Commercial use, subject to the following:

  1. Development budget of the project is less than $500k (Refer to www.fmod.com/licensing#licensing-faq for information);
  2. Total gross revenue / funding per year for the developer, before expenses, is less than $200k (Refer to www.fmod.com/licensing#licensing-faq for information);
  3. FMOD Studio Engine is integrated and redistributed in a game application (Product) only;
  4. FMOD Studio Engine is not distributed as part of a game engine or tool set;
  5. Project is registered in your profile page at www.fmod.com/profile#projects;
  6. Product includes attribution in accordance with Clause 3.
1 Like

that sounds really great, but what does that mean (from their licensing FAQ):

What type of commercial use is excluded?

The pricing above does not apply to Location Based Entertainment (out of home entertainment), Simulators, Embedded System, Installations, and Gaming Systems (Casino). Also excluded are applications or platforms that deliver multiple games or permit users to exploit for commercial gain. To license for these, or any other applications not listed, please contact sales@fmod.com.

1 Like

@Hadasi @tonfilm

Yes, the 1 free indie title per year limit has been lifted. I’ve hit them up again to see if this changes anything for the installation sector.

My guess is that there will be no change though. There wasn’t any free licensing option for paid events before either, so there wasn’t any limitation to cancel. Although all events without an admission fee were considered as non-commercial and therefore required no licensing fees. See my reply a couple posts up VL.FMODStudio

1 Like