Interface VideoRendererListener

  • All Known Implementing Classes:
    AbstractVideoRendererListener

    public interface VideoRendererListener
    A listener that can be attached to the PlayerController to be informed about video rendering events such as decoder initializations, format changes and frame drops. Note that all events are posted async on the main thread
    Since:
    4.2.4
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void onDroppedFrames​(int count, long elapsedMs)
      Called to report the number of frames dropped by the renderer.
      void onRenderedFirstFrame​(Surface surface)
      Called when a frame is rendered for the first time since setting the surface, and when a frame is rendered for the first time since the renderer was reset.
      void onVideoDecoderInitialized​(String decoderName, long initializedTimestampMs, long initializationDurationMs)
      Called when a decoder is created.
      void onVideoDisabled​(com.google.android.exoplayer2.decoder.DecoderCounters counters)
      Called when the renderer is disabled.
      void onVideoEnabled​(com.google.android.exoplayer2.decoder.DecoderCounters counters)
      Called when the renderer is enabled.
      void onVideoInputFormatChanged​(com.google.android.exoplayer2.Format format)
      Called when the format of the media being consumed by the renderer changes.
    • Method Detail

      • onVideoEnabled

        void onVideoEnabled​(com.google.android.exoplayer2.decoder.DecoderCounters counters)
        Called when the renderer is enabled.
        Parameters:
        counters - DecoderCounters that will be updated by the renderer for as long as it remains enabled.
      • onVideoDecoderInitialized

        void onVideoDecoderInitialized​(String decoderName,
                                       long initializedTimestampMs,
                                       long initializationDurationMs)
        Called when a decoder is created.
        Parameters:
        decoderName - The decoder that was created.
        initializedTimestampMs - SystemClock.elapsedRealtime() when initialization finished.
        initializationDurationMs - The time taken to initialize the decoder in milliseconds.
      • onVideoInputFormatChanged

        void onVideoInputFormatChanged​(com.google.android.exoplayer2.Format format)
        Called when the format of the media being consumed by the renderer changes.
        Parameters:
        format - The new format.
      • onDroppedFrames

        void onDroppedFrames​(int count,
                             long elapsedMs)
        Called to report the number of frames dropped by the renderer. Dropped frames are reported whenever the renderer is stopped having dropped frames, and optionally, whenever the count reaches a specified threshold whilst the renderer is started.
        Parameters:
        count - The number of dropped frames.
        elapsedMs - The duration in milliseconds over which the frames were dropped. This duration is timed from when the renderer was started or from when dropped frames were last reported (whichever was more recent), and not from when the first of the reported drops occurred.
      • onRenderedFirstFrame

        void onRenderedFirstFrame​(Surface surface)
        Called when a frame is rendered for the first time since setting the surface, and when a frame is rendered for the first time since the renderer was reset.
        Parameters:
        surface - The Surface to which a first frame has been rendered, or null if the renderer renders to something that isn't a Surface.
      • onVideoDisabled

        void onVideoDisabled​(com.google.android.exoplayer2.decoder.DecoderCounters counters)
        Called when the renderer is disabled.
        Parameters:
        counters - DecoderCounters that were updated by the renderer.