Package com.google.android.exoplayer2.video

## Class VideoRendererEventListener.EventDispatcher

- java.lang.Object
- - com.google.android.exoplayer2.video.VideoRendererEventListener.EventDispatcher

- Enclosing interface:
    VideoRendererEventListener

      public static final class VideoRendererEventListener.EventDispatcher
      extends Object

  Dispatches events to a `VideoRendererEventListener`.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `EventDispatcher​(Handler handler, VideoRendererEventListener listener)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `decoderInitialized​(String decoderName, long initializedTimestampMs, long initializationDurationMs)` | Invokes `VideoRendererEventListener.onVideoDecoderInitialized(String, long, long)`.
    `void` | `decoderReleased​(String decoderName)` | Invokes `VideoRendererEventListener.onVideoDecoderReleased(String)`.
    `void` | `disabled​(DecoderCounters counters)` | Invokes `VideoRendererEventListener.onVideoDisabled(DecoderCounters)`.
    `void` | `droppedFrames​(int droppedFrameCount, long elapsedMs)` | Invokes `VideoRendererEventListener.onDroppedFrames(int, long)`.
    `void` | `enabled​(DecoderCounters decoderCounters)` | Invokes `VideoRendererEventListener.onVideoEnabled(DecoderCounters)`.
    `void` | `inputFormatChanged​(Format format, DecoderReuseEvaluation decoderReuseEvaluation)` | Invokes `VideoRendererEventListener.onVideoInputFormatChanged(Format, DecoderReuseEvaluation)`.
    `void` | `renderedFirstFrame​(Object output)` | Invokes `VideoRendererEventListener.onRenderedFirstFrame(Object, long)`.
    `void` | `reportVideoFrameProcessingOffset​(long totalProcessingOffsetUs, int frameCount)` | Invokes `VideoRendererEventListener.onVideoFrameProcessingOffset(long, int)`.
    `void` | `videoCodecError​(Exception videoCodecError)` | Invokes `VideoRendererEventListener.onVideoCodecError(Exception)`.
    `void` | `videoSizeChanged​(VideoSize videoSize)` | Invokes `VideoRendererEventListener.onVideoSizeChanged(VideoSize)`.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### EventDispatcher

          public EventDispatcher​(@Nullable
                                 Handler handler,
                                 @Nullable
                                 VideoRendererEventListener listener)

      Parameters:
        `handler` - A handler for dispatching events, or null if events should not be dispatched.
        `listener` - The listener to which events should be dispatched, or null if events should not be dispatched.

  - ### Method Detail

    - #### enabled

          public void enabled​(DecoderCounters decoderCounters)

      Invokes `VideoRendererEventListener.onVideoEnabled(DecoderCounters)`.

    - #### decoderInitialized

          public void decoderInitialized​(String decoderName,
                                         long initializedTimestampMs,
                                         long initializationDurationMs)

      Invokes `VideoRendererEventListener.onVideoDecoderInitialized(String, long, long)`.

    - #### inputFormatChanged

          public void inputFormatChanged​(Format format,
                                         @Nullable
                                         DecoderReuseEvaluation decoderReuseEvaluation)

      Invokes `VideoRendererEventListener.onVideoInputFormatChanged(Format, DecoderReuseEvaluation)`.

    - #### droppedFrames

          public void droppedFrames​(int droppedFrameCount,
                                    long elapsedMs)

      Invokes `VideoRendererEventListener.onDroppedFrames(int, long)`.

    - #### reportVideoFrameProcessingOffset

          public void reportVideoFrameProcessingOffset​(long totalProcessingOffsetUs,
                                                       int frameCount)

      Invokes `VideoRendererEventListener.onVideoFrameProcessingOffset(long, int)`.

    - #### videoSizeChanged

          public void videoSizeChanged​(VideoSize videoSize)

      Invokes `VideoRendererEventListener.onVideoSizeChanged(VideoSize)`.

    - #### renderedFirstFrame

          public void renderedFirstFrame​(Object output)

      Invokes `VideoRendererEventListener.onRenderedFirstFrame(Object, long)`.

    - #### decoderReleased

          public void decoderReleased​(String decoderName)

      Invokes `VideoRendererEventListener.onVideoDecoderReleased(String)`.

    - #### disabled

          public void disabled​(DecoderCounters counters)

      Invokes `VideoRendererEventListener.onVideoDisabled(DecoderCounters)`.

    - #### videoCodecError

          public void videoCodecError​(Exception videoCodecError)

      Invokes `VideoRendererEventListener.onVideoCodecError(Exception)`.