External Buffers with JUCE/RNBO

Eric Sterling's icon

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
    );

}