Updating parameters from the process often makes graphics flicker


I have had a constant problem since the beginning, and that is that if I do something like the again example…

if (outParamChanges && fVuPPMOld != fVuPPM)
		int32 index = 0;
		IParamValueQueue* paramQueue = outParamChanges->addParameterData (kVuPPMId, index);
		if (paramQueue)
			int32 index2 = 0;
			paramQueue->addPoint (0, fVuPPM, index2);
	fVuPPMOld = fVuPPM;

It flickers some times, and often when I’m moving controls like sliders. What I’ve noticed is that it’s getting worse if I use the above code to update more controls than just one, I have no idea of why but it feels like it’s something with transparency, having controls and views on top of each other while sending param updates from the process.

Suddenly one control will get pieces of graphics from elsewhere and vise versa, what could be wrong, am I alone with this problem?

I’ve read that other had some kind of similar problems but doesn’t look like it’s really the same problem anyway.

Thanks in advance


Which OS?
Flickering should never happen as long as you don’t use other threads to change your UI model. But maybe you mean something different.
From looking at your code snippet, I would suggest you limit the sending of parameter changes to 60 times a second. With your code here you may send much more updates than a display can handle depending on the audio buffer size.


OS: Windows 11

I saw your comment on my comment about this on the other thread, about overlapping controls.
I tried to move everything apart but still it was flickering, and the controls are always overlapping in some way, I mean the view container and it’s background? Or do you mean the CControls only?

So I guess I’m using the code making too many calls in a row sometimes then and making it flicker, as you said.

Thanks, guess I will have to think it through better.