Studio::System::initialize

FMOD Studio API

Firelight Technologies FMOD Studio API

Studio::System::initialize

Initializes the Studio System, the Low Level System, and the sound device.

C++ Syntax

FMOD_RESULT Studio::System::initialize(
  int maxchannels,
  FMOD_STUDIO_INITFLAGS studioflags,
  FMOD_INITFLAGS flags,
  void *extradriverdata
);

C Syntax

FMOD_RESULT FMOD_Studio_System_Initialize(
  FMOD_STUDIO_SYSTEM *system,
  int maxchannels,
  FMOD_STUDIO_INITFLAGS studioflags,
  FMOD_INITFLAGS flags,
  void *extradriverdata
);

C# Syntax

RESULT Studio.System.initialize(
  int maxchannels,
  INITFLAGS studioFlags,
  FMOD.INITFLAGS flags,
  IntPtr extradriverdata
);

JavaScript Syntax

System.initialize(
  maxchannels,                     
  studioflags,                     
  flags,                           
  extradriverdata                  
);

Parameters

maxchannels
The maximum number of channels to be used in FMOD. These are also called 'virtual channels', as you can play as many of these as you want, even if you only have a small number of real voices.
studioflags
See FMOD_STUDIO_INITFLAGS. This can be a selection of flags bitwise OR'ed together to change the behaviour of the Studio System.
flags
See FMOD_INITFLAGS. This can be a selection of flags bitwise OR'ed together to change the behaviour of the Low Level System.
extradriverdata
Driver specific data that can be passed to the output plugin. For example the filename for the wav writer plugin. See FMOD_OUTPUTTYPE for what each output mode might take here. Optional. Specify 0 or NULL to ignore.

Return Values

If the function succeeds then the return value is FMOD_OK.
If the function fails then the return value will be one of the values defined in the FMOD_RESULT enumeration.

Remarks

This function should be called at startup time, after creating a Studio System with Studio::System::create.

By default Studio is initialized in asynchronous mode where all API calls are automatically deferred for execution on a separate Studio thread. You can use FMOD_STUDIO_INIT_SYNCHRONOUS_UPDATE to disable this behaviour and have all commands executed inside Studio::System::update.

See Also




Version 1.10.03 Built on Feb 1, 2018