Recommendations for a DAW-synced, export-safe step sequencer
-
So I’ve been building an 8-step FX Motion sequencer in HISE (build from may) Each step selects an effect target and applies its value when
HostTransport.setOnGridChange()advances.I have ExternalOnly sync enabled and use:
HostTransport.setEnableGrid(true, 11);The sequence should restart from step 1 whenever DAW playback starts, then move at rates such as 1/4, 1/8, and 1/16.
Current problem: the overall tempo is close, but some steps periodically hold, skip, or land slightly late, then the sequence catches back up. It can differ between live DAW playback and offline/bounced export. This happens with any effect target, so it is not specific to a particular FX.
I am currently updating ScriptFX parameters from the grid callback with
setAttribute(). Is that expected to be block-quantized, and therefore unsuitable for reliably sample-accurate step sequencing?What is the recommended HISE architecture for a DAW-synced, export-safe step sequencer that:
..resets to step 1 on every transport start;
..follows DAW tempo accurately;
..works identically in realtime and offline export;Should this use a scriptnode PPQ/clock-ramp setup, an
extra_modchain, or another transport-synced method instead of changing ScriptFX attributes directly fromsetOnGridChange()?