androidx / androidx/media

`lib-exoplayer-ima` skip ad functionality no longer supported by IMA

Open
#913 4 comments 0 reactions 1 assignee View on GitHub

@marcbaechinger is already working on this.

Since Dec 21, 2023.

documentation candidate question
Dominant language
Java
Stars
3k
Forks
955
Avg merge
12d 14h
Merged PRs (30d)
2

Description

Version

Media3 1.2.0

More version details

not version dependent

Devices that reproduce the issue

any

Devices that do not reproduce the issue

none

Reproducible in the demo app?

Yes

Reproduction steps

Very coarse steps, happy to provide more detail if needed:

  • Extend sample to use lib-exoplayer-ima extension without an adViewGroup in order to use createAudioAdDisplayContainer
  • schedule client side skippable ad, e.g. https://pubads.g.doubleclick.net/gampad/ads?iu=/21775744923/external/single_preroll_skippable&sz=640x480&ciu_szs=300x250%2C728x90&gdfp_req=1&output=vast&unviewed_position_start=1&env=vp&impl=s&correlator=
  • play the ad until it is in skippable state (5 seconds for the sample tag)
  • call skipAd
Expected result

The ad should be skipped. The documentation on skipAd states that this should only be used for audio only ads.

https://github.com/androidx/media/blob/f6fe90f30ba022c7e04e14a3dc5c28c568a4d1e2/libraries/exoplayer_ima/src/main/java/androidx/media3/exoplayer/ima/ImaAdsLoader.java#L505-L510

In the past this also worked for non-audio only ads but given the documentation I guess it's intended that it does not work if a view is present.

The root cause for this behaviour change is a change on IMA side, see (1, 2) for reference.

Actual result

Ad does not skip

Media

Not dependent on main content, as skippable ad, https://pubads.g.doubleclick.net/gampad/ads?iu=/21775744923/external/single_preroll_skippable&sz=640x480&ciu_szs=300x250%2C728x90&gdfp_req=1&output=vast&unviewed_position_start=1&env=vp&impl=s&correlator= can be used.

Bug Report
  • You will email the zip file produced by adb bugreport to android-media-github@google.com after filing this issue.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.