# Hierarchy For Package com.google.android.exoplayer2

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - com.google.android.exoplayer2.BasePlayer (implements com.google.android.exoplayer2.Player)
    - com.google.android.exoplayer2.SimpleExoPlayer (implements com.google.android.exoplayer2.ExoPlayer, com.google.android.exoplayer2.ExoPlayer.AudioComponent, com.google.android.exoplayer2.ExoPlayer.DeviceComponent, com.google.android.exoplayer2.ExoPlayer.MetadataComponent, com.google.android.exoplayer2.ExoPlayer.TextComponent, com.google.android.exoplayer2.ExoPlayer.VideoComponent)
  - com.google.android.exoplayer2.BaseRenderer (implements com.google.android.exoplayer2.Renderer, com.google.android.exoplayer2.RendererCapabilities)
  - android.os.Binder (implements android.os.IBinder)
    - com.google.android.exoplayer2.BundleListRetriever
  - com.google.android.exoplayer2.C
  - com.google.android.exoplayer2.DefaultControlDispatcher (implements com.google.android.exoplayer2.ControlDispatcher)
  - com.google.android.exoplayer2.DefaultLivePlaybackSpeedControl (implements com.google.android.exoplayer2.LivePlaybackSpeedControl)
  - com.google.android.exoplayer2.DefaultLivePlaybackSpeedControl.Builder
  - com.google.android.exoplayer2.DefaultLoadControl (implements com.google.android.exoplayer2.LoadControl)
  - com.google.android.exoplayer2.DefaultLoadControl.Builder
  - com.google.android.exoplayer2.DefaultRenderersFactory (implements com.google.android.exoplayer2.RenderersFactory)
  - com.google.android.exoplayer2.ExoPlayer.Builder
  - com.google.android.exoplayer2.ExoPlayerLibraryInfo
  - com.google.android.exoplayer2.Format (implements android.os.Parcelable)
  - com.google.android.exoplayer2.Format.Builder
  - com.google.android.exoplayer2.FormatHolder
  - com.google.android.exoplayer2.MediaItem (implements com.google.android.exoplayer2.Bundleable)
  - com.google.android.exoplayer2.MediaItem.AdsConfiguration
  - com.google.android.exoplayer2.MediaItem.Builder
  - com.google.android.exoplayer2.MediaItem.ClippingProperties (implements com.google.android.exoplayer2.Bundleable)
  - com.google.android.exoplayer2.MediaItem.DrmConfiguration
  - com.google.android.exoplayer2.MediaItem.LiveConfiguration (implements com.google.android.exoplayer2.Bundleable)
  - com.google.android.exoplayer2.MediaItem.PlaybackProperties
  - com.google.android.exoplayer2.MediaItem.Subtitle
  - com.google.android.exoplayer2.MediaMetadata (implements com.google.android.exoplayer2.Bundleable)
  - com.google.android.exoplayer2.MediaMetadata.Builder
  - com.google.android.exoplayer2.MetadataRetriever
  - com.google.android.exoplayer2.NoSampleRenderer (implements com.google.android.exoplayer2.Renderer, com.google.android.exoplayer2.RendererCapabilities)
  - com.google.android.exoplayer2.PlaybackParameters (implements com.google.android.exoplayer2.Bundleable)
  - com.google.android.exoplayer2.Player.Commands
  - com.google.android.exoplayer2.Player.Commands.Builder
  - com.google.android.exoplayer2.Player.Events
  - com.google.android.exoplayer2.Player.PositionInfo (implements com.google.android.exoplayer2.Bundleable)
  - com.google.android.exoplayer2.PlayerMessage
  - com.google.android.exoplayer2.Rating (implements com.google.android.exoplayer2.Bundleable)
    - com.google.android.exoplayer2.HeartRating
    - com.google.android.exoplayer2.PercentageRating
    - com.google.android.exoplayer2.StarRating
    - com.google.android.exoplayer2.ThumbRating
  - com.google.android.exoplayer2.RendererConfiguration
  - com.google.android.exoplayer2.SeekParameters
  - com.google.android.exoplayer2.SimpleExoPlayer.Builder
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - com.google.android.exoplayer2.ExoPlaybackException (implements com.google.android.exoplayer2.Bundleable)
      - com.google.android.exoplayer2.ExoTimeoutException
      - java.io.IOException
        - com.google.android.exoplayer2.ParserException
      - java.lang.RuntimeException
        - java.lang.IllegalStateException
          - com.google.android.exoplayer2.IllegalSeekPositionException
  - com.google.android.exoplayer2.Timeline (implements com.google.android.exoplayer2.Bundleable)
    - com.google.android.exoplayer2.AbstractConcatenatedTimeline
  - com.google.android.exoplayer2.Timeline.Period (implements com.google.android.exoplayer2.Bundleable)
  - com.google.android.exoplayer2.Timeline.Window (implements com.google.android.exoplayer2.Bundleable)

## Interface Hierarchy

