Package com.castlabs.android.player
Interface StreamingEventListener
- All Known Implementing Classes:
AbstractStreamingEventListener
public interface StreamingEventListener
You can use this listener to get callbacks about current content downloads.
Note that all callbacks will be triggered on the UI thread.
- Since:
- 3.0.0
-
Method Summary
Modifier and TypeMethodDescriptionvoid
onLoadCanceled
(com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, long elapsedRealtimeMs, long bytesLoaded, long loadDurationMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders) Invoked when the current upstream load operation is canceled.void
onLoadCompleted
(com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, long elapsedRealtimeMs, long bytesLoaded, long loadDurationMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders) Invoked when a load operation completes.void
onLoadError
(com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, long elapsedRealtimeMs, long bytesLoaded, long loadDurationMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders, DownloadException downloadException) Invoked when the current upstream load operation fails.void
onLoadStarted
(com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders) Invoked when an upstream load is started.void
onUpstreamDiscarded
(int trackType, long mediaStartTimeMs, long mediaEndTimeMs) Invoked when data is removed from the back of the buffer, typically so that it can be re-buffered using a different representation.
-
Method Details
-
onLoadCompleted
void onLoadCompleted(@NonNull com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, @Nullable com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, long elapsedRealtimeMs, long bytesLoaded, long loadDurationMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders) Invoked when a load operation completes.- Parameters:
dataSpec
- Defines the data being loaded.dataType
- One of theC
DATA_TYPE_*
constants defining the type of data being loaded.trackType
- The type of the track that triggered the load. One ofPlayerController.VIDEO_RENDERER
,PlayerController.AUDIO_RENDERER
, orPlayerController.TEXT_RENDERER
or -1 if not specifiedtrigger
- One of theC
SELECTION_REASON_*
constants if the data belongs to a track.C.SELECTION_REASON_UNKNOWN
otherwise.format
- The particular format to which this data corresponds, or null if the loaded data does not correspond to a format.mediaStartTimeMs
- The media time of the start of the loaded data, or -1 if this load was for initialization data.mediaEndTimeMs
- The media time of the end of the loaded data, or -1 if this load was for initialization data.elapsedRealtimeMs
-elapsedRealtime
timestamp of when the load finished.bytesLoaded
- The number of bytes that were loaded.loadDurationMs
- Amount of time taken to load the data.currentAttempt
- The attempt number for the load operation.maxAttempts
- Maximum number of attempts for the load operation.responseHeaders
- The response headers
-
onLoadStarted
void onLoadStarted(@NonNull com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, @Nullable com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders) Invoked when an upstream load is started.- Parameters:
dataSpec
- Defines the data being loaded.dataType
- One of theC
DATA_TYPE_*
constants defining the type of data being loaded.trackType
- The type of the track that triggered the load. One ofPlayerController.VIDEO_RENDERER
,PlayerController.AUDIO_RENDERER
, orPlayerController.TEXT_RENDERER
or -1 if not specifiedtrigger
- One of theC
SELECTION_REASON_*
constants if the data belongs to a track.C.SELECTION_REASON_UNKNOWN
otherwise.format
- The particular format to which this data corresponds, or null if the loaded data does not correspond to a format.mediaStartTimeMs
- The media time of the start of the loaded data, or -1 if this load was for initialization data.mediaEndTimeMs
- The media time of the end of the loaded data, or -1 if this load was forcurrentAttempt
- The attempt number for the load operation.maxAttempts
- Maximum number of attempts for the load operation.responseHeaders
- The response headers
-
onLoadCanceled
void onLoadCanceled(@NonNull com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, @Nullable com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, long elapsedRealtimeMs, long bytesLoaded, long loadDurationMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders) Invoked when the current upstream load operation is canceled.- Parameters:
dataSpec
- Defines the data being loaded.dataType
- One of theC
DATA_TYPE_*
constants defining the type of data being loaded.trackType
- The type of the track that triggered the load. One ofPlayerController.VIDEO_RENDERER
,PlayerController.AUDIO_RENDERER
, orPlayerController.TEXT_RENDERER
or -1 if not specifiedtrigger
- One of theC
SELECTION_REASON_*
constants if the data belongs to a track.C.SELECTION_REASON_UNKNOWN
otherwise.format
- The particular format to which this data corresponds, or null if the loaded data does not correspond to a format.mediaStartTimeMs
- The media time of the start of the loaded data, or -1 if this load was for initialization data.mediaEndTimeMs
- The media time of the end of the loaded data, or -1 if this load was for initialization data.elapsedRealtimeMs
-elapsedRealtime
timestamp of when the load finished.bytesLoaded
- The number of bytes that were loaded.loadDurationMs
- Amount of time taken to load the data.currentAttempt
- The attempt number for the load operation.maxAttempts
- Maximum number of attempts for the load operation.responseHeaders
- The response headers
-
onLoadError
void onLoadError(@NonNull com.google.android.exoplayer2.upstream.DataSpec dataSpec, int dataType, int trackType, int trigger, @Nullable com.google.android.exoplayer2.Format format, long mediaStartTimeMs, long mediaEndTimeMs, long elapsedRealtimeMs, long bytesLoaded, long loadDurationMs, int currentAttempt, int maxAttempts, Map<String, List<String>> responseHeaders, @Nullable DownloadException downloadException) Invoked when the current upstream load operation fails.- Parameters:
dataSpec
- Defines the data being loaded.dataType
- One of theC
DATA_TYPE_*
constants defining the type of data being loaded.trackType
- The type of the track that triggered the load. One ofPlayerController.VIDEO_RENDERER
,PlayerController.AUDIO_RENDERER
, orPlayerController.TEXT_RENDERER
or -1 if not specifiedtrigger
- One of theC
SELECTION_REASON_*
constants if the data belongs to a track.C.SELECTION_REASON_UNKNOWN
otherwise.format
- The particular format to which this data corresponds, or null if the loaded data does not correspond to a format.mediaStartTimeMs
- The media time of the start of the loaded data, or -1 if this load was for initialization data.mediaEndTimeMs
- The media time of the end of the loaded data, or -1 if this load was for initialization data.elapsedRealtimeMs
-elapsedRealtime
timestamp of when the load finished.bytesLoaded
- The number of bytes that were loaded.loadDurationMs
- Amount of time taken to load the data.currentAttempt
- The attempt number for the load operation.maxAttempts
- Maximum number of attempts for the load operation.responseHeaders
- The response headersdownloadException
- (optional) Download exception that caused the error. If present, the cause refers to the underlying IOException and if available, the http status code will be exposed here.
-
onUpstreamDiscarded
void onUpstreamDiscarded(int trackType, long mediaStartTimeMs, long mediaEndTimeMs) Invoked when data is removed from the back of the buffer, typically so that it can be re-buffered using a different representation.- Parameters:
trackType
- The type of the track that triggered the load. One ofPlayerController.VIDEO_RENDERER
,PlayerController.AUDIO_RENDERER
, orPlayerController.TEXT_RENDERER
mediaStartTimeMs
- The media time of the start of the discarded data.mediaEndTimeMs
- The media time of the end of the discarded data.
-