Unigine::Plugins::FMOD::Channel Class
Header: | #include <plugins/UnigineFMOD.h> |
This set of functions is available when the FMOD plugin is loaded.
A source of audio signal that connects to the ChannelGroup mixing hierarchy.
Channel Class
Members
void setPaused ( bool paused ) #
Sets the pause state for the channel.Arguments
- bool paused - true to pause the channel, false to unpause it.
bool isPaused ( ) const#
Returns the pause state of the channel.Return value
true if the channel is paused; otherwise, false.void setVolume ( float volume ) #
Sets the volume level.Arguments
- float volume - Volume level in range [-inf; inf]. 0 = silent, 1 = full. Negative level inverts the signal. Values larger than 1 amplify the signal.
float getVolume ( ) const#
Returns the current volume level.Return value
Volume level.bool isPlaying ( ) const#
Returns the playing state.Return value
true if the channel is playing, otherwise, false.void stop ( ) #
Stops the Channel (or all Channels in nested ChannelGroups) from playing.void setMinMaxDistance ( float min, float max ) #
Sets the minimum and maximum distances used to calculate the 3D rolloff attenuation.Arguments
- float min - Distance from the source where attenuation begins. Range: [0; max]. Default: 1
- float max - Distance from the source where attenuation ends. Range: [min; inf]. Default: 10000.
void setPosition ( const Math::Vec3 & position ) #
Sets the 3D position used to apply panning and attenuation.Arguments
- const Math::Vec3 & position - Position in 3D space used for panning and attenuation.
void setPositionTimeLine ( unsigned int position, FMODEnums::TIME_UNIT time_unit ) #
Sets the current playback position.Arguments
- unsigned int position - Playback position.
- FMODEnums::TIME_UNIT time_unit - Time units for position.
void getPositionTimeLine ( unsigned int & position, FMODEnums::TIME_UNIT time_unit ) #
Returns the current playback position.Arguments
- unsigned int & position - Playback position.
- FMODEnums::TIME_UNIT time_unit - Time units for position.
void release ( ) #
Releases the channel object.void setVelocity ( const Math::Vec3 & velocity ) #
Sets the velocity used to apply doppler.Arguments
- const Math::Vec3 & velocity - Velocity in 3D space used for doppler.
DSP * addDSP ( int index, DSPType::TYPE dsp_type ) #
Adds a DSP unit to the specified index in the DSP chain.Arguments
- int index - Offset into the DSP chain.
- DSPType::TYPE dsp_type - Type of the DSP.
Return value
Added DSP.void removeDSP ( int index ) #
Removes the specified DSP unit from the DSP chain.Arguments
- int index - Index of the DSP unit.
DSP * getDSP ( int index ) #
Returns the DSP unit at the specified index in the DSP chain.Arguments
- int index - Index of the DSP unit.
Return value
DSP unit at the specified index.void setVolumeRamp ( bool ramp ) #
Sets whether volume changes are ramped or instantaneous. If not paused, volume changes are ramped to the target value to avoid a pop sound. This function allows you to override that setting and apply volume changes immediately.Arguments
- bool ramp - Ramp state. The true value means volume change is ramped. The false value means volume change is instantaeous.
bool isVolumeRamp ( ) const#
Returns a value indicating whether volume changes are ramped or instantaneous.Return value
true if volume change is ramped; false if volume change is instantaeous.void setMute ( bool mute ) #
Sets the mute state. Mute is an additional control for volume, the effect of which is equivalent to setting the volume to zero.Arguments
- bool mute - Mute state. true for silent, false for audible.
bool isMute ( ) const#
Returns the value indicating whether the mute state is silent or audible.Return value
Mute state. true for silent, false for audible.void setFrequency ( float frequency ) #
Sets the frequency or playback rate. The default frequency is determined by the audio format of the Sound or DSP.Arguments
- float frequency - Playback rate.
float getFrequency ( ) const#
Returns the playback frequency or playback rate.Return value
Playback frequency.void setPitch ( float pitch ) #
Sets the relative pitch or playback rate. Scales the playback frequency of a Channel object.Arguments
- float pitch - Pitch value: 0.5f represents half pitch (one octave down), 1.0f represents unmodified pitch and 2.0f represents double pitch (one octave up).
float getPitch ( ) const#
Returns the relative pitch or playback rate.Return value
Pitch value: 0.5f represents half pitch (one octave down), 1.0f represents unmodified pitch and 2.0f represents double pitch (one octave up).void setPriority ( int priority ) #
Sets the priority used for virtual voice ordering. The priority is used as a coarse grain control for the virtual voice system. Channels with the lower priority will always be stolen before Channels with the higher ones. For Channels of the equal priority, those with the quietest audibility value will be stolen first.Arguments
- int priority - Priority: 0 means the most important, 256 means the least important.
int getPriority ( ) const#
Returns the priority used for virtual voice ordering. The priority is used as a coarse grain control for the virtual voice system. Channels with the lower priority will always be stolen before Channels with the higher ones. For Channels of the equal priority, those with the quietest audibility value will be stolen first.Return value
Priority: 0 means the most important, 256 means the least important.void setLoopCount ( int count ) #
Sets the number of times to loop before stopping.Arguments
- int count - Times to loop before stopping : 0 means oneshot, 1 means loop once then stop and -1 represents loop forever.
int getLoopCount ( ) const#
Returns the number of times to loop before stopping.Return value
Times to loop before stopping : 0 means oneshot, 1 means loop once then stop and -1 represents loop forever.float getAudibility ( ) const#
Returns an estimation of the output volume. The estimated volume is calculated based on 3D spatialization, occlusion, API volume levels and DSPs used. This value is used to determine which Channels should be audible and which Channels should be virtualized when resources are limited.Return value
Estimated audibility.void setPan ( float pan ) #
Sets the left/right pan level.Arguments
- float pan - Pan level: -1 represents the full left, 0 represents the center, 1 represents the full right.
bool isVirtual ( ) const#
Returns the value indicating whether the Channel is being emulated by the virtual voice system.Return value
Virtual state. true means silent / emulated, false means audible / real.Last update:
2022-12-14
Help improve this article
Was this article helpful?
(or select a word/phrase and press Ctrl+Enter)