Playhead
-
@Natan yes at the base it is synchronized on the bpm. but if you stop reading and resume everything shifts. @Christoph-Hart , do you think you'll add that someday?
-
@yall Has this been implemented ? Sorely needed.
-
@lalalandsynth You can sync an LFO to the HISE master clock which can be connected to the DAW playback position.
// Create a transport handler const var transportHandler = Engine.createTransportHandler(); // The grid callback needs to be enabled for the LFO // to sync itself to the clock. transportHandler.setEnableGrid(true, 8); // The clock will now prefer the external clock source. This // means that as long as the external clock isn't running // (the DAW playback is stopped) it will use the internal clock // and as soon as the DAW playback is started it will resync // itself to match the DAW position transportHandler.setSyncMode(transportHandler.PreferExternal); // Start the internal clock. This will cause the LFO to run // even if the DAW playback is stopped. (if you omit this line // the LFO will not move unless the DAW playback is started). transportHandler.startInternalClock(0);
Now all you need to do is to enable
ClockSync
andTempoSync
on the LFO and it should be synced to the DAW when the playback is running. -
@Christoph-Hart Excellent ! I was wondering what that clocksync was :)
-
@Christoph-Hart
What is needed to replicate this using Scriptnode?
Can I get clocksync in Scriptnode? -
@lalalandsynth Anyone know If I can get clocksync in Scriptnode ?
No idea if I am overlooking something or if its not implemented ? -
@lalalandsynth I've added a bunch of nodes that should help you there:
control.transport
- sends on and off values when the transport state changescontrol.ppq
- sends the start position on play startcore.clock_ramp
- generates a ramp signal that is completely synched to the clock
They should cover most use cases for clock-synced tasks.
-
@Christoph-Hart Super ! thanks!
-
@Christoph-Hart Hey Legend
This onecontrol.transport
has no effect, I tried with HISE Plugin inside ableton,
is That Little Rectangle supposed to change?
and It sends no messages!!!Also
core.clock_ramp
Is a Little Unstable, Sometimes it won't breath -
@Natan Ah yes you need to create a transport handler and then set the sync mode to
ExternalOnly
(or whatever mode you want). By default the clock is off. -
Excellent :)
I Pasted The code and Boom, all Working now :)
// Create a transport handler const var transportHandler = Engine.createTransportHandler(); // The grid callback needs to be enabled for the LFO // to sync itself to the clock. transportHandler.setEnableGrid(true, 8); // The clock will now prefer the external clock source. This // means that as long as the external clock isn't running // (the DAW playback is stopped) it will use the internal clock // and as soon as the DAW playback is started it will resync // itself to match the DAW position transportHandler.setSyncMode(transportHandler.PreferExternal); // Start the internal clock. This will cause the LFO to run // even if the DAW playback is stopped. (if you omit this line // the LFO will not move unless the DAW playback is started). transportHandler.startInternalClock(0);
-
@Christoph-Hart What about this Scenario?
It sends no Messages!!! no Movement -
@Natan have you managed to try the clock ramp in a daw ?
Does it work reliably ?@Christoph-Hart
Any tips on how to switch from the synced ramp to freerunning ?
Is that changing the update mode from synced to continuous ?Also, could you tell me what the AddToSignal , Update mode and Inactive do ?
-
@lalalandsynth Anyone know if its possible to retrigger the clocksynced ramp ?
-
@lalalandsynth Why do you want to retrigger it? The reason of the clock sync ramp is to be synced to the clock position at all times, if you don't need that, then just use a ramp with a tempo sync node.
- Add to signal adds the ramp signal to the audio signal, so if you only need it for modulating other parameters leave it off, but if you're creating a modulation signal itself you can turn it on
- Update mode defines whether you prefer a continuous signal without jumps or a perfect synchronization to the DAW position, but I need to check it myself again to figure out exactly what it does. I just found it necessary to have this parameter because there are different use cases which benefit from one or the other mode
- Inactive just defines what to use if the clock is off, whether it should jump back to zero, hold the current value or go to 1.
-
@Christoph-Hart Yes,that makes sense, I was hoping I could use one ramp and switch it to freerunning or retrigger mode.
But I can just switch to using the temposynced ramp with an input toggle.