Package com.google.android.exoplayer2.testutil

## Class FakeAudioRenderer

- java.lang.Object
- - com.google.android.exoplayer2.BaseRenderer
  - - com.google.android.exoplayer2.testutil.FakeRenderer
    - - com.google.android.exoplayer2.testutil.FakeAudioRenderer

- All Implemented Interfaces:
    `PlayerMessage.Target`, `Renderer`, `RendererCapabilities`

      public class FakeAudioRenderer
      extends FakeRenderer

  A `FakeRenderer` that supports `C.TRACK_TYPE_AUDIO`.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface com.google.android.exoplayer2.Renderer

      `Renderer.MessageType, Renderer.State, Renderer.WakeupListener`

    - ### Nested classes/interfaces inherited from interface com.google.android.exoplayer2.RendererCapabilities

      `RendererCapabilities.AdaptiveSupport, RendererCapabilities.Capabilities, RendererCapabilities.DecoderSupport, RendererCapabilities.FormatSupport, RendererCapabilities.HardwareAccelerationSupport, RendererCapabilities.TunnelingSupport`

  - ### Field Summary

    - ### Fields inherited from class com.google.android.exoplayer2.testutil.FakeRenderer

      `enabledCount, isEnded, positionResetCount, resetCount, sampleBufferReadCount`

    - ### Fields inherited from interface com.google.android.exoplayer2.Renderer

      `MSG_CUSTOM_BASE, MSG_SET_AUDIO_ATTRIBUTES, MSG_SET_AUDIO_SESSION_ID, MSG_SET_AUX_EFFECT_INFO, MSG_SET_CAMERA_MOTION_LISTENER, MSG_SET_CHANGE_FRAME_RATE_STRATEGY, MSG_SET_PREFERRED_AUDIO_DEVICE, MSG_SET_SCALING_MODE, MSG_SET_SKIP_SILENCE_ENABLED, MSG_SET_VIDEO_FRAME_METADATA_LISTENER, MSG_SET_VIDEO_OUTPUT, MSG_SET_VOLUME, MSG_SET_WAKEUP_LISTENER, STATE_DISABLED, STATE_ENABLED, STATE_STARTED`

    - ### Fields inherited from interface com.google.android.exoplayer2.RendererCapabilities

      `ADAPTIVE_NOT_SEAMLESS, ADAPTIVE_NOT_SUPPORTED, ADAPTIVE_SEAMLESS, ADAPTIVE_SUPPORT_MASK, DECODER_SUPPORT_FALLBACK, DECODER_SUPPORT_FALLBACK_MIMETYPE, DECODER_SUPPORT_PRIMARY, FORMAT_EXCEEDS_CAPABILITIES, FORMAT_HANDLED, FORMAT_SUPPORT_MASK, FORMAT_UNSUPPORTED_DRM, FORMAT_UNSUPPORTED_SUBTYPE, FORMAT_UNSUPPORTED_TYPE, HARDWARE_ACCELERATION_NOT_SUPPORTED, HARDWARE_ACCELERATION_SUPPORT_MASK, HARDWARE_ACCELERATION_SUPPORTED, MODE_SUPPORT_MASK, TUNNELING_NOT_SUPPORTED, TUNNELING_SUPPORT_MASK, TUNNELING_SUPPORTED`

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `FakeAudioRenderer​(HandlerWrapper handler, AudioRendererEventListener eventListener)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `protected void` | `onDisabled()` | Called when the renderer is disabled.
    `protected void` | `onEnabled​(boolean joining, boolean mayRenderStartOfStream)` | Called when the renderer is enabled.
    `protected void` | `onFormatChanged​(Format format)` | Called when the renderer reads a new format.
    `protected boolean` | `shouldProcessBuffer​(long bufferTimeUs, long playbackPositionUs)` | Called before the renderer processes a buffer.

    - ### Methods inherited from class com.google.android.exoplayer2.testutil.FakeRenderer

      `getFormatsRead, getName, isEnded, isReady, onPositionReset, onReset, render, supportsFormat`

    - ### Methods inherited from class com.google.android.exoplayer2.BaseRenderer

      `createRendererException, createRendererException, disable, enable, getCapabilities, getConfiguration, getFormatHolder, getIndex, getLastResetPositionUs, getMediaClock, getPlayerId, getReadingPositionUs, getState, getStream, getStreamFormats, getTrackType, handleMessage, hasReadStreamToEnd, init, isCurrentStreamFinal, isSourceReady, maybeThrowStreamError, onStarted, onStopped, onStreamChanged, readSource, replaceStream, reset, resetPosition, setCurrentStreamFinal, skipSource, start, stop, supportsMixedMimeTypeAdaptation`

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

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

    - ### Methods inherited from interface com.google.android.exoplayer2.Renderer

      `setPlaybackSpeed`

- - ### Constructor Detail

    - #### FakeAudioRenderer

          public FakeAudioRenderer​(HandlerWrapper handler,
                                   AudioRendererEventListener eventListener)

  - ### Method Detail

    - #### onEnabled

          protected void onEnabled​(boolean joining,
                                   boolean mayRenderStartOfStream)
                            throws ExoPlaybackException

      Description copied from class: `BaseRenderer`
      Called when the renderer is enabled.

      The default implementation is a no-op.

      Overrides:
        `onEnabled` in class `FakeRenderer`
      Parameters:
        `joining` - Whether this renderer is being enabled to join an ongoing playback.
        `mayRenderStartOfStream` - Whether this renderer is allowed to render the start of the stream even if the state is not `Renderer.STATE_STARTED` yet.
      Throws:
        `ExoPlaybackException` - If an error occurs.

    - #### onDisabled

          protected void onDisabled()

      Description copied from class: `BaseRenderer`
      Called when the renderer is disabled.

      The default implementation is a no-op.

      Overrides:
        `onDisabled` in class `FakeRenderer`

    - #### onFormatChanged

          protected void onFormatChanged​(Format format)

      Description copied from class: `FakeRenderer`
      Called when the renderer reads a new format.
      Overrides:
        `onFormatChanged` in class `FakeRenderer`

    - #### shouldProcessBuffer

          protected boolean shouldProcessBuffer​(long bufferTimeUs,
                                                long playbackPositionUs)

      Description copied from class: `FakeRenderer`
      Called before the renderer processes a buffer.
      Overrides:
        `shouldProcessBuffer` in class `FakeRenderer`
      Parameters:
        `bufferTimeUs` - The buffer timestamp, in microseconds.
        `playbackPositionUs` - The playback position, in microseconds
      Returns:
        Whether the buffer should be processed.