Multi period content support for AdsMediaSource
Multi period DASH content ads support inspired by https://github.com/androidx/media/issues/1642#issuecomment-2772077256
At Timeline level, the original AdPlaybackState is divided and adjusted for each of the periods.
Removing single period assertions from AdsMediaSource.
Providing MultiPeriodAdTimeline as an alternative to current SinglePeriodAdTimeline.
From input AdPlaybackState, new modified AdPlaybackState is created - one for each period:
- ad group time is offset relative to period start time
- ad groups after period end time are marked as skipped
- post-roll ad group is kept only for last period
- ad group count and indices are kept constant
Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).
View this failed invocation of the CLA check for more information.
For the most up to date status, view the checks section at the bottom of the pull request.
Please sign the CLA, then we can take a look at this PR
Company CLA should be used. It is in progress
CLA updated and PR rebased
@marcbaechinger when can we expect some feedback on this PR, please?
We have also identified one edge case, with timeline not being updated properly. What would be the best way to raise the fix? Creating new issue/PR or putting all together in this one? It is more complicated scenario with more fix options