Jam Origin

MIDI Guitar & MIDI Bass user forum

Change Sample rate and buffer size on iOS


I’m connected via iRig HD 2 interface to my iPhone and could not manage to change the sample rate setting and the buffer via the MIDI Guitar 2 app. I did manage to open the window that display in audio interface setting in the app but I could not change the setting. Currently it is defined as 48Khz and 250.

Is it possible?


Hi Guy,
no, the iOS app is locked to 256 buffersize.

Jam Origin

thanks :cry:
so I guess this is the reason for the latency I have.

is it the same on an iPad?

What is the reason for that? Stability issues?


Latency is not only governed by our app’s buffersize. If you run other synths, check the buffersettings there too. But the biggest latency is the conversion itself.

can I assume that iPad Air (2019) which has A12 Bio vs my iPhone 8 which has A11 bio the latency will be better/smaller? Do you have any performance results or anything else which compare between the two?
I’m asking since I’m thinking of buying an iPad Air for using Midi Guitar app.

thanks !

The conversion speed is not related to the speed of the CPU: it is related to the wavelength of the notes involved. A newer cpu will allow you to load bigger synths because there is more CPU power, it wil however not change the conversion time.

Is it possible to set the buffer lower if I first open something like Audiobus v3 and set the buffer to, say, 128? Or will MG keep using 256?

MG will adapt to the IAA setting, yes
That means that when MG is invoked as an IAA fx, it will be running at the buffersize of the host, in this case Audiobus.

how do we get Midi Guitar to work with Audiobus?

MG can run as an IAA fx in Audiobus.

The problem is I just dont see it listed, anywhere within Audio Bus.

Just looked it up: seems like Audiobus dropped IAA support (IAA is about to be phased out by Apple, superseeded by AUv3).
IAA is not that usefull anyway for use with Audiobus. It is a nice way to get the audio from MG to garageband, but it doesn’t store settings in the host like AUv3 does. You can not store IAA settings in an Audiobus patch.
Running MG standalone with virtual midi enabled will get you the midi into Audiobus easily.

That’s interesting Paul…
I assume this means that higher notes will convert faster than lower notes? However, it doesn’t seem noticeable to me, so it must be a very small effect. Can you be more specific? For example, how much faster will C5 convert than C3?

I’ve noted that MG2 defaults to a buffer of 256, but also found that it can be reduced to 128 in a couple of ways:

  1. if you open AUM and set the buffer there to 128, then add MG2 (included in the inter-app audio list) in the chain after system audio. There is no need to set any output slot. MG2 will now be set to a buffer of 128. You can either play inside MG2 with this setting, or outside synths. They will be set to the same buffer size. You can even close AUM and the 128 buffer setting will be retained in MG2.

  2. Open Audiobus and set the buffer size to 128. First open a synth in Audiobus, then open MG2. MG2 will be set with a buffer of 128. On my iPad I can have a couple of synths open in Audiobus with this setting before getting any crackling - but just one is safest.

Getting the buffer size down reduces latency to the minimum and makes your playing experience far more satisfying, so for me it’s worth sacrificing having lots of synths/apps open to be able to use it. Maybe on a more modern iPad with more powerful CPU (mine is a 2016 iPad Mini 5) you could have more synths open with a 128 buffer setting, I’m not sure.

We locked it at 256 in the standalone basically to have a smooth user experience over a wide range of iOS devices.
The % amount of latency improvement of buffer reduction is not that much midiwise: I personally allways use buffer 256 on desktop, originally because the videorecorder software doesn’t allow me to go lower CPU wise, but lateron I didn’t even care anymore.
The IAA option will vanish during from iOS quickly this year, since apple has deprecated it. We’ll see if we can manage a AUv3 version.