AVPlayerViewControllerDelegate callbacks are different in tvOS 16

We are running into an issue in our app in tvOS 16.0.

We are loading a few interstitials for the ads in the AVPlayer using <AVPlayer Object>.currentItem?.interstitialTimeRanges. The first interstitial starts at 0.00.

Until tvOS 15 when we load the video we get the callback for playerViewController(_:willPresent:) when the interstitial starts and then we get the callback for playerViewController(_:didPresent:) when the interstitial is finished. We use this to enable and disable the requiresLinearPlayback respectively.

But in tvOS 16 the behaviour is different, often we get the callback for playerViewController(_:didPresent:) right after the first interstitial starts. This disables the requiresLinearPlayback. Which in turn causes unexpected behaviour in the app.

This issue seems to happen more often in the model A2169 (Apple TV 4K - 2nd generation)

AVPlayerViewControllerDelegate callbacks are different in tvOS 16
 
 
Q