public class

Representation.MultiSegmentRepresentation

extends Representation

implements DashSegmentIndex

 java.lang.Object

androidx.media3.exoplayer.dash.manifest.Representation

↳androidx.media3.exoplayer.dash.manifest.Representation.MultiSegmentRepresentation

Overview

A DASH representation consisting of multiple segments.

Summary

Fields
from RepresentationbaseUrls, essentialProperties, format, inbandEventStreams, presentationTimeOffsetUs, REVISION_ID_DEFAULT, revisionId, supplementalProperties
Constructors
publicMultiSegmentRepresentation(long revisionId, Format format, java.util.List<BaseUrl> baseUrls, SegmentBase.MultiSegmentBase segmentBase, java.util.List<Descriptor> inbandEventStreams, java.util.List<Descriptor> essentialProperties, java.util.List<Descriptor> supplementalProperties)

Creates the multi-segment Representation.

Methods
public longgetAvailableSegmentCount(long periodDurationUs, long nowUnixTimeUs)

public abstract java.lang.StringgetCacheKey()

Returns a cache key for the representation if set, or null.

public longgetDurationUs(long segmentNum, long periodDurationUs)

public longgetFirstAvailableSegmentNum(long periodDurationUs, long nowUnixTimeUs)

public longgetFirstSegmentNum()

public abstract DashSegmentIndexgetIndex()

Returns an index if the representation provides one directly, or null otherwise.

public abstract RangedUrigetIndexUri()

Returns a RangedUri defining the location of the representation's segment index, or null if the representation provides an index directly.

public longgetNextSegmentAvailableTimeUs(long periodDurationUs, long nowUnixTimeUs)

public longgetSegmentCount(long periodDurationUs)

public longgetSegmentNum(long timeUs, long periodDurationUs)

public RangedUrigetSegmentUrl(long segmentNum)

public longgetTimeUs(long segmentNum)

public booleanisExplicit()

from RepresentationgetInitializationUri, newInstance, newInstance
from java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Constructors

public MultiSegmentRepresentation(long revisionId, Format format, java.util.List<BaseUrl> baseUrls, SegmentBase.MultiSegmentBase segmentBase, java.util.List<Descriptor> inbandEventStreams, java.util.List<Descriptor> essentialProperties, java.util.List<Descriptor> supplementalProperties)

Creates the multi-segment Representation.

Parameters:

revisionId: Identifies the revision of the content.
format: The format of the representation.
baseUrls: The base URLs of the representation.
segmentBase: The segment base underlying the representation.
inbandEventStreams: The in-band event streams in the representation. May be null.
essentialProperties: Essential properties in the representation. May be empty.
supplementalProperties: Supplemental properties in the representation. May be empty.

Methods

public abstract RangedUri getIndexUri()

Returns a RangedUri defining the location of the representation's segment index, or null if the representation provides an index directly.

public abstract DashSegmentIndex getIndex()

Returns an index if the representation provides one directly, or null otherwise.

public abstract java.lang.String getCacheKey()

Returns a cache key for the representation if set, or null.

public RangedUri getSegmentUrl(long segmentNum)

public long getSegmentNum(long timeUs, long periodDurationUs)

public long getTimeUs(long segmentNum)

public long getDurationUs(long segmentNum, long periodDurationUs)

public long getFirstSegmentNum()

public long getFirstAvailableSegmentNum(long periodDurationUs, long nowUnixTimeUs)

public long getSegmentCount(long periodDurationUs)

public long getAvailableSegmentCount(long periodDurationUs, long nowUnixTimeUs)

public long getNextSegmentAvailableTimeUs(long periodDurationUs, long nowUnixTimeUs)

public boolean isExplicit()