@UnstableApi
class DashManifest : FilterableManifest


Represents a DASH media presentation description (mpd), as defined by ISO/IEC 23009-1:2014 Section 5.3.1.2.

Summary

Public constructors

DashManifest(
    availabilityStartTimeMs: Long,
    durationMs: Long,
    minBufferTimeMs: Long,
    dynamic: Boolean,
    minUpdatePeriodMs: Long,
    timeShiftBufferDepthMs: Long,
    suggestedPresentationDelayMs: Long,
    publishTimeMs: Long,
    programInformation: ProgramInformation?,
    utcTiming: UtcTimingElement?,
    serviceDescription: ServiceDescriptionElement?,
    location: Uri?,
    periods: (Mutable)List<Period!>!
)

This function is deprecated.

Use DashManifest instead.

DashManifest(
    availabilityStartTimeMs: Long,
    durationMs: Long,
    minBufferTimeMs: Long,
    dynamic: Boolean,
    minUpdatePeriodMs: Long,
    timeShiftBufferDepthMs: Long,
    suggestedPresentationDelayMs: Long,
    publishTimeMs: Long,
    programInformation: ProgramInformation?,
    utcTiming: UtcTimingElement?,
    serviceDescription: ServiceDescriptionElement?,
    periods: (Mutable)List<Period!>!,
    locations: (Mutable)List<Location!>!
)

Public functions

DashManifest!
copy(streamKeys: (Mutable)List<StreamKey!>!)

Returns a copy of the manifest including only the streams specified by the given keys.

Period!
getPeriod(index: Int)
Int
Long
Long

Public properties

Long

The availabilityStartTime value in milliseconds since epoch, or TIME_UNSET if not present.

Long

The duration of the presentation in milliseconds, or TIME_UNSET if not applicable.

Boolean

Whether the manifest has value "dynamic" for the type attribute.

Uri?

This property is deprecated.

Use locations instead.

ImmutableList<Location!>!

The locations to request future updates of the DASH media presentation description (mpd).

Long

The minBufferTime value in milliseconds, or TIME_UNSET if not present.

Long

The minimumUpdatePeriod value in milliseconds, or TIME_UNSET if not applicable.

ProgramInformation?

The ProgramInformation, or null if not present.

Long

The publishTime value in milliseconds since epoch, or TIME_UNSET if not present.

ServiceDescriptionElement?

The ServiceDescriptionElement, or null if not present.

Long

The suggestedPresentationDelay value in milliseconds, or TIME_UNSET if not present.

Long

The timeShiftBufferDepth value in milliseconds, or TIME_UNSET if not present.

UtcTimingElement?

The UtcTimingElement, or null if not present.

Public constructors

DashManifest

DashManifest(
    availabilityStartTimeMs: Long,
    durationMs: Long,
    minBufferTimeMs: Long,
    dynamic: Boolean,
    minUpdatePeriodMs: Long,
    timeShiftBufferDepthMs: Long,
    suggestedPresentationDelayMs: Long,
    publishTimeMs: Long,
    programInformation: ProgramInformation?,
    utcTiming: UtcTimingElement?,
    serviceDescription: ServiceDescriptionElement?,
    location: Uri?,
    periods: (Mutable)List<Period!>!
)

DashManifest

DashManifest(
    availabilityStartTimeMs: Long,
    durationMs: Long,
    minBufferTimeMs: Long,
    dynamic: Boolean,
    minUpdatePeriodMs: Long,
    timeShiftBufferDepthMs: Long,
    suggestedPresentationDelayMs: Long,
    publishTimeMs: Long,
    programInformation: ProgramInformation?,
    utcTiming: UtcTimingElement?,
    serviceDescription: ServiceDescriptionElement?,
    periods: (Mutable)List<Period!>!,
    locations: (Mutable)List<Location!>!
)

Public functions

copy

fun copy(streamKeys: (Mutable)List<StreamKey!>!): DashManifest!

Returns a copy of the manifest including only the streams specified by the given keys. If the manifest is unchanged then the instance may return itself.

Parameters
streamKeys: (Mutable)List<StreamKey!>!

A non-empty list of stream keys.

Returns
DashManifest!

The filtered manifest.

getPeriod

fun getPeriod(index: Int): Period!

getPeriodCount

fun getPeriodCount(): Int

getPeriodDurationMs

fun getPeriodDurationMs(index: Int): Long

getPeriodDurationUs

fun getPeriodDurationUs(index: Int): Long

Public properties

availabilityStartTimeMs

val availabilityStartTimeMsLong

The availabilityStartTime value in milliseconds since epoch, or TIME_UNSET if not present.

durationMs

val durationMsLong

The duration of the presentation in milliseconds, or TIME_UNSET if not applicable.

dynamic

val dynamicBoolean

Whether the manifest has value "dynamic" for the type attribute.

location

val locationUri?

locations

val locationsImmutableList<Location!>!

The locations to request future updates of the DASH media presentation description (mpd).

minBufferTimeMs

val minBufferTimeMsLong

The minBufferTime value in milliseconds, or TIME_UNSET if not present.

minUpdatePeriodMs

val minUpdatePeriodMsLong

The minimumUpdatePeriod value in milliseconds, or TIME_UNSET if not applicable.

programInformation

val programInformationProgramInformation?

The ProgramInformation, or null if not present.

publishTimeMs

val publishTimeMsLong

The publishTime value in milliseconds since epoch, or TIME_UNSET if not present.

serviceDescription

val serviceDescriptionServiceDescriptionElement?

The ServiceDescriptionElement, or null if not present.

suggestedPresentationDelayMs

val suggestedPresentationDelayMsLong

The suggestedPresentationDelay value in milliseconds, or TIME_UNSET if not present.

timeShiftBufferDepthMs

val timeShiftBufferDepthMsLong

The timeShiftBufferDepth value in milliseconds, or TIME_UNSET if not present.

utcTiming

val utcTimingUtcTimingElement?

The UtcTimingElement, or null if not present. Defined in DVB A168:7/2016, Section 4.7.2.