We have implemented a check on our app, that validates when a user has seen a video in it's entirety and hasn't skipped any section.
We were using the video.played TimeRange Buffer available on a video HTML5 element.
The expected behaviour
For a user playing a video once and letting it end, it means you get one TimeRange where start is zero and end is the duration of the video in seconds. The end is not always the exact duration but it was always within 1 second of it.
The issue
After iOS15 the end integer is never the correct one or even close to the duration when a video ends (The "ended" event fires). It almost always is close to the start timer.
When pausing the video though the end duration is correct on the played TimeRange.
Testing on iOS 15.0.2