Skip to content

Media gets stuck on lowest bandwidth tracks. #582

Closed
@sanbornhilland

Description

@sanbornhilland

Using latest from master (f7fd3c9)

  1. Loading a live stream we have I can see that occasionally in shaka.abr.SimpleAbrManager.prototype.segmentDownloaded we get a segment with the same endTimeMs and startTimeMs, resulting in a durationMs of 0.
  2. This produces as bandwidth of Infinity in shaka.abr.EwmaBandwidthEstimator.prototype.sample.
  3. When shaka.abr.Ewma.prototype.sample is called with 0 and Infinity it produces an estimate of NaN because: value * (1 - adjAlpha) = Infinity * (1 - 1) = NaN;
  4. this.estimate_ is set to NaN and subsequently every sample after this return NaN

Result:

ABR fails and the media gets stuck on the lowest tracks.

Expected:

Sampling should ignore bad values and move on.

Metadata

Metadata

Assignees

No one assigned

    Labels

    status: archivedArchived and locked; will not be updatedtype: bugSomething isn't working correctly

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions