Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can not play midroll #8428

Closed
z423821123 opened this issue Jan 5, 2021 · 3 comments
Closed

Can not play midroll #8428

z423821123 opened this issue Jan 5, 2021 · 3 comments
Assignees
Labels

Comments

@z423821123
Copy link

[REQUIRED] Issue description

  • When I first initialize the player and jump to the position behind of the midroll, I can't play the midroll. I confirm that it works fine with Exoplayer 2.11.0. However when I upgrade Exoplayer to 2.12.2 and this issue was happened. It is easy to reproduce in demo app.

[REQUIRED] Reproduction steps

  1. Call seekto() in demo app, such as player.seekTo(startWindow, 60000);
  2. Select this item in demo app
    image
    3.Can not play mid-roll

Here is the ImaAdsLoader debug log

2021-01-05 14:27:56.798 11876-11876/com.google.android.exoplayer2.demo W/ImaAdsLoader: onEnded without ad media info
2021-01-05 14:28:07.457 11876-11876/com.google.android.exoplayer2.demo I/ImaAdsLoader: AdEvent: {errorMessage=VAST media file loading reached a timeout of 8 seconds., errorCode=402, type=adPlayError}

[REQUIRED] Version of ExoPlayer being used

2.12.2

[REQUIRED] Device(s) and version(s) of Android being used

Samsung Galaxy S10, Android 10

@z423821123
Copy link
Author

Hi @andrewlewis , could you take a look?

@sravan1213
Copy link
Contributor

looks like duplicate of #8349

@andrewlewis
Copy link
Collaborator

Thanks for reporting. Just after we report the seek position to the IMA SDK we get CONTENT_RESUME_REQUESTED then CONTENT_PAUSE_REQUESTED for the ad. The problem is that the first CONTENT_RESUME_REQUESTED is interpreted as a request to skip the ad by IMA extension, due to the workaround added to skip VPAID ads in #7832. I will revert that workaround and replace it with a more robust workaround where we instead timeout loading an initial VPAID ad, which should fix the regression.

kim-vde pushed a commit that referenced this issue Jan 22, 2021
The IMA SDK currently notifies `CONTENT_RESUME_REQUESTED` then
`CONTENT_PAUSE_REQUESTED` quickly afterwards when playing an ad for an initial
seek. This triggered the logic to skip VPAID ads added for Issue: #7832,
causing the ad to be skipped.

This change reverts the fix for that issue and extends the ad preload timeout
logic to cover the case of an initial seek as well. Incompatible VPAID ads will
still be skipped but only after the preload delay (this seems fine given that
they are documented not to be supported, and we are just making the failure
mode less bad on a best-effort basis!).

Issue: #8428
Issue: #7832
PiperOrigin-RevId: 353011270
@google google locked and limited conversation to collaborators Apr 3, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

No branches or pull requests

3 participants