HlsMediaPlaylist.Segment


public final class HlsMediaPlaylist.Segment extends HlsMediaPlaylist.SegmentBase


Media segment reference.

Summary

Public fields

final List<HlsMediaPlaylist.Part>

The parts belonging to this segment.

final String

The human readable title of the segment.

Public constructors

Segment(
    String uri,
    long byteRangeOffset,
    long byteRangeLength,
    @Nullable String fullSegmentEncryptionKeyUri,
    @Nullable String encryptionIV
)

Creates an instance to be used as init segment.

Segment(
    String url,
    @Nullable HlsMediaPlaylist.Segment initializationSegment,
    String title,
    long durationUs,
    int relativeDiscontinuitySequence,
    long relativeStartTimeUs,
    @Nullable DrmInitData drmInitData,
    @Nullable String fullSegmentEncryptionKeyUri,
    @Nullable String encryptionIV,
    long byteRangeOffset,
    long byteRangeLength,
    boolean hasGapTag,
    List<HlsMediaPlaylist.Part> parts
)

Creates an instance.

Public methods

HlsMediaPlaylist.Segment
copyWith(long relativeStartTimeUs, int relativeDiscontinuitySequence)

Inherited fields

From androidx.media3.exoplayer.hls.playlist.HlsMediaPlaylist.SegmentBase
final long

The segment's byte range length, as defined by #EXT-X-BYTERANGE, #EXT-X-PART or #EXT-X-PRELOAD-HINT, or LENGTH_UNSET if no byte range is specified or the byte range is open-ended.

final long

The segment's byte range offset, as defined by #EXT-X-BYTERANGE, #EXT-X-PART or #EXT-X-PRELOAD-HINT.

final @Nullable DrmInitData

DRM initialization data for sample decryption, or null if the segment does not use CDM-DRM protection.

final long

The duration of the segment in microseconds, as defined by #EXTINF or #EXT-X-PART.

final @Nullable String

The encryption initialization vector as defined by #EXT-X-KEY, or null if the segment is not encrypted.

final @Nullable String

The encryption identity key uri as defined by #EXT-X-KEY, or null if the segment does not use full segment encryption with identity key.

final boolean

Whether the segment is marked as a gap.

final @Nullable HlsMediaPlaylist.Segment

The media initialization section for this segment, as defined by #EXT-X-MAP.

final int

The number of #EXT-X-DISCONTINUITY tags in the playlist before the segment.

final long

The start time of the segment in microseconds, relative to the start of the playlist.

final String

The url of the segment.

Inherited methods

From java.lang.Comparable
abstract int
compareTo(T p)
From androidx.media3.exoplayer.hls.playlist.HlsMediaPlaylist.SegmentBase
int
compareTo(Long relativeStartTimeUs)

Public fields

parts

public final List<HlsMediaPlaylist.Partparts

The parts belonging to this segment.

title

public final String title

The human readable title of the segment.

Public constructors

Segment

public Segment(
    String uri,
    long byteRangeOffset,
    long byteRangeLength,
    @Nullable String fullSegmentEncryptionKeyUri,
    @Nullable String encryptionIV
)

Creates an instance to be used as init segment.

Parameters
String uri

See url.

long byteRangeOffset

See byteRangeOffset.

long byteRangeLength

See byteRangeLength.

@Nullable String fullSegmentEncryptionKeyUri

See fullSegmentEncryptionKeyUri.

@Nullable String encryptionIV

See encryptionIV.

Segment

public Segment(
    String url,
    @Nullable HlsMediaPlaylist.Segment initializationSegment,
    String title,
    long durationUs,
    int relativeDiscontinuitySequence,
    long relativeStartTimeUs,
    @Nullable DrmInitData drmInitData,
    @Nullable String fullSegmentEncryptionKeyUri,
    @Nullable String encryptionIV,
    long byteRangeOffset,
    long byteRangeLength,
    boolean hasGapTag,
    List<HlsMediaPlaylist.Part> parts
)

Creates an instance.

Parameters
String url

See url.

@Nullable HlsMediaPlaylist.Segment initializationSegment

See initializationSegment.

String title

See title.

long durationUs

See durationUs.

int relativeDiscontinuitySequence

See relativeDiscontinuitySequence.

long relativeStartTimeUs

See relativeStartTimeUs.

@Nullable DrmInitData drmInitData

See drmInitData.

@Nullable String fullSegmentEncryptionKeyUri

See fullSegmentEncryptionKeyUri.

@Nullable String encryptionIV

See encryptionIV.

long byteRangeOffset

See byteRangeOffset.

long byteRangeLength

See byteRangeLength.

boolean hasGapTag

See hasGapTag.

List<HlsMediaPlaylist.Part> parts

See parts.

Public methods

copyWith

public HlsMediaPlaylist.Segment copyWith(long relativeStartTimeUs, int relativeDiscontinuitySequence)