Triggering Iteration module w/ core SR generated event

Moonbot7000
Moonbot7000 Member Posts: 34 Sine
edited April 25 in Building With Reaktor

Trying to trigger an iteration once my phase accumulator reaches its end point. Since clock generated events can't be sent through a core event output I can't trigger the iteration without allowing audio events which is causing a huge spike in CPU when triggered. See screenshot and ens attached. Thanks!


Comments

  • colB
    colB Member Posts: 246 Saw

    You are updating 44100 graphic objects with an unconstrained iterator no wonder there is a cpu spike :)

    Why do you need so many objects?

    After reducing the number of graphic objects, the next thing I would do is defer that trigger to a display clock.

    Feed in the display clock from an external 'system info' module, then make a little macro that sets a flag when there is a trigger to respond to, and on the next display clock, if the flag is set, send a trigger. That way the output is on a GUI thread non-audio event, and also only occurs when there is a display update - I'm assuming this is all about updating the display?

    Here's one of my event deferral macros for reference

    an event at the evt input sets the internal state flag to 1.

    An event at the clock input (display clock in your case) checks if the state is 1, if so, it sends out an event, it always resets the internal flag. You could make it do that only when it sending an output, but not sure it makes a difference. the main thing is that the output event is always driven by the 'clock' event whatever that is.

  • Michael O'Hagan
    Michael O'Hagan Member Posts: 37 Sine

    To add a little to what colB said, reaktor displays are measured in pixels, you have a 600 px display, so you only need 600 objects, you're trying to draw out an entire second of audio at a sample accurate level, which isn't possible unless you have a 44100 px length display.


    You should scale down the data output to be only 600 pieces of data and set the zoom to shift the scaling and offset of what data is output.

Back To Top