Hello all,
I've been developing a video player app using AVPlayer with AudioTapProcessor. Where AudioTapProcessor is used to render audio data with the custom filters.
Recently, I've updated my iPhone to the newest iOS 17 and noticed an unusual behavior on system alarm triggered by the Apple Clock app.
Is there a change in iOS 17 that could perhaps cause this issue? If not, does anyone have any idea where I should look into?
Steps to Reproduce:
- Turn off Slient/Vibration Mode on the device
- Play AVPlayer (w/ AudioTapProcessor)
- Set Alarm/Timer on the Apple Clock app (set Sound other than "None")
Result (Unusual Behavior):
- Alarm triggered without any sound
- AVPlayer sound stops
- Output log:
rt_receiver::receive_loop failed: 89
- Output log:
AVPlayerItem.failedToPlayToEndTimeNotification
gets triggered from NotificationCenter
More Info:
- Only way to bypass (for now) is to re-initiate AVPlayer instance after
AVPlayerItem.failedToPlayToEndTimeNotification
- Issue doesn't happen:
- on iOS 16.3.1 device
- when alarm happens before loading AVPlayer
- when AudioTapProcessor is detached from AVPlayer
- when alarm triggers from apps other than the Apple Clock
- Manually
pause()
/play()
onAVAudioSession.interruptionNotification
handler doesn't help - Running AddressSanitizer results in "Deallocation of non-allocated memory" in
libclang_rt.dylib