Loopy Pro: Create music, your way.

What is Loopy Pro?Loopy Pro is a powerful, flexible, and intuitive live looper, sampler, clip launcher and DAW for iPhone and iPad. At its core, it allows you to record and layer sounds in real-time to create complex musical arrangements. But it doesn’t stop there—Loopy Pro offers advanced tools to customize your workflow, build dynamic performance setups, and create a seamless connection between instruments, effects, and external gear.

Use it for live looping, sequencing, arranging, mixing, and much more. Whether you're a live performer, a producer, or just experimenting with sound, Loopy Pro helps you take control of your creative process.

Download on the App Store

Loopy Pro is your all-in-one musical toolkit. Try it for free today.

AUM effecting Xequence timing? Solved

2»

Comments

  • edited October 2022

    @Zerozerozero said:
    Ha, not at all! Can’t do much about that!
    Been using reduced buffer and to my ears timing not noticeable now. Have to be careful with cpu but rather that than change my workflow.

    Unfortunately, I'm blessed with a feel for rhythm that is sensitive down to about ~3 ms, so that wouldn't work for me 🤣 (it's similar with visual stuff -- anything below 60 fps looks like a slideshow to me. I essentially can't look at ANY modern digital display without getting eye cancer).

    Happy to contribute to any updates as I’m sure others are.

    👍 I might actually look into that as soon as I get the opportunity to plan for a possible Xequence 3!

    So in a nutshell: You can still get perfect timing if you host Xequence and your target apps in Audiobus and then go through an Audiobus MIDI lane. (warning: even then, not all apps correctly use timestamps and it'll still be hit and miss.)

    (btw, I'm not sure -- would this possibly even work when hosting AUM as a target in a MIDI lane, so you'd get the best of both worlds?)

  • Not sure if I’m testing the right way, Xequence —> AUM on a MIDI lane in Audiobus seems to give more stable timings (even though there is a stable latency eg 40ms, I delayed the track in Xequence 2).

    The same over CoreMIDI (Xequence 2 sending to AUM virtual input) does not give any pleasing audible results.

    I tested a simple hammerhead pattern playing in AUM at the same time as a HH beat in a Xequence 2 clip, Audiobus clock syncing and Ableton link active in AB3 and AUM (not in Xequence 2), and instrument in Xequence 2 sending clock to Audiobus virtual MIDI input.

    At 1024 samples everything was smooth. Many crashes all over the place before getting something to work at 2048, but eventually same outcome.

  • The user and all related content has been deleted.
  • @tja said:

    @SevenSystems said:
    (btw, I'm not sure -- would this possibly even work when hosting AUM as a target in a MIDI lane, so you'd get the best of both worlds?)

    Like this?

    That’s the kind of setup I tested indeed

  • @crushed said:
    Not sure if I’m testing the right way, Xequence —> AUM on a MIDI lane in Audiobus seems to give more stable timings (even though there is a stable latency eg 40ms, I delayed the track in Xequence 2).

    Yes, latency is a separate problem... so, that gives me a bit of peace of mind... thanks for testing! (I've obviously tested this myself, but that was a few years ago and who knows what has changed since then...)

  • @crushed said:
    Not sure if I’m testing the right way, Xequence —> AUM on a MIDI lane in Audiobus seems to give more stable timings (even though there is a stable latency eg 40ms, I delayed the track in Xequence 2).

    The same over CoreMIDI (Xequence 2 sending to AUM virtual input) does not give any pleasing audible results.

    I tested a simple hammerhead pattern playing in AUM at the same time as a HH beat in a Xequence 2 clip, Audiobus clock syncing and Ableton link active in AB3 and AUM (not in Xequence 2), and instrument in Xequence 2 sending clock to Audiobus virtual MIDI input.

    At 1024 samples everything was smooth. Many crashes all over the place before getting something to work at 2048, but eventually same outcome.

    This sounds interesting but I can’t get it to work.
    There are 8 AUM “ports” you can send midi to in AB. I have matched Xequence channels in midi sender slots to the AUM ports in midi receive slots as per image from @tja (is it necessary these match?).
    In Xequence midi section I selected Audiobus and a relevant channel number (1-8).
    In AUM I have an instrument with the AB IAA port selected as midi input. I also flicked on and off the relevant channel filter number.
    Can’t get any sound happening though. Tried a few slight variations on this setup and still no joy.
    Are you able to elaborate on the setup at all? Any help greatly appreciated

  • edited October 2022

    @Zerozerozero said:
    There are 8 AUM “ports” you can send midi to in AB. I have matched Xequence channels in midi sender slots to the AUM ports in midi receive slots as per image from @tja (is it necessary these match?).

    I don’t think so, but it’s handier and less taxing for the brain :)

    In Xequence midi section I selected Audiobus and a relevant channel number (1-8).

    I guess you mean in Xequence instruments section. Make sure you select the Audiobus with the wavy icon, not the Audiobus 3 with MIDI connector icon.

    In AUM I have an instrument with the AB IAA port selected as midi input. I also flicked on and off the relevant channel filter number.

    Edit: all AB midi ports in AUM receive only on channel one.
    I found that each AB3 midi port sends only on one channel, that of the port number channel 1. You can confirm this with a MIDI sniffer.

    Hope this helps.

  • I found that each AB3 midi port sends only on one channel, that of the port number channel 1. You can confirm this with a MIDI sniffer.

    Hope this helps.

    Bingo! Didn’t try channel 1. Working now. Will test out properly tomorrow. Thanks so much 🙏🏻

  • I'm sorry this is all so complicated, but it's history's fault, not mine nor Audiobus's nor AUM's. We're all innocent 😇

  • @SevenSystems said:
    I'm sorry this is all so complicated, but it's history's fault, not mine nor Audiobus's nor AUM's. We're all innocent 😇

    😂 You made apps that get club casualties nostalgic for their Atari ST setups and then expect them to not go a bit mental trying to replicate that? It’s totally your fault 🫵🏻

  • @Zerozerozero said:

    @SevenSystems said:
    I'm sorry this is all so complicated, but it's history's fault, not mine nor Audiobus's nor AUM's. We're all innocent 😇

    😂 You made apps that get club casualties nostalgic for their Atari ST setups and then expect them to not go a bit mental trying to replicate that? It’s totally your fault 🫵🏻

    Ha ha! Spot on!

  • edited October 2022

    @SevenSystems said:

    @crushed said:
    Not sure if I’m testing the right way, Xequence —> AUM on a MIDI lane in Audiobus seems to give more stable timings (even though there is a stable latency eg 40ms, I delayed the track in Xequence 2).

    Yes, latency is a separate problem...

    I think a good workaround is to put a negative offset in the Ableton link settings of the rich-featured AUM.

    If you need AUM to start playing at the same time as Xequence 2 I haven’t found better than ditching AB3 MIDI clock syncing and using Ableton link in Xequence 2. Any better way?

  • edited October 2022

    @j_liljedahl said:

    @Zerozerozero said:
    Just to recap for a layman…

    AUM’s timing is working properly but only with AUv3 and not IAA. There are not enough people requesting this (+depreciation) to make it worthwhile for @j_liljedahl to implement. Incidentally reducing buffer size does help as stated above but does this tip apply to both IAA and AUv3? Obviously crackling increases with this and isn’t very practical so not sure it is working as it should (if it applies to AUv3 also)..?

    No, AUM's MIDI timing is sample perfect for both AUv3 MIDI and IAA MIDI, as well as CoreMIDI output. The only thing that is not perfect is CoreMIDI input (for example receiving MIDI from another app via Virtual MIDI). In this case, lowering buffer size helps.

    Does AUM include the timestamps when sending over its CoreMIDI output? Or does it depend on the MIDI generator?
    When I record the output of a MIDI generator hosted in AUM in a Xequence 2 clip (even with “use incoming timestamps” option on, same setup), it’s slightly off beat unless I quantize upon recording. Also tried via Xequence virtual input, same result.

  • @crushed said:

    @j_liljedahl said:

    @Zerozerozero said:
    Just to recap for a layman…

    AUM’s timing is working properly but only with AUv3 and not IAA. There are not enough people requesting this (+depreciation) to make it worthwhile for @j_liljedahl to implement. Incidentally reducing buffer size does help as stated above but does this tip apply to both IAA and AUv3? Obviously crackling increases with this and isn’t very practical so not sure it is working as it should (if it applies to AUv3 also)..?

    No, AUM's MIDI timing is sample perfect for both AUv3 MIDI and IAA MIDI, as well as CoreMIDI output. The only thing that is not perfect is CoreMIDI input (for example receiving MIDI from another app via Virtual MIDI). In this case, lowering buffer size helps.

    Does AUM include the timestamps when sending over its CoreMIDI output? Or does it depend on the MIDI generator?
    When I record the output of a MIDI generator hosted in AUM in a Xequence 2 clip (even with “use incoming timestamps” option on, same setup), it’s slightly off beat unless I quantize upon recording. Also tried via Xequence virtual input, same result.

    AUM converts the sample offset timestamps given by the MIDI generator into CoreMIDI timestamps. Try increasing the "minimum latency" setting in AUM, also make sure AUM and Xequence is properly synchronized (via Ableton Link for example).

  • @Zerozerozero said:

    @SevenSystems said:
    I'm sorry this is all so complicated, but it's history's fault, not mine nor Audiobus's nor AUM's. We're all innocent 😇

    😂 You made apps that get club casualties nostalgic for their Atari ST setups and then expect them to not go a bit mental trying to replicate that? It’s totally your fault 🫵🏻

    Come on, it's EVEN BETTER than the Atari ST! 😁

  • @crushed said:

    @SevenSystems said:

    @crushed said:
    Not sure if I’m testing the right way, Xequence —> AUM on a MIDI lane in Audiobus seems to give more stable timings (even though there is a stable latency eg 40ms, I delayed the track in Xequence 2).

    Yes, latency is a separate problem...

    I think a good workaround is to put a negative offset in the Ableton link settings of the rich-featured AUM.

    If you need AUM to start playing at the same time as Xequence 2 I haven’t found better than ditching AB3 MIDI clock syncing and using Ableton link in Xequence 2. Any better way?

    No, I don't think so :) I think there are some plug-ins that can "convert" between MIDI Sync and Ableton Link, but how much more complex do you want a setup to be... 🥴

  • @crushed said:

    @j_liljedahl said:

    @Zerozerozero said:
    Just to recap for a layman…

    AUM’s timing is working properly but only with AUv3 and not IAA. There are not enough people requesting this (+depreciation) to make it worthwhile for @j_liljedahl to implement. Incidentally reducing buffer size does help as stated above but does this tip apply to both IAA and AUv3? Obviously crackling increases with this and isn’t very practical so not sure it is working as it should (if it applies to AUv3 also)..?

    No, AUM's MIDI timing is sample perfect for both AUv3 MIDI and IAA MIDI, as well as CoreMIDI output. The only thing that is not perfect is CoreMIDI input (for example receiving MIDI from another app via Virtual MIDI). In this case, lowering buffer size helps.

    Does AUM include the timestamps when sending over its CoreMIDI output? Or does it depend on the MIDI generator?
    When I record the output of a MIDI generator hosted in AUM in a Xequence 2 clip (even with “use incoming timestamps” option on, same setup), it’s slightly off beat unless I quantize upon recording. Also tried via Xequence virtual input, same result.

    If "Use incoming timestamps" is on, the timing should be spot-on unless the delivered timestamps are invalid (then Xequence discards them and uses time of arrival instead)... if you give me more details on what apps you used exactly and how, I'll try to replicate.

  • Thank you so much @j_liljedahl and @SevenSystems.

    I made a few unsuccessful attempts at syncing recordings.
    On the way I observed that even though it gives good results when it comes to timings, this setup is somewhat brittle. I’m afraid that any further effort will result in added complexity.
    Maybe not the best use of everybody’s time to keep going down this path, however fun for me it could be.
    And I should instead get back to making music :)

  • @crushed said:
    Thank you so much @j_liljedahl and @SevenSystems.

    I made a few unsuccessful attempts at syncing recordings.
    On the way I observed that even though it gives good results when it comes to timings, this setup is somewhat brittle. I’m afraid that any further effort will result in added complexity.
    Maybe not the best use of everybody’s time to keep going down this path, however fun for me it could be.
    And I should instead get back to making music :)

    Just before you run off!…
    Only had brief chance to play with this…
    What were the best results (for someone less technical than you)?
    Was it running Xequence to AUM in Audiobus midi lanes as discussed? I’ve done this running instruments in both AB and AUM at same time, with buffer size back up at 1024 and didn’t sound too bad. What’s this about an offset though?
    Thaaanks

  • @Zerozerozero said:

    @crushed said:
    Thank you so much @j_liljedahl and @SevenSystems.

    I made a few unsuccessful attempts at syncing recordings.
    On the way I observed that even though it gives good results when it comes to timings, this setup is somewhat brittle. I’m afraid that any further effort will result in added complexity.
    Maybe not the best use of everybody’s time to keep going down this path, however fun for me it could be.
    And I should instead get back to making music :)

    Just before you run off!…
    Only had brief chance to play with this…
    What were the best results (for someone less technical than you)?
    Was it running Xequence to AUM in Audiobus midi lanes as discussed? I’ve done this running instruments in both AB and AUM at same time, with buffer size back up at 1024 and didn’t sound too bad. What’s this about an offset though?
    Thaaanks

    Yes this setup. Went up to 2048 samples with good results (AB3 crashes for me very often at whichever buffer size).
    If you have, say, a sequencer or drum machine playing in AUM and want Xequence tracks to play at the same time while having everything sync’ed, I had good experience changing the Ableton link offset in AUM (in the clock options menu), to a negative value (-64ms worked for me).
    (Sorry I might come across as technical but I haven’t found how to post a screenshot here :D )

    Bottom line is that it turns out you pretty much have to use AB3 if you want to pair Xequence 2 and AUM together (with reliable timing, that is).
    You could do everything in AB3 and forego AUM, but mixing there is too limited (not to mention the inflexible MIDI cc mappings and less stable AUv3 hosting)

  • That’s great. I’ve got plenty there to get my setup going with. Found clock options in AUM if I need it. Happy with this now. Interesting you say about AB problems. Thought I was the only one experiencing them (I tend to host very little in it and save in each app so only for timing and sidebar).
    Massive thanks to @j_liljedahl @SevenSystems and @crushed for all the technical knowledge.
    🙏🏻

  • @Zerozerozero said:
    That’s great. I’ve got plenty there to get my setup going with. Found clock options in AUM if I need it. Happy with this now. Interesting you say about AB problems. Thought I was the only one experiencing them (I tend to host very little in it and save in each app so only for timing and sidebar).
    Massive thanks to @j_liljedahl @SevenSystems and @crushed for all the technical knowledge.
    🙏🏻

    Ha thank you for having started this discussion!

    Instead of the Ableton link offset, you have also the minimum latency setting in the AUM settings (as mentioned by @j_liljedahl), that gives similar result (but limited to 100ms - if you need more you have bigger problems :D). I haven’t found yet whether there is any downside to either approach.

    Started to do exactly like you in Audiobus.
    For what it’s worth, I found by accident this Audiobus setting located in the iOS settings app (not in the Audiobus app itself) that disables state saving in Audiobus presets.

    Very useful as it won’t reload the entire AUM state if you need to restart Audiobus for some or other reason.
    And it fits this workflow to “save in each app” (also lost a few AUM states saved in Audiobus presets…)

  • Ah, yeah, that makes sense. If saving in each app anyway, may as well disable state saving in AB to avoid any issues/losses. Good shout.
    Having no issues at all since using the method outlined above. Tried running drum machine in AUM with the offset thing as well and got it synced fine. Very relieved. Have to keep this workflow! iOS was such a headf**k at first and this really clicked.
    Sorry to @SevenSystems for the Atari/Cubase jibe, suppose it has got a few more features 😁

  • @Zerozerozero said:
    Ah, yeah, that makes sense. If saving in each app anyway, may as well disable state saving in AB to avoid any issues/losses. Good shout.
    Having no issues at all since using the method outlined above. Tried running drum machine in AUM with the offset thing as well and got it synced fine. Very relieved. Have to keep this workflow! iOS was such a headf**k at first and this really clicked.
    Sorry to @SevenSystems for the Atari/Cubase jibe, suppose it has got a few more features 😁

    Oh no worries, I took it as a compliment :)

  • edited October 2022
    The user and all related content has been deleted.
  • @JMmusic said:
    Just trying to make sure I understand…is XEQ->AUM usable? Or timing issues make it no good?

    I’m using it for piano/synth/sampled instruments in slower tempo/ambient music.

    If you don't hear a problem, then it probably doesn't matter. We're talking about +/- the latency of the current audio buffer size, that'll typically be around 6 milliseconds (0.006 seconds).

    (if you send the MIDI through Audiobus as described in this thread, you do after all get perfect timing)

  • The user and all related content has been deleted.
Sign In or Register to comment.