MediaParser.SeekMap

public static final class MediaParser.SeekMap
extends Object

java.lang.Object
   ↳ android.media.MediaParser.SeekMap


Maps seek positions to SeekPoints in the stream.

A SeekPoint is a position in the stream from which a player may successfully start playing media samples.

Summary

Constants

int UNKNOWN_DURATION

Returned by getDurationMicros() when the duration is unknown.

Public methods

long getDurationMicros()

Returns the duration of the stream in microseconds or UNKNOWN_DURATION if the duration is unknown.

Pair<MediaParser.SeekPointMediaParser.SeekPoint> getSeekPoints(long timeMicros)

Obtains SeekPoints for the specified seek time in microseconds.

boolean isSeekable()

Returns whether seeking is supported.

Inherited methods

Constants

UNKNOWN_DURATION

Added in API level 30
public static final int UNKNOWN_DURATION

Returned by getDurationMicros() when the duration is unknown.

Constant Value: -2147483648 (0x80000000)

Public methods

getDurationMicros

Added in API level 30
public long getDurationMicros ()

Returns the duration of the stream in microseconds or UNKNOWN_DURATION if the duration is unknown.

Returns
long

getSeekPoints

Added in API level 30
public Pair<MediaParser.SeekPointMediaParser.SeekPoint> getSeekPoints (long timeMicros)

Obtains SeekPoints for the specified seek time in microseconds.

getSeekPoints(timeMicros).first contains the latest seek point for samples with timestamp equal to or smaller than timeMicros.

getSeekPoints(timeMicros).second contains the earliest seek point for samples with timestamp equal to or greater than timeMicros. If a seek point exists for timeMicros, the returned pair will contain the same SeekPoint twice.

Parameters
timeMicros long: A seek time in microseconds.

Returns
Pair<MediaParser.SeekPointMediaParser.SeekPoint> The corresponding SeekPoints. This value cannot be null.

isSeekable

Added in API level 30
public boolean isSeekable ()

Returns whether seeking is supported.

Returns
boolean