Skip to content

FMOD Syntax

Roy Theunissen edited this page Apr 24, 2026 · 2 revisions

Introduction

This project was originally just a wrapper for FMOD, to be able to access events and parameters in a strongly-typed way. It's since evolved to also support the same kind of workflow for Unity's own audio solution.

Important

Audio Syntax is not released yet. This wiki is being updated to prepare for its release.

Migrating from the original FMOD Syntax package to Audio Syntax

If your project previously used FMOD Syntax and you would like to upgrade to Audio Syntax, then you can install Audio Syntax alongside FMOD Syntax. There should be no compile errors, so that the Editor code still compiles.

If you then run Audio Syntax > Setup Wizard, it will guide you through the steps required to switch to Audio Syntax (which it can do for you automatically). After this succeeds, you can remove the original FMOD Syntax package.

If something goes wrong during the upgrade process you can consult the changes that need to be made in your project below. Please also create an issue if this happens.

Here's the most important changes that were made that you should be taking into account

  • The namespace was updated from RoyTheunissen.FMODSyntax to RoyTheunissen.AudioSyntax
  • You now need to call AudioSyntaxSystem.Update instead of FMODSyntaxSystem.CullPlaybacks. Similarly, FmodSyntaxSystem.StopAllActivePlaybacks became AudioSyntaxSystem.StopAllActivePlaybacks and FmodSyntaxSystem.StopAllActiveEventPlaybacks became AudioSyntaxSystem.StopAllActiveEventPlaybacks.
  • AudioReference now returns an IAudioPlayback by default instead of an FmodParameterlessAudioPlayback (your game code should not be needlessly specific about which underlying system is used, in this case the event is parameterless anyway so it should not matter)
  • Generated code files have been renamed. They now use a .g.cs suffix to make it clearer that it's generated code, and the file names now match the class names. The old generated files should be automatically deleted for you the next time you generate code.
  • Assembly Definitions need to be updated such that references to RoyTheunissen.FMODSyntax are replaced with RoyTheunissen.AudioSyntax.
  • FMOD is not activated by default in Audio Syntax, so this needs to be enabled via the Setup Wizard.

All of this is done for you automatically if you use the Setup Wizard.

Clone this wiki locally