Audiobus: Use your music apps together.

What is Audiobus?Audiobus is an award-winning music app for iPhone and iPad which lets you use your other music apps together. Chain effects on your favourite synth, run the output of apps or Audio Units into an app like GarageBand or Loopy, or select a different audio interface output for each app. Route MIDI between apps — drive a synth from a MIDI sequencer, or add an arpeggiator to your MIDI keyboard — or sync with your external MIDI gear. And control your entire setup from a MIDI controller.

Download on the App Store

Audiobus is the app that makes the rest of your setup better.

iOS 11 roundtrip latency not short enough (around 20ms)

2

Comments

  • iPad 10.5 with a Scarlett 2i2 here. With AUM set to a 128 frames buffer the DSP reports a roundtrip latency of 7.85 ms.

  • edited December 2017

    @chimp_spanner said:
    A 500 buck laptop and a cheap USB 2 interface will get you to 10 or less easily. I’m on about 5 at 64 samples

    thats about the same I get with my MacBook Pro... However I thought the iPad will be able to deliver the same...
    An iPad might be more practical in certain situations

    @LemurFlight said:
    iPad 10.5 with a Scarlett 2i2 here. With AUM set to a 128 frames buffer the DSP reports a roundtrip latency of 7.85 ms.

    Thank you for joining in...so it seems possible to get lower latency... are you on iOS 11?

    my 128 frames roundtrip latency was more than double that > @ 18ms with a Apogee Jam 96k via lightning and iPad headphones out... and slightly lower (maybe 16ms) when using a Behringer UCG102 guitarlink

    It might be that the reported roundtrip latency might not be the actual total roundtrip latency (excluding interface and AD converter latency) but from other user posts here it actually should be the case.

  • Yes, iOS 11. The Scarlett is connected though an old powered USB 2.0 hub along with 4 other midi devices coming into the ipad through an older cck.

    I think the the letancy is highly dependent on your interface. https://us.focusrite.com/scarlett-in-depth#new-generation-technology here are some measurements on the mk2, which I find close to what the DSP reports

  • Here are some more numbers:
    96 khz - 64 frames : 3.33 ms
    44 khz - 64 frames : 4.94 ms

  • why not host bias fx in AUM then turn on measument mode and the smallest framesize that works

  • @chris_tudio said:
    ah... this is a good input about "measurment mode" and the added latency on the outputs due to the 4 speaker design. Though 30-40ms (additional) is quite a lot! I guess this was done by apple to somehow optimize an "improve" audio quality (mostly for skype calls and similar use cases?)

    Yes, iOS has built-in processing for both input (internal or external mic) and output (built in speakers only, I think). For input, it consists mainly of an automatic gain compensation and high pass filter (removing bass frequencies). For output, it varies greatly with device model. For example (as I said), the 4-speaker iPad has a lot of processing going on there to distribute the sound image across those speakers. All this processing adds delay. None of this processing is active when using a real audio interface connected via lightning or USB.

    I would have hoped and thought that most "serious" audio apps like Auria, Garageband??, Bias FX and other guitar orientated (> software monitoring) apps would disable such "enhancements".

    I would think that no serious musician use the internal mic and speaker? However, it's quite common with guitar-adapters that plugins into the mic input - and those are affected by the iOS internal processing.

    Measurement mode is global and not individual per app. For apps that don't have an option for it, just host it in a host that has a setting for it (like AUM).

    what I try to understand... I am not looking to run my apps at lower "frame" (> what does this actually mean...it is not the same as sample buffer..1sec. divided by 44100) buffer size. 64 is probably the lowest available buffer developers can incorporate in their apps... 32 most definitely the lowest.

    The sample rate is the number of frames per second, higher rate means higher bandwidth. The frame buffer size is the number of frames, the chunk size, that are processed each time. The stream of samples are divided into these chunks (buffers) for processing. BufferSize / SampleRate gives the buffer duration. For example 256 / 44.1kHz = 5.8049886621 ms. This buffer is not the only factor that adds delay to the total round-trip latency. The hardware and iOS itself has extra internal buffers at various stages, adding more delay.

    Smaller chunks means less delay (latency) but more strain on the CPU, since it must attend to audio processing more often to not miss a buffer (which results in a audible glitch or drop-out).

    1) that apple might have increased (lengthen) what fits into such a buffer... and now we have more ms latency at the same buffer size compared to iOS 9 or 10 and older iPad devices.

    No. A 256 frame buffer fits exactly 256 frames. How many buffers per second you need depends on how many frames per second you need (sample rate).

    2) or this is a problem only related to newer iPad Pros or even only the 2017 iPad Pro devices. maybe Hardware related? However... If only using one USB device for both audio input and output... then the issue could not be caused by hardware... and would only be caused by software

    See above. :)

  • edited December 2017

    @j_liljedahl said:
    Measurement mode is global and not individual per app. For apps that don't have an option for it, just host it in a host that has a setting for it (like AUM).

    Did this change with IOS 10/11 ? Whenever I needed this mode I had to set it manually time and again with each and every app - it always returned to the off-position. (still on IOS 9 here)

  • @Telefunky said:

    @j_liljedahl said:
    Measurement mode is global and not individual per app. For apps that don't have an option for it, just host it in a host that has a setting for it (like AUM).

    Did this change with IOS 10/11 ? Whenever I needed this mode I had to set it manually time and again with each and every app - it always returned to the off-position. (still on IOS 9 here)

    No, not that I know of. There is only one audio session in iOS, owned by the currently open recording-enabled app that was first launched. The app owning the session can ask for preferred sample rate, buffer size, and measurement mode on/off etc. If you turn it on in one app, and iOS allowed that app to turn it on (because it owns the session), then it will be on for every other currently running app as well. At least I'm 99% sure this is the case :)

  • thanks, that may explain the (different) experience... I usually switch off unused apps, which will close that session and it starts from square one.

  • edited December 2017

    @ LemurFlight: Would you mind checking if it makes a difference (if AUM reports something different) with your setup if you engage mesurment mode vs not?

    So:
    A ) > iPad Pro 10.5 iOS 11 + Scarlett 2i2 + AUM 128 buffer measurement mode ON > Latency = xx ms
    B ) > iPad Pro 10.5 iOS 11 + Scarlett 2i2 + AUM 128 buffer measurement mode OFF > Latency = xx ms

    As I understand it from this thread... thanks also @j_liljedahl and the others for their input! measurement mode should not make a difference IF both Input AND output run through the same dedicated external audio interface.

    ...but maybe this is still not always the case? When I tested latency with a behringer UCG102 I had a bit lower latency than apogee Jam+iPad headphone out... but not a big difference. the reported roundtrip latency as stated in Logic Pro X is also quite similar between all configurations I tested... maybe 1-1.5ms difference.

    I dont have AUM so I can not check it... are there any other apps that report roundtrip latency in a similar way that are free... just for testing this?

  • edited December 2017

    I get the same numbers (7.85ms on 128 buffer) on both measuring modes. I think that the measuring mode only disables the internal processing, which is bypassed when using an interface. As far as I know, interfaces can vary quite a bit in terms of letancy.

    What interface do you have connected to your Mac? Can you plug that into the ipad and maybe do a loopback test strictly on the ipad without any other device in the loop?

  • Hey LemurFlight! Thank you for your feedback!

    @LemurFlight said:
    What interface do you have connected to your Mac? Can you plug that into the ipad and maybe do a loopback test strictly on the ipad without any other device in the loop?

    On my Mac I use a Focusrite Saffire Pro 24 which is FireWire. I don't have a proper/normal USB Audio Interface.
    I don't know exactly what you mean by "...strictly on the iPad without any other device in the loop?
    did you mean by feeding the loop back into a recording app on the iPad?
    ... anyway...

    The "Loop" I had tested was basically
    -> the iPad running ONE Audio App
    + the tested Audio Device (which was either a Behringer UCG102 or a Zoom H2 Input and Output + Camera Connection Kit or a Apogee Jam 96k Input + iPads internal headphones output)

    I recorded two tracks parallel (direct signal + looped(roundtrip) signal via iPad) which where feed by the exact same signal...thus measuring roundtrip latency of the iOS device.

  • Yeah, I meant plugging in a cable from the output to the input of the interface and playing/recording on another track without monitoring. All on the ipad.

  • Any difference between 10.3.3 and 11? Ready to upgrade

  • edited December 2017

    I did two real roundtrip tests with the Scarlett 2i2 through a Behringer 1202 mixer (might add some latency?) in Aum (no latency compensation)

    128 buffer - DSP reported 7.85 ms | real 10 ms
    64 buffer - DSP reported 4.94 ms | real 7.5 ms

    128 frames buffer

    Notes:
    High quality measuring mode didn't make a difference
    I used the metronome or a hard cut snare sample as a sound source.
    Enabling latency compensation results in 2ms latency on the recorded sample (the error seems to be the margin between the reported and real tests)
    The mixer in the loop might be adding some latency

    Hope this helps anyone who will be looking into this.

  • @LemurFlight said:
    I did two real roundtrip tests with the Scarlett 2i2 through a Behringer 1202 mixer (might add some latency?) in Aum (no latency compensation)

    128 buffer - DSP reported 7.85 ms | real 10 ms
    64 buffer - DSP reported 4.94 ms | real 7.5 ms

    128 frames buffer

    Notes:
    High quality measuring mode didn't make a difference
    I used the metronome or a hard cut snare sample as a sound source.
    Enabling latency compensation results in 2ms latency on the recorded sample (the error seems to be the margin between the reported and real tests)
    The mixer in the loop might be adding some latency

    Hope this helps anyone who will be looking into this.

    Great. That's exactly how I measured the latency when I implemented the "round-trip latency report" and input latency recording compensation in AUM. I remember now that I saw small variations between reported latency and measured latency. It varied between device models and audio interfaces, so I couldn't just hard-code a compensation for it.

    BTW, remember that the latency for sound travelling through air is about 2.92 ms per meter.

  • @j_liljedahl you might consider an input plugin (for AUM) that allows exact entry of latency.
    As mentioned the value varies too much with individual setups and it's not a complicated or demanding process. 2 fields for rough/fine values (ms/samples) would be nice.

  • edited December 2017

    @j_liljedahl said: BTW, remember that the latency for sound travelling through air is about 2.92 ms per meter.

    Haha, not if you’re in the Himalayas! ;)

    I think there comes a point where the obsession about milliseconds becomes more a problem than the latency itself. ;)

  • @Telefunky said:
    @j_liljedahl you might consider an input plugin (for AUM) that allows exact entry of latency.
    As mentioned the value varies too much with individual setups and it's not a complicated or demanding process. 2 fields for rough/fine values (ms/samples) would be nice.

    I do have plans for a millisecond delay insert node, where one can also do negative delays (which then instead delays all other signals). Would that help here? Or perhaps you're after an option in the main menu Settings to adjust the calculated round-trip latency +/- X ms?

  • Ha, I just found this on gearslutz which made me laugh. I don’t mean to say to stop the research to lower the latency as much as possible or that the OP should seek therapy. It’s just I found parallels the guy is using here quite spot on. This is from a drumming section so as expected there was a lot of millisecond splitting talk in that thread.

    It’s by no means super clever it’s just that it totally describes my position on the matter.

    • Disclaimer: I am a groove based musician and rhythm and tightness means absolutely everything to me.

    Here it comes:

    ‘People need to get over the latency thing...it's becoming neurotic..

    It's like "I need hands that are 100% free of bacteria" -it's never going to happen unless you move back to tape. 3ms, 7ms, whatever -these are tiny numbers which equal sound traveling a few feet in air. AD/DA takes time.

    By this I do NOT mean you shouldn't wash your hands! But for me, too much people are chasing "the perfect soap" when they could spend their time getting dirty with their music and learning how to keep their hands clean in the first place..

    YMMV’

  • edited December 2017

    @j_liljedahl said:
    I do have plans for a millisecond delay insert node, where one can also do negative delays (which then instead delays all other signals). Would that help here? Or perhaps you're after an option in the main menu Settings to adjust the calculated round-trip latency +/- X ms?

    I would personally prefer a global latency comp setting for hardware input.

  • edited December 2017

    Hello everyone again!

    Thank you LemurFlight for sharing your insights!

    Any people here that have been using iOS and iPads since long time for live performance, guitar playing etc. and had the impression that it (roundtrip latency) went worse with more recent iOS versions 10/11 or more recent iPads? maybe even actually measured it? Or do you all have the impression it basically stayed the same or even improved?

    ++++++++++++++++

    There seems to be some people that have quite a bit less latency than I do in a similar scenario.

    At the moment I think this could be because of:
    1) using a better (=faster) Audio Interface
    This seems to be the most likely explanation. However the devices I used did not measure/compare that bad/different on my Mac (compared to a Saffire Pro 24 FireWire Interface). If the iPad treats the devices similar than my Mac this would explain a difference of a few ms... but not a difference of close to 10ms compared to LemurFlight with a Scarlett 2i2.
    2) there might be some additional stuff introduced by iOS in certain scenarios, with certain devices whereas in other cases it might not.
    3) Although our test are similar... it is not EXACTLY the same with exactly the same devices. I have not (can not) test my iPad with AUM and a Scarlett 2i2
    4) a combination of 1-3 (most likely)

    when I connect something to ipad, a app > eighter music memo or podcast or garageband pops up with a small headphone icon in the dock eventhough no apps are running or open... is this normal??

    j_liljedahl and wellingtonCres had significantly lower (roundtrip??) latency
    4.5 ms and 5.4ms @64frames

    for me it was between:
    10.5ms > digitech RP-355 64frames on the ipad
    14.8ms > Apogee Jam & iPad headphons out 64frames
    (actually tested roundtrip latency with logic pro X ping test)

    LemurFlight had 7.8 / 10ms @128 frames

    @Telefunky said:
    ....128 is safe for demanding processing apps, which ends in the 10ms range.

    • This is actually what I would like to see and use and what would be usable for live playing (roundtrip latency).

    20ms or more is simply not! I think between 30-50ms (and longer... could not find it googling) you will start to hear it as a separate event. And even before that it will at least feel wired. I think 5-10ms is o.k without any issues.

    ++++++++++++++

    I thought I recheck my measurements...to see if I made a mistake.
    Would like to share my findings here:

    I did use Logic Pro X I/O Plugin which lets you "ping" a external device (in this case the iPad and its audiointerface) and shows the roundtrip latency in samples*.
    (*It is not always completely stable... there might be variations of around 5/10/15 samples with subsequent pinging... but I don't think that this matters much?)

    0) cable only > 69 samples ( 1000/44'100 = ms) around 1.6ms
    this was to test the roundtrip latency of my audiointerface (Focusrite Saffire Pro 24) by itself.
    I subtracted this number from all the following measurements.

    1) Apogee Jam96k & iPad headphones out
    14,8 ms Fiddlicator @64
    17.7 ms Fiddlicator @128
    23.4 ms Fiddlicator @256

    17.7ms Bias FX (@128?) everything bypassed
    18ms Bias FX (@128?) + Amp +FX (might change a bit depending on preset)

    25.2 ms garageband "chrome clean" preset
    27.4 ms garageband modern stack bass preset
    24.4ms garageband + Bias FX + Fiddlicator Inter App Audio

    -- latency seems to change a bit (especially in garageband) dependent on how much it processes.

    2) Behringer UCG102 Guitar Link
    11ms Fiddlicator @64
    10.5ms Fiddlicator @64 > with a digitech RP-355 Multi FX
    14ms Fiddlicator @128
    19.8ms Fiddlicator @256

    The Behringer had quite a bit less latency than the apogee jam... so getting a really good (fast) audio interface might be the solution / explanation.

    ++++++++++++

    MIDI > Audio Latency

    Yamaha Keyboard direct triggered vs Yamaha MIDI over USB to iPad, garageband piano, Audio back via headphones jack to saffire pro.
    --- Latency = 17ms

    - MIDI and Audio over Lightning cable
    Yamaha Keyboard direct triggered vs MIDI routing over logic to ipad via lightning + audio from lightning back to logic to Saffire Output R
    --- Latency = 24ms

    this is quite...slow.
    but since garageband seems to always run @256 frames (which seems to be around 20ms) that might explain it.

    Since I also use logic I would prefer to use (at least for the beginning) garageband as my iOS DAW. But with 20ms latency or more.... I don't know...

  • edited March 2018

    Hello all,

    In the last 2 revisions of iOS, 10 and 11, the live latency has gotten to be too long in any app I use. This is on iPhone SE and Ipad Mini 4. The latency is so ridiculous, that I don't even bother. I use my Macbook Pro instead. Money wasted on IOS guitar amp apps that I can't even use. The latency on the old iPhone 5 and 5s and iOS 8 and 9 were much better.

  • edited March 2018

    @ADDAConversion said:
    Hello all,

    In the last 2 revisions of iOS, 10 and 11, the live latency has gotten to be too long in any app I use. This is on iPhone SE and Ipad Mini 4. The latency is so ridiculous, that I don't even bother. I use my Macbook Pro instead. Money wasted on IOS guitar amp apps that I can't even use. The latency on the old iPhone 5 and 5s and iOS 8 and 9 were much better.

    Unfortunately I have to confirm that.
    Some quick tests with a Digitakt playing clicks and sending according midi notes at the same time over USB MIDI via CCK to the iPhones. Recorded click from Digitakt on the left and iPhone audio from Phones output on the right channel. Measured delay between Digitakt and iPhone audio pulse in an audio editor. (so it's rather a classification of differences instead of actually measuring the note-to-sound latency, but perfectly ok to show the difference between 4 and 5 SE)

    iPhone 4 on iOS7:
    Animoog: varies between 11 to 16ms
    bs-16i: varies between 14 to 18ms

    iPhone 5 SE on iOS 11.2.6:
    Animoog: steady 22ms
    bs-16i: varies between 24 to 28ms

    The biggest surprise was Cassini on iPhone 4 with a constant latency of 12ms (at buffer=128) without any hiccups, even when playing chords.

    Worst of all was zMors Modular on iPhone 5 SE with a latency not only very high but jittering around between 42 and 61 ms on a very simple patch with only a sinewave and adsr set to short decay. Unusable live.

    And yes, it was an iPhone 4, not 4S :)

  • Cheers all! From what I've been researching the iConnectivity stuff should be able to fix some of these problems.

    If all goes well my iConnect Audio4+ should arrive next week. I can do some testing I guess...

  • edited March 2018

    Thanks rs2000 and ADDAConversion for your feedback!

    This was exactly the info/feedback I had hoped for!

    > basically: Was roundtrip latency (way) better... and a non issue in most cases before on older devices and older iOS version? -> The answer seemed to be "yes"!

    a non issue to me means a roundtrip latency between 5-10ms.

    there does not seem that many people complaining about audio roundtrip latency on iOS 11 and with newer devices (iPad Pro)?!?

    This might be because:
    a) no one actually measures it
    b) some people are just happy how it works... or they think it does not work well and be done with it without further investigation.
    c) a roundtrip latency of around 18ms, which is what I got, does not feel that terrible and impossible to play in most cases. I have used my iPad Pro since then a few times for playing guitar over studio monitors...and it was o.kish

    LemurFlight tests showed that it might be possible to have a roundtrip latency of bellow 10ms on iOS11 with a iPad Pro. The Focusrite Scarlets seem to be one of the fastest usb audiointerfaces. This indicates somehow that the interface matters a lot.

    HOWEVER! > I tested all my USB Interfaces also on a MacBook Pro...and they all showed comparable AND! low roundtrip latency! I tested a behringer UCG102, a Zoom H2 Microphone, Digitech RP355 and a Apogee Jam 96k.

    For me it looks like that iOS11 and/or iPad Pro causes the most ms additional latency.
    This is somehow backed up with my tests with a MIDI Keyboard where I don't use any external audiointerface (headphones output or audio over lightning into logic pro X)
    In most cases you will be looking at running it @ 128 "frame buffer" which, in may cases is closer to 20ms than to the 10ms I would like to use.

    I really really hope that apple improves audio latency with further updates!!
    As it is now it is just at the edge (or past of it) of beeing usable!
    *I dont think we need lower frame buffer sizes...but instead have a roundtrip latency of under 10ms with 128 or even 256 frame buffer settings (as it was before??!)

  • edited March 2018

    Why is MIDI sending clicks being used to test roundtrip audio latency, it cant be tested that way ?

  • @Samplemunch said:
    Why is MIDI sending clicks being used to test roundtrip audio latency, it cant be tested that way ?

    I didn't record the MIDI serial data stream as audio, rather I've let MIDI notes trigger very short "click" samples on both machines and measured the delay between both.
    The theoretical minimum latency measured this way would be around 1.1 milliseconds over a traditional MIDI interface and probably a bit less on a USB MIDI link.
    From my experience, anything over 10ms latency can become audible depending on the "sharpness of transients" on the different tracks. It's especially obvious when layering drum/percussion sounds from different machines.

  • edited March 2018

    That simply isn't roundtrip latency ;)
    And you are adding way too many uncontrollable elements in to the test by using MIDI, IOS roundtrip latency (the amount of time audio takes from entering the a/d to exiting the d/a) could be as low as 3ms, but when you add in MIDI, you are adding an element that in its own standard has 1ms for every message sent (it was designed over thirty years ago) plus whatever delay or jitter the particular software you use is creating based on whatever clock is implemented.

    Round trip latency is tested by feeding the audio output in to the input, then using round trip measuring software (something like centrance) to measure how long it takes, no idea if that software or something like it even exists on IOS.

    What you are talking about is MIDI latency/drift/jitter and has as much to do with the MIDI interface or the particular software you are using and how they implemented their clock, as it does with IOS as a whole.

    Confusing the two different types of latency is not helping here.

    MIDI roundtrip latency simply doesnt exist unless you are talking about the 1ms it takes for a MIDI message to pass thru ;)

  • @rthr said:
    Cheers all! From what I've been researching the iConnectivity stuff should be able to fix some of these problems.

    If all goes well my iConnect Audio4+ should arrive next week. I can do some testing I guess...

    I, for one, await your report! I've been thinking of getting an Audio4+, as it looks like it would be great for my live rig, but I've read a bit too much about problems with ios11. (And at least one user on their forum had a right good freakout about it...)

Sign In or Register to comment.