Freeze when using linked Widgets on Scriptlets with "ParameterValueChanged" event

Agree it is not the source, but certainly causes the issue.

Hmm — Rather: has an influence on the race condition at the root of the problem.

Of course it is purely an assumption, only the devs know more. But, until they can change something, you could find a workaround to achieve what you want to do. The idea is to avoid having both the parameters feedback and the widget sync group that get tangled up.

I’ve done some digging: I think it is related the way floating points are rounded. In some situations the number that the scriptlets send back to the widgets are not 100% the same for supposedly the same value. That is also for continuous parameters, but I guess the discrete parameters tend to ‘snap’ to some value. Then the chain param_scriptlet_A → Widget_A → Widget_B → param_scriptlet_B start a fight over a difference of 0.0000001 (or a little more).

afbeelding

This a small gig. Open the log window to see the difference in values of the widgets (not all the time!) when you move the knobs slowly (holding ctrl slows down)

Linked Scriptlet params loop.gig (42.1 KB)

Edit: I also notice that scriptlet parameters are not reporting every change the knobs make (also vissible in the logging):

afbeelding

1 Like

This should be fixed for the next release - the test for “change” was being done incorrectly.

2 Likes