mirror of
https://github.com/androidx/media.git
synced 2025-05-10 00:59:51 +08:00
Use Math.round(double) to avoid result being limited to Integer.MAX_INT
Issue: #8067 PiperOrigin-RevId: 337122011
This commit is contained in:
parent
2371b024dd
commit
75513e581f
@ -78,6 +78,13 @@
|
||||
([#3750](https://github.com/google/ExoPlayer/issues/3750)).
|
||||
* Add a way to override ad media MIME types
|
||||
([#7961)(https://github.com/google/ExoPlayer/issues/7961)).
|
||||
* Fix truncating large cue points in microseconds
|
||||
([#8067](https://github.com/google/ExoPlayer/issues/8067)).
|
||||
|
||||
* UI:
|
||||
|
||||
* Show overflow button in `StyledPlayerControlView` only when there is no
|
||||
enough space.
|
||||
|
||||
### 2.12.0 (2020-09-11) ###
|
||||
|
||||
|
@ -1596,7 +1596,8 @@ public final class ImaAdsLoader
|
||||
// We receive initial cue points from IMA SDK as floats. This code replicates the same
|
||||
// calculation used to populate adGroupTimesUs (having truncated input back to float, to avoid
|
||||
// failures if the behavior of the IMA SDK changes to provide greater precision).
|
||||
long adPodTimeUs = Math.round((float) cuePointTimeSeconds * C.MICROS_PER_SECOND);
|
||||
float cuePointTimeSecondsFloat = (float) cuePointTimeSeconds;
|
||||
long adPodTimeUs = Math.round((double) cuePointTimeSecondsFloat * C.MICROS_PER_SECOND);
|
||||
for (int adGroupIndex = 0; adGroupIndex < adPlaybackState.adGroupCount; adGroupIndex++) {
|
||||
long adGroupTimeUs = adPlaybackState.adGroupTimesUs[adGroupIndex];
|
||||
if (adGroupTimeUs != C.TIME_END_OF_SOURCE
|
||||
|
@ -803,7 +803,8 @@ public final class ImaAdsLoaderTest {
|
||||
|
||||
@Test
|
||||
public void loadAd_withLargeAdCuePoint_updatesAdPlaybackStateWithLoadedAd() {
|
||||
float midrollTimeSecs = 1_765f;
|
||||
// Use a large enough value to test correct truncating of large cue points.
|
||||
float midrollTimeSecs = Float.MAX_VALUE;
|
||||
ImmutableList<Float> cuePoints = ImmutableList.of(midrollTimeSecs);
|
||||
setupPlayback(CONTENT_TIMELINE, cuePoints);
|
||||
imaAdsLoader.start(adsLoaderListener, adViewProvider);
|
||||
|
Loading…
x
Reference in New Issue
Block a user