Package com.castlabs.sdk.thumbs
Class BifThumbnailProvider
- java.lang.Object
-
- com.castlabs.sdk.thumbs.BifThumbnailProvider
-
- All Implemented Interfaces:
ThumbnailProvider
public class BifThumbnailProvider extends Object implements ThumbnailProvider
Provided thumbnails from BIF files.BIF files are essentially containers that wrap a set of jpegs and add an index that allows to map a jpeg to both a timestamp and the absolute location in the file. This enabled good streaming support as well as a compact format.
This implementation supports both blocked loading as well as streaming support for the BIF data.
- Since:
- 4.0.0
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.castlabs.sdk.thumbs.ThumbnailProvider
ThumbnailProvider.Callback
-
-
Constructor Summary
Constructors Constructor Description BifThumbnailProvider(com.castlabs.sdk.thumbs.ThumbnailLoader loader, PlayerController playerController, Uri sourceUri)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
destroy()
Free up all the resources, meaning this provider will not be used anymoreDownloadableResource[]
getDownloadableResources(String remoteManifestUrl, File basePath, Bundle bundle)
This methods is used to integrate a thumbnail provider with the downloader plugins and implementation can return an array of resources that should be fetched for offline playback.void
getThumbnail(long positionUs, ThumbnailProvider.Callback callback, int thumbnailIndex)
Load the thumbnail for the given position and return it through the provided callback.
-
-
-
Constructor Detail
-
BifThumbnailProvider
public BifThumbnailProvider(@NonNull com.castlabs.sdk.thumbs.ThumbnailLoader loader, @NonNull PlayerController playerController, @NonNull Uri sourceUri)
-
-
Method Detail
-
destroy
public void destroy()
Description copied from interface:ThumbnailProvider
Free up all the resources, meaning this provider will not be used anymore- Specified by:
destroy
in interfaceThumbnailProvider
-
getDownloadableResources
@Nullable public DownloadableResource[] getDownloadableResources(String remoteManifestUrl, File basePath, Bundle bundle)
Description copied from interface:ThumbnailProvider
This methods is used to integrate a thumbnail provider with the downloader plugins and implementation can return an array of resources that should be fetched for offline playback.- Specified by:
getDownloadableResources
in interfaceThumbnailProvider
- Parameters:
remoteManifestUrl
- The manifest URL of the remote manifest that is the source of this downloadbasePath
- The base folder for this downloadbundle
- The bundle that was used to start the initiate the download- Returns:
- Array of downloadable resources or null
-
getThumbnail
public void getThumbnail(long positionUs, ThumbnailProvider.Callback callback, @ThumbnailIndex int thumbnailIndex)
Description copied from interface:ThumbnailProvider
Load the thumbnail for the given position and return it through the provided callback.- Specified by:
getThumbnail
in interfaceThumbnailProvider
- Parameters:
positionUs
- The position in microsecondscallback
- The callback that will be triggered once data are available
-
-