<!--
{
  "availability" : [
    "iOS: 15.0.0 -",
    "iPadOS: 15.0.0 -",
    "macCatalyst: 15.0.0 -",
    "macOS: 12.0.0 -",
    "tvOS: 15.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 8.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "AVFoundation",
  "identifier" : "/documentation/AVFoundation/AVPlayerInterstitialEventController/events",
  "metadataVersion" : "0.1.0",
  "role" : "Instance Property",
  "symbol" : {
    "kind" : "Instance Property",
    "modules" : [
      "AVFoundation"
    ],
    "preciseIdentifier" : "c:objc(cs)AVPlayerInterstitialEventController(py)events"
  },
  "title" : "events"
}
-->

# events

The current schedule of interstitial events.

```
var events: [AVPlayerInterstitialEvent]! { get set }
```

## Discussion

Setting this property to a non-`nil` value cancels and overrides all previously scheduled future interstitial events, including those that the primary item’s content specifies, such as directives carried by an HLS media playlists. Setting the value to an empty array clears the schedule or, if the server specifies interstitial events, reverts it to the server’s schedule.

> Note:
> An event controller copies the events that you set for this value. Making subsequent changes to the events doesn’t impact the event schedule.

Changing the value of this property doesn’t impact currently playing interstitials. To cancel the current event, call [`cancelCurrentEvent(withResumptionOffset:)`](/documentation/AVFoundation/AVPlayerInterstitialEventController/cancelCurrentEvent(withResumptionOffset:)).

> Important:
> The system raises an exception if you schedule an event that doesn’t provide the required data, such as one lacking a valid ``doc://com.apple.avfoundation/documentation/AVFoundation/AVPlayerInterstitialEvent/primaryItem`` value, or a valid ``doc://com.apple.avfoundation/documentation/AVFoundation/AVPlayerInterstitialEvent/date`` or ``doc://com.apple.avfoundation/documentation/AVFoundation/AVPlayerInterstitialEvent/time``.

If you schedule interstitial events with dates that coincide either with the date of another scheduled interstitial event, or with a date range in the primary content’s timeline that the resumption offset of another scheduled interstitial event omits, the primary content remains suspended until all coinciding interstitial events complete. The system orders their playback according to their position in the array. The effective resumption offset is the sum of the resumption offsets of the coinciding events.

> Note:
> Summing a numeric <doc://com.apple.documentation/documentation/CoreMedia/CMTime> and an <doc://com.apple.documentation/documentation/CoreMedia/CMTime/indefinite> time results in an <doc://com.apple.documentation/documentation/CoreMedia/CMTime/indefinite> value.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)