Package com.google.android.exoplayer2.source

## Class ExtractorMediaSource

- java.lang.Object
- - com.google.android.exoplayer2.source.BaseMediaSource
  - - com.google.android.exoplayer2.source.CompositeMediaSource<Void>
    - - com.google.android.exoplayer2.source.ExtractorMediaSource

- All Implemented Interfaces:
    `MediaSource`

      @Deprecated
      public final class ExtractorMediaSource
      extends CompositeMediaSource<Void>

  Deprecated.
  Use `ProgressiveMediaSource` instead.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static interface` | `ExtractorMediaSource.EventListener` | Deprecated. Use `MediaSourceEventListener` instead.
    `static class` | `ExtractorMediaSource.Factory` | Deprecated. Use `ProgressiveMediaSource.Factory` instead.

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

      `MediaSource.MediaPeriodId, MediaSource.MediaSourceCaller`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static int` | `DEFAULT_LOADING_CHECK_INTERVAL_BYTES` | Deprecated. Use `ProgressiveMediaSource.DEFAULT_LOADING_CHECK_INTERVAL_BYTES` instead.

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `ExtractorMediaSource​(Uri uri, DataSource.Factory dataSourceFactory, ExtractorsFactory extractorsFactory, Handler eventHandler, ExtractorMediaSource.EventListener eventListener)` | Deprecated. Use `ExtractorMediaSource.Factory` instead.
    `ExtractorMediaSource​(Uri uri, DataSource.Factory dataSourceFactory, ExtractorsFactory extractorsFactory, Handler eventHandler, ExtractorMediaSource.EventListener eventListener, String customCacheKey)` | Deprecated. Use `ExtractorMediaSource.Factory` instead.
    `ExtractorMediaSource​(Uri uri, DataSource.Factory dataSourceFactory, ExtractorsFactory extractorsFactory, Handler eventHandler, ExtractorMediaSource.EventListener eventListener, String customCacheKey, int continueLoadingCheckIntervalBytes)` | Deprecated. Use `ExtractorMediaSource.Factory` instead.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `MediaPeriod` | `createPeriod​(MediaSource.MediaPeriodId id, Allocator allocator, long startPositionUs)` | Deprecated. Returns a new `MediaPeriod` identified by `periodId`.
    `MediaItem` | `getMediaItem()` | Deprecated. Returns the `MediaItem` whose media is provided by the source.
    `Object` | `getTag()` | Deprecated. Use `getMediaItem()` and `MediaItem.PlaybackProperties.tag` instead.
    `protected void` | `onChildSourceInfoRefreshed​(Void id, MediaSource mediaSource, Timeline timeline)` | Deprecated. Called when the source info of a child source has been refreshed.
    `protected void` | `prepareSourceInternal​(TransferListener mediaTransferListener)` | Deprecated. Starts source preparation and enables the source, see `BaseMediaSource.prepareSource(MediaSourceCaller, TransferListener)`.
    `void` | `releasePeriod​(MediaPeriod mediaPeriod)` | Deprecated. Releases the period.

    - ### Methods inherited from class com.google.android.exoplayer2.source.BaseMediaSource

      `addDrmEventListener, addEventListener, createDrmEventDispatcher, createDrmEventDispatcher, createEventDispatcher, createEventDispatcher, createEventDispatcher, disable, enable, isEnabled, prepareSource, refreshSourceInfo, releaseSource, removeDrmEventListener, removeEventListener`

    - ### Methods inherited from class com.google.android.exoplayer2.source.CompositeMediaSource

      `disableChildSource, disableInternal, enableChildSource, enableInternal, getMediaPeriodIdForChildMediaPeriodId, getMediaTimeForChildMediaTime, getWindowIndexForChildWindowIndex, maybeThrowSourceInfoRefreshError, prepareChildSource, releaseChildSource, releaseSourceInternal`

    - ### Methods inherited from interface com.google.android.exoplayer2.source.MediaSource

      `getInitialTimeline, isSingleWindow`

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

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

