COCKOS
CONFEDERATED FORUMS
Cockos : REAPER : NINJAM : Forums
Forum Home : Register : FAQ : Members List : Search :
Old 05-14-2017, 12:43 PM   #1
MSK
Human being with feelings
 
Join Date: Jan 2017
Posts: 43
Default Sidechain channel detection

Hey everyone,

I'm working on adding side chain support to a compressor I'm developing. Using the code from the IPlugSideChain example, I've been able to get the side chain input correctly. The problem comes with detecting when a side chain input is connected. The examples uses these booleans in ProcessDoubleReplacing:

Code:
   
  bool in1ic = IsInChannelConnected(0);
  bool in2ic = IsInChannelConnected(1);
  bool in3ic = IsInChannelConnected(2);
  bool in4ic = IsInChannelConnected(3);
  
  printf("%i %i %i %i, ------------------------- \n", in1ic, in2ic, in3ic, in4ic);
However the second two bools are always true - the output is always: "1 1 1 1, ------------------------- ". This happens when running both the standalone and the AU build in Live.

Because I can't detect when the side chain is connected, I can't properly tell the plugin when to compress using the main input or the side chain. Any help/insights would greatly appreciated.

I'm using Youlean's branch, and my project is originally duplicated from the IPlugEffectCairoGraphics example.

Thanks!
MSK
MSK is offline   Reply With Quote
Old 05-15-2017, 01:22 AM   #2
Tired_Joe
Human being with feelings
 
Join Date: Apr 2015
Posts: 55
Default

Have you tried it in Reaper?

I had a similar problem a few month ago and I ended up with checking the
IsOutChannelConnected

Maybe this helps you
Tired_Joe is offline   Reply With Quote
Old 12-09-2019, 12:09 PM   #3
Nonlinear
Human being with feelings
 
Join Date: Apr 2018
Posts: 396
Default

Quote:
Originally Posted by MSK View Post
Hey everyone,

I'm working on adding side chain support to a compressor I'm developing. Using the code from the IPlugSideChain example, I've been able to get the side chain input correctly. The problem comes with detecting when a side chain input is connected. The examples uses these booleans in ProcessDoubleReplacing:

Code:
   
  bool in1ic = IsInChannelConnected(0);
  bool in2ic = IsInChannelConnected(1);
  bool in3ic = IsInChannelConnected(2);
  bool in4ic = IsInChannelConnected(3);
  
  printf("%i %i %i %i, ------------------------- \n", in1ic, in2ic, in3ic, in4ic);
However the second two bools are always true - the output is always: "1 1 1 1, ------------------------- ". This happens when running both the standalone and the AU build in Live.

Because I can't detect when the side chain is connected, I can't properly tell the plugin when to compress using the main input or the side chain. Any help/insights would greatly appreciated.

I'm using Youlean's branch, and my project is originally duplicated from the IPlugEffectCairoGraphics example.

Thanks!
MSK
I am having this same problem with AAX - "IsInChannelConnected(2)" always reports true even when the plugin sidechain key is not connected in Pro Tools.

I have tried "2-2 and 3-2" for channel config and they both do the same thing - if PLUG_SC_CHANS is set to "1" IsInChannelConnected(2) always reports true whether or not it is actually connected in the DAW.

I know there are iPlug plugins that work properly with sidechains in AAX - how did you solve this?

Last edited by Nonlinear; 12-09-2019 at 08:32 PM.
Nonlinear is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 01:25 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.