- 08 Mar, 2022 19 commits
-
-
This makes the reading period advance early as expected at the end of an ad period. Before this change the reading position of the metadata renderer prevented advancing the period until metadata arrived after the start position of the following period. Only then the reading position of the metadata renderer is updated and beyond the start position of the following period which is a condition to advance the reading period. Because transitioning to the next period is a virtual transition and the SharedMediaPeriod keeps reading from the same underlying sample streams, the metadata renderer can safely be ignored for this check. #minor-release PiperOrigin-RevId: 432646037 (cherry picked from commit c7c75173)
bachinger committed -
This change fixes two bugs where MediaSessionServe shows a notification with the Play icon but tapping it will not start playback: 1. After playback ends: we need to seek to the beginning of the media item. 2. After adding media items to the player but not starting playback: We need to call Player.prepare() too. PiperOrigin-RevId: 432469953 (cherry picked from commit 1023b9d5)
christosts committed -
PiperOrigin-RevId: 432430345 (cherry picked from commit 8e98187a)
christosts committed -
These should have been removed as part of https://github.com/androidx/media/commit/1391b7c65dab1856dad363dff7c0a250245f1671, since we no longer officially support overriding the layout file for this class. This class is known as StyledPlayerView in exoplayer2. #minor-release PiperOrigin-RevId: 432411322 (cherry picked from commit a353b333)
ibaker committed -
The MockPlayer has a single CountDownLatch field and multiple boolean flags that track if a player method was called. Upon calling the methods the latch count. Tests set the latch count to match exactly with the number of expected player interactions then block the test thread until the latch reaches zero and assert the respective method flags are true. This is subject to false positives. If the underneath implementation changes and call more player method, then the test thread will unblock as soon as a certain number of interactions is performed, which may be less than what the test expected originally. However, the test may stil pass if the player thread had enough time to update the expected method flag. This change removes the single CountDownLatch and the boolean flags and instead it adds APIs to query the MockPlayer if a method has been called and await until a method is called. Internally, the MockPlayer has a ConditionVariable per method. PiperOrigin-RevId: 432399077 (cherry picked from commit 45d51216)
christosts committed -
#minor-release PiperOrigin-RevId: 432189509 (cherry picked from commit a73a9e9c)
andrewlewis committed -
This method is no longer needed since we added SubtitleConfiguration#id in https://github.com/androidx/media/commit/59d98b9a4e2381647f3e4552b6935bcca1be6f89. Issue: google/ExoPlayer#10016 #minor-release PiperOrigin-RevId: 432169262 (cherry picked from commit 232f2d81)
ibaker committed -
When a live stream is joined while ads are already playing, the LOADED event is missed and we don't have ad information for those ads in the ad group that are before the ad index at which we joined. This way we can clip the duration when we receive the LOADED event for the last ad in the group. This fixes the problem of the playback controls being hidden when content resumes after the ad group. #minor-release PiperOrigin-RevId: 431269627 (cherry picked from commit 8e8c5903)
bachinger committed
-
- 23 Feb, 2022 4 commits
-
-
#minor-release PiperOrigin-RevId: 430456963
ibaker committed -
#minor-release PiperOrigin-RevId: 430200331
ibaker committed -
We need to access internal state to work around resources not being released on old API versions. Add a reference to the bug about this and suppress the lint warning. #minor-release PiperOrigin-RevId: 430190794
andrewlewis committed -
#minor-release PiperOrigin-RevId: 430189385
ibaker committed
-
- 22 Feb, 2022 11 commits
-
-
#minor-release PiperOrigin-RevId: 429596966
ibaker committed -
NDK 23 removes GNU's bin utils. More info in https://android.googlesource.com/platform/ndk/+/master/docs/BuildSystemMaintainers.md#binutils. LLVM bin utils are available in all modern NDK versions. #minor-release Issue: google/ExoPlayer#9933 PiperOrigin-RevId: 429299806
aquilescanta committed -
Merge of https://github.com/google/ExoPlayer/pull/9934 PiperOrigin-RevId: 429259055
olly committed -
We need to use a Service to create the pending intents in the `DefaultActionFactory`. PiperOrigin-RevId: 429115746
bachinger committed -
#minor-release PiperOrigin-RevId: 429067634
bachinger committed -
PiperOrigin-RevId: 429059793
bachinger committed -
This allows the AdsLoader.State to be stored in savedInstanceState #minor-release PiperOrigin-RevId: 429057697
bachinger committed -
#minor-release PiperOrigin-RevId: 429006934
bachinger committed -
- The resources were released twice before, which is not necessary since the MSG_RELEASE message is already in the internal player queue. - The demo app was failing because the stop watch was stopped in onTransformationError after being reset. #minor-release #mse-bug-week PiperOrigin-RevId: 428794426
kimvde committed -
#minor-release PiperOrigin-RevId: 428763656
bachinger committed -
PiperOrigin-RevId: 428763554
hschlueter committed
-
- 21 Feb, 2022 6 commits
-
-
#minor-release PiperOrigin-RevId: 428761508
bachinger committed -
Currently only a single instance of ImaServerSideAdInsertionMediaSource is supported at the same time in a playlist. This change makes sure that an attempt to add multiple instances is prevented by throwing a an exception. #minor-release PiperOrigin-RevId: 428743140
bachinger committed -
This change makes sure played server side ads are skipped in a single period timeline. It avoids creating an ad-MediaPeriodInfo for played postrolls and creates a content info instead. It also sets the end position for content infos that terminate the stream before the stream is actually finished. This prevents the player from continue playing the remaining media delivered by the MediaPeriod. We also make sure that the discontinuity of played ads are not reported because there is actually no discontinuity. #minor-release PiperOrigin-RevId: 428734387
bachinger committed -
#minor-release PiperOrigin-RevId: 428727560
bachinger committed -
This prevents a stack trace that is shown in the logs when the stream manager is released after the activity was stopped. In this case the call to `streamManager.destroy()` coming from `releaseSourceInternal()` of the media source is too late and produces an error saying `Application attempted to call on a destroyed WebView`. The error has no effect but it's nice to not have this stack trace in the logs. PiperOrigin-RevId: 428574231
bachinger committed -
#minor-release PiperOrigin-RevId: 428565444
bachinger committed
-