1. 27 Nov, 2020 14 commits
  2. 24 Nov, 2020 21 commits
  3. 23 Nov, 2020 3 commits
    • Notify VideoFrameReleaseTimeHelper of all frame PTS values · e0ccfdde
      Previously, VideoFrameReleaseTimeHelper didn't receive PTS values for
      frames that were skipped. This would lead to unnecessary sync loss when
      encountering such buffers, because the helper would see a frame-rate
      change (i.e., the next frame being significantly longer than previous
      ones). After this change, VideoFrameReleaseTimeHelper is notified of
      all frame PTS values, so it can retain sync in this case.
      
      This change also propagates onStarted and onPositionReset to the helper.
      This paves the way for decoupling frame-rate estimation from release
      adjustment sync. Note that currently, loss of sync effectively resets
      both. This is unnecessary. For example, if the renderer is paused and
      later resumed, then release adjustment sync needs to be reset, but any
      frame-rate estimate we have is still valid.
      
      PiperOrigin-RevId: 343803531
      olly committed
    • Rollback of https://github.com/google/ExoPlayer/commit/8d84a50fa1c86f730105cd648bb2454f365830d4 · b16cf594
      *** Original commit ***
      
      Update Styled non bottom buttons to be borderless.
      
      This requires the parent of the background to draw and have padding large enough to support the size of the ripple.
      
      The bottom buttons must remained bordered as the space around them is constrained.
      
      ***
      
      PiperOrigin-RevId: 343531411
      olly committed
    • Update docs with onEvents callback information. · a987e106
      PiperOrigin-RevId: 343507207
      tonihei committed
  4. 20 Nov, 2020 2 commits
    • Fix ProgressiveDownloader retry logic · 1b50071f
      RunnableFutureTask is not reusable. Trying to reuse it meant that a
      failure in one doWork() call would cause subsequent download() calls
      to (a) not block until the runnable has finished executing (does not
      apply when using a direct executor), and (b) throw the same failure
      as thrown from the first doWork() call.
      
      This could cause #8078 if the initial failure occurred before the
      content length was resolved. Retries are not blocked on their work
      completing due to (a), and the download would be marked as failed due
      to (b). The work itself could then resolve the content length, which
      causes the stack trace in this issue.
      
      Issue: #8078
      PiperOrigin-RevId: 343498252
      olly committed
    • Add onEvents callback. · bd631a6c
      This callback allows listeners to know when all simultanous changes
      have been handled and the values reported through callbacks are
      again completely consistent with value obtained from Player
      getter calls.
      
      PiperOrigin-RevId: 343476639
      tonihei committed