nextChangeAfter

fun nextChangeAfter(cues: List<SubtitleCue>, atMicros: Long): Long?

The next instant after atMicros at which the active set changes, or null when nothing ever changes again. This is what lets the engine sleep between cue edges instead of polling: the visible set is constant on the half-open interval up to this boundary.