Get overall Live latency


    Jul 02 2022 | 6:39 pm
    Hello, I would like to know the overall Live latency (input latency + output latency) through a query performed in a Max For Live Device. Does anyone know a way to do this?

    • Jul 02 2022 | 10:55 pm
      record a click directly from an anlog signal and its delayed version through whatever gear. then you can easily see the time difference. how you record it is almost irrelevant, but i would use a PC (for example the one you are going to test)
    • Jul 04 2022 | 6:49 am
      Thank you very much Roman for your reply. I happen to have used this solution in the past, however I think I need to further detail my current needs.
      For live performances, I need an automatic way to indicate the overall system latency to a number of MaxForLive Devices, in order to compensate for the latency that comes from using hardware to which I send audio signals that I then send back to process in these Devices, to work primarily on BPM-synchronised echo FB. In order for the echo to be synchronised, I need to compensate the latency by advancing the first "reflection"; this is where I need to know the latency of the system.
      The latency value cannot be static, because with every new version of Live, or computer / audio interface change, this value is likely to vary, and I don't want to have to make a new manual measurement every time I change a part of the system.
      What I was hoping to find is the ability to call a kind of "get overall latency" using a MaxForLive object such as [live.object} or [live.path]. I've done some research in this direction and haven't found anything yet, so maybe the solution won't be that simple.
      Any suggestion is welcome!
    • Jul 04 2022 | 9:12 am
      What Roman suggested is your only chance. Make a device that sends click to whatever hardware you use, and compare time offset to received audio back. publish the measured time to delay offsets or whatever you need. That exists in form of lateny measure patch since max 4 just needs to get simplified for your use.
    • Jul 04 2022 | 9:19 am
      if the value you need includes plug-ins´ latencies and/or different DSP settings - and you need that value programmatically in m4l - maybe it is possible that yout measure these components one by one, or different setups, write them into a coll and then sum them up where you need them?
    • Jul 07 2022 | 7:49 am
      Thank you Source Audio for your reply.
      As I said, I've used this method in the past (for the last 10 years, both in Max and Reaktor).
      But, since Live "knows" the latency, I thought it would be more efficient and elegant to get this info using the Live API, as I need to give it to MaxForLive Devices. If this info is not yet accessible / cannot be obtained (for technical reasons) via the API, then I will continue to use the old pragmatic method. Roman, what you are proposing is precisely the direction in which I am currently heading. Thank you for your input!