Primary Purpose: Inserts ads and other breaks/secondary content into primary content
How it works:
Points to secondary assets in date range
This allows content to potentially vary without changing the primary content’s media playlists (aka caching considerations)
This also sidesteps spec-complaint constraints on encoding of secondary content
Specifies when to play content & resume
Concern/Complication:
Limitation - SSAI + Ad blockers (easier to detect)
“play once” vs. “play every time” introduces unstable timeline when Interstitials are expected to occupy primary content timeline (doesn't map to HTMLMediaElement? one time / stable timeline model)
No official interop with MPEG-DASH, leading to potential fragmentation
Possible options discussed: using xlink, using multi-period
Most (all?) other players or playback environments do not have any support
NOTE: This includes native browser playback in Safari
Implication: Using interstitials as, e.g., an ad insertion solution won’t currently work for most folks because it’s not universal enough (yet!)
Uncertain about level of support across common packagers, but general sentiment is that it’s minimal at best
Related concern: even as packagers implement, there may not be consistency in the details of interstitial packaging
How should browsers handle Interstitials support?
Concern: Timelines/duration/etc.
Based on the spec, an HTMLMediaElement? would not be guaranteed to “know” the total duration (and e.g. corresponding seekable start/end) of primary content + interstitials at the time of e.g. loaded metadata.
Given the complexities this introduces, any final solution should keep the primary content duration distinct from any interstitial content duration
After discussion w/Jer Noble and informal vote, any solution will likely need the HTMLMediaElement? to “own” any API that will facilitate interstitials (or at least part of it)