androidx / media

Jetpack Media3 support libraries for media use cases, including ExoPlayer, an extensible media player for Android
https://developer.android.com/media/media3
Apache License 2.0
1.58k stars 374 forks source link

[VOD DAI - Widevine DRM] Demo app is crashing in ImaServerSideAdInsertionMediaSource when fast forward beyond last Midroll break. #1741

Open miroslawz81 opened 1 day ago

miroslawz81 commented 1 day ago

Version

Media3 1.4.1

More version details

No response

Devices that reproduce the issue

Device: Pixel 6 running Android 14

Devices that do not reproduce the issue

No response

Reproducible in the demo app?

Yes

Reproduction steps

Play a DAI VOD content with multiple midroll ad breaks and when starting playback fast forward to position after the last midroll. The steps to setup the content will be provided in the email sent to android-media-github@google.com.

Expected result

The media plays successfully.

Actual result

Playback crashes with the following stack trace (btw, the issue is also present in Exoplayer 2.19.1 so it is not a regression) :

09-19 15:30:10.390 32585 32585 D AndroidRuntime: Shutting down VM 09-19 15:30:10.391 32585 32585 E AndroidRuntime: FATAL EXCEPTION: main 09-19 15:30:10.391 32585 32585 E AndroidRuntime: Process: androidx.media3.demo.main, PID: 32585 09-19 15:30:10.391 32585 32585 E AndroidRuntime: java.lang.ArrayIndexOutOfBoundsException: length=10; index=10 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at androidx.media3.common.AdPlaybackState.getAdGroup(AdPlaybackState.java:686) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at androidx.media3.exoplayer.ima.ImaServerSideAdInsertionMediaSource.setVodAdInPlaceholder(ImaServerSideAdInsertionMediaSource.java:903) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at androidx.media3.exoplayer.ima.ImaServerSideAdInsertionMediaSource.access$3300(ImaServerSideAdInsertionMediaSource.java:114) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at androidx.media3.exoplayer.ima.ImaServerSideAdInsertionMediaSource$VodAdEventListener.onAdEvent(ImaServerSideAdInsertionMediaSource.java:1497) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at androidx.media3.exoplayer.ima.ImaServerSideAdInsertionMediaSource$ComponentListener.onAdEvent(ImaServerSideAdInsertionMediaSource.java:1063) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at com.google.ads.interactivemedia.v3.impl.zzac.zzc(com.google.ads.interactivemedia.v3:interactivemedia@@3.33.0:27) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at com.google.ads.interactivemedia.v3.impl.zzbr.zzc(com.google.ads.interactivemedia.v3:interactivemedia@@3.33.0:12) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at com.google.ads.interactivemedia.v3.impl.zzav.zzl(com.google.ads.interactivemedia.v3:interactivemedia@@3.33.0:49) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at com.google.ads.interactivemedia.v3.impl.zzbc.zzg(com.google.ads.interactivemedia.v3:interactivemedia@@3.33.0:7) 09-19 15:30:10.391 32585 32585 E AndroidRuntime: at com.google.ads.interactivemedia.v3.impl.zzay.onPostMessage(com.google.ads.interactivemedia.v3:interactivemedia@@3.33.0:2)

Media

will provide in the separate email.

Bug Report

miroslawz81 commented 1 day ago

The email has been sent with the steps to setup the content.