@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 availabilityStartTimeMs: Long

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

durationMs

val durationMs: Long

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

dynamic

val dynamic: Boolean

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

location

val location: Uri?

locations

val locations: ImmutableList<Location!>!

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

minBufferTimeMs

val minBufferTimeMs: Long

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

minUpdatePeriodMs

val minUpdatePeriodMs: Long

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

programInformation

val programInformation: ProgramInformation?

The ProgramInformation, or null if not present.

publishTimeMs

val publishTimeMs: Long

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

serviceDescription

val serviceDescription: ServiceDescriptionElement?

The ServiceDescriptionElement, or null if not present.

suggestedPresentationDelayMs

val suggestedPresentationDelayMs: Long

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

timeShiftBufferDepthMs

val timeShiftBufferDepthMs: Long

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

utcTiming

val utcTiming: UtcTimingElement?

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