Ensure all representations are updated before live edge search begins
Created by: davemevans
While testing streams with availabilityStartTime in the future I noticed that after the postponeUpdate
only the first available representation would be updated and the remainder would have invalid segment availability data but would be deemed to be valid. This was particularly a problem when autoplay was disabled since updateAvailabilityWindow was not called, but even when it was the availability data could still be slightly stale if wall clock had not ticked.
Ultimately, this could cause the onLiveEdgeSearchCompleted handler to use stale data if the current representation was not the first in the list and therefore fail.
The solution is to reset the segment availability data on all representations to ensure that all are updated correctly prior to the live edge calculation occurring.
This is needed in addition to #1100.
Hope all this makes sense!