- - ### Field Detail

    - #### DEFAULT_LOADING_CHECK_INTERVAL_BYTES

          @Deprecated
          public static final int DEFAULT_LOADING_CHECK_INTERVAL_BYTES

      Deprecated.
      Use `ProgressiveMediaSource.DEFAULT_LOADING_CHECK_INTERVAL_BYTES` instead.
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### ExtractorMediaSource

          @Deprecated
          public ExtractorMediaSource​(Uri uri,
                                      DataSource.Factory dataSourceFactory,
                                      ExtractorsFactory extractorsFactory,
                                      @Nullable
                                      Handler eventHandler,
                                      @Nullable
                                      ExtractorMediaSource.EventListener eventListener)

      Deprecated.
      Use `ExtractorMediaSource.Factory` instead.
      Parameters:
        `uri` - The `Uri` of the media stream.
        `dataSourceFactory` - A factory for `DataSource`s to read the media.
        `extractorsFactory` - A factory for `Extractor`s to process the media stream. If the possible formats are known, pass a factory that instantiates extractors for those formats. Otherwise, pass a `DefaultExtractorsFactory` to use default extractors.
        `eventHandler` - A handler for events. May be null if delivery of events is not required.
        `eventListener` - A listener of events. May be null if delivery of events is not required.

    - #### ExtractorMediaSource

          @Deprecated
          public ExtractorMediaSource​(Uri uri,
                                      DataSource.Factory dataSourceFactory,
                                      ExtractorsFactory extractorsFactory,
                                      @Nullable
                                      Handler eventHandler,
                                      @Nullable
                                      ExtractorMediaSource.EventListener eventListener,
                                      @Nullable
                                      String customCacheKey)

      Deprecated.
      Use `ExtractorMediaSource.Factory` instead.
      Parameters:
        `uri` - The `Uri` of the media stream.
        `dataSourceFactory` - A factory for `DataSource`s to read the media.
        `extractorsFactory` - A factory for `Extractor`s to process the media stream. If the possible formats are known, pass a factory that instantiates extractors for those formats. Otherwise, pass a `DefaultExtractorsFactory` to use default extractors.
        `eventHandler` - A handler for events. May be null if delivery of events is not required.
        `eventListener` - A listener of events. May be null if delivery of events is not required.
        `customCacheKey` - A custom key that uniquely identifies the original stream. Used for cache indexing. May be null.

    - #### ExtractorMediaSource

          @Deprecated
          public ExtractorMediaSource​(Uri uri,
                                      DataSource.Factory dataSourceFactory,
                                      ExtractorsFactory extractorsFactory,
                                      @Nullable
                                      Handler eventHandler,
                                      @Nullable
                                      ExtractorMediaSource.EventListener eventListener,
                                      @Nullable
                                      String customCacheKey,
                                      int continueLoadingCheckIntervalBytes)

      Deprecated.
      Use `ExtractorMediaSource.Factory` instead.
      Parameters:
        `uri` - The `Uri` of the media stream.
        `dataSourceFactory` - A factory for `DataSource`s to read the media.
        `extractorsFactory` - A factory for `Extractor`s to process the media stream. If the possible formats are known, pass a factory that instantiates extractors for those formats. Otherwise, pass a `DefaultExtractorsFactory` to use default extractors.
        `eventHandler` - A handler for events. May be null if delivery of events is not required.
        `eventListener` - A listener of events. May be null if delivery of events is not required.
        `customCacheKey` - A custom key that uniquely identifies the original stream. Used for cache indexing. May be null.
        `continueLoadingCheckIntervalBytes` - The number of bytes that should be loaded between each invocation of `SequenceableLoader.Callback.onContinueLoadingRequested(SequenceableLoader)`.

  - ### Method Detail

    - #### getTag

          @Deprecated
          @Nullable
          public Object getTag()

      Deprecated.
      Use `getMediaItem()` and `MediaItem.PlaybackProperties.tag` instead.

    - #### getMediaItem

          public MediaItem getMediaItem()

      Deprecated.
      Description copied from interface: `MediaSource`
      Returns the `MediaItem` whose media is provided by the source.

    - #### prepareSourceInternal

          protected void prepareSourceInternal​(@Nullable
                                               TransferListener mediaTransferListener)

      Deprecated.
      Description copied from class: `BaseMediaSource`
      Starts source preparation and enables the source, see `BaseMediaSource.prepareSource(MediaSourceCaller, TransferListener)`. This method is called at most once until the next call to `BaseMediaSource.releaseSourceInternal()`.
      Overrides:
        `prepareSourceInternal` in class `CompositeMediaSource<Void>`
      Parameters:
        `mediaTransferListener` - The transfer listener which should be informed of any media data transfers. May be null if no listener is available. Note that this listener should usually be only informed of transfers related to the media loads and not of auxiliary loads for manifests and other data.

    - #### onChildSourceInfoRefreshed

          protected void onChildSourceInfoRefreshed​(@Nullable
                                                    Void id,
                                                    MediaSource mediaSource,
                                                    Timeline timeline)

      Deprecated.
      Description copied from class: `CompositeMediaSource`
      Called when the source info of a child source has been refreshed.
      Specified by:
        `onChildSourceInfoRefreshed` in class `CompositeMediaSource<Void>`
      Parameters:
        `id` - The unique id used to prepare the child source.
        `mediaSource` - The child source whose source info has been refreshed.
        `timeline` - The timeline of the child source.

    - #### createPeriod

          public MediaPeriod createPeriod​(MediaSource.MediaPeriodId id,
                                          Allocator allocator,
                                          long startPositionUs)

      Deprecated.
      Description copied from interface: `MediaSource`
      Returns a new `MediaPeriod` identified by `periodId`.

      Should not be called directly from application code.

      Must only be called if the source is enabled.

      Parameters:
        `id` - The identifier of the period.
        `allocator` - An `Allocator` from which to obtain media buffer allocations.
        `startPositionUs` - The expected start position, in microseconds.
      Returns:
        A new `MediaPeriod`.

    - #### releasePeriod

          public void releasePeriod​(MediaPeriod mediaPeriod)

      Deprecated.
      Description copied from interface: `MediaSource`
      Releases the period.

      Should not be called directly from application code.

      Parameters:
        `mediaPeriod` - The period to release.