@UnstableApi
class ChunkIndex : SeekMap


Defines chunks of samples within a media stream.

Summary

Public constructors

ChunkIndex(
    sizes: IntArray!,
    offsets: LongArray!,
    durationsUs: LongArray!,
    timesUs: LongArray!
)

Public functions

Int

Obtains the index of the chunk corresponding to a given time.

SeekMap.SeekPoints!

Obtains seek points for the specified seek time in microseconds.

Boolean

Returns whether seeking is supported.

String!

Public properties

Long
LongArray<Long>!

The chunk durations, in microseconds.

Int

The number of chunks.

LongArray<Long>!

The chunk byte offsets.

IntArray<Int>!

The chunk sizes, in bytes.

LongArray<Long>!

The start time of each chunk, in microseconds.

Public constructors

ChunkIndex

ChunkIndex(
    sizes: IntArray!,
    offsets: LongArray!,
    durationsUs: LongArray!,
    timesUs: LongArray!
)
Parameters
sizes: IntArray!

The chunk sizes, in bytes.

offsets: LongArray!

The chunk byte offsets.

durationsUs: LongArray!

The chunk durations, in microseconds.

timesUs: LongArray!

The start time of each chunk, in microseconds.

Public functions

getChunkIndex

fun getChunkIndex(timeUs: Long): Int

Obtains the index of the chunk corresponding to a given time.

Parameters
timeUs: Long

The time, in microseconds.

Returns
Int

The index of the corresponding chunk.

getSeekPoints

fun getSeekPoints(timeUs: Long): SeekMap.SeekPoints!

Obtains seek points for the specified seek time in microseconds. The returned will contain one or two distinct seek points.

Two seek points [A, B] are returned in the case that seeking can only be performed to discrete points in time, there does not exist a seek point at exactly the requested time, and there exist seek points on both sides of it. In this case A and B are the closest seek points before and after the requested time. A single seek point is returned in all other cases.

Parameters
timeUs: Long

A seek time in microseconds.

Returns
SeekMap.SeekPoints!

The corresponding seek points.

isSeekable

fun isSeekable(): Boolean

Returns whether seeking is supported.

Returns
Boolean

Whether seeking is supported.

toString

fun toString(): String!

Public properties

durationUs

val durationUsLong

durationsUs

val durationsUsLongArray<Long>!

The chunk durations, in microseconds.

length

val lengthInt

The number of chunks.

offsets

val offsetsLongArray<Long>!

The chunk byte offsets.

sizes

val sizesIntArray<Int>!

The chunk sizes, in bytes.

timesUs

val timesUsLongArray<Long>!

The start time of each chunk, in microseconds.