# \[BUG?\] Sometimes calling add group created two signal paths

**URL:** <https://qa.fmod.com/t/bug-sometimes-calling-add-group-created-two-signal-paths/22626>\
**Category:** FMOD Engine\
**Tags:** ue4, cpp, ue5\
**Created:** [February 24, 2025, 7:53pm UTC](https://qa.fmod.com/t/bug-sometimes-calling-add-group-created-two-signal-paths/22626 "2025-02-24T19:53:39Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![skylar1992](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/skylar1992/32/3456_2.png) [@skylar1992](https://qa.fmod.com/u/skylar1992)\
**Post date:** [February 24, 2025, 7:53pm UTC](https://qa.fmod.com/t/bug-sometimes-calling-add-group-created-two-signal-paths/22626/1 "2025-02-24T19:53:39Z")

</div>

![image](https://canada1.discourse-cdn.com/flex036/uploads/fmod/original/2X/7/73d8e1453471d00ff2673f6ac93b237c6676d3eb.png)  
We have a feature that requires routing channel groups to different buses on the fly with calling add channel group.

According to this post, looks like channel group can only have 1 output and that is the case we’ve been observing for most of the time.

> [@Splitting Audio Programatically](https://qa.fmod.com/t/splitting-audio-programatically/14165/2):
>
> ChannelGroups are too “high level” for this task, you’ll need to drop down to the DSP level to create a second signal path. As you’ve discovered a ChannelGroup can only have one output, but you can use the DSP API to add a second one. Assuming you already have two target ChannelGroups T1 and T2 and a single source ChannelGroup S1, here is what you need to do: Route S1 into T1 with T1-\>addGroup(S1) Get the tail DSP of T2 with T2-\>getDSP(FMOD\_CHANNELCONTROL\_DSP\_TAIL, &D\_T2). Get the head DSP of…

However from time to time, we see the behavior shown in the screenshot where the same group gets piped into another channel group twice.

Here’s how we do the routing:

```auto
// Lock all channel groups for buses beforehand
	FMOD::ChannelGroup* pChannelGroup = nullptr;
	verifyfmod(pEventInstance->getChannelGroup(&pChannelGroup));
        pChannelGroupForTargetBus->addGroup(pChannelGroup);

```

We’ve also noticed normally when calling an event configured in Studio, FMOD creates a channel group fader for all the event instances for that event, then connect that fader to other buses, and we can include that fader by calling `getParentGroup` again. However in our case we only want certain instances of the event to be routed to non-default specific buses in the fly.

---

<div class="post-metadata">

**Author:** ![Leah\_FMOD](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/leah_fmod/32/3685_2.png) [@Leah\_FMOD](https://qa.fmod.com/u/Leah_FMOD)\
**Post date:** [March 4, 2025, 4:46am UTC](https://qa.fmod.com/t/bug-sometimes-calling-add-group-created-two-signal-paths/22626/2 "2025-03-04T04:46:43Z")

</div>

Apologies for the delayed response.

The behavior you’re observing is likely a side-effect of diving into Core API functionality when using the Studio API, which depending on what’s being done often runs the risk obscure and hard-to-diagnose errors since usually the Studio system automatically manages its underlying Core system.

First up, what version of FMOD Studio and the FMOD Engine/API are you using?

> [@skylar1992](#):
>
> However from time to time, we see the behavior shown in the screenshot where the same group gets piped into another channel group twice.

Have you been able to identify any specific contexts where this occurs more frequently? Or is seemingly random even when the context is simple, and there’s not much FMOD-related going on besides the reroute?

> [@skylar1992](#):
>
> We’ve also noticed normally when calling an event configured in Studio, FMOD creates a channel group fader for all the event instances for that event, then connect that fader to other buses, and we can include that fader by calling `getParentGroup` again. However in our case we only want certain instances of the event to be routed to non-default specific buses in the fly.

I may be misunderstanding exactly what you mean, but there’s not really any way around this besides manually enumerating and then disconnecting/reconnecting the event instances you want to reroute.

---

<div class="post-metadata">

**Author:** ![skylar1992](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/skylar1992/32/3456_2.png) [@skylar1992](https://qa.fmod.com/u/skylar1992)\
**Post date:** [March 7, 2025, 3:09am UTC](https://qa.fmod.com/t/bug-sometimes-calling-add-group-created-two-signal-paths/22626/3 "2025-03-07T03:09:38Z")

</div>

Funny enough I am not seeing this anymore now the project is more complicated since I posted the question…

> First up, what version of FMOD Studio and the FMOD Engine/API are you using?

We are using 2.03.5 (early access), will try to update to the latest stable version see if it still happens.

> Have you been able to identify any specific contexts where this occurs more frequently? Or is seemingly random even when the context is simple, and there’s not much FMOD-related going on besides the reroute?

Yup, the context was simple. I was able to repro in a minimal project as well before handing the system to our sound designers.

> I may be misunderstanding exactly what you mean, but there’s not really any way around this besides manually enumerating and then disconnecting/reconnecting the event instances you want to reroute.

![image](https://canada1.discourse-cdn.com/flex036/uploads/fmod/original/2X/8/8951fe449980470f74e5acbd8e38900537be4aae.png)  
^ The left most fader in the screenshot seems to get created when creating a new event configured from FMOD Studio. When I used `getparentgroup` on the event instance and move the group, the dotted line box gets moved, but the fader on the left doesn’t. (And this is when the bug sometimes happen. When I call `getparentgroup` again and move all 3 nodes in the screenshot together, the bug doesn’t happen but all subsequent instances of the same event get piped into the same left most fader, which is not what we want.)

We do have access to FMOD source code in our license, is there documentation on how to include / link it to the UE solution? (gonna try repro in a minimal scene to see if I can find anything)

---

<div class="post-metadata">

**Author:** ![Leah\_FMOD](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/leah_fmod/32/3685_2.png) [@Leah\_FMOD](https://qa.fmod.com/u/Leah_FMOD)\
**Post date:** [March 17, 2025, 4:04am UTC](https://qa.fmod.com/t/bug-sometimes-calling-add-group-created-two-signal-paths/22626/4 "2025-03-17T04:04:34Z")

</div>

Sorry for the delayed response!

> [@skylar1992](#):
>
> Yup, the context was simple. I was able to repro in a minimal project as well before handing the system to our sound designers.

If possible, could I get you to upload the entirety of the relevant code from that repro, or just the repro itself, to your [FMOD user profile](https://www.fmod.com/profile) for me to take a look at?

> [@skylar1992](#):
>
> We do have access to FMOD source code in our license, is there documentation on how to include / link it to the UE solution? (gonna try repro in a minimal scene to see if I can find anything)

You’ll need symbols for your specific FMOD for Unreal version to do so, which I can make available on your FMOD profile - could I get you to confirm which version you’re using, including your UE version and the platform you’re trying to repro on (and any relevant SDK versions for the platform)? e.g. 2.03.05 for UE 5.1 on Windows

Otherwise, it should be as simple as adding the PDB files to the UE solution in Visual Studio via Debug → Options → Debugging → Symbols, and then opening the relevant source file you’re prompted for when debugging.
