Did you manage to find a solution to this? Or any workarounds?
No. To this day nothing better than what I've described above.
I see the same problem but in my case I'm trying to create a Core Audio class using kAudioUnitSubType_RemoteIO for playback,
when backgrounded it fails like this:
Fails with '!int' error: AudioUnitInitialize() failed. ('!int' == 560557684) [aurioc] AURemoteIO.cpp:1086:Initialize: failed: 560557684
(enable 2, outf< 2 ch, 44100 Hz, Int16, inter> inf< 2 ch, 0 Hz, Float32, non-inter>)
In foreground it works OK.
I've filled a bug report: FB7622685
It's important that more people report this problem, eventually it might get fixed (hopefully).
I'm sure it's the same error regardless if using AVPlayer or kAudioUnitSubType_RemoteIO. Any high level audio class most probably uses kAudioUnitSubType_RemoteIO under the hood.
It would be nice to get a comment from some Apple engineer