Representation of removal times as double in SourceBuffer::remove() can cause problems in HBOMax due to precision/rounding problems. In some problematic cases an unintended frame would be marked for removal because of the very small overlap that could come from precision lost. For instance, HBOMax uses the PTS of the next sample as removal 'end' and unexpectedly removes the next segment (as it's a sync frame) sometimes. Rounding the double removal range delimiters to nanoseconds would help to avoid those problematic cases.
Pull request: https://github.com/WebKit/WebKit/pull/4266
Committed 254472@main (2fc32818fdd2): <https://commits.webkit.org/254472@main> Reviewed commits have been landed. Closing PR #4266 and removing active labels.
<rdar://problem/99914941>