You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add the following content in media.exolist.json and play it: [ { "name": "Sample", "samples": [ { "name": "VMAP", "uri": "https://storage.googleapis.com/exoplayer-test-media-1/mkv/android-screens-lavf-56.36.100-aac-avc-main-1280x720.mkv", "ad_tag_uri": "https://devs.origin.cdn.cra.cz/ima/primavmap.xml" } ] } ]
Leave it running until third or fourth midroll
Observe that playback gets completely stuck
Expected result
Each midroll references the same VAST where there are three ads. The first two emulate slow media server response and return media only after 10 seconds, i.e. after the default timeout of 8 seconds. The third ad in midroll is served with regular speed.
IMA should gracefully skip the first two ads in each midroll and play the third midroll only. Each midroll should be playable the same way.
So we prepared the environment with our own VMAP that would emulate the same behavior and first two ads time out from each midroll, only the third is immediately playable.
With this environment we can reproduce the player getting stuck most of the time during the third midroll at 1:30, seldomly at fourth midroll at 2:00. Tested with 2.15.1 and 2.18.1 with the same result.
A hint: it appears that while it works for the first few midrolls, the log can contain java.net.SocketTimeoutException but it doesn't when it gets stuck.
Media
See reproduction steps section.
Bug Report
You will email the zip file produced by adb bugreport to dev.exoplayer@gmail.com after filing this issue.
Actually, looks like the same circumstances already mentioned in #10494 . Here you have at least a VMAP to test with that will trigger those 402 timeouts.
It seems the IMA SDK gets stuck and doesn't issue the expected callbacks any more. In fact, this seems to be caused by not timing out after the configured media timeout. We reported the issue to the IMA SDK team and will also provide a workaround in ExoPlayer that times out in this situation to ensure playback is unstuck.
Activity
BucherTomas commentedon Aug 9, 2022
Actually, looks like the same circumstances already mentioned in #10494 . Here you have at least a VMAP to test with that will trigger those 402 timeouts.
tonihei commentedon Aug 11, 2022
Thanks for the excellent reproduction steps!
It seems the IMA SDK gets stuck and doesn't issue the expected callbacks any more. In fact, this seems to be caused by not timing out after the configured media timeout. We reported the issue to the IMA SDK team and will also provide a workaround in ExoPlayer that times out in this situation to ensure playback is unstuck.
tonihei commentedon Sep 6, 2022
The workaround will appear here soon and will be part of the next release.
jmvillagra commentedon Sep 22, 2022
Any updates on this issue? Thank you.
Add timeout for ad to load.
Add timeout for ad to load.