Skip to content

Media playback with ads is stuck #7161

Closed

Description

@chladto1

Issue description

Media playback is stuck after prerolls are completed.

Reproduction steps

Use the following test code.

Link to test content

https://textuploader.com/1j7m1

A full bug report captured from the device

https://textuploader.com/1j7mo

Version of ExoPlayer being used

2.10.6

Device(s) and version(s) of Android being used

Android emulator with API 28

Activity

  1. self-assigned this
    on Mar 30, 2020
  2. andrewlewis commented on May 18, 2020

    @andrewlewis
    Collaborator

    After 793f12d playback shouldn't get stuck if we fail to preload an ad, and fa7d26d may have fixed the underlying problem. Please could you try to reproduce using the dev-v2 branch and let us know whether you are still seeing issues?

  3. chladto1 commented on May 26, 2020

    @chladto1
    Author

    Media playback is still getting stuck even in dev-v2 branch.

  4. chladto1 commented on May 28, 2020

    @chladto1
    Author

    Media playback is stuck sometimes also before or after midrolls.

  5. andrewlewis commented on May 29, 2020

    @andrewlewis
    Collaborator

    I couldn't reproduce the stuck playback using the ExoPlayer demo app with the IMA extension at tip-of-tree. When using the ads response from the paste, midrolls didn't play but playback didn't get stuck due to the new preloading timeout detection. You should see logging like this in the demo app:

    05-29 14:45:16.207  1338  1338 E EventLogger: internalError [eventTime=14.79, mediaPos=4.70, window=0, loadError
    05-29 14:45:16.207  1338  1338 E EventLogger:   com.google.android.exoplayer2.source.ads.AdsMediaSource$AdLoadException: java.io.IOException: Failed to load ad group 1
    05-29 14:45:16.207  1338  1338 E EventLogger:       at com.google.android.exoplayer2.ext.ima.ImaAdsLoader.handleAdGroupLoadError(ImaAdsLoader.java:1367)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at com.google.android.exoplayer2.ext.ima.ImaAdsLoader.getContentProgress(ImaAdsLoader.java:798)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at com.google.ads.interactivemedia.v3.internal.akk.c(IMASDK:2)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at com.google.ads.interactivemedia.v3.internal.akk.handleMessage(IMASDK:11)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at android.os.Handler.dispatchMessage(Handler.java:102)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at android.os.Looper.loop(Looper.java:223)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at android.app.ActivityThread.main(ActivityThread.java:7623)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at java.lang.reflect.Method.invoke(Native Method)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
    05-29 14:45:16.207  1338  1338 E EventLogger:       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941)
    05-29 14:45:16.207  1338  1338 E EventLogger:   Caused by: java.io.IOException: Failed to load ad group 1
    05-29 14:45:16.207  1338  1338 E EventLogger:       ... 10 more
    05-29 14:45:16.207  1338  1338 E EventLogger:   Caused by: java.io.IOException: Ad preloading timed out
    05-29 14:45:16.207  1338  1338 E EventLogger:       ... 9 more
    05-29 14:45:16.207  1338  1338 E EventLogger: ]
    

    I see some logging from the IMA SDK about "Uncaught AdError 501: The overlay ad content could not be displayed since creative dimensions do not align with display area." which I haven't seen before. Please check that the ads response is as expected.

    If you still see this with dev-v2 please provide detailed steps so I can reproduce the same problem you are seeing and diagnose what is going wrong. Thanks.

  6. andrewlewis commented on May 29, 2020

    @andrewlewis
    Collaborator

    Marked 'need more info' in case you can provide detailed steps to reproduce. Otherwise, this issue can be closed as not reproducible.

  7. chladto1 commented on Jun 17, 2020

    @chladto1
    Author

    Please try this VMAP. It has static content, so the issue should be reproducible also on your side. The issue is not 100% reproducible, please try it more times.

  8. 2 remaining items

  9. andrewlewis commented on Jun 17, 2020

    @andrewlewis
    Collaborator

    I tried reproducing it five times using my current development branch and playback didn't get stuck.

    Please could you give more details steps to reproduce? If you install the development branch version of the demo app and play your ad tag using adb shell am start -a com.google.android.exoplayer.demo.action.VIEW -d "https://storage.googleapis.com/exoplayer-test-media-1/mp4/frame-counter-one-hour.mp4" --es ad_tag_uri "https://devs.origin.cdn.cra.cz/ima/googlevmap.xml" do you see issues? Are you seeking, skipping ads or backgrounding/resuming to reproduce the issue?

    It would also help if you could hard-code ImaAdsLoader.DEBUG to be true then reproduce the issue and provide the logging with tag ImaAdsLoader. Thanks.

  10. ladamek commented on Jun 24, 2020

    @ladamek

    Hi @andrewlewis , this should help to replicate the issue by following these steps and we have attached a video as well.

    1. Watch pre-roll
    2. After pre-roll, immediately seek somewhere after mid-roll 1 (and before mid-roll 2)
    3. Let the video run into mid-roll 2
      Mid-roll 2 won't launch and won't make a call as shown on the attached video. If we skip the seek and continue watching the whole content, mid-roll2 will play without a problem.

    Stream: https://devs.origin.cdn.cra.cz:4433/prima/x/testbundle/testbundle.smil/manifest.mpd
    VMAP: https://devs.origin.cdn.cra.cz/ima/googlevmapshort.xml

    Video: adstuck.zip

  11. andrewlewis commented on Jun 24, 2020

    @andrewlewis
    Collaborator

    @ladamek I checked out r2.11.6 which we just released, built the demo app with the extension variant then started playback for those streams using: adb shell am start -a com.google.android.exoplayer.demo.action.VIEW -d "https://devs.origin.cdn.cra.cz:4433/prima/x/testbundle/testbundle.smil/manifest.mpd" --es ad_tag_uri "https://devs.origin.cdn.cra.cz/ima/googlevmapshort.xml", but found that the second midroll played as expected even with a seek after the preroll.

    Please could you test on r2.11.6? If it's reproducible please set ImaAdsLoader.DEBUG = true, reproduce the issue and attach the log output here. Thanks.

  12. google-oss-bot commented on Jul 14, 2020

    @google-oss-bot
    Collaborator

    Hey @chladto1. We need more information to resolve this issue but there hasn't been an update in 14 weekdays. I'm marking the issue as stale and if there are no new updates in the next 7 days I will close it automatically.

    If you have more information that will help us get to the bottom of this, just add a comment!

  13. google-oss-bot commented on Jul 23, 2020

    @google-oss-bot
    Collaborator

    Since there haven't been any recent updates here, I am going to close this issue.

    @chladto1 if you're still experiencing this problem and want to continue the discussion just leave a comment here and we are happy to re-open this.

  14. locked and limited conversation to collaborators on Sep 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions