diff --git a/modules/juce_audio_devices/native/juce_ios_Audio.cpp b/modules/juce_audio_devices/native/juce_ios_Audio.cpp index b86a481968..5ae360d612 100644 --- a/modules/juce_audio_devices/native/juce_ios_Audio.cpp +++ b/modules/juce_audio_devices/native/juce_ios_Audio.cpp @@ -99,8 +99,16 @@ public: AudioSessionSetActive (true); - UInt32 audioCategory = audioInputIsAvailable ? kAudioSessionCategory_PlayAndRecord - : kAudioSessionCategory_MediaPlayback; + UInt32 audioCategory = kAudioSessionCategory_MediaPlayback; + + if (numInputChannels > 0 && audioInputIsAvailable) + { + audioCategory = kAudioSessionCategory_PlayAndRecord; + + UInt32 allowBluetoothInput = 1; + AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryEnableBluetoothInput, + sizeof (allowBluetoothInput), &allowBluetoothInput); + } AudioSessionSetProperty (kAudioSessionProperty_AudioCategory, sizeof (audioCategory), &audioCategory); AudioSessionAddPropertyListener (kAudioSessionProperty_AudioRouteChange, routingChangedStatic, this);