Reaper UI Freezes With Plugin Open

Has anyone experienced issues with windows versions of reaper freezing their drawing with your JUCE based plugin open?

I’m not using OpenGL – but whenever the plugin is opened in reaper, reapers stop painting it’s meters etc.

It’s a strange one…

If your plugin’s GUI uses too much CPU for the painting, it will affect the host and other plugins, since all share the same GUI thread. Or are you saying it only happens in Reaper and not any other hosts?

Yeah – it’s just been in Reaper on windows 0.o

I’ve definitely noticed it in other hosts when getting too greedy with the graphics – but this is only windows and only reaper… :confused:

The reason I post it here is our beta tester mentioned he had noticed this with other plugins built in JUCE on windows Reaper

Hmm – the issue goes away switching OpenGL rendering on… – I suppose that’s the move

Same thing happens to me. Only Juce plugins.

Yeah it’s a pain, activating OpenGL fixes it for Reaper, but ruins performance in other DAWs.

My UI isn’t simple by any means, but we use smart image caching and unclipped painting and lots of other tidbits and still hit issues on windows where Mac is smooth AF with the OpenGL renderer.

In my case I did find a single component was continuously trigger repaint (a button) and while it wasn’t appearing as an issue on Mac it was destroying windows performance.

I’ve just run into this problem as well. Plugin working great in other DAWS. Enabling OpenGL? Is it a simple flag or did you have to reimplement your drawing methods?

AFAIU, Reaper has some options that give even more preference to audio thread over the GUI thread. Maybe you can find and disable them to see what is going to happen.
Anyways, if the plugin’s GUI (Paint) callback returns at all, reaper and all other plugins should be allowed to paint their GUI.
-Michael

You don’t need to rewrite any of your paint routines. Just create an openGL context and attach it your top level component. Look at the JUCE demo, it shows how easy it is to do this. I had this issue too recently. You can check the OS and the plugin host in your editor’s constructor and then set your renderer accordingly.

1 Like

Yeah just be aware on Windows machines it has some serious issues with multiple plugin windows open at the same time

You mean with openGL set? This is not something I’ve noticed, but thanks for the heads up :+1:

Interesting! I have noticed reducing the update rate of my visualizer paint function eased the problem a bit which might mean it’s more of a Reaper issue than a JUCE issue. Thanks for the insight!