- com.google.android.exoplayer2.audio.AudioListener
  - com.google.android.exoplayer2.Player.Listener (also extends com.google.android.exoplayer2.device.DeviceListener, com.google.android.exoplayer2.metadata.MetadataOutput, com.google.android.exoplayer2.Player.EventListener, com.google.android.exoplayer2.text.TextOutput, com.google.android.exoplayer2.video.VideoListener)
- com.google.android.exoplayer2.Bundleable
- com.google.android.exoplayer2.Bundleable.Creator<T>
- com.google.android.exoplayer2.ControlDispatcher
- com.google.android.exoplayer2.device.DeviceListener
  - com.google.android.exoplayer2.Player.Listener (also extends com.google.android.exoplayer2.audio.AudioListener, com.google.android.exoplayer2.metadata.MetadataOutput, com.google.android.exoplayer2.Player.EventListener, com.google.android.exoplayer2.text.TextOutput, com.google.android.exoplayer2.video.VideoListener)
- com.google.android.exoplayer2.ExoPlayer.AudioComponent
- com.google.android.exoplayer2.ExoPlayer.AudioOffloadListener
- com.google.android.exoplayer2.ExoPlayer.DeviceComponent
- com.google.android.exoplayer2.ExoPlayer.MetadataComponent
- com.google.android.exoplayer2.ExoPlayer.TextComponent
- com.google.android.exoplayer2.ExoPlayer.VideoComponent
- com.google.android.exoplayer2.LivePlaybackSpeedControl
- com.google.android.exoplayer2.LoadControl
- com.google.android.exoplayer2.metadata.MetadataOutput
  - com.google.android.exoplayer2.Player.Listener (also extends com.google.android.exoplayer2.audio.AudioListener, com.google.android.exoplayer2.device.DeviceListener, com.google.android.exoplayer2.Player.EventListener, com.google.android.exoplayer2.text.TextOutput, com.google.android.exoplayer2.video.VideoListener)
- com.google.android.exoplayer2.PlaybackPreparer
- com.google.android.exoplayer2.Player
  - com.google.android.exoplayer2.ExoPlayer
- com.google.android.exoplayer2.Player.EventListener
  - com.google.android.exoplayer2.Player.Listener (also extends com.google.android.exoplayer2.audio.AudioListener, com.google.android.exoplayer2.device.DeviceListener, com.google.android.exoplayer2.metadata.MetadataOutput, com.google.android.exoplayer2.text.TextOutput, com.google.android.exoplayer2.video.VideoListener)
- com.google.android.exoplayer2.PlayerMessage.Sender
- com.google.android.exoplayer2.PlayerMessage.Target
  - com.google.android.exoplayer2.Renderer
- com.google.android.exoplayer2.Renderer.WakeupListener
- com.google.android.exoplayer2.RendererCapabilities
- com.google.android.exoplayer2.RenderersFactory
- com.google.android.exoplayer2.text.TextOutput
  - com.google.android.exoplayer2.Player.Listener (also extends com.google.android.exoplayer2.audio.AudioListener, com.google.android.exoplayer2.device.DeviceListener, com.google.android.exoplayer2.metadata.MetadataOutput, com.google.android.exoplayer2.Player.EventListener, com.google.android.exoplayer2.video.VideoListener)
- com.google.android.exoplayer2.video.VideoListener
  - com.google.android.exoplayer2.Player.Listener (also extends com.google.android.exoplayer2.audio.AudioListener, com.google.android.exoplayer2.device.DeviceListener, com.google.android.exoplayer2.metadata.MetadataOutput, com.google.android.exoplayer2.Player.EventListener, com.google.android.exoplayer2.text.TextOutput)

## Annotation Type Hierarchy

- com.google.android.exoplayer2.C.AudioAllowedCapturePolicy (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.AudioContentType (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.AudioFlags (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.AudioFocusGain (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.AudioUsage (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.BufferFlags (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.ColorRange (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.ColorSpace (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.ColorTransfer (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.ContentType (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.CryptoMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.Encoding (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.FormatSupport (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.NetworkType (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.PcmEncoding (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.Projection (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.RoleFlags (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.SelectionFlags (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.StereoMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.StreamType (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.VideoOutputMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.VideoScalingMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.C.WakeMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.DefaultRenderersFactory.ExtensionRendererMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.ExoPlaybackException.Type (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.ExoTimeoutException.TimeoutOperation (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.MediaMetadata.FolderType (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.Command (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.DiscontinuityReason (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.EventFlags (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.MediaItemTransitionReason (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.PlaybackSuppressionReason (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.PlayWhenReadyChangeReason (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.RepeatMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.State (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Player.TimelineChangeReason (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Renderer.State (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.Renderer.VideoScalingMode (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.RendererCapabilities.AdaptiveSupport (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.RendererCapabilities.Capabilities (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.RendererCapabilities.FormatSupport (implements java.lang.annotation.Annotation)
- com.google.android.exoplayer2.RendererCapabilities.TunnelingSupport (implements java.lang.annotation.Annotation)