Gorilla.Audio.FMOD.Intf.Channel
Unit Gorilla.Audio.FMOD.Intf.Channel.pasInterfaces
- interface IGorillaFMODChannel
IGorillaFMODChannel
Default wrapper record structure for handling channels of FMOD.
Methods
Stops the channel (or all channels in the channel group) from playing. Makes it available for re-use by the priority system.
Sets the wet level (or send level) of a particular reverb instance.
Retrieves the wet level (or send level) for a particular reverb instance.
Sets a callback to perform action for a specific event.
Sets the pan level, this is a helper to avoid calling ChannelControl::setMixMatrix.
Parameters
- APan : Single - Pan level, from -1.0 (left) to 1.0 (right), default = 0 (center).
Sets the speaker volume levels for each speaker individually, this is a helper to avoid calling ChannelControl::setMixMatrix.
Parameters
- AValue :
TGorillaFMODMixLevelsOutput
-
FrontLeft - Volume level for the front left speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
FrontRight - Volume level for the front right speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
Center - Volume level for the center speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
LFE - Volume level for the subwoofer speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
SurroundLeft - Volume level for the surround left speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
SurroundRight - Volume level for the surround right speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
BackLeft - Volume level for the back left speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
BackRight - Volume level for the back right speaker of a multichannel speaker setup, 0.0 (silent), 1.0 (normal volume).
Sets the incoming volume level for each channel of a multi-channel sound. This is a helper to avoid calling ChannelControl::setMixMatrix. A multi-channel sound is a single sound that contains from 1 to 32 channels of sound data, in an interleaved fashion. If in the extreme case, a 32ch wave file was used, an array of 32 floating point numbers denoting their volume levels would be passed in to the levels parameter, and 32 for the numlevels parameter.
Parameters
- const ALevels : TArray<System.Single> - Array of volume levels for each incoming channel. Number of levels in the array, from 0 to 32 inclusive.
- const ANumlevels : Integer - Array of volume levels for each incoming channel. Number of levels in the array, from 0 to 32 inclusive.
Retrieves the DSP clock values which count up by the number of samples per second in the software mixer, i.e. if the default sample rate is 48KHz, the DSP clock increments by 48000 per second.
Parameters
- var ADSPClock : UInt64 - Address of a variable to receive the DSP clock value for the head DSP node. Address of a variable to receive the DSP clock value for the tail DSP node.
- var AParentClock : UInt64 - Address of a variable to receive the DSP clock value for the head DSP node. Address of a variable to receive the DSP clock value for the tail DSP node.
Add a volume point to fade from or towards, using a clock offset and 0 to 1 volume level.
Parameters
- ADSPClock : UInt64 - DSP clock of the parent channel group to set the fade point volume. Volume level where 0 is silent and 1.0 is normal volume. Amplification is supported.
- AVolume : Single - DSP clock of the parent channel group to set the fade point volume. Volume level where 0 is silent and 1.0 is normal volume. Amplification is supported.
Add a short 64 sample volume ramp to the specified time in the future using fade points.
Parameters
- ADSPClock : UInt64 - DSP clock of the parent channel group when the volume will be ramped to. Volume level where 0 is silent and 1.0 is normal volume. Amplification is supported.
- AVolume : Single - DSP clock of the parent channel group when the volume will be ramped to. Volume level where 0 is silent and 1.0 is normal volume. Amplification is supported.
Remove volume fade points on the timeline. This function will remove multiple fade points with a single call if the points lay between the 2 specified clock values (inclusive).
Parameters
- ADSPClock_Start : UInt64 - DSP clock of the parent channel group to start removing fade points from. DSP clock of the parent channel group to start removing fade points to.
- ADSPClock_End : UInt64 - DSP clock of the parent channel group to start removing fade points from. DSP clock of the parent channel group to start removing fade points to.
Retrieve information about fade points stored within a Channel or ChannelGroup.
Retrieve the DSP unit at the specified index.
Parameters
- AIndex : Integer - Offset into the DSP chain, see FMOD_CHANNELCONTROL_DSP_INDEX for special named offsets.
Add a pre-created DSP unit to the specified index in the DSP chain.
Parameters
- AIndex : Integer - Offset to add this DSP unit at in the DSP chain, see FMOD_CHANNELCONTROL_DSP_INDEX for special named offsets. Interface to a pre-created DSP unit to be inserted at the specified offset. (IGorillaFMODDSP)
- ADSP : IGorillaFMODInterface - Offset to add this DSP unit at in the DSP chain, see FMOD_CHANNELCONTROL_DSP_INDEX for special named offsets. Interface to a pre-created DSP unit to be inserted at the specified offset. (IGorillaFMODDSP)
Remove a particular DSP unit from the DSP chain.
Parameters
- ADSP : IGorillaFMODInterface - Interface to a DSP unit (that exists in the DSP chain) you wish to remove (IGorillaFMODDSP).
Retrieves the number of DSP units in the DSP chain.
Moves the position in the DSP chain of a specified DSP unit.
Parameters
- ADSP : IGorillaFMODInterface - Interface to a DSP unit that exists in the DSP chain (IGorillaFMODDSP). Offset in the DSP chain to move the DSP to, see FMOD_CHANNELCONTROL_DSP_INDEX for special named offsets.
- AIndex : Integer - Interface to a DSP unit that exists in the DSP chain (IGorillaFMODDSP). Offset in the DSP chain to move the DSP to, see FMOD_CHANNELCONTROL_DSP_INDEX for special named offsets.
Retrieves the index in the DSP chain of the provided DSP.
Parameters
- ADSP : IGorillaFMODInterface - Interface to a DSP unit that exists in the DSP chain (IGorillaFMODDSP).
Sets a channel to belong to a specified channel group. A channel group can contain many channels.
Retrieves the currently assigned channel group for the channel.
Sets the loop points within the channel.
Parameters
- ALoopStartType :
Cardinal
-
The time format used for the loop start point. See FMOD_TIMEUNIT.
The time format used for the loop end point. See FMOD_TIMEUNIT.
LoopStart - The loop start point. This point in time is played, so it is inclusive.
LoopEnd - The loop end point. This point in time is played, so it is inclusive.
- ALoopEndType :
Cardinal
-
The time format used for the loop start point. See FMOD_TIMEUNIT.
The time format used for the loop end point. See FMOD_TIMEUNIT.
LoopStart - The loop start point. This point in time is played, so it is inclusive.
LoopEnd - The loop end point. This point in time is played, so it is inclusive.
- AValue :
TGorillaFMODLoopPoints
-
The time format used for the loop start point. See FMOD_TIMEUNIT.
The time format used for the loop end point. See FMOD_TIMEUNIT.
LoopStart - The loop start point. This point in time is played, so it is inclusive.
LoopEnd - The loop end point. This point in time is played, so it is inclusive.
Retrieves the loop points for the channel.
Parameters
- ALoopStartType : Cardinal - The time format used for the loop start point. See FMOD_TIMEUNIT. The time format used for the loop end point. See FMOD_TIMEUNIT.
- ALoopEndType : Cardinal - The time format used for the loop start point. See FMOD_TIMEUNIT. The time format used for the loop end point. See FMOD_TIMEUNIT.
Retrieves the currently playing sound for this channel.
Properties
Retrieves whether the channel is virtual (emulated) or not due to the virtual channel management system.
TRUE = inaudible and currently being emulated at no CPU cost
FALSE = real voice that should be audible.read GetIsVirtual
Retrieves the paused state. Address of a variable that receives the current paused state, true = paused, false = not paused.
read GetPausedwrite SetPaused
Retrieves the combined volume after 3D spatialization and geometry occlusion calculations including any volumes set via the API.
read GetAudibilityRetrieves the gain of the dry signal when lowpass filtering is applied.
read GetLowPassGainwrite SetLowPassGain
A 2D pan matrix that maps input channels (columns) to output speakers (rows).
read GetMixMatrixwrite SetMixMatrix
The priority for the channel after it has been played. Priority for the channel, from 0 (most important) to 256 (least important), default = 128.
read GetPrioritywrite SetPriority
The channel frequency or playback rate, in Hz. Frequency value in Hz. This value can also be negative to play the sound backwards (negative frequencies allowed with non-stream sounds only).
read GetFrequencywrite SetFrequency
A user value that can be retrieved with ChannelControl::getUserData.
read GetUserDatawrite SetUserData
Sets a start (and/or stop) time relative to the parent channel group DSP clock, with sample accuracy.
read GetDelaywrite SetDelay
Sets the position and velocity used to apply panning, attenuation and doppler.
read Get3DAttributeswrite Set3DAttributes
The angles that define the sound projection cone including the volume when outside the cone.
read Get3DConeSettingswrite Set3DConeSettings
The orientation of the sound projection cone. Coordinates of the sound cone orientation vector, the vector information represents the center of the sound cone.
read Get3DConeOrientationwrite Set3DConeOrientation
Retrieves a pointer to the current custom rolloff curve.
read Get3DCustomRolloffwrite Set3DCustomRolloff
The occlusion factors manually for when the FMOD geometry engine is not being used.
read Get3DOcclusionwrite Set3DOcclusion
The spread of a 3D sound in speaker space. Speaker spread angle. 0 = all sound channels are located at the same speaker location and is 'mono'. 360 = all sound channels are located at the opposite speaker location to the speaker location that it should be according to 3D position. Default = 0.
read Get3DSpreadwrite Set3DSpread
How much the 3D engine has an effect on the channel, versus that set by 2D panning functions.
read Get3DLevelwrite Set3DLevel
Control the behaviour of a 3D distance filter, whether to enable or disable it, and frequency characteristics.
read Get3DDistanceFilterwrite Set3DDistanceFilter