Stay organized with collections
Save and categorize content based on your preferences.
@VisibleForTesting(otherwise = VisibleForTesting.PACKAGE_PRIVATE)
@UnstableApi
public final class SinglePeriodAdTimeline extends ForwardingTimeline
A Timeline for sources that have ads.
Summary
Public constructors |
|
Creates a new timeline with a single period containing ads.
|
Inherited methods |
From androidx.media3.exoplayer.source.ForwardingTimeline
final boolean |
|
int |
Returns the index of the first window in the playback order depending on whether shuffling is enabled.
|
int |
Returns the index of the period identified by its unique uid, or INDEX_UNSET if the period is not in the timeline.
|
int |
Returns the index of the last window in the playback order depending on whether shuffling is enabled.
|
int |
Returns the index of the window after the window at index windowIndex depending on the repeatMode and whether shuffling is enabled.
|
final Timeline.Period |
Populates a Period with data for the period with the specified unique identifier.
|
int |
Returns the number of periods in the timeline.
|
int |
Returns the index of the window before the window at index windowIndex depending on the repeatMode and whether shuffling is enabled.
|
Object |
Returns the unique id of the period identified by its index in the timeline.
|
Timeline.Window |
Populates a Window with data for the window at the specified index.
|
int |
Returns the number of windows in the timeline.
|
final int |
|
|
From androidx.media3.common.Timeline
final Timeline |
Returns a copy of this timeline containing just the single specified Window.
|
static Timeline |
Restores a Timeline from a Bundle.
|
final int |
Returns the index of the period after the period at index periodIndex depending on the repeatMode and whether shuffling is enabled.
|
final Timeline.Period |
Populates a Period with data for the period at the specified index.
|
final Pair<Object, Long> |
This method is deprecated.
Use getPeriodPositionUs instead.
|
final @Nullable Pair<Object, Long> |
This method is deprecated.
Use getPeriodPositionUs instead.
|
final Pair<Object, Long> |
Calls getPeriodPositionUs with a zero default position projection.
|
final @Nullable Pair<Object, Long> |
Converts (windowIndex, windowPositionUs) to the corresponding (periodUid,
periodPositionUs).
|
final Timeline.Window |
Populates a Window with data for the window at the specified index.
|
abstract Timeline.Window |
Populates a Window with data for the window at the specified index.
|
final boolean |
Returns whether the timeline is empty.
|
final boolean |
Returns whether the given period is the last period of the timeline depending on the
repeatMode and whether shuffling is enabled.
|
final Bundle |
Returns a Bundle representing the information stored in this object.
|
|
Public constructors
public SinglePeriodAdTimeline(
Timeline contentTimeline,
AdPlaybackState adPlaybackState
)
Creates a new timeline with a single period containing ads.
| Parameters |
Timeline contentTimeline |
The timeline of the content alongside which ads will be played. It must have one window and one period.
|
AdPlaybackState adPlaybackState |
The state of the period's ads.
|
Public methods
public Timeline.Period getPeriod(int periodIndex, Timeline.Period period, boolean setIds)
Populates a Period with data for the period at the specified index.
| Parameters |
int periodIndex |
The index of the period.
|
Timeline.Period period |
The Period to populate. Must not be null.
|
boolean setIds |
Whether id and uid should be populated. If false, the fields will be set to null. The caller should pass false for efficiency reasons unless the fields are required.
|
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-07-17 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-07-17 UTC."],[],[]]