media/library
olly e0ccfdde1b Notify VideoFrameReleaseTimeHelper of all frame PTS values
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
2020-11-23 11:01:52 +00:00
..
all Move common gradle setup to a setting file. 2020-06-26 11:13:25 +01:00
common Rollback of 5d9c2d7b6a 2020-11-18 18:40:30 +00:00
core Notify VideoFrameReleaseTimeHelper of all frame PTS values 2020-11-23 11:01:52 +00:00
dash Rollback of 5d9c2d7b6a 2020-11-18 18:40:30 +00:00
extractor Remove FLAG_SIDELOADED from FragmentedMp4Extractor 2020-11-19 17:13:11 +00:00
hls Replace cancelled HLS preload parts 2020-11-19 17:13:19 +00:00
smoothstreaming Remove deprecated MediaSource builder methods and constructors. 2020-10-13 16:27:20 +01:00
ui Rollback of 8d84a50fa1 2020-11-23 10:49:00 +00:00
README.md Tweak and add READMEs + remove refs to V1 2017-08-17 22:59:34 +01:00

ExoPlayer library

The ExoPlayer library is split into multiple modules. See ExoPlayer's top level README for more information about the available library modules and how to use them.