FMOD Engine User Manual 2.03

7. Core API Reference | ChannelGroup

A submix in the mixing hierarchy akin to a bus that can contain both Channel and ChannelGroup objects.

Create with System::createChannelGroup.

Channel management:

ChannelGroup management:

General:

The following APIs are inherited from ChannelControl:

Playback:

Volume levels:

Spatialization:

Panning and level adjustment:

Filtering:

DSP chain configuration:

Sample accurate scheduling:

General:

ChannelGroup::addGroup

Adds a ChannelGroup as an input to this group.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::addGroup(
  ChannelGroup *group,
  bool propagatedspclock = true,
  DSPConnection **connection = nullptr
);
FMOD_RESULT FMOD_ChannelGroup_AddGroup(
  FMOD_CHANNELGROUP *channelgroup,
  FMOD_CHANNELGROUP *group,
  FMOD_BOOL propagatedspclock,
  FMOD_DSPCONNECTION **connection
);
RESULT ChannelGroup.addGroup(
  ChannelGroup group,
  bool propagatedspclock = true
);
RESULT ChannelGroup.addGroup(
  ChannelGroup group,
  bool propagatedspclock,
  out DSPConnection connection
);
ChannelGroup.addGroup(
  group,
  propagatedspclock,
  connection
);
group
Group to add. (ChannelGroup)
propagatedspclock

Recursively propagate this object's clock values to group.

  • Units: Boolean
connection OutOpt
Connection between the head DSP of group and the tail DSP of this object. (DSPConnection)

See Also: ChannelGroup::getNumGroups, ChannelGroup::getGroup, ChannelGroup::getParentGroup

ChannelGroup::getChannel

Retrieves the Channel at the specified index in the list of Channel inputs.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::getChannel(
  int index,
  Channel **channel
);
FMOD_RESULT FMOD_ChannelGroup_GetChannel(
  FMOD_CHANNELGROUP *channelgroup,
  int index,
  FMOD_CHANNEL **channel
);
RESULT ChannelGroup.getChannel(
  int index,
  out Channel channel
);
ChannelGroup.getChannel(
  index,
  channel
);
index

Offset into the list of Channel inputs.

channel Out
Channel at the specified index. (Channel)

ChannelGroup::getGroup

Retrieves the ChannelGroup at the specified index in the list of group inputs.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::getGroup(
  int index,
  ChannelGroup **group
);
FMOD_RESULT FMOD_ChannelGroup_GetGroup(
  FMOD_CHANNELGROUP *channelgroup,
  int index,
  FMOD_CHANNELGROUP **group
);
RESULT ChannelGroup.getGroup(
  int index,
  out ChannelGroup group
);
ChannelGroup.getGroup(
  index,
  group
);
index

Offset into the list of group inputs.

group Out
Group at the specified index. (ChannelGroup)

See Also: ChannelGroup::addGroup, ChannelGroup::getParentGroup

ChannelGroup::getName

Retrieves the name set when the group was created.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::getName(
  char *name,
  int namelen
);
FMOD_RESULT FMOD_ChannelGroup_GetName(
  FMOD_CHANNELGROUP *channelgroup,
  char *name,
  int namelen
);
RESULT ChannelGroup.getName(
  out string name,
  int namelen
);
ChannelGroup.getName(
  name
);
name Out
Name of the group. (UTF-8 string)
namelen

Length of name.

  • Units: Bytes

See Also: System::getMasterChannelGroup, System::createChannelGroup

ChannelGroup::getNumChannels

Retrieves the number of Channels that feed into to this group.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::getNumChannels(
  int *numchannels
);
FMOD_RESULT FMOD_ChannelGroup_GetNumChannels(
  FMOD_CHANNELGROUP *channelgroup,
  int *numchannels
);
RESULT ChannelGroup.getNumChannels(
  out int numchannels
);
ChannelGroup.getNumChannels(
  numchannels
);
numchannels Out
Number of Channels.

See Also: ChannelGroup::getChannel

ChannelGroup::getNumGroups

Retrieves the number of ChannelGroups that feed into to this group.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::getNumGroups(
  int *numgroups
);
FMOD_RESULT FMOD_ChannelGroup_GetNumGroups(
  FMOD_CHANNELGROUP *channelgroup,
  int *numgroups
);
RESULT ChannelGroup.getNumGroups(
  out int numgroups
);
ChannelGroup.getNumGroups(
  numgroups
);
numgroups Out
Number of ChannelGroups.

See Also: ChannelGroup::addGroup, ChannelGroup::getGroup, ChannelGroup::getParentGroup

ChannelGroup::getParentGroup

Retrieves the ChannelGroup this object outputs to.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::getParentGroup(
  ChannelGroup **group
);
FMOD_RESULT FMOD_ChannelGroup_GetParentGroup(
  FMOD_CHANNELGROUP *channelgroup,
  FMOD_CHANNELGROUP **group
);
RESULT ChannelGroup.getParentGroup(
  out ChannelGroup group
);
ChannelGroup.getParentGroup(
  group
);
group Out
Output group. (ChannelGroup)

See Also: ChannelGroup::addGroup, ChannelGroup::getNumGroups, ChannelGroup::getGroup

ChannelGroup::release

Frees the memory for the group.

C
C++
C#
JS

FMOD_RESULT ChannelGroup::release();
FMOD_RESULT FMOD_ChannelGroup_Release(FMOD_CHANNELGROUP *channelgroup);
RESULT ChannelGroup.release();
ChannelGroup.release();

Any Channels or ChannelGroups feeding into this group are moved to the master ChannelGroup.

See Also: System::createChannelGroup, System::getMasterChannelGroup