AlternativeMpdEvent


@UnstableApi
public final class AlternativeMpdEvent


An Alternative MPD Insertion or Replacement event, as defined by ISO/IEC 23009-1 clause 5.16.

Summary

Nested types

public final class AlternativeMpdEvent.Builder

A builder for AlternativeMpdEvent instances.

The no-jump mode.

The type of the event.

Constants

static final long

The default earliest resolution time offset in microseconds (60 seconds).

static final int

All skipped no-jump events are executed (@noJump="1").

static final int

Only the latest skipped no-jump event is executed (@noJump="2").

static final int

The active interval may be skipped by seeking (@noJump="0").

static final String
SCHEME_ID_URI_INSERT = "urn:mpeg:dash:event:alternativeMPD:insert:2025"

The scheme URI of Alternative MPD Insertion events.

static final String
SCHEME_ID_URI_REPLACE = "urn:mpeg:dash:event:alternativeMPD:replace:2025"

The scheme URI of Alternative MPD Replacement events.

static final int

An Alternative MPD Insertion event (InsertPresentation).

static final int

An Alternative MPD Replacement event (ReplacePresentation).

Public fields

final boolean

The replacement @clip value.

final long

The duration of the active interval in microseconds, or TIME_UNSET if the event is active until the end of the period.

final long

The earliest resolution time offset in microseconds before presentationTimeUs.

final String

The EventStream@value, or the empty string if absent.

final boolean

Whether the event is executed only the first time its active interval is traversed.

final long

The Event@id.

final boolean

Whether Event@status is "update".

final long

APDmax in microseconds, or TIME_UNSET if unbounded.

final int

The @noJump mode.

final long

PRT in microseconds, relative to the start of the period.

final long

The replacement @returnOffset in microseconds, or TIME_UNSET if absent.

final @Nullable String

The @serviceDescriptionId, or null if absent.

final long

The @skipAfter offset in microseconds.

final boolean

The replacement @startWithOffset value.

final ImmutableList<Descriptor>

The SupplementalProperty descriptors of the presentation element.

final int

The Type of the event.

final Uri

The resolved URI of the alternative MPD, including any MPD anchor fragment.

Public methods

AlternativeMpdEvent.Builder

Returns a Builder initialized with the values of this instance.

boolean
int

Constants

DEFAULT_EARLIEST_RESOLUTION_TIME_OFFSET_US

public static final long DEFAULT_EARLIEST_RESOLUTION_TIME_OFFSET_US = 60000000

The default earliest resolution time offset in microseconds (60 seconds).

NO_JUMP_ALL

public static final int NO_JUMP_ALL = 1

All skipped no-jump events are executed (@noJump="1").

NO_JUMP_LATEST

public static final int NO_JUMP_LATEST = 2

Only the latest skipped no-jump event is executed (@noJump="2").

NO_JUMP_NONE

public static final int NO_JUMP_NONE = 0

The active interval may be skipped by seeking (@noJump="0").

SCHEME_ID_URI_INSERT

public static final String SCHEME_ID_URI_INSERT = "urn:mpeg:dash:event:alternativeMPD:insert:2025"

The scheme URI of Alternative MPD Insertion events.

SCHEME_ID_URI_REPLACE

public static final String SCHEME_ID_URI_REPLACE = "urn:mpeg:dash:event:alternativeMPD:replace:2025"

The scheme URI of Alternative MPD Replacement events.

TYPE_INSERT

public static final int TYPE_INSERT = 0

An Alternative MPD Insertion event (InsertPresentation).

TYPE_REPLACE

public static final int TYPE_REPLACE = 1

An Alternative MPD Replacement event (ReplacePresentation).

Public fields

clip

public final boolean clip

The replacement @clip value. Always true for insertion events.

durationUs

public final long durationUs

The duration of the active interval in microseconds, or TIME_UNSET if the event is active until the end of the period.

earliestResolutionTimeOffsetUs

public final long earliestResolutionTimeOffsetUs

The earliest resolution time offset in microseconds before presentationTimeUs.

eventStreamValue

public final String eventStreamValue

The EventStream@value, or the empty string if absent.

executeOnce

public final boolean executeOnce

Whether the event is executed only the first time its active interval is traversed.

id

public final long id

The Event@id.

isUpdate

public final boolean isUpdate

Whether Event@status is "update". Always false for insertion events.

maxDurationUs

public final long maxDurationUs

APDmax in microseconds, or TIME_UNSET if unbounded. Zero disables the event.

noJump

@AlternativeMpdEvent.NoJumpMode
public final int noJump

The @noJump mode.

presentationTimeUs

public final long presentationTimeUs

PRT in microseconds, relative to the start of the period.

returnOffsetUs

public final long returnOffsetUs

The replacement @returnOffset in microseconds, or TIME_UNSET if absent.

serviceDescriptionId

public final @Nullable String serviceDescriptionId

The @serviceDescriptionId, or null if absent.

skipAfterUs

public final long skipAfterUs

The @skipAfter offset in microseconds. Never negative.

startWithOffset

public final boolean startWithOffset

The replacement @startWithOffset value. Always false for insertion events.

supplementalProperties

public final ImmutableList<Descriptor> supplementalProperties

The SupplementalProperty descriptors of the presentation element.

type

@AlternativeMpdEvent.Type
public final int type

The Type of the event.

uri

public final Uri uri

The resolved URI of the alternative MPD, including any MPD anchor fragment.

Public methods

buildUpon

public AlternativeMpdEvent.Builder buildUpon()

Returns a Builder initialized with the values of this instance.

equals

public boolean equals(@Nullable Object o)

hashCode

public int hashCode()