JUCE plugin channel configuration issue on Reaper with 6 channel input

Dear community,

I am facing an issue with my audio plugin where I have implemented 6 channel input support. When I test the plugin on Audiopluginhost, it loads the 6 channel input as expected. However, when I test it on Reaper, it only shows 2 channels. I have used the setPlayConfigDetails() function to set the number of channels and the withInput() function to create a 5.1 audio channel set with the input. Despite these efforts, I am still getting only 2 channels in Reaper.

Could you please provide some insights on what might be causing this issue and how to resolve it? Thank you for your time and assistance.

setPlayConfigDetails (6, 2, sampleRate, samplesPerBlock);

busesproperties

.withInput  ("Input",  juce::AudioChannelSet::create5point1(), true)

6 channel input is loaded on Reaper but the plugin is still processing only 2 channels.

My understanding is, that setPlayConfigDetails is called by the host. So it seems to me, you are overriding what the host has said, and accidentally AudioPluginHost is cool with it, but Reaper is not.

The normal flow is:

  • busesProperties provides a default. Some hosts lazily pick that one and just go, especially the Standalone version.
  • you implement the isBusesLayoutSupported to return yes or no to the layouts the host is probing at the beginning. This also affects if the plugin shows up at all (e.g. if you select it on a 5.1 track, but the plugin returns no)
  • once the host has found a suitable configuration, it will call setPlayConfigDetails followed by prepareToPlay
  • now it’s ready te run processBlocks

I leave canAddBus out, if that’s needed there are more threads about it, I am no expert with side chains.