What's new

Logic Scripter—multiport track delay compensation?

kmaster

Sleepy Member
As the native track delay compensation feature is incredibly limited on MIDI tracks in Logic (i.e., -99 to +99 ticks, which change in length-of-time depending on tempo), I am trying to brainstorm solutions that work with MIDI tracks connected to an AU3 VEP track. (obviously the native feature works fine with Instrument and Audio tracks, but that's not what I'm talking about here).

Does anyone know if it would be possible (even if complex) to use the Scripter, probably set on the AU3 VEP instrument track, to set per-channel/per-port negative delays for the MIDI channels which feed into it? Or would it be agnostic at that point in the chain?

@Dewdman42 @NoamL etc. have you tried anything like this?
 
OP
kmaster

kmaster

Sleepy Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #4
Well...this is interesting.

The Auto Delay Compensation is now...working? It was greyed-out before, on my old rig and also in this very template. I'll have to dig into why that is.

But: as long as it's working, I should be good to go.

the specific ms track delay is broken though. Take this moment from a 100% quantized Damage 2 performance print (some RR, so the waveforms are a bit variable, but the transient timing is dead-on):

NO DELAY​

Screen Shot 2020-08-12 at 10.40.22 AM.png
A bit behind the beat.


AUTO DELAY​

Screen Shot 2020-08-12 at 10.40.32 AM.png
Nicely aligned!

-99 Ticks (@ 120 BPM)​
Screen Shot 2020-08-12 at 10.40.45 AM.png
As expected, rather in front of the beat.

-250.0 ms​
Screen Shot 2020-08-12 at 10.40.54 AM.png
Exactly where the "no delay" is, although we expect it considerably to the left...
 

Attachments

  • Screen Shot 2020-08-12 at 10.40.45 AM.png
    Screen Shot 2020-08-12 at 10.40.45 AM.png
    17.6 KB · Views: 0
Last edited:

jonnybutter

Senior Member
Track delay has been screwed up for a long time in Logic. Not 100% broken, but goofy, buggy, etc. Sure they'll get around to it some eon :grin:
 

Dewdman42

Senior Member
you can also use expert sleepers latency fixer plugin to accomplish negative track delay by samples or by milliseconds.
 

Dewdman42

Senior Member
ps Scripter can't set negative track delay, you can perform positive track delays, but no meaningful negative track delays because there is no way to report latency to the host from Scripter.
 

babylonwaves

Darth Fader
the specific ms track delay is broken though. Take this moment from a 100% quantized Damage 2 performance print (some RR, so the waveforms are a bit variable, but the transient timing is dead-on):

@kmaster

i don't think the track delay parameter it's broken at all. it works fine and as expected here. one thing worth noting that might be confusing: you can have a delay in ticks and one in milliseconds at the same time.

also, try not to use a sample library to make those tests, because you don't know how the sample is cut and the instrument is setup etc. try using a synth and e.g. a sinewave or a short noise burst.

1597320260999.png


1597320290653.png


1597320310371.png
 
Last edited:
OP
kmaster

kmaster

Sleepy Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #11
@kmaster

i don't think the track delay parameter it's broken at all. it works fine and as expected here. one thing worth noting that might be confusing: you can have a delay in ticks and one in milliseconds at the same time.

also, try not to use a sample library to make those tests, because you don't know how the sample is cut and the instrument is setup etc. try using a synth and e.g. a sinewave or a short noise burst.

View attachment 34443


View attachment 34444


View attachment 34445
This is from a MIDI track? Not an Instrument track?
 
OP
kmaster

kmaster

Sleepy Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #14
what are you talking about then? i thought you were using Kontakt?
I'm talking about a MIDI track (in this case, one of a MIDI Multi instrument) connected to an Instrument (in this case, a VEP server port Instrument—but it could just as easily be a natively-hosted Kontakt, or whatever).
Screen Shot 2020-08-13 at 8.34.17 AM.png



Screen Shot 2020-08-13 at 8.34.52 AM.png

Screen Shot 2020-08-13 at 8.35.32 AM.png

Screen Shot 2020-08-13 at 8.35.57 AM.png
Screen Shot 2020-08-13 at 8.36.42 AM.png

Hope that makes more sense.
 

babylonwaves

Darth Fader
I'm talking about a MIDI track (in this case, one of a MIDI Multi instrument) connected to an Instrument (in this case, a VEP server port Instrument—but it could just as easily be a natively-hosted Kontakt, or whatever).
sorry, i didn't remember that part. ... you wrote it in your first post. I can't think of a way to test this really quick but if it's not working at all, you should get in touch with Apple. they should know.
 
OP
kmaster

kmaster

Sleepy Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #16
@babylonwaves they do know, it's a fairly well-documented 'bug'...but it can't hurt to add one more complaint to the pile ;) just looking for another solution in the meantime...
 
OP
kmaster

kmaster

Sleepy Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #17
Oh! @babylonwaves you did give me an idea that seems to solve one of my problems:

Making the Klopfgeist a track in the Arrange window, and then giving it a positive track delay in ms (it's an Instrument track, so this works), compensates for whatever delay my system is not picking up—looks like it comes to about 22 ms give or take in my case. Now, parts I play in both look and sound "correct" against the grid :)

Hopefully this isn't too premature, but it seems like I've stumbled upon a good idea!

@Dewdman42 would Latency Fixer do the same thing?
 

Ashermusic

Senior Member
I kicked those old MIDI instruments to the curb a long time ago and can’t imagine myself ever using them again.
 
OP
kmaster

kmaster

Sleepy Member
Thread starter
  • Thread Starter
  • Thread Starter
  • #19
There is another possibility here:

My years of marching clarinet have given me a tendency to play considerably, though very consistently, ahead of the beat.

The plot thickens!
 

Dewdman42

Senior Member
I have had my doubts about sample accuracy when using environment instruments. I haven’t tested it though.

if the latency is consistent then you can use latency fixer. It basically just sits in a mixer strip and reporte latency without adding any. So if the environment is adding latency then you just report that amount with latency fixer and the pdc engine will do the rest.

I doubt though that the environment is adding significant latency, it’s the instrument you are using thst is doing it. It’s possible that using the environment is blocking pdc from doing what it needs to do, in which case latency fixer would be blocked also.

why do you feel you need to use the environment approach?
 
Top Bottom