MG on iOS as Inter-App audio

Hi, MG (actual iOS version) causes loud noise (sawtooth, 340Hz) after a while when loaded as an inter-app audio FX in AUM/ Quantiloop (these are the hosts I used to load MG so far)
Any help to avoid the apps to clash?

unknown issue sofar…
be sure to rule out midi infinite loops and stuff: disable midi in and midi output in MG for testing. We ofcourse like to know what happens…
Also check if “background processing” is on: probably not related but we have to rule out the causes.

1 Like

Hi Paul,
Thx for getting back so quickly.
No related midi loop, as I did not yet purchase “Midi output”.
The setting of the “background processing” switch is “on”.
-> this setting does not get stored permanently.
(I think this should be e.g. set in the App preferences to turn on permanently)

In the meantime I tried the following and it seems to work and solve the issue:
1.) start MG first -> Global iOS Audio Sample Rate is fixed to 44,1kHz & Buffer Size 256
2.) then start IAA host (AUM/ Quantiloop)
3.) Add MG as an IAA Insert or Effect
-> No noise occurred so far, fingers crossed…
edit: also here, MG keeps getting disconnected from the host (Audio signal is routed outside the host) …which feels like a Bug.

This leads to another very much related question:
Do you recommend to open MG always first, because of the fixed sample rate and buffer settings?
(It seems to me that 44,1kHz/ 256 Samples is the only supported setting)
That means, even when using MG on an iOS device as a side app to create Midi notes, I’m having the respective latency in the Audio chain?

And, I also tried to following:
1.) start IAA host (AUM/ Quantiloop) first, set the sample rate in the host to 44,1kHz/ 256 Samples
2.) then add MG as an IAA Insert or Effect
3.) switch to MG and turn on “background processing” immediately (otherwise MG get’s disconnected from the host. That’s why I recommend to save the “Background processing” switch “ON” permanently)
-> No noise occurred so far, but the MG keeps getting disconnected from the host…which feels like a Bug.

I now purchased the Midi Output and use MG2.5 just as a midi Trigger.
It seems to me that using MG as IAA is not the way to go.

As I had a quick look into the roadmap of MG,
And I really would like to see this fixed before moving to more synth sounds:

  1. a fix of the communication between between the iOS apps (hosts like AUM/ Quantiloop and MG) and /or
  2. removal of the audio out function at all (the latency fixing…44,1kHz/256) when using it as a Midi interface

But, this aside, the MIDI Machines & Deep Expressor in MG 2.7 sound very promising!

Good thoughs Stefan, Im also having problems when MG is not the first app I start. I have the sensation that only support 44,1kHz & 256 could be a bit too limiting and can lead to problems when trying to integrate MG with other apps inside AUM or other hosts, so maybe if it can be more flexible buffer side would help.

At least I think that some advice about to start first MG is mandatory at least acording my experience to avoid people problems.

Seeing the roadmap its interesting the new additions coming, but I keep thinking that one thing that MG needs more urgently is to have some solid environment in IOS that allows it to launch and save configurations with other external synthesizers (its no to play another IOS synths with MG what we want anyway?) and probably the best would be if it could operate like some AU host (like the desktop version) and be able to load inside other AU synths or at least to operate like an AU plugin and be able to load inside other hosts like AB or AUM, so would be interesting to know if Jam Origin is planning some of this in their roadmap.

Thank you guys, for testing and detailed feedback.
We’ll be focusing on improving IAA compatibility, asap.

As for AUv3, this is obviously the real solution. In fact we build an MG AUv3 before starting looking into IAA. But unfortunately the only host we could find that would work with an Audio => Midi plugin is AudioBus3. I guess its a chicken-and-egg problem: since there are no real useful iOS AUv3 that produce midi from audio, hosts didnt care to support this. So maybe whats needed is that we hatch the egg. The problem is that then we will get lots of frustrated users who cant use it in their DAW.

The other side is also very compeilling: using MG to host other AUv3’s (similar to the desktp version). This is definetly planned, but as you can imagine, its a rather big task to support loading 3rd party audiounits.

1 Like

Just imagine MG2 for iOS as a host that could load AUv3!!! We can dream…

Ok, I think we solved the IAA issue. Its indeed a bug with MG and has to do with the way we interfere with the iOS audio system in order to enable and disable background processing.

I’m uploading a TestFlight version today to Apple. It takes roughly 1-2 days before Apple approves it, usually.

3 Likes

BETA version is up with IAA fixes!
https://jamosapien.com/t/midi-guitar-2-5-2-for-ios-interapp-audio-fixes/303

