No microphone input on iOS

We’re in the process of porting an existing desktop app to iOS and it generally works very well. I am having real problem getting any sound from the microphone though. On iOS, the OS should pop up a request to access the mic, but this never appear. Audio output works well though, and the program thinks it actually HAS input, but there really is none.

Is there anything that should be done to request input?

I’m certain a good number of Juce developers use iOS for streaming. Is there anyone here who have experience of success in this matter? I hope it’s just me doing something wrong.

Hi Mike,

Are you using the develop branch?

Can you compile JuceDemo and record audio using the Recording page?

Which iPhone model does this occur on? Does this happen with headphones or without?

I have only tried on an iPad Pro. Headphones or not; there’s no input, but there is always output.

I can single step the code and notice the entire chain on initialization appear to be successful.

There’s only zero input, and the iPad never ask permission to use the mic, and in Privacy->microphone there is no mention of my app. It’s like it doesn’t attempt to interface the mic at all, but some other null input device.

Yes, I am using the develop branch.
I tried the demo app as you suggested, and that does indeed work as expected! I can’t see any immediate differences between it and my app though.

Since our project files are very old, we never used Projuicer or Introjuicer for management. I hope this is not the cause. I have attempted to mimic the project file in detail.

Oh, now I screwed up my iPad…

To save me some time, I renamed the bundle id for the juce demo app, to that of my app, so I wouldn’t have to generate a new provisional profile. Since the juce demo properly asked to use the microphone, that feature seemed to have been associated with the bundle id. After uninstalling the juce demo, and again installing my app, my app also get to use the microphone, without asking…

Still, it’s funny that my app could get access to the mic if this flag has been set to be allowed, but that the app would never be made to request it, itself? Atm its just piggybacking on the flag set by the juce demo app.

This might be fixed by a recent commit to develop - I added a “Microphone access” option to the iOS exporter.

Hmm… I can’t find the commit. I checked both branches. Is it really there yet?

I found it, thank you. Will test asap!