Class Representation
- java.lang.Object
-
- com.google.android.exoplayer2.source.dash.manifest.Representation
-
- Direct Known Subclasses:
Representation.MultiSegmentRepresentation
,Representation.SingleSegmentRepresentation
public abstract class Representation extends Object
A DASH representation.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Representation.MultiSegmentRepresentation
A DASH representation consisting of multiple segments.static class
Representation.SingleSegmentRepresentation
A DASH representation consisting of a single segment.
-
Field Summary
Fields Modifier and Type Field Description ImmutableList<BaseUrl>
baseUrls
The base URLs of the representation.List<Descriptor>
essentialProperties
Essential properties in the representation.Format
format
The format of the representation.List<Descriptor>
inbandEventStreams
The in-band event streams in the representation.long
presentationTimeOffsetUs
The offset of the presentation timestamps in the media stream relative to media time.static long
REVISION_ID_DEFAULT
A default value forrevisionId
.long
revisionId
Identifies the revision of the media contained within the representation.List<Descriptor>
supplementalProperties
Supplemental properties in the adaptation set.
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description abstract String
getCacheKey()
Returns a cache key for the representation if set, or null.abstract DashSegmentIndex
getIndex()
Returns an index if the representation provides one directly, or null otherwise.abstract RangedUri
getIndexUri()
Returns aRangedUri
defining the location of the representation's segment index, or null if the representation provides an index directly.RangedUri
getInitializationUri()
Returns aRangedUri
defining the location of the representation's initialization data, or null if no initialization data exists.static Representation
newInstance(long revisionId, Format format, List<BaseUrl> baseUrls, SegmentBase segmentBase)
Constructs a new instance.static Representation
newInstance(long revisionId, Format format, List<BaseUrl> baseUrls, SegmentBase segmentBase, List<Descriptor> inbandEventStreams, List<Descriptor> essentialProperties, List<Descriptor> supplementalProperties, String cacheKey)
Constructs a new instance.
-
-
-
Field Detail
-
REVISION_ID_DEFAULT
public static final long REVISION_ID_DEFAULT
A default value forrevisionId
.- See Also:
- Constant Field Values
-
revisionId
public final long revisionId
Identifies the revision of the media contained within the representation. If the media can change over time (e.g. as a result of it being re-encoded), then this identifier can be set to uniquely identify the revision of the media. The timestamp at which the media was encoded is often a suitable.
-
format
public final Format format
The format of the representation.
-
baseUrls
public final ImmutableList<BaseUrl> baseUrls
The base URLs of the representation.
-
presentationTimeOffsetUs
public final long presentationTimeOffsetUs
The offset of the presentation timestamps in the media stream relative to media time.
-
inbandEventStreams
public final List<Descriptor> inbandEventStreams
The in-band event streams in the representation. May be empty.
-
essentialProperties
public final List<Descriptor> essentialProperties
Essential properties in the representation. May be empty.
-
supplementalProperties
public final List<Descriptor> supplementalProperties
Supplemental properties in the adaptation set. May be empty.
-
-
Method Detail
-
newInstance
public static Representation newInstance(long revisionId, Format format, List<BaseUrl> baseUrls, SegmentBase segmentBase)
Constructs a new instance.- Parameters:
revisionId
- Identifies the revision of the content.format
- The format of the representation.baseUrls
- The list of base URLs of the representation.segmentBase
- A segment base element for the representation.- Returns:
- The constructed instance.
-
newInstance
public static Representation newInstance(long revisionId, Format format, List<BaseUrl> baseUrls, SegmentBase segmentBase, @Nullable List<Descriptor> inbandEventStreams, List<Descriptor> essentialProperties, List<Descriptor> supplementalProperties, @Nullable String cacheKey)
Constructs a new instance.- Parameters:
revisionId
- Identifies the revision of the content.format
- The format of the representation.baseUrls
- The list of base URLs of the representation.segmentBase
- A segment base element for 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.cacheKey
- An optional key to be returned fromgetCacheKey()
, or null. This parameter is ignored ifsegmentBase
consists of multiple segments.- Returns:
- The constructed instance.
-
getInitializationUri
@Nullable public RangedUri getInitializationUri()
Returns aRangedUri
defining the location of the representation's initialization data, or null if no initialization data exists.
-
getIndexUri
@Nullable public abstract RangedUri getIndexUri()
Returns aRangedUri
defining the location of the representation's segment index, or null if the representation provides an index directly.
-
getIndex
@Nullable public abstract DashSegmentIndex getIndex()
Returns an index if the representation provides one directly, or null otherwise.
-
getCacheKey
@Nullable public abstract String getCacheKey()
Returns a cache key for the representation if set, or null.
-
-