External Buffers with JUCE/RNBO
This seems to be related to what @Wonderchild reported last week.
I have a JUCE UI controlling my RNBO project and so far everything is working fine.
I have a couple buffers though, and in my MAX/MSP test harness for the RNBO project they work fine.
But with JUCE, my external buffers do not seem to be making it into RNBO.
Any value I set with JUCE has no effect, and even though I am "poking" values in RNBO, in JUCE all I see are '0's.
Here is the code I am using to set up the buffers, is there anything obviously wrong?
(within JUCE, I can set/read values from these buffers just fine)
void CustomAudioProcessor::setExternalBuffers()
{
sequenceBuffer = std::make_unique<float[]>(256);
matrixModBuffer = std::make_unique<float[]>(30000);
matrixModSummaryBuffer = std::make_unique<float[]>(1000);
wavetablesBuffer = std::make_unique<float[]>(98304);
RNBO::UntypedDataBuffer fwBufferType;
this->_rnboObject.setExternalData(
"sequences",
reinterpret_cast<char*>(sequenceBuffer.get()),
256 * sizeof(float),
fwBufferType
);
this->_rnboObject.setExternalData(
"matrix_mod",
reinterpret_cast<char*>(matrixModBuffer.get()),
30000 * sizeof(float),
fwBufferType
);
this->_rnboObject.setExternalData(
"matrix_mod_summary",
reinterpret_cast<char*>(matrixModSummaryBuffer.get()),
static_cast<int>(1000 * sizeof(float)),
fwBufferType
);
this->_rnboObject.setExternalData(
"wavetables",
reinterpret_cast<char*>(wavetablesBuffer.get()),
98304 * sizeof(float),
fwBufferType
);
}