media/library
tonihei 8c685aba4b Move playback speed update at period transitions to reading period.
In some cases we need to update the PlaybackParameters at period
boundaries, for example when switching from live to VOD and live
playback speed adjustment was still active at the point of switching.

Currently, we send the update when the playing MediaPeriod changes in
EPII, which is slightly too late because the new speed gets only applied
after the entire existing AudioTrack buffer has been played out.

We can time the update slightly better by updating the values at the
point where we change the reading period. This makes the update slightly
too early because it also applies to all samples currently in the
decoder. But generally, this is a lot better because the time spent
in the decoder is likely to be considerably lower than the duration of
the AudioTrack buffer.

Note that this change isn't perfectly aligning to the period boundary,
but reduces the number of samples with the wrong speed to a minimum.
If we are getting around to add additional code that allows updating
the speed at exactly the boundary, it also needs to be triggered from
the reading period update, so the new code location is also helpful in
the future.

Issue: google/ExoPlayer#9018
PiperOrigin-RevId: 424540551
2022-01-28 09:44:07 +00:00
..
all Add database module 2021-10-26 14:19:43 +01:00
common Fix some lint warnings 2022-01-28 09:37:06 +00:00
core Move playback speed update at period transitions to reading period. 2022-01-28 09:44:07 +00:00
dash Fix some lint warnings 2022-01-28 09:37:06 +00:00
database Add database module 2021-10-26 14:19:43 +01:00
datasource Change DefaultHttpDataSourceTest to an instrumentation test 2021-12-14 10:30:35 +00:00
decoder Make package in test manifest consistent 2021-10-29 11:35:26 +01:00
extractor Merge pull request #9893 from moneytoo:mkv-vtt 2022-01-28 09:33:35 +00:00
hls Disable live speed adjustment where it has no benefit 2022-01-14 14:54:49 +00:00
rtsp Ignore invalid RTP-Info header value. 2022-01-25 19:29:51 +00:00
smoothstreaming Remove setTag from (Ss|Hls|Dash)MediaSource.Factory 2022-01-10 13:00:58 +00:00
transformer Apply suggested AVC profile depending on the API version. 2022-01-28 09:19:29 +00:00
ui Fix some lint warnings 2022-01-28 09:37:06 +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.