media/libraries
tonihei 20ba325439 Add consistency check to sending and receiving position updates
The periodic updates are only meant to happen while we are in the
same period or ad. This was already guaranteed except for two cases:
1. The Player in a session has updated its state without yet calling
   its listeners
2. The session scheduled a PlayerInfo update that hasn't been sent yet

... and in both cases, the following happened:
 - The change updated the mediaItemIndex to an index that didn't exist
   in a previous Timeline known to the Controller
 - One of the period position updates happened to be sent at exactly
   this time

This problem can be avoided by only scheduling the update if we are
still in the same period/ad and haven't scheduled a normal PlayerInfo
update already.

Since new MediaControllers may still connect to old sessons with this
bug, we need an equivalent change on the controller side to ignore such
buggy updates.

PiperOrigin-RevId: 532089328
(cherry picked from commit 96dd0ae583)
2023-05-16 11:05:41 +01:00
..
cast Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
common Remove a copybara stripping tag 2023-05-15 16:32:39 +01:00
database Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
datasource Remove remaining references to exoplayer.dev 2023-04-18 14:56:45 +01:00
datasource_cronet Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
datasource_okhttp Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
datasource_rtmp Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
decoder Render last frame even if have not read BUFFER_FLAG_END_OF_STREAM 2023-05-15 16:10:51 +01:00
decoder_av1 Remove Javadoc TODO from README of decoder extensions 2023-04-18 14:56:46 +01:00
decoder_ffmpeg Remove Javadoc TODO from README of decoder extensions 2023-04-18 14:56:46 +01:00
decoder_flac Remove Javadoc TODO from README of decoder extensions 2023-04-18 14:56:46 +01:00
decoder_opus Remove Javadoc TODO from README of decoder extensions 2023-04-18 14:56:46 +01:00
decoder_vp9 Remove Javadoc TODO from README of decoder extensions 2023-04-18 14:56:46 +01:00
effect Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
exoplayer Merge pull request #313 from pengbins:fix_ts_h265reader_parse_sps 2023-05-15 16:26:20 +01:00
exoplayer_dash Ensure DrmSessionManager.setPlayer() is called before prepare() 2023-05-15 16:14:45 +01:00
exoplayer_hls Ensure DrmSessionManager.setPlayer() is called before prepare() 2023-05-15 16:14:45 +01:00
exoplayer_ima Use @link instead of @value 2023-04-18 15:18:39 +01:00
exoplayer_rtsp Retry RTSP Setup with TCP if response with UDP is UnsupportedTransport 2023-04-18 14:55:46 +01:00
exoplayer_smoothstreaming Ensure DrmSessionManager.setPlayer() is called before prepare() 2023-05-15 16:14:45 +01:00
exoplayer_workmanager Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
extractor Add UTF-16 encoded subtitle support to SsaDecoder 2023-05-15 16:32:36 +01:00
session Add consistency check to sending and receiving position updates 2023-05-16 11:05:41 +01:00
test_data Add UTF-16 encoded subtitle support to SsaDecoder 2023-05-15 16:32:36 +01:00
test_exoplayer_playback Fix instrumentation tests not working via Gradle 2022-09-20 15:25:38 +00:00
test_session_common Update available commands when setting a new player in MediaSession 2023-04-18 15:00:09 +01:00
test_session_current Add consistency check to sending and receiving position updates 2023-05-16 11:05:41 +01:00
test_utils Ensure DrmSessionManager.setPlayer() is called before prepare() 2023-05-15 16:14:45 +01:00
test_utils_robolectric Fix javadoc links in media README files 2023-03-31 13:35:43 +01:00
transformer Add media3 guide entries in README files 2023-03-31 13:36:24 +01:00
ui Update translations 2023-05-15 16:32:38 +01:00
ui_leanback Fix (another) LeanbackPlayerAdapter param name mismatch 2023-02-02 13:22:39 +00:00