Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Recording Audio on iOS Without Stopping Music Playback

When recording audio with an AVAudioSession audio playback from the music app or others is stopped. This is described in the audio session documentation:

AVAudioSessionCategoryRecord

For recording audio; this category silences playback audio.

Is there any way to change this behavior and do one of the following?

1) Continue playing other apps' audio and allow the phone to record the audio that is being played.

2) Resume other apps' audio once a brief recording is finished. There are notifications apps can respond to when audio interruptions begin or end. Is there something specific that must be done for other apps to receive these notifications?

like image 539
Anthony Mattox Avatar asked Feb 26 '14 20:02

Anthony Mattox


1 Answers

from 24 hours of diligent searching and piecemealing things together, this is surprisingly simple:

let session = AVAudioSession.sharedInstance()
session.setCategory(AVAudioSessionCategoryPlayAndRecord, with: [.mixWithOthers, .allowBluetoothA2DP])

And that's it for anyone still searching how to do this.

like image 130
Pleirosei Avatar answered Oct 26 '22 16:10

Pleirosei