PlaybackSeekDataProvider

class PlaybackSeekDataProvider


Class to be implemented by app to provide seeking data and thumbnails to UI.

Summary

Nested types

Client to receive result for getThumbnail.

Public constructors

Public functions

LongArray<Long>!

Get a list of sorted seek positions.

Unit
getThumbnail(
    index: Int,
    callback: PlaybackSeekDataProvider.ResultCallback!
)

Called to get thumbnail bitmap.

Unit

Called when seek stops, Provider should cancel pending requests for the thumbnails.

Public constructors

PlaybackSeekDataProvider

Added in 1.1.0
PlaybackSeekDataProvider()

Public functions

getSeekPositions

Added in 1.1.0
fun getSeekPositions(): LongArray<Long>!

Get a list of sorted seek positions. The positions should not change after user starts seeking.

Returns
LongArray<Long>!

A list of sorted seek positions.

getThumbnail

Added in 1.1.0
fun getThumbnail(
    index: Int,
    callback: PlaybackSeekDataProvider.ResultCallback!
): Unit

Called to get thumbnail bitmap. This method is called on UI thread. When provider finds cache bitmap, it may invoke onThumbnailLoaded immediately. Provider may start background thread and invoke onThumbnailLoaded later in UI thread. The method might be called multiple times for the same position, PlaybackSeekDataProvider must guarantee to replace pending ResultCallback with the new one. When seeking right, getThumbnail() will be called with increasing index; when seeking left, getThumbnail() will be called with decreasing index. The increment of index can be used by subclass to determine prefetch direction.

Parameters
index: Int

Index of position in getSeekPositions.

callback: PlaybackSeekDataProvider.ResultCallback!

The callback to receive the result on UI thread. It may be called within getThumbnail() if hit cache directly.

reset

Added in 1.1.0
fun reset(): Unit

Called when seek stops, Provider should cancel pending requests for the thumbnails.