clever-laptop-43358
08/29/2025, 11:17 AMError Domain=io.livekit.swift-sdk Code=801 "Audio Engine Error(Audio engine returned error code: -3010)" UserInfo={NSLocalizedDescription=Audio Engine Error(Audio engine returned error code: -3010)}
If I answer the call with the app in the foreground everything works as intended.
Is there something missing in my implementation that I need to add to get this working?tall-airline-16756
08/29/2025, 11:17 AMtall-airline-16756
08/29/2025, 11:18 AMaudio
and voip
modes under Signing & Capabilities.
• Synchronize Audio Sessions: Use RTCAudioSession.audioSessionDidActivate()
and RTCAudioSession.audioSessionDidDeactivate()
to keep LiveKit's audio session in sync with CallKit's session.
• Disable Automatic Audio Session Configuration: In the Swift SDK, set AudioManager.shared.audioSession.isAutomaticConfigurationEnabled = false
so it doesn’t conflict with CallKit.
• Configure Audio Session: Make sure to prepare and manage the audio session properly, enabling options like Bluetooth and speaker when needed.
Following these steps usually does the trick! If you run into any trouble or want a hand with anything else, just let me know—I’m here to help!
Sources: Docs/audio.md | Swift & iOS SDK | livekit/livekit_composite | DeepWiki | docs/index.html | src/RTCAudioSession.tsclever-laptop-43358
08/29/2025, 11:20 AMCXProviderDelegate
and CXAnswerCallAction
to connect to a room using room.connect(...)
, and enable the microphone with room.localParticipant.setMicrophone(enabled: true)
when the user answers the call.
Per the documentation, my delegate class also contains
func provider(_ provider: CXProvider, didActivate audioSession: AVAudioSession) {
LKRTCAudioSession.sharedInstance().audioSessionDidActivate(audioSession)
}
func provider(_ provider: CXProvider, didDeactivate audioSession: AVAudioSession) {
LKRTCAudioSession.sharedInstance().audioSessionDidDeactivate(audioSession)
}
I've set the configuration flag in the init of my delegate as well.
AudioManager.shared.audioSession.isAutomaticConfigurationEnabled = false
I can see that "Audio, AirPlay, Picture in Picture ..." and "Voice Over IP" is enabled in my background modetall-airline-16756
08/29/2025, 11:20 AM