docs/doc/reference/com/google/android/exoplayer2/extractor/BinarySearchSeeker.BinarySearchSeekMap.html
Package com.google.android.exoplayer2.extractor
All Implemented Interfaces:SeekMapEnclosing class:BinarySearchSeeker
public static classBinarySearchSeeker.BinarySearchSeekMapextends[Object](https://developer.android.com/reference/java/lang/Object.html "class or interface in java.lang")implements[SeekMap](SeekMap.html "interface in com.google.android.exoplayer2.extractor")
A SeekMap implementation that returns the estimated byte location from BinarySearchSeeker.SeekOperationParams.calculateNextSearchBytePosition(long, long, long, long, long, long) for each getSeekPoints(long) query.
-
SeekMap.SeekPoints, SeekMap.Unseekable
Constructors | Constructor | Description |
| --- | --- |
| BinarySearchSeekMap(BinarySearchSeeker.SeekTimestampConverter seekTimestampConverter, long durationUs, long floorTimePosition, long ceilingTimePosition, long floorBytePosition, long ceilingBytePosition, long approxBytesPerFrame) |
Constructs a new instance of this seek map.
|
All Methods Instance Methods Concrete Methods | Modifier and Type | Method | Description |
| --- | --- | --- |
| long | getDurationUs() |
Returns the duration of the stream in microseconds.
|
| SeekMap.SeekPoints | getSeekPoints(long timeUs) |
Obtains seek points for the specified seek time in microseconds.
|
| boolean | isSeekable() |
Returns whether seeking is supported.
|
| long | timeUsToTargetTime(long timeUs) | |
-
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
public BinarySearchSeekMap([BinarySearchSeeker.SeekTimestampConverter](BinarySearchSeeker.SeekTimestampConverter.html "interface in com.google.android.exoplayer2.extractor")seekTimestampConverter,
long durationUs,
long floorTimePosition,
long ceilingTimePosition,
long floorBytePosition,
long ceilingBytePosition,
long approxBytesPerFrame)
Constructs a new instance of this seek map.
-
public boolean isSeekable()
Description copied from interface: SeekMap
Returns whether seeking is supported.
Specified by:isSeekable in interface SeekMapReturns:Whether seeking is supported.
-
public[SeekMap.SeekPoints](SeekMap.SeekPoints.html "class in com.google.android.exoplayer2.extractor")getSeekPoints(long timeUs)
Description copied from interface: SeekMap
Obtains seek points for the specified seek time in microseconds. The returned SeekMap.SeekPoints 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.
Specified by:getSeekPoints in interface SeekMapParameters:timeUs - A seek time in microseconds.Returns:The corresponding seek points.
-
public long getDurationUs()
Description copied from interface: SeekMap
Returns the duration of the stream in microseconds.
Specified by:getDurationUs in interface SeekMapReturns:The duration of the stream in microseconds, or C.TIME_UNSET if the duration is unknown.
-
public long timeUsToTargetTime(long timeUs)
See Also:BinarySearchSeeker.SeekTimestampConverter.timeUsToTargetTime(long)