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 Type
    Method
    Description
    void
    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 the C DATA_TYPE_* constants defining the type of data being loaded.
      trackType - The type of the track that triggered the load. One of PlayerController.VIDEO_RENDERER, PlayerController.AUDIO_RENDERER, or PlayerController.TEXT_RENDERER or -1 if not specified
      trigger - One of the C 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 the C DATA_TYPE_* constants defining the type of data being loaded.
      trackType - The type of the track that triggered the load. One of PlayerController.VIDEO_RENDERER, PlayerController.AUDIO_RENDERER, or PlayerController.TEXT_RENDERER or -1 if not specified
      trigger - One of the C 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
      currentAttempt - 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 the C DATA_TYPE_* constants defining the type of data being loaded.
      trackType - The type of the track that triggered the load. One of PlayerController.VIDEO_RENDERER, PlayerController.AUDIO_RENDERER, or PlayerController.TEXT_RENDERER or -1 if not specified
      trigger - One of the C 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 the C DATA_TYPE_* constants defining the type of data being loaded.
      trackType - The type of the track that triggered the load. One of PlayerController.VIDEO_RENDERER, PlayerController.AUDIO_RENDERER, or PlayerController.TEXT_RENDERER or -1 if not specified
      trigger - One of the C 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
      downloadException - (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 of PlayerController.VIDEO_RENDERER, PlayerController.AUDIO_RENDERER, or PlayerController.TEXT_RENDERER
      mediaStartTimeMs - The media time of the start of the discarded data.
      mediaEndTimeMs - The media time of the end of the discarded data.