Juce 7 AudioPluginHost plugin sequencer no longer runs

Howdy! I just updated to Juce 7 and built the new AudioPluginHost. I have been using it with a drum machine plugin (Sonic Charge Microtonic) to debug some effects.

Since updating the AudioPluginHost, I can no longer get Microtonic’s internal sequencer to play? I updated Microtonic to no avail.

Thanks in advance and happy Friday :slight_smile:

It would be helpful to know:

  • What version of JUCE 7 are you using (master or develop branch)?
  • What version were you using previously?
  • What platform are you using for testing (Windows/macOS)?
  • What’s the sequence of steps you’re taking to test the plugin?

I just tried out Microtonic on Windows 10 with both JUCE 7 (develop) and JUCE 6.1.6. In both cases, the “play” button in the UI was grey/disabled, but individual drum sounds were successfully triggered by MIDI note messages. Would you expect the “play” button to be enabled?

Hello and thanks for the reply! I am running Mac Os 11.4. I was using a version of Juce 6 before (sorry I don’t know the exact version), downloaded around 12/27/21.

I previously could hit the play button on Microtonic and its internal sequencer would play. Thanks!

Oh and to use Microtonic, I could just start with a blank document in AudioPluginHost, connect the audio outs and hit the play button on Microtonic.

Perhaps somehow related to this?

I don’t think so? It’s just a feature that worked on the previous version of the AudioPluginHost.

FYI - I downloaded and compiled the AudioPluginHost included in Juce 6.16 in Projucer 7 and Microtonic’s sequencer works, so it appears to strictly be some change in the AudioPluginHost code from 6-7.

The issue appears to have been introduced here:

I’m still haven’t tracked down the root cause, but I’ll try to investigate next week.

1 Like

I noticed the other day that AudioPluginHost seems to report a tempo of 0 BPM. I’m doing something like this:

if(auto playhead = getPlayHead())
{
    auto info = playhead->getPosition();
        
    if(info.hasValue())
    {
        bpm = info->getBpm().orFallback(120.f);
    }
}

In AudioPluginHost, the BPM optional has a value and it’s 0 BPM. In a Standalone build, it has no value and I just get the fallback 120 BPM. Maybe this is related?

1 Like

It looks like the reported tempo was the culprit. Previously, we reported a bpm of 120 if there was no playhead, but during the move to JUCE 7 this was changed to 0. I’ve put the default back to 120, and also tidied up some of the code in the AU wrapper:

2 Likes

Thank you! :fireworks: