Negative Offset/Shift/Latency

Future features that could be implemented on either the Midronome or the Software Tools.
Topics ar marked as: [A]=Approved, [WIP]=Work in Progress, [F]=Finished
Post Reply
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Negative Offset/Shift/Latency

Post by Simon »

Original topic: viewtopic.php?t=46

This is about implementing a negative offset, og negative latency, on the MIDI Clock coming out of one of the MIDI-DIN outputs.
Important: there is no such thing as "negative offset", so in reality this will be implemented by the Midronome adding a positive offset on everything except one MIDI Output. When using the Midronome as a master it will barely be noticeable, but when doing Audio Sync, that means the latency will have to be adjusted.

Adjusting the offset will be done with one setting only, a value in milliseconds from 0 to 100.

Feel free to comment here regarding:
  • If you think some information is missing or unclear
  • How you would like this feature to be implemented (buttons, settings, how to activate, how it is done, etc.)
  • Why you think this feature is a good addition to the Midronome
densom
Posts: 1
Joined: 01 Jun 2023, 13:31

Re: Negative Offset/Shift/Latency

Post by densom »

For offsets, I think the wish would be + or – adjustment on each output (midi1, midi2 and analog) independently with the knob adjusting the offset.

I’m not sure that moving one output forward so that the other output is seems negative in relation to that is the feature people really desire, although I understand how that could work for some situations.
Particularly when using audio sync to sync with a DAW, pushing forward the opposite output is going to make it out of sync with the DAW so that could make it a feature wouldn't be used to its full potential.
I can imagine that + offset would be easier to implement as it would be a matter of adding delay to each pulse after the sync data is already available.
Comparatively, negative (–) offset can’t start as negative since that would be before start time.
Would it be possible to start negative offset outputs with zero offset and then move it backwards after a short time has passed?
Or maybe start the next bar with the negative offset?
Apart from adjusting for slow devices, it is my understanding that there are creative benefits to having + or – adjustment on each output although I’ve personally never had the ability to try.

Thanks for what is already a great device.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

Ha ha well unless you have a time machine, you literally cannot move things backwards in time :D :D
The only way I could potentially do it is to "predict" the future, i.e. say we are currently at tempo 120, 4/4, then I know when the device will be on the next beat so the negatively shifted output could start X ms before that... But then what if the tempo changes or the time signature changes in the meantime? Especially when syncing to a DAW, the DAW only sends the "next bar" information 1/24th beat before the bar, so technically the Midronome has no idea when the next bar is until that point (again it could guess it based on previous tempo and previous bar length... but really that will only create a mess).

So it's a positive shifting on everything else, which tbh you probably won't even notice when using the device as a master. And when syncing to a DAW, you can very easily shift the AudioSync signal negatively to compensate.
I can see this will require a specific explanatory video :)

I'd love to hear what others think about this :)
Schultzy
Posts: 4
Joined: 10 May 2023, 06:10

Re: Negative Offset/Shift/Latency

Post by Schultzy »

My current primary use for the midronome is to sync my synths and the guitarist’s effects to the drummer’s click. There is a latency in the synth that doesn’t allow sequencers and arps to properly align with the drummer. I wonder if I’m missing a setting. Wouldn’t it be possible to impose the audible click slightly before or after the midi message? Thanks for all the input here.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

Schultzy wrote: 08 Aug 2023, 19:54 My current primary use for the midronome is to sync my synths and the guitarist’s effects to the drummer’s click. There is a latency in the synth that doesn’t allow sequencers and arps to properly align with the drummer. I wonder if I’m missing a setting. Wouldn’t it be possible to impose the audible click slightly before or after the midi message? Thanks for all the input here.
Hi :) No you're not missing anything - and yes this is precisely what this feature is about. I can already say unfortunately that this has very little chance of making it to the device internally. What I will probably do though, is create an add-on module with a new MIDI output which will have an extra knob adjusting the latency for that specific output.
Schultzy
Posts: 4
Joined: 10 May 2023, 06:10

Re: Negative Offset/Shift/Latency

Post by Schultzy »

Great, thanks!
MPrinsen
Posts: 53
Joined: 01 May 2023, 13:42

Re: Negative Offset/Shift/Latency

Post by MPrinsen »

Not sure if this is already planned, but I love to be able to shift the offset (positive clock latency) of both tracks, not just one to compensate for the other.

Is this what is in your mind Simon?
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

MPrinsen wrote: 31 Aug 2023, 23:03 Not sure if this is already planned, but I love to be able to shift the offset (positive clock latency) of both tracks, not just one to compensate for the other.
Shifting is always relative to something. If you are syncing to the DAW and want to shift them both relative to the DAW's transport, then all you need is to shift the sync track ;)
If not, then what do you want to shift it to?
MPrinsen
Posts: 53
Joined: 01 May 2023, 13:42

Re: Negative Offset/Shift/Latency

Post by MPrinsen »

What if you use the E-RM plugin instead of a audio sync track?

I did find a way now (added the Ableton Delay device, but the smallest shift is only 1ms, can't shift by 0.1 ms for example), but it would be nice if the MIdronome was capable of doing this without the need of any extra plugins.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

MPrinsen wrote: 01 Sep 2023, 14:26 What if you use the E-RM plugin instead of a audio sync track?
Yes you can simply add a delay in your DAW (most DAWs can do that, for some you might need a bit of a trick like adding a plugin to delay). In Ableton it's the exact same process whether it's a plugin or a file sending the sync signal: https://youtu.be/R-tWpy4XJIY?si=TuvZ2z8Yc9LpeaSc&t=365

Simon
MPrinsen
Posts: 53
Joined: 01 May 2023, 13:42

Re: Negative Offset/Shift/Latency

Post by MPrinsen »

So, is this feature (clock offset per output) being planned, or only considered?
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

Hi Maarten :) For now, unless a feature is on a roadmap, it is only being considered. I also have to say that this particular feature was ranking pretty low (suprisingly!) in the survey.

My plan has been to implement it as a module - probably on the same module that will have swing. I imagine a module with 2 outputs, each output has two small knobs which can adjust swing and latency. We could call this module the "Erm", little wink at our dear german friends since these two features are the last two that the Multiclock implements and the Midronome does not :D
MPrinsen
Posts: 53
Joined: 01 May 2023, 13:42

Re: Negative Offset/Shift/Latency

Post by MPrinsen »

A separate module sounds great, but I do hope for a software update with this feature built in the current Midronome, accessible from the menu as well. It would be great to line up different devices with different latencies, where you just "set and forget" and don't need the hands-on controls.

For example: my TR-8S has almost no latency, but the Push 3 can have a lot higher latency, since it is basically a computer with a buffer size, which can be set to low, but if you want it to process a lot of tracks, you have to set it higher, which will increase the latency significantly.

I have yet to receive my Push 3, but I suspect that when I send clock from the Midronome to my TR-8S and Push 3 and mix it externally (not monitoring through the Push 3), I will hear a clear timing difference. Of course I can fix this by routing the TR-8S through the Push and mix (and compensate for the latency) there, but I hope to be able to use the audio inputs for other instruments.
MLaf
Posts: 50
Joined: 08 Aug 2022, 21:42

Re: Negative Offset/Shift/Latency

Post by MLaf »

Just came here to add my request for this too

When recording the Digi boxes using Overbridge for audio, due to the single tracks coming out the plugin there's a delay. If the timing of the sync could be shifted + then I could nudge it until the recorded audio is perfectly on time. There's no way to shift the clock/transport in the Overbridge plugin.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

Thanks guys for the input :D

I'll see what I can do ;)
MPrinsen
Posts: 53
Joined: 01 May 2023, 13:42

Re: Negative Offset/Shift/Latency

Post by MPrinsen »

Simon wrote: 25 Oct 2023, 09:15 Thanks guys for the input :D

I'll see what I can do ;)
Thanks! I think this would please many people.
fmq75
Posts: 4
Joined: 24 Mar 2023, 11:06

Re: Negative Offset/Shift/Latency

Post by fmq75 »

I came back after a while to see if i‘m still the only one with this BIG wish. Okay, glad to see more people :D

Of course,it‘s not a big deal to shift clocks in a DAW but i think there are quite some people (like me) who love to jam with hardware only (first). And in a hardware setup there is mostly no possibility to shift clocks but latency can be a pita nonetheless. So, for me nothing has changed: i gonna buy this thing in a heartbeat with clockshift :mrgreen:

Oh yeah, swing would be great as well (but not too impotnt for me since most machines with internal sequencer have it on board) I don‘t mind haviing this features in another box as long as it‘s not nearly as expensive as an E-RM. Which is just too much for this 1-2 features i need.

best,frank
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

fmq75 wrote: 05 Nov 2023, 22:48 I came back after a while to see if i‘m still the only one with this BIG wish. Okay, glad to see more people :D
Would a positive-only shift work for you?
MLaf
Posts: 50
Joined: 08 Aug 2022, 21:42

Re: Negative Offset/Shift/Latency

Post by MLaf »

By positive shift do you mean it plays sooner than the other port or later? Personally I need one port to play before everything else but I'm not OP.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

Ha ha I'm the OP :D

But in any case any feedback is much appreciated :)

And with "positive" delay I mean you machines will play later than everything else. I undestand that people obviously want a negative delay, the question was more "would you be able to make it work with a positive-only delay?"

The difficulty with negative delay is that I need to delay (positively) everything else, which can be difficult, especially from an add-on module. Try setting the track delay in Ableton to minus 1 second for example, and press play: you will see your track starting right away, while everything else (including the transport in Ableton) starts 1 second later.
MLaf
Posts: 50
Joined: 08 Aug 2022, 21:42

Re: Negative Offset/Shift/Latency

Post by MLaf »

Whoops! I thought it was someone else.

So being able to offset one of the MIDI outputs won't be available on the base unit (if the feature is implemented)?

I don't use Ableton Live so I can't do that and Bitwig doesn't have track delay.

I just may need to figure out a workaround for it.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

MLaf wrote: 07 Nov 2023, 15:00 I don't use Ableton Live so I can't do that and Bitwig doesn't have track delay.
I just meant that as an example of a "negative" delay, not as a replacement for this feature - sorry if this was not clear ;)

MLaf wrote: 07 Nov 2023, 15:00 So being able to offset one of the MIDI outputs won't be available on the base unit (if the feature is implemented)?
Not sure at this point - if it does it will be after Firmware 3.0 anyways - so not for anytime soon I'm afraid... :roll:

Simon
MPrinsen
Posts: 53
Joined: 01 May 2023, 13:42

Re: Negative Offset/Shift/Latency

Post by MPrinsen »

Being able to add positive clock offset to any of the outputs would be perfect for me.
nektarios
Posts: 3
Joined: 01 Dec 2023, 23:38

Re: Negative Offset/Shift/Latency

Post by nektarios »

Hello.

Just came in here to also mention that I would also love a negative delay.
I understand its asking to "look into the future" but could it be done with the Midronome sort of... "slew limiting" into the negative delay that is dialed in some parameter? Or at the very least allow for manual adjustments with say a combo of holding down "PLAY" and turning the data wheel?

It can be done in the DAW of course, especially Ableton that is very easy to do this sort of thing, but in my other DAW which is Reaper, I have to use a plug in (ReaInsert) that induces over 4400 samples of latency...just to offset the Midronome back for like 11 msec.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

nektarios wrote: 01 Dec 2023, 23:52 It can be done in the DAW of course, especially Ableton that is very easy to do this sort of thing, but in my other DAW which is Reaper, I have to use a plug in (ReaInsert) that induces over 4400 samples of latency...just to offset the Midronome back for like 11 msec.
You want a negative delay, and as I've mentioned a few times here already, there is no such thing as a negative delay (unless you have a time machine...). So the only way you can do it is to make a positive delay on everything else, so that the one thing you are not delaying appears like a negative delay. When using a DAW, "everything else" includes the DAW, so yes it needs to be delayed by at least 11ms (which is less than 4400 samples - my guess is the plugin takes a high value to make sure it can indeed delay enough).

And actually that precise reason is why it might not be a good idea to implement it in the firmware: the firmware can add a positive delay on everything except the DAW, meaning to get a negative delay compared to the DAW, you will still need to do something in the DAW to delay the sync signal.

My thoughts are:
  1. Implement a delay in the Midronome plugin
  2. Add a hardware delay, either as an add-on module or on the Midronome itself, which will be for DAW-less setup and for people having machines with different internal latencies (so that each machine needs a different adjustment)
Simon
nektarios
Posts: 3
Joined: 01 Dec 2023, 23:38

Re: Negative Offset/Shift/Latency

Post by nektarios »

Fair enough.
Is there a way to add a mode (or if this is already possible without muting the channel of the plug in, via some setting, please let me know how...its my 2nd day with the Midronome) where pressing "PLAY' will give *instantaneous* clock output from the Midronome?
As it is I can only get it to start at the beginning of the bar, which is of course great, but it follows the off grid clock output.
I was thinking that an instantaneous "PLAY" would solve this by just doing it manually...although now that I am thinking about it would again start to whatever pulses the plug in is sending...which would mean it would be slightly late again.

Anyhow, for Ableton this is not a problem, I will simply need to troubleshoot some more and sort it out in Reaper with the massive latency from using the ReaInsert plug in, which is basically the equivalent of using the External Instrument plug in.
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

nektarios wrote: 02 Dec 2023, 11:05 Is there a way to add a mode (or if this is already possible without muting the channel of the plug in, via some setting, please let me know how...its my 2nd day with the Midronome) where pressing "PLAY' will give *instantaneous* clock output from the Midronome?
As it is I can only get it to start at the beginning of the bar, which is of course great, but it follows the off grid clock output.
That's an interesting thing - why would you want to start in the middle of a bar? Is it to apply a delay? If so, then you're correct that you'll only be able to delay by x pulses (i.e. x times 64th triplet notes = 24ppq pulses), which at 125bpm is 20ms. So at 125bpm, it will be a delay in chunks of 20ms - not great if you are trying to compensate for a latency of 10ms.

If you want to start your machines in the middle of a bar for another reason - then simply press play on the machine itself instead of pressing play on the Midronome. The whole point of the Midronome is that it makes sure your machines start together, on a bar ;)


nektarios wrote: 02 Dec 2023, 11:05 its my 2nd day with the Midronome
Pretty impressive everything you're doing already after 2 days only!! :D 8-)
fader from elsewhere
Posts: 2
Joined: 20 Mar 2024, 21:37

Re: Negative Offset/Shift/Latency

Post by fader from elsewhere »

Hi Simon,

Is this feature implemented yet?
Add a hardware delay, either as an add-on module or on the Midronome itself, which will be for DAW-less setup and for people having machines with different internal latencies (so that each machine needs a different adjustment)
I don't have the Midronome yet, just doing some online research atm. Here and there I'm reading you can offset one of the midi clock outputs, but can't find anything in the manual confirming it.

Looking forward.

All the best, Mark
Simon
Posts: 790
Joined: 09 Jan 2022, 22:08

Re: Negative Offset/Shift/Latency

Post by Simon »

Hi Mark

No it is not. Add-on modules have been delayed by the release of Firmware 3.0 unfortunately.
They will probably out at the same time as the next batch, next summer :)

Simon
fader from elsewhere
Posts: 2
Joined: 20 Mar 2024, 21:37

Re: Negative Offset/Shift/Latency

Post by fader from elsewhere »

Thanks Simon,

Looks promising! :)
No it is not. Add-on modules have been delayed by the release of Firmware 3.0 unfortunately.
They will probably out at the same time as the next batch, next summer :)
I have subscribed to the newsletter to stay in the loop. Cheers...

Best, Mark
Post Reply