Loaded it, but there is not option to restore purchases (i have the full version) so it remains as trial version , is that normal?
If yes, I can revert to my previous version?
This new version neither appears as loadable in audiobus 3.

the beta automatically restores virtual purchases when you open teh shop, but you need to be online for that. Beta IAP is completely virtual and not linked to real purchases
AB currently doesnt support IAA at all ( at least here, and It seems like the actual version)

The beta I installed does not restore my purchases, there is not even a button to invoque that, only the purchase buttons. How I can return to my previous version?
Sorry about AB no supporting, IAA all that multitude of formats is so confussing…

you only need to open the shop and wait, just as with the real IAP’s
to return to normal none-beta version just download it from the appstore

I need to come back on the IAA issue.:thinking:
When I use MG2 (2.6.5, latest Beta) as IAA, I still get some sort of “out-of-sync-audio-noise” after a couple of minutes of very good performance.

What I’m trying to get is to record a MG signal in Quantiloop* then switch MG off to record other Tracks/ FX. I use Quantiloop as the IAA (MG2) host.

1.) Start MG2 to set the sample rate and buffer size
2.) Start IAA host (Quantiloop)
3.) Then add MG2 as an IAA Effect in Quantiloop FX slot
4.) turn on/ off/ on MG via the on/off switch in FX slot of Quantiloop to use it as an effect
…then after some time (3-5 minutes) the Audio signal gets corrupted in the fx slot of MG2. When I switch off this slot - take out MG2, Signal is clean again.

So I think IAA functionality is not perfectly working - I’ll try to see if it’s related to other things.
(iOS Device/ Audio interface/ Lightning adapter/ IAA host…)
edit: *same issue in AUM

Here’s a sample of the MG output audio: https://jamosapien.com/uploads/default/original/1X/ebc15fa399fff6dbc7e10315d5f68d0ea3e08985.wav

edit: also ToneStack used as IAA in AUM/ Quantiloop produces this noise after a while, but it’s back to normal after less than 1-2 seconds. So “just” a short burst, after that it’s working stable in this session. Still I feel very uncomfortable and won’t use it in front of a listening audience…

I have an issue where I get that exact same sound but with Bias FX when hosting it via IAA in AUM. Haven’t had this issue with MG2. Does that sound mean the audio is out of sync? I hadn’t been able to find a reason for it. With Bias FX if I open the app from the background the noise disappears and then comes back after a few minutes if i’m back in the host. Seems to be a similar issue to yours.

1 Like

Thank you for the report.
Now the AU hosting is done (probably new version released today), we’ll look into IAA again. There is almost no documentation on Apples side on this, so some luck is needed…

1 Like

You implemented AU hosting amazingly fast! Well done!! Also Midi-out is absolutely stable.:grinning:

Thank you for your effort on IAA. I’m hoping you find a way for MG2 to live rock-solid as well in another host environment (as IAA or AU).
That way it could be used like a guitar FX (Instrument-In to Synth-Out with all that midi-control;-).
(Could you pls. give your guess on the strange audio noise that I uploaded recently in this topic? What’s the issue here with IAA?)

Is it true, MG2 can now adapt to any sample rate and Buffer size (supported by the hardware and iOS Device performance of course)?

1 Like

Hi Everybody, I have an issue too with MG2 as an IAA inside Bias FX. I can switch MG2 on/off as if it was an effect, but after a while if I switch on I get a message saying it needs to be in stereo mode but it IS… And so it causes a delay before being able to play synth soiund. So I can’t use it this way in live situation :frowning: I wrote to Progressive Grid, but didn’t get an answer yet. And I know that I’m not the only one…
As anybody found a solution to this ?
So I’m wondering if it would be worth buying midi out mode to solve the problem ?
Does anybody tried that ? (I did but in the demo mode, and it’s not really reliable with the function stopping every 2 or 3 minutes).
Thanks

Last summer, IAA support was officially deprecated by Apple and we are all supposed to move away from it and make AUv3 AudioUnits instead. For this reason there haven’t been much focus on this, and while it sort of works, sometimes, IAA is really a dead cat bounce by now.

For this reason, and until MG becomes available as an AUv3 on iOS, better use MGs MIDI Output module and virtual MIDI to drive Bias or AUM.

Thank you for this clear answer. Unfortunately Apple will always be Apple :wink:
So ok, I’ll have to dig these midi output or AUM solutions.
BTW, congratualtions for your app, I like it very much !
Have a good day.

2 Likes