This page has been translated automatically.
视频教程
界面
要领
高级
实用建议
基础
专业(SIM)
UnigineEditor
界面概述
资源工作流程
Version Control
设置和首选项
项目开发
调整节点参数
Setting Up Materials
设置属性
照明
Sandworm
使用编辑器工具执行特定任务
如何擴展編輯器功能
嵌入式节点类型
Nodes
Objects
Effects
Decals
光源
Geodetics
World Nodes
Sound Objects
Pathfinding Objects
Players
编程
基本原理
搭建开发环境
使用范例
C++
C#
UnigineScript
统一的Unigine着色器语言 UUSL (Unified UNIGINE Shader Language)
Plugins
File Formats
材质和着色器
Rebuilding the Engine Tools
GUI
双精度坐标
应用程序接口
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
创建内容
内容优化
材质
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Tutorials

Unigine::Plugins::FMOD::Channel Class

Header: #include <plugins/Unigine/FMOD/UnigineFMOD.h>
Notice
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

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 - The 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

The 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 - The playback rate.

float getFrequency ( ) const#

Returns the playback frequency or playback rate.

Return value

The playback frequency.

void setPitch ( float pitch ) #

Sets the relative pitch or playback rate. Scales the playback frequency of a Channel object.

Arguments

  • float pitch - The 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

The 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 - The 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

The 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 - The number of 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

The number of 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

The virtual state. true means silent / emulated, false means audible / real.

int getNumDSPs ( ) const#

Returns the number of DSP units in the DSP chain.

Return value

The number of DSP units in the DSP chain.

int getIndex ( ) const#

Returns the index of this object in the System Channel pool.

Return value

The index within the System Channel pool, a value from 0 to the total number of System Channels - 1.
Last update: 2024-12-13
Build: ()