docs/doc/reference/com/google/android/exoplayer2/source/dash/manifest/SegmentBase.MultiSegmentBase.html
Package com.google.android.exoplayer2.source.dash.manifest
Direct Known Subclasses:SegmentBase.SegmentList, SegmentBase.SegmentTemplateEnclosing class:SegmentBase
public abstract static classSegmentBase.MultiSegmentBaseextends[SegmentBase](SegmentBase.html "class in com.google.android.exoplayer2.source.dash.manifest")
A SegmentBase that consists of multiple segments.
-
SegmentBase.MultiSegmentBase, SegmentBase.SegmentList, SegmentBase.SegmentTemplate, SegmentBase.SegmentTimelineElement, SegmentBase.SingleSegmentBase
Constructors | Constructor | Description |
| --- | --- |
| MultiSegmentBase(RangedUri initialization, long timescale, long presentationTimeOffset, long startNumber, long duration, List<SegmentBase.SegmentTimelineElement> segmentTimeline, long availabilityTimeOffsetUs, long timeShiftBufferDepthUs, long periodStartUnixTimeUs) | |
All Methods Instance Methods Abstract Methods Concrete Methods | Modifier and Type | Method | Description |
| --- | --- | --- |
| long | getAvailableSegmentCount(long periodDurationUs, long nowUnixTimeUs) |
See DashSegmentIndex.getAvailableSegmentCount(long, long).
|
| long | getFirstAvailableSegmentNum(long periodDurationUs, long nowUnixTimeUs) |
See DashSegmentIndex.getFirstAvailableSegmentNum(long, long).
|
| long | getFirstSegmentNum() |
See DashSegmentIndex.getFirstSegmentNum().
|
| long | getNextSegmentAvailableTimeUs(long periodDurationUs, long nowUnixTimeUs) |
See DashSegmentIndex.getNextSegmentAvailableTimeUs(long, long).
|
| abstract long | getSegmentCount(long periodDurationUs) |
See DashSegmentIndex.getSegmentCount(long).
|
| long | getSegmentDurationUs(long sequenceNumber, long periodDurationUs) |
See DashSegmentIndex.getDurationUs(long, long).
|
| long | getSegmentNum(long timeUs, long periodDurationUs) |
See DashSegmentIndex.getSegmentNum(long, long).
|
| long | getSegmentTimeUs(long sequenceNumber) |
See DashSegmentIndex.getTimeUs(long).
|
| abstract RangedUri | getSegmentUrl(Representation representation, long index) |
Returns a RangedUri defining the location of a segment for the given index in the given representation.
|
| boolean | isExplicit() |
See DashSegmentIndex.isExplicit()
|
-
getInitialization, getPresentationTimeOffsetUs
-
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
public MultiSegmentBase(@Nullable[RangedUri](RangedUri.html "class in com.google.android.exoplayer2.source.dash.manifest")initialization,
long timescale,
long presentationTimeOffset,
long startNumber,
long duration,
@Nullable[List](https://developer.android.com/reference/java/util/List.html "class or interface in java.util")<[SegmentBase.SegmentTimelineElement](SegmentBase.SegmentTimelineElement.html "class in com.google.android.exoplayer2.source.dash.manifest")> segmentTimeline,
long availabilityTimeOffsetUs,
long timeShiftBufferDepthUs,
long periodStartUnixTimeUs)
Parameters:initialization - A RangedUri corresponding to initialization data, if such data exists.timescale - The timescale in units per second.presentationTimeOffset - The presentation time offset. The value in seconds is the division of this value and timescale.startNumber - The sequence number of the first segment.duration - The duration of each segment in the case of fixed duration segments. The value in seconds is the division of this value and timescale. If segmentTimeline is non-null then this parameter is ignored.segmentTimeline - A segment timeline corresponding to the segments. If null, then segments are assumed to be of fixed duration as specified by the duration parameter.availabilityTimeOffsetUs - The offset to the current realtime at which segments become available in microseconds, or C.TIME_UNSET if not applicable.timeShiftBufferDepthUs - The time shift buffer depth in microseconds.periodStartUnixTimeUs - The start of the enclosing period in microseconds since the Unix epoch.
-
public long getSegmentNum(long timeUs,
long periodDurationUs)
See DashSegmentIndex.getSegmentNum(long, long).
-
public final long getSegmentDurationUs(long sequenceNumber,
long periodDurationUs)
See DashSegmentIndex.getDurationUs(long, long).
-
public final long getSegmentTimeUs(long sequenceNumber)
See DashSegmentIndex.getTimeUs(long).
-
public abstract[RangedUri](RangedUri.html "class in com.google.android.exoplayer2.source.dash.manifest")getSegmentUrl([Representation](Representation.html "class in com.google.android.exoplayer2.source.dash.manifest")representation,
long index)
Returns a RangedUri defining the location of a segment for the given index in the given representation.
See DashSegmentIndex.getSegmentUrl(long).
-
public long getFirstSegmentNum()
See DashSegmentIndex.getFirstSegmentNum().
-
public long getFirstAvailableSegmentNum(long periodDurationUs,
long nowUnixTimeUs)
See DashSegmentIndex.getFirstAvailableSegmentNum(long, long).
-
public long getAvailableSegmentCount(long periodDurationUs,
long nowUnixTimeUs)
See DashSegmentIndex.getAvailableSegmentCount(long, long).
-
public long getNextSegmentAvailableTimeUs(long periodDurationUs,
long nowUnixTimeUs)
See DashSegmentIndex.getNextSegmentAvailableTimeUs(long, long).
-
public boolean isExplicit()
See DashSegmentIndex.isExplicit()
-
public abstract long getSegmentCount(long periodDurationUs)