Gorilla.Audio.FMOD.Intf.System

Unit Gorilla.Audio.FMOD.Intf.System.pas

TGorillaFMOD3DListenerAttr

Fields

Methods

IGorillaFMODSystem

Wrapper record structure for FMOD system functionality.

Remarks

Managing allocations, groups, channels and sounds.

Methods

public function GetVersion  ( )  : Cardinal ;  abstract virtual;
public function GetOutputHandle  ( )  : PPointer ;  abstract virtual;
public function GetMasterChannelGroup  ( )  : IGorillaFMODChannelGroup ;  abstract virtual;
public function GetMasterSoundGroup  ( )  : IGorillaFMODSoundGroup ;  abstract virtual;
public function GetChannelsPlaying  ( )  : TGorillaFMODChannelsPlaying ;  abstract virtual;
public function GetCPUUsage  ( )  : TGorillaFMODCPUUsage ;  abstract virtual;
public function GetFileUsage  ( )  : TGorillaFMODFileUsage ;  abstract virtual;
public function GetSoundRAM  ( )  : TGorillaFMODSoundRAM ;  abstract virtual;
public function GetNumDrivers  ( )  : Integer ;  abstract virtual;
public function GetOutputType  ( )  : FMOD_OUTPUTTYPE ;  abstract virtual;
public procedure SetOutputType  ( const  AValue :  FMOD_OUTPUTTYPE ) ;  abstract virtual;
public function GetDriver  ( )  : Integer ;  abstract virtual;
public procedure SetDriver  ( const  AValue :  Integer ) ;  abstract virtual;
public function GetSoftwareChannels  ( )  : Integer ;  abstract virtual;
public procedure SetSoftwareChannels  ( const  AValue :  Integer ) ;  abstract virtual;
public function GetSoftwareFormat  ( )  : TGorillaFMODSoftwareFormat ;  abstract virtual;
public procedure SetSoftwareFormat  ( const  AValue :  TGorillaFMODSoftwareFormat ) ;  abstract virtual;
public function GetDSPBufferSize  ( )  : TGorillaFMODDSPBufferSize ;  abstract virtual;
public procedure SetDSPBufferSize  ( const  AValue :  TGorillaFMODDSPBufferSize ) ;  abstract virtual;
public function GetAdvancedSettings  ( )  : FMOD_ADVANCEDSETTINGS ;  abstract virtual;
public procedure SetAdvancedSettings  ( const  AValue :  FMOD_ADVANCEDSETTINGS ) ;  abstract virtual;
public function GetOutputByPlugin  ( )  : Cardinal ;  abstract virtual;
public procedure SetOutputByPlugin  ( const  AValue :  Cardinal ) ;  abstract virtual;
public function GetStreamBufferSize  ( )  : TGorillaFMODStreamBufferSize ;  abstract virtual;
public procedure SetStreamBufferSize  ( const  AValue :  TGorillaFMODStreamBufferSize ) ;  abstract virtual;
public function Get3DSettings  ( )  : TGorillaFMOD3DSettings ;  abstract virtual;
public procedure Set3DSettings  ( const  AValue :  TGorillaFMOD3DSettings ) ;  abstract virtual;
public function Get3DNumListeners  ( )  : Integer ;  abstract virtual;
public procedure Set3DNumListeners  ( const  AValue :  Integer ) ;  abstract virtual;
public function GetUserData  ( )  : Pointer ;  abstract virtual;
public procedure SetUserData  ( const  AValue :  Pointer ) ;  abstract virtual;
public function GetRecordNumDrivers  ( )  : TGorillaFMODRecordNumDrivers ;  abstract virtual;
public function GetGeometrySettings  ( )  : Single ;  abstract virtual;
public procedure SetGeometrySettings  ( const  AValue :  Single ) ;  abstract virtual;
public function GetNetworkProxy  ( )  : string ;  abstract virtual;
public procedure SetNetworkProxy  ( const  AValue :  string ) ;  abstract virtual;
public function GetNetworkTimeout  ( )  : Integer ;  abstract virtual;
public procedure SetNetworkTimeout  ( const  AValue :  Integer ) ;  abstract virtual;
public procedure Update  ( ) ;  abstract virtual;

Updates the FMOD system. This should be called once per 'game' tick, or once per frame in your application.

public procedure GetDriverInfo  ( const  AIndex :  Integer; const  AName :  string; out  AInfo :  TGorillaFMODDriverInfo ) ;  abstract virtual;

Retrieves identification information about a sound device specified by its index, and specific to the output mode set with System::setOutput.

public procedure SetPluginPath  ( const  APath :  string ) ;  abstract virtual;

Specify a base search path for plugins so they can be placed somewhere else than the directory of the main executable.

public procedure LoadPlugin  ( const  AFilename :  string; APriority :  Cardinal; out  AHandle :  Cardinal ) ;  abstract virtual;

Loads an FMOD plugin. This could be a DSP, file format or output plugin.

Parameters

  • const  AFilename :  string  -  Filename of the plugin to be loaded encoded in a UTF-8 string. FMOD_PLUGINTYPE_CODEC only, priority of the codec compared to other codecs. 0 = most important, higher numbers = less importance. Pointer to an unsigned int to receive the plugin handle, for later use.
  • APriority :  Cardinal  -  Filename of the plugin to be loaded encoded in a UTF-8 string. FMOD_PLUGINTYPE_CODEC only, priority of the codec compared to other codecs. 0 = most important, higher numbers = less importance. Pointer to an unsigned int to receive the plugin handle, for later use.
  • out  AHandle :  Cardinal  -  Filename of the plugin to be loaded encoded in a UTF-8 string. FMOD_PLUGINTYPE_CODEC only, priority of the codec compared to other codecs. 0 = most important, higher numbers = less importance. Pointer to an unsigned int to receive the plugin handle, for later use.
public procedure UnloadPlugin  ( AHandle :  Cardinal ) ;  abstract virtual;

Unloads a plugin from memory.

Parameters

public function GetNestedPlugins  ( AHandle :  Cardinal )  : Integer ;  abstract virtual;

Returns the number of plugins nested in the one plugin file.

Parameters

public function GetNestedPlugin  ( AHandle :  Cardinal; AIndex :  Integer )  : Cardinal ;  abstract virtual;

Returns nested plugin definition for the given index.

Parameters

public function GetNumPlugins  ( APluginType :  FMOD_PLUGINTYPE )  : Integer ;  abstract virtual;

Retrieves the number of available plugins loaded into FMOD at the current time.

Parameters

public function GetPluginHandle  ( APluginType :  FMOD_PLUGINTYPE; AIndex :  Integer )  : Cardinal ;  abstract virtual;

Retrieves the handle of a plugin based on its type and relative index. Use System::getNumPlugins to enumerate plugins.

Parameters

  • APluginType :  FMOD_PLUGINTYPE  -  The type of plugin type such as FMOD_PLUGINTYPE_OUTPUT, FMOD_PLUGINTYPE_CODEC or FMOD_PLUGINTYPE_DSP. The relative index for the type of plugin.
  • AIndex :  Integer  -  The type of plugin type such as FMOD_PLUGINTYPE_OUTPUT, FMOD_PLUGINTYPE_CODEC or FMOD_PLUGINTYPE_DSP. The relative index for the type of plugin.
public procedure GetPluginInfo  ( AHandle :  Cardinal; const  AName :  string; var  AInfo :  TGorillaFMODPluginInfo ) ;  abstract virtual;

Retrieves information to display for the selected plugin.

public procedure CreateDSPByPlugin  ( AHandle :  Cardinal; out  ADSP :  IGorillaFMODDSP ) ;  abstract virtual;

Creates a DSP unit object which is either built in or loaded as a plugin, to be inserted into a DSP network, for the purposes of sound filtering or sound generation. This function creates a DSP unit that can be enumerated by using System::getNumPlugins and System::getPluginInfo.

Parameters

  • AHandle :  Cardinal  -  Handle to a pre-existing DSP plugin, loaded by System::loadPlugin. Address of a variable to receive a newly created FMOD::DSP object.
  • out  ADSP :  IGorillaFMODDSP  -  Handle to a pre-existing DSP plugin, loaded by System::loadPlugin. Address of a variable to receive a newly created FMOD::DSP object.
