- 19 Jul, 2023 1 commit
-
-
Updated `ExoTrackSelection` to provide the most recent bitrate estimate, enabling the inclusion of measured throughput (mtp) as a CMCD-Request field in Common Media Client Data (CMCD) logging. Additionally, made changes to the `checkArgument` methods in `CmcdLog` to prevent the use of default values in certain cases. #minor-release PiperOrigin-RevId: 549369529 (cherry picked from commit 79696182226b10dce2ac2756f317d217a8bcf23c)
rohks committed
-
- 18 Jul, 2023 1 commit
-
-
Added these CMCD-Object fields to Common Media Client Data (CMCD) logging. #minor-release PiperOrigin-RevId: 548950296 (cherry picked from commit 43fc92167bc58070ff19dd39bb6b66f3d35b3b84)
rohks committed
-
- 17 Jul, 2023 1 commit
-
-
The streams return end-of-input if they read no samples, but know that they are fully buffered to at least the clipped end time. This helps to detect the end of stream even if there are no new buffers after the end of the clip (e.g. for sparse metadata tracks). The race condition occurs because the buffered position is evaluated after reading the sample. So between reading "no sample" and checking the buffered position, the source may have loaded arbitrary amounts of data. This may lead to a situation where the source has not read all samples, reads NOTHING_READ (because the queue is empty) and then immediately returns end-of-stream (because the buffered position jumped forward), causing all remaining samples in the stream to be skipped. This can fixed by moving the buffered position check to before reading the sample, so that it never exceeds the buffered position at the time of reading "no sample". #minor-release PiperOrigin-RevId: 548646464 (cherry picked from commit b3a7ff91d6f4c3454085fe28903f42ede3d03ac1)
tonihei committed
-
- 14 Jul, 2023 3 commits
-
-
Add Ogg ID Header and Comment Header Pages to the Ogg encapsulated Opus for offload playback. This further matches the RFC 7845 spec and provides initialization data to decoders. PiperOrigin-RevId: 548080222 (cherry picked from commit 4c894aa6a961fb53e92bf01361f8459d65055af3)
michaelkatz committed -
Added tests for Common Media Client Data (CMCD) logging in SmoothStreaming(SS) PiperOrigin-RevId: 548072725 (cherry picked from commit bc8f55315104f1e639861db7729116a921bb0f93)
rohks committed -
PiperOrigin-RevId: 548063325 (cherry picked from commit e1d5c68e71f3901101c0ba3fdf950192ed9d550b)
rohks committed
-
- 13 Jul, 2023 1 commit
-
-
`Dummy` is a non inclusive language. PiperOrigin-RevId: 547815680 (cherry picked from commit 74c3ae24e98c8e445f14b3cdd9d78186d41f2b94)
rohks committed
-
- 12 Jul, 2023 1 commit
-
-
Added these CMCD-Session fields to Common Media Client Data (CMCD) logging. #minor-release PiperOrigin-RevId: 547435498 (cherry picked from commit d82a86fba56e23ab5037d281f6586e7aa8f2b237)
rohks committed
-
- 10 Jul, 2023 1 commit
-
-
#minor-release PiperOrigin-RevId: 546803592 (cherry picked from commit db1efe64f368173246244d8689ffc50f6ba8f5d2)
ibaker committed
-
- 06 Jul, 2023 3 commits
-
-
#minor-release PiperOrigin-RevId: 545961354 (cherry picked from commit 143f862438729bfc91dfb4a106f1b5794249117e)
ibaker committed -
Issue: androidx/media#500 #minor-release PiperOrigin-RevId: 545942450 (cherry picked from commit 85d2e9bbb3d4ea7d65f7151f27abe5731b27f5d4)
andrewlewis committed -
This is only needed for instrumentation tests and should not be included in regular builds. #minor-release Issue: androidx/media#499 PiperOrigin-RevId: 545913113 (cherry picked from commit 776abb50435f102d055e1655fe1eada34993d2a0)
tonihei committed
-
- 05 Jul, 2023 1 commit
-
-
Based on the spec, ETSI TS 102 366 V1.4.1 Annex F, 6 bits should have skipped instead of 6 bytes. This correction was pointed out in Issue: androidx/media#474. PiperOrigin-RevId: 545658365 (cherry picked from commit 0f5b2cf9facbc8adac0d115896792de8db955da2)
rohks committed
-
- 04 Jul, 2023 1 commit
-
-
This was helpful in investigating Issue: androidx/media#471 PiperOrigin-RevId: 545393217 (cherry picked from commit b076a670b6a922d279e62fe7417eda1b660421a9)
ibaker committed
-
- 03 Jul, 2023 1 commit
-
-
#minor-release PiperOrigin-RevId: 545237925 (cherry picked from commit 527073acdfa4a1f1e43bc3abb3ef7a54e0bb8696)
michaelkatz committed
-
- 30 Jun, 2023 2 commits
-
-
We introduced truncation to 32 chars in <unknown commit> and included indent and offset in the calculation. I think this is technically correct, but it causes problems with the content in Issue: google/ExoPlayer#11019 and it doesn't seem a problem to only truncate actual cue text (i.e. ignore offset and indent). #minor-release PiperOrigin-RevId: 544677965 (cherry picked from commit d5e45209eeb7b3ce96cc9dcf32ea98bb42cf12ce)
ibaker committed -
These fields cannot be set and the logic to handle them can be removed. PiperOrigin-RevId: 544646460 (cherry picked from commit d5ba034e1f7435c55f52126be53a09a7f3bc37a9)
tonihei committed
-
- 05 Jul, 2023 1 commit
-
-
PiperOrigin-RevId: 544601945 (cherry picked from commit 6b3d3cd756a0dcd83cc2551078949f8427da27ed)
microkatz committed
-
- 28 Jun, 2023 2 commits
-
-
Add a fail-fast check in `ExoPlayerImpl` to ensure the equality of the lengths of `ShuffleOrder` and the current playlist. Also improve the documentation of `setShuffleOrder(ShuffleOrder)` with explicit instruction on this. Issue: androidx/media#480 #minor-release PiperOrigin-RevId: 544009359 (cherry picked from commit 9cabbc9badbc9301f5e13398b8444377c4e72543)
tianyifeng committed -
It currently wrongly documents that it is only called before reading streams (that has never been the case and all MediaPeriods already need to handle calls after reading samples from the streams). It was also a bit unclear what a discontinuity implies and the new Javadoc calls out the main use case for discontinuties and the intended meaning of returning a discontinuity. #minor-release PiperOrigin-RevId: 543989124 (cherry picked from commit 7530c45cb60f212d9d65c24f40a45fe666416ad5)
tonihei committed
-
- 26 Jun, 2023 3 commits
-
-
Issue: androidx/media#476 #minor-release PiperOrigin-RevId: 543460075 (cherry picked from commit 5584007400be55a22a95825f00b0fbb607e121c1)
tianyifeng committed -
MP4 edit lists sometimes ask to start playback between two samples. If this happens, we currently change the timestamp of the first sample to zero to trim it (e.g. to display the first frame for a slightly shorter period of time). However, we can't do this to audio samples are they have an inherent duration and trimming them this way is not possible. PiperOrigin-RevId: 543420218 (cherry picked from commit 2cdc964066b1c9c9c4e90583b3f4b1579290c69b)
tonihei committed -
PiperOrigin-RevId: 543373503 (cherry picked from commit 03e30b458449e1dc0c30ac39e102539271a6c7d6)
Googler committed
-
- 22 Jun, 2023 1 commit
-
-
PiperOrigin-RevId: 542577676 (cherry picked from commit 3819de56039b702e25ca3c1ba2fda5630f4446f8)
jbibik committed
-
- 20 Jun, 2023 4 commits
-
-
#minor-release PiperOrigin-RevId: 541970884 (cherry picked from commit ce466b742bc8edebef363aa79ec2c91fb40df5cd)
ibaker committed -
When an app tried to re-prepare a live streeam with server side inserted ad after a playback exception, the player tried to find the ad group by its index in the ad playback state of the next timeline when creating the first period. If a source that supports server side ad, has removed the ad playback state when the source has been removed, this causes a crash. For live streams this is a reasonable thing to do given the exception could be caused by an invalid ad playback state. This change removes the ad metadata from the current period for live streams and the timeline. In case the ad playback state is not reset by the source, the first timeline refresh would ad the metadata again. PiperOrigin-RevId: 541959628 (cherry picked from commit 207ef0d0f0bee86e75409f53ded325e859ca25aa)
bachinger committed -
Some events may arrive after the playlist is cleared (e.g. load cancellation). In this case, the DefaultPlaybackSessionManager may create a new session for the already removed item. We already have checks in place that ignore events with old windowSequenceNumbers, but these checks only work if the current session is set (i.e. the playlist is non-empty). The fix is to add the same check for empty playlists by keeping note of the last removed window sequence number. PiperOrigin-RevId: 541870812 (cherry picked from commit 656e0723e51e1bc38d558e77fa2cb0cc17e37054)
tonihei committed -
PiperOrigin-RevId: 540875285 (cherry picked from commit 9fd38c16eeb9e64ff62a0a47ae6e174bb8de8d43)
Ian Baker committed
-
- 15 Jun, 2023 2 commits
-
-
Instead of providing `playbackDurationUs` and `loadPositionUs` individually, which are used to calculate the buffer duration for CMCD logging, we can directly pass the pre-calculated `bufferedDurationUs` available in the `getNextChunk` method of the chunk source classes. Issue: google/ExoPlayer#8699 #minor-release PiperOrigin-RevId: 540630112 (cherry picked from commit 4d1119ab24384621877f4e7854dca1fa6db964a3)
rohks committed -
Additionally, two existing methods to `buildDataSpec` in `DashUtil` have been deprecated, while a new method has been added that allows the inclusion of `httpRequestHeaders`. Issue: google/ExoPlayer#8699 #minor-release PiperOrigin-RevId: 540594444 (cherry picked from commit c69b6fe41d065175dacc22b1b30efed91b8102f1)
rohks committed
-
- 14 Jun, 2023 3 commits
-
-
These comments reflect the parameter names of the constructor that we're reflectively calling, but errorprone complains that they don't match the parameter names of `Constructor.newInstance`. PiperOrigin-RevId: 540348118 (cherry picked from commit 2b53f100f858e36159ab636e82bcb07d26868150)
ibaker committed -
Previously `AsynchronousMediaCodecCallback.mediaCodecException` was cleared when flushing completed. This behaviour was changed in https://github.com/google/ExoPlayer/commit/aeff51c50772a82e44045e7d80e8a13390e2bb36 so now the exception is not cleared. The result after that commit was that we would **only** suppress/ignore the expression if a flush was currently pending, and we would throw it both before and after the flush. This doesn't really make sense, so this commit changes the behaviour to also throw the exception during the flush. This commit also corrects the assertion in `flush_withPendingError_resetsError` and deflakes it so that it consistently passes. The previous version of this test, although the assertion was incorrect, would often pass because the `dequeueInputBuffer` call would happen while the `flush` was still pending, so the exception was suppressed. #minor-release PiperOrigin-RevId: 540237228 (cherry picked from commit dd17e73629930628e5cb313301ceabf0c776bd18)
ibaker committed -
PiperOrigin-RevId: 540220141 (cherry picked from commit 1434c61bf5e8a92d90cadc39e66e5edb993b9a84)
tonihei committed
-
- 12 Jun, 2023 3 commits
-
-
This was recommended in https://github.com/robolectric/robolectric/issues/8187#issuecomment-1552060094 PiperOrigin-RevId: 539691757 (cherry picked from commit 3923878db4f8ebbcf242f8941424b9f4e6999b5e)
ibaker committed -
Issue: androidx/media#452 #minor-release PiperOrigin-RevId: 539613535 (cherry picked from commit 44910cc80b54c499afd9c0f1e7cbaa778a4200a0)
bachinger committed -
1. Not treating 0 as valid buffer index 2. Not handling the case the last frame is a comparison frame PiperOrigin-RevId: 539607482 (cherry picked from commit 750988797436a3a7af0c3ff8deb8bda22da12038)
claincly committed
-
- 11 Aug, 2023 1 commit
-
-
This flag was introduced to fix links in javadoc search when generating it with Java 11: <unknown commit> The flag is no longer supported with Java 17 (which is required for Gradle 8.0+), and seems to no longer be needed: I generated the javadoc with it removed and the search links work OK. PiperOrigin-RevId: 536738686
ibaker committed
-
- 05 Jul, 2023 1 commit
-
-
Release v2 r2.19.0
Tofunmi Adigun-Hameed committed
-
- 26 Jun, 2023 2 commits
-
-
Tofunmi Adigun-Hameed committed
-
PiperOrigin-RevId: 541640959 (cherry picked from commit 3f991f643c053d8cbd6d324de405fb7c96f3ce0d)
bachinger committed
-