public procedure GetDSPInfoByPlugin  ( AHandle :  Cardinal; out  ADescr :  PFMOD_DSPDescription ) ;  abstract virtual;

Retrieve the description structure for a pre-existing DSP plugin.

Parameters

  • AHandle :  Cardinal  -  Handle to a pre-existing DSP plugin, loaded by System::loadPlugin. Address of a variable to receive the description structure for the DSP.
  • out  ADescr :  PFMOD_DSPDescription  -  Handle to a pre-existing DSP plugin, loaded by System::loadPlugin. Address of a variable to receive the description structure for the DSP.
public function RegisterCodec  ( ADescr :  FMOD_CODEC_DESCRIPTION; APriority :  Cardinal )  : Cardinal ;  abstract virtual;

Creates a file format codec to be used by FMOD for opening custom file types.

Parameters

  • ADescr :  FMOD_CODEC_DESCRIPTION  -  A FMOD_CODEC_DESCRIPTION structure containing information about the codec. Priority of the codec compared to other codecs. 0 = most important, higher numbers = less importance.
  • APriority :  Cardinal  -  A FMOD_CODEC_DESCRIPTION structure containing information about the codec. Priority of the codec compared to other codecs. 0 = most important, higher numbers = less importance.
public function RegisterDSP  ( ADescr :  FMOD_DSP_DESCRIPTION )  : Cardinal ;  abstract virtual;

Register a user-defined DSP effect for use with the System. This function allows you to register statically-linked DSP effects. Once registered, you can create instances of the DSP effect by using System::createDSPByPlugin.

Parameters

  • ADescr :  FMOD_DSP_DESCRIPTION  -  A FMOD_DSP_DESCRIPTION structure, containing information about the DSP effect. Some members of FMOD_DSP_DESCRIPTION are referenced directly inside FMOD so the structure should be allocated statically or at least remain in memory for the lifetime of the system.
public function RegisterOutput  ( ADescr :  FMOD_OUTPUT_DESCRIPTION )  : Cardinal ;  abstract virtual;

Register a user-defined output mode for use with the System. This function allows you to register statically-linked output modes. Once registered, you can use the output mode with System::setOutputByPlugin.

Parameters

public function GetSpeakerPosition  ( ASpeaker :  FMOD_SPEAKER )  : TGorillaFMODSpeakerPosition ;  abstract virtual;

Retrieves the current speaker position information for the selected speaker.

Parameters

public procedure SetSpeakerPosition  ( ASpeaker :  FMOD_SPEAKER; const  AValue :  TGorillaFMODSpeakerPosition ) ;  abstract virtual;

This function allows the user to specify the position of their actual physical speaker to account for non standard setups.

It also allows the user to disable speakers from 3D consideration in a game.

The funtion is for describing the 'real world' speaker placement to provide a more natural panning solution for 3D sound. Graphical configuration screens in an application could draw icons for speaker placement that the user could position at their will.

Parameters

  • ASpeaker :  FMOD_SPEAKER  -  The selected speaker of interest to position.

    X - The 2D X position relative to the listener. Optional. Specify 0 or NULL to ignore.

    Y - The 2D Y position relative to the listener. Optional. Specify 0 or NULL to ignore.

    Active - The active state of a speaker.

  • const  AValue :  TGorillaFMODSpeakerPosition  -  The selected speaker of interest to position.

    X - The 2D X position relative to the listener. Optional. Specify 0 or NULL to ignore.

    Y - The 2D Y position relative to the listener. Optional. Specify 0 or NULL to ignore.

    Active - The active state of a speaker.

public function Get3DListenerAttributes  ( AListener :  Integer )  : TGorillaFMOD3DListenerAttr ;  abstract virtual;

This retrieves the position, velocity and orientation of the specified 3D sound listener.

public procedure Set3DListenerAttributes  ( AListener :  Integer; const  AValue :  TGorillaFMOD3DListenerAttr ) ;  abstract virtual;

This updates the position, velocity and orientation of the specified 3D sound listener.

Parameters

  • AListener :  Integer  -  Listener ID in a multi-listener environment. Specify 0 if there is only 1 listener.

    Pos - The position of the listener in world space, measured in distance units. Optional. Specify 0 or NULL to ignore.

    Velocity - The velocity of the listener measured in distance units per second. Optional. Specify 0 or NULL to ignore.

    _Forward - The forwards orientation of the listener. Optional. Specify 0 or NULL to ignore.

    Up - The upwards orientation of the listener. Optional. Specify 0 or NULL to ignore.

  • const  AValue :  TGorillaFMOD3DListenerAttr  -  Listener ID in a multi-listener environment. Specify 0 if there is only 1 listener.

    Pos - The position of the listener in world space, measured in distance units. Optional. Specify 0 or NULL to ignore.

    Velocity - The velocity of the listener measured in distance units per second. Optional. Specify 0 or NULL to ignore.

    _Forward - The forwards orientation of the listener. Optional. Specify 0 or NULL to ignore.

    Up - The upwards orientation of the listener. Optional. Specify 0 or NULL to ignore.

public procedure Set3DRolloffCallback  ( ACallback :  FMOD_3D_ROLLOFF_CALLBACK ) ;  abstract virtual;

When FMOD wants to calculate 3D volume for a channel, this callback can be used to override the internal volume calculation based on distance.

Parameters

  • ACallback :  FMOD_3D_ROLLOFF_CALLBACK  -  Pointer to a C function of type FMOD_3D_ROLLOFF_CALLBACK, that is used to override the FMOD volume calculation. Default is 0 or NULL. Setting the callback to null will return 3D calculation back to FMOD.
public procedure MixerSuspend  ( ) ;  abstract virtual;

Suspend mixer thread and relinquish usage of audio hardware while maintaining internal state.

public procedure MixerResume  ( ) ;  abstract virtual;

Resume mixer thread and reacquire access to audio hardware.

public procedure GetDefaultMixMatrix  ( ASourceSpeakerMode :  FMOD_SPEAKERMODE; ATargetSpeakerMode :  FMOD_SPEAKERMODE; AMatrixHop :  Integer; AMatrix :  PSingle ) ;  abstract virtual;

Gets the default matrix used to convert from one speaker mode to another.

Parameters

  • ASourceSpeakerMode :  FMOD_SPEAKERMODE  -  The speaker mode being converted from. The speaker mode being converted to. The number of source channels in the matrix. Optional. If this is 0, the number of source channels will be derived from 'sourcespeakermode'. Maximum of FMOD_MAX_CHANNEL_WIDTH. The output matrix. Its minumum size in floats must be the number of source channels multiplied by the number of target channels. Source and target channels cannot exceed FMOD_MAX_CHANNEL_WIDTH.
  • ATargetSpeakerMode :  FMOD_SPEAKERMODE  -  The speaker mode being converted from. The speaker mode being converted to. The number of source channels in the matrix. Optional. If this is 0, the number of source channels will be derived from 'sourcespeakermode'. Maximum of FMOD_MAX_CHANNEL_WIDTH. The output matrix. Its minumum size in floats must be the number of source channels multiplied by the number of target channels. Source and target channels cannot exceed FMOD_MAX_CHANNEL_WIDTH.
  • AMatrixHop :  Integer  -  The speaker mode being converted from. The speaker mode being converted to. The number of source channels in the matrix. Optional. If this is 0, the number of source channels will be derived from 'sourcespeakermode'. Maximum of FMOD_MAX_CHANNEL_WIDTH. The output matrix. Its minumum size in floats must be the number of source channels multiplied by the number of target channels. Source and target channels cannot exceed FMOD_MAX_CHANNEL_WIDTH.
  • AMatrix :  PSingle  -  The speaker mode being converted from. The speaker mode being converted to. The number of source channels in the matrix. Optional. If this is 0, the number of source channels will be derived from 'sourcespeakermode'. Maximum of FMOD_MAX_CHANNEL_WIDTH. The output matrix. Its minumum size in floats must be the number of source channels multiplied by the number of target channels. Source and target channels cannot exceed FMOD_MAX_CHANNEL_WIDTH.
public function GetSpeakerModeChannels  ( AMode :  FMOD_SPEAKERMODE )  : Integer ;  abstract virtual;

Gets the a speaker mode's channel count.

public function CreateSoundFromFile  ( AFileName :  string; AMode :  Cardinal  =  $0 ; AExInfo :  PFMOD_CreateSoundExInfo  =  nil )  : IGorillaFMODSound ;  abstract overload virtual;

Loads a sound into memory, or opens it for streaming.

public function CreateSoundFromStream  ( AStream :  TMemoryStream; AMode :  Cardinal  =  $80 ; AExInfo :  PFMOD_CreateSoundExInfo  =  nil )  : IGorillaFMODSound ;  abstract overload virtual;

Opens a sound for streaming. This function is a helper function that is the same as System::createSound but has the FMOD_CREATESTREAM flag added internally.

public function CreateDSP  ( const  ADescription :  PFMOD_DSPDescription )  : IGorillaFMODDSP ;  abstract virtual;

Creates a user defined DSP unit object to be inserted into a DSP network, for the purposes of sound filtering or sound generation.

A DSP unit can generate or filter incoming data. The data is created or filtered through use of the read callback that is defined by the user. See the definition for the FMOD_DSP_DESCRIPTION structure to find out what each member means. To be active, a unit must be inserted into the FMOD DSP network to be heard. Use functions such as ChannelGroup::addDSP, Channel::addDSP or DSP::addInput to do this. For more information and a detailed description (with diagrams) see the tutorial on the DSP system in the documentation.

public function CreateDSPByType  ( AType :  FMOD_DSP_TYPE )  : IGorillaFMODDSP ;  abstract virtual;

Creates an FMOD defined built in DSP unit object to be inserted into a DSP network, for the purposes of sound filtering or sound generation. This function is used to create special effects that come built into FMOD.

public function CreateChannelGroup  ( const  AName :  string )  : IGorillaFMODChannelGroup ;  abstract virtual;

Creates a channel group object. These objects can be used to assign channels to for group channel settings, such as volume. Channel groups are also used for sub-mixing. Any channels that are assigned to a channel group get submixed into that channel group's DSP.

public function CreateSoundGroup  ( const  AName :  string )  : IGorillaFMODSoundGroup ;  abstract virtual;

Creates a sound group, which can store handles to multiple Sound pointers.

public function CreateReverb3D  ( )  : IGorillaFMODReverb3D ;  abstract virtual;

Creates a 'virtual reverb' object. This object reacts to 3D location and morphs the reverb environment based on how close it is to the reverb object's center. Multiple reverb objects can be created to achieve a multi-reverb environment. 1 Physical reverb object is used for all 3D reverb objects (slot 0 by default).

public procedure PlaySound  ( ASound :  IGorillaFMODSound; AChannelGroup :  IGorillaFMODChannelGroup  =  nil ; APaused :  LongBool  =  False ) ;  abstract virtual;

Plays a sound object on a particular channel and ChannelGroup if desired.

public function PlaySoundWithChannel  ( ASound :  IGorillaFMODSound; AChannelGroup :  IGorillaFMODChannelGroup  =  nil ; APaused :  LongBool  =  False )  : IGorillaFMODChannel ;  abstract virtual;

Plays a sound object on a particular channel and ChannelGroup if desired.

public procedure PlayDSP  ( ADSP :  IGorillaFMODDSP; AChannelGroup :  IGorillaFMODChannelGroup  =  nil ; APaused :  LongBool  =  False ) ;  abstract virtual;

Plays a DSP unit object and its input network on a particular channel.

public function PlayDSPWithChannel  ( ADSP :  IGorillaFMODDSP; AChannelGroup :  IGorillaFMODChannelGroup  =  nil ; APaused :  LongBool  =  False )  : IGorillaFMODChannel ;  abstract virtual;

Plays a DSP unit object and its input network on a particular channel.

public function GetChannel  ( AChannelId :  Integer )  : IGorillaFMODChannel ;  abstract virtual;

Retrieves a handle to a channel by ID.

public procedure AttachChannelGroupToPort  ( APortType :  Cardinal; APortIndex :  UInt64; AChannelGroup :  IGorillaFMODChannelGroup; APassThru :  LongBool ) ;  abstract virtual;

Route the signal from a channel group into a seperate audio port on the output driver.

public procedure DetachChannelGroupFromPort  ( AChannelGroup :  IGorillaFMODChannelGroup ) ;  abstract virtual;

Disconnect a channel group from a and route audio back to the default port of the output driver

public procedure SetReverbProperties  ( AInstance :  Integer; const  AProps :  FMOD_REVERB_PROPERTIES ) ;  abstract virtual;

Sets parameters for the global reverb environment. To assist in defining reverb properties there are several presets available, see FMOD_REVERB_PRESETS

public function GetReverbProperties  ( AInstance :  Integer )  : FMOD_REVERB_PROPERTIES ;  abstract virtual;

Retrieves the current reverb environment for the specified reverb instance.

public procedure LockDSP  ( ) ;  abstract virtual;

Mutual exclusion function to lock the FMOD DSP engine (which runs asynchronously in another thread), so that it will not execute. If the FMOD DSP engine is already executing, this function will block until it has completed. The function may be used to synchronize DSP network operations carried out by the user. An example of using this function may be for when the user wants to construct a DSP sub-network, without the DSP engine executing in the background while the sub-network is still under construction.

public procedure UnlockDSP  ( ) ;  abstract virtual;

Mutual exclusion function to unlock the FMOD DSP engine (which runs asynchronously in another thread) and let it continue executing.

public function GetRecordDriverInfo  ( ADriverId :  Integer; const  AName :  string )  : TGorillaFMODRecordDriverInfo ;  abstract virtual;

Retrieves identification information about a sound device specified by its index, and specific to the output mode set with System::setOutput.

public function GetRecordPosition  ( ADriverId :  Integer )  : Cardinal ;  abstract virtual;

Retrieves the current recording position of the record buffer in PCM samples.

public procedure RecordStart  ( ADriverId :  Integer; ASound :  IGorillaFMODSound; ALoop :  LongBool ) ;  abstract virtual;

Starts the recording engine recording to the specified recording sound.

public procedure RecordStop  ( ADriverId :  Integer ) ;  abstract virtual;

Stops the recording engine from recording to the specified recording sound.

public function IsRecording  ( ADriverId :  Integer )  : LongBool ;  abstract virtual;

Retrieves the state of the FMOD recording API, ie if it is currently recording or not.

public function CreateGeometry  ( const  AMaxPolygons :  Integer; const  AMaxVertices :  Integer )  : IGorillaFMODGeometry ;  abstract virtual;

Geometry creation function. This function will create a base geometry object which can then have polygons added to it.

public function LoadGeometry  ( const  AData :  Pointer; const  ADatasize :  Integer )  : IGorillaFMODGeometry ;  abstract virtual;

Creates a geometry object from a block of memory which contains pre-saved geometry data, saved by Geometry::save.

public procedure GetGeometryOcclusion  ( const  AListener :  TPoint3D; const  ASource :  TPoint3D; out  AResult :  TGorillaFMODGeometryOcclusion ) ;  abstract virtual;

Calculates geometry occlusion between a listener and a sound source.

Properties

public Version : Cardinal

Returns the current version of FMOD Studio being used.

read GetVersion
public OutputHandle : PPointer

Retrieves a pointer to the system level output device module. This means a pointer to a DirectX "LPDIRECTSOUND", or a WINMM handle, or with something like with FMOD_OUTPUTTYPE_NOSOUND output, the handle will be null or 0.

read GetOutputHandle
public MasterChannelGroup : IGorillaFMODChannelGroup

Retrieves a handle to the internal master channel group. This is the default channel group that all channels play on. This channel group can be used to do things like set the master volume for all playing sounds. See the ChannelGroup API for more functionality.

read GetMasterChannelGroup
public MasterSoundGroup : IGorillaFMODSoundGroup

Retrieves the default sound group, where all sounds are placed when they are created.

read GetMasterSoundGroup
public ChannelsPlaying : TGorillaFMODChannelsPlaying

Retrieves the number of currently playing channels.

read GetChannelsPlaying
public CPUUsage : TGorillaFMODCPUUsage

Retrieves in percent of CPU time - the amount of cpu usage that FMOD is taking for streaming/mixing and System::update combined.

read GetCPUUsage
public FileUsgae : TGorillaFMODFileUsage

Retrieves information about file reads by FMOD.

read GetFileUsage
public SoundRAM : TGorillaFMODSoundRAM

Retrieves the amount of dedicated sound ram available if the platform supports it. Most platforms use main ram to store audio data, so this function usually isn't necessary.

read GetSoundRAM
public OutputType : FMOD_OUTPUTTYPE

Retrieves the current output system FMOD is using to address the hardware.

read GetOutputType
write SetOutputType
public NumDrivers : Integer

Retrieves the number of soundcard devices on the machine, specific to the output mode set with System::setOutput.

read GetNumDrivers
public Driver : Integer

Returns the currently selected driver number. Drivers are enumerated when selecting a driver with System::setDriver or other driver related functions such as System::getNumDrivers or System::getDriverInfo.

read GetDriver
write SetDriver
public SoftwareChannels : Integer

Retrieves the maximum number of software mixed channels possible.

read GetSoftwareChannels
write SetSoftwareChannels
public SoftwareFormat : TGorillaFMODSoftwareFormat

Retrieves the output format for the software mixer.

samplerate - Address of a variable that receives the sample rate
         of the mixer. Optional. Specify 0 or NULL to ignore.
speakermode - Address of a variable that receives the speaker
         setup of the mixer. Optional. Specify 0 or NULL to ignore.
numrawspeakers - Address of a variable that receives the number
         of speakers for FMOD_SPEAKERMODE_RAW mode. Optional. Specify 0 or
         NULL to ignore.

read GetSoftwareFormat
write SetSoftwareFormat
public DSPBufferSize : TGorillaFMODDSPBufferSize

Retrieves the buffer size settings for the FMOD software mixing engine.

bufferlength - Address of a variable that receives the mixer
         engine block size in samples. Default = 1024. (milliseconds = 1024 at
         48khz = 1024 / 48000 * 1000 = 10.66ms). This means the mixer updates
         every 21.3ms. Optional. Specify 0 or NULL to ignore.
numbuffers - Address of a variable that receives the mixer
         engine number of buffers used. Default = 4. To get the total
         buffersize multiply the bufferlength by the numbuffers value. By
         default this would be 4*1024. Optional. Specify 0 or NULL to ignore.

read GetDSPBufferSize
write SetDSPBufferSize
public AdvancedSettings : FMOD_ADVANCEDSETTINGS

Retrieves the advanced settings value set for the system object.

read GetAdvancedSettings
write SetAdvancedSettings
public OutputByPlugin : Cardinal

Returns the currently selected output as an id in the list of output plugins.

read GetOutputByPlugin
write SetOutputByPlugin
public StreamBufferSize : TGorillaFMODStreamBufferSize

Returns the current internal buffersize settings for streamable sounds.

read GetStreamBufferSize
write SetStreamBufferSize
public _3DSettings : TGorillaFMOD3DSettings

Retrieves the global doppler scale, distance factor and rolloff scale for all 3D sound in FMOD.

read Get3DSettings
write Set3DSettings
public _3DNumListeners : Integer

Retrieves the number of 3D listeners.

read Get3DNumListeners
write Set3DNumListeners
public UserData : Pointer

Retrieves the user value that that was set by calling the System::setUserData function.

read GetUserData
write SetUserData
public RecordNumDrivers : TGorillaFMODRecordNumDrivers

Retrieves the number of recording devices available for this output mode. Use this to enumerate all recording devices possible so that the user can select one.

read GetRecordNumDrivers
public GeometrySettings : Single

Retrieves the maximum world size for the geometry engine.

read GetGeometrySettings
write SetGeometrySettings
public NetworkProxy : string

Set a proxy server to use for all subsequent internet connections. The name of a proxy server encoded as a UTF-8 string in host:port format e.g. www.fmod.org:8888 (defaults to port 80 if no port is specified).

read GetNetworkProxy
write SetNetworkProxy
public NetworkTimeout : Integer

The timeout for network streams in ms.

read GetNetworkTimeout
write SetNetworkTimeout