Back to Exoplayer

SsMediaSource (ExoPlayer library)

docs/doc/reference/com/google/android/exoplayer2/source/smoothstreaming/SsMediaSource.html

latest16.0 KB
Original Source

Package com.google.android.exoplayer2.source.smoothstreaming

Class SsMediaSource


[@Deprecated](https://developer.android.com/reference/java/lang/Deprecated.html "class or interface in java.lang")public final classSsMediaSourceextends[BaseMediaSource](../BaseMediaSource.html "class in com.google.android.exoplayer2.source")implements[Loader.Callback](../../upstream/Loader.Callback.html "interface in com.google.android.exoplayer2.upstream")<[ParsingLoadable](../../upstream/ParsingLoadable.html "class in com.google.android.exoplayer2.upstream")<[SsManifest](manifest/SsManifest.html "class in com.google.android.exoplayer2.source.smoothstreaming.manifest")>>

Deprecated. com.google.android.exoplayer2 is deprecated. Please migrate to androidx.media3 (which contains the same ExoPlayer code). See the migration guide for more details, including a script to help with the migration.

A SmoothStreaming MediaSource.

Nested Class Summary

Nested Classes | Modifier and Type | Class | Description | | --- | --- | --- | | static class | SsMediaSource.Factory | Deprecated.

Factory for SsMediaSource. |

- 

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 long | DEFAULT_LIVE_PRESENTATION_DELAY_MS | Deprecated.

The default presentation delay for live streams. |

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. | | void | maybeThrowSourceInfoRefreshError() | Deprecated.

Throws any pending error encountered while loading or refreshing source information. | | void | onLoadCanceled​(ParsingLoadable<SsManifest> loadable, long elapsedRealtimeMs, long loadDurationMs, boolean released) | Deprecated.

Called when a load has been canceled. | | void | onLoadCompleted​(ParsingLoadable<SsManifest> loadable, long elapsedRealtimeMs, long loadDurationMs) | Deprecated.

Called when a load has completed. | | Loader.LoadErrorAction | onLoadError​(ParsingLoadable<SsManifest> loadable, long elapsedRealtimeMs, long loadDurationMs, IOException error, int errorCount) | Deprecated.

Called when a load encounters an error. | | protected void | prepareSourceInternal​(TransferListener mediaTransferListener) | Deprecated.

Starts source preparation and enables the source, see BaseMediaSource.prepareSource(MediaSourceCaller, TransferListener, PlayerId). | | void | releasePeriod​(MediaPeriod mediaPeriod) | Deprecated.

Releases the period. | | protected void | releaseSourceInternal() | Deprecated.

Releases the source, see BaseMediaSource.releaseSource(MediaSourceCaller). |

- 

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

addDrmEventListener, addEventListener, createDrmEventDispatcher, createDrmEventDispatcher, createEventDispatcher, createEventDispatcher, createEventDispatcher, createEventDispatcher, disable, disableInternal, enable, enableInternal, getPlayerId, isEnabled, prepareSource, prepareSource, refreshSourceInfo, releaseSource, removeDrmEventListener, removeEventListener

- 

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.source.MediaSource

getInitialTimeline, isSingleWindow

Field Detail

- 

DEFAULT_LIVE_PRESENTATION_DELAY_MS

public static final long DEFAULT_LIVE_PRESENTATION_DELAY_MS

Deprecated.

The default presentation delay for live streams. The presentation delay is the duration by which the default start position precedes the end of the live window. See Also:Constant Field Values

Method Detail

- 

getMediaItem

public[MediaItem](../../MediaItem.html "class in com.google.android.exoplayer2")getMediaItem()

Deprecated.

Description copied from interface: MediaSource

Returns the MediaItem whose media is provided by the source.

Should not be called directly from application code.

This method must be called on the application thread.

Specified by:getMediaItem in interface MediaSource

- 

prepareSourceInternal

protected void prepareSourceInternal​(@Nullable[TransferListener](../../upstream/TransferListener.html "interface in com.google.android.exoplayer2.upstream")mediaTransferListener)

Deprecated.

Description copied from class: BaseMediaSource

Starts source preparation and enables the source, see BaseMediaSource.prepareSource(MediaSourceCaller, TransferListener, PlayerId). This method is called at most once until the next call to BaseMediaSource.releaseSourceInternal(). Specified by:prepareSourceInternal in class BaseMediaSourceParameters: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.

- 

maybeThrowSourceInfoRefreshError

public void maybeThrowSourceInfoRefreshError()
                                      throws[IOException](https://developer.android.com/reference/java/io/IOException.html "class or interface in java.io")

Deprecated.

Description copied from interface: MediaSource

Throws any pending error encountered while loading or refreshing source information.

Should not be called directly from application code.

This method must be called on the playback thread and only after MediaSource.prepareSource(MediaSourceCaller, TransferListener, PlayerId).

Specified by:maybeThrowSourceInfoRefreshError in interface MediaSourceThrows:IOException

- 

createPeriod

public[MediaPeriod](../MediaPeriod.html "interface in com.google.android.exoplayer2.source")createPeriod​([MediaSource.MediaPeriodId](../MediaSource.MediaPeriodId.html "class in com.google.android.exoplayer2.source")id,[Allocator](../../upstream/Allocator.html "interface in com.google.android.exoplayer2.upstream")allocator,
                                long startPositionUs)

Deprecated.

Description copied from interface: MediaSource

Returns a new MediaPeriod identified by periodId.

Should not be called directly from application code.

This method must be called on the playback thread and only if the source is enabled.

Specified by:createPeriod in interface MediaSourceParameters: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.html "interface in com.google.android.exoplayer2.source")mediaPeriod)

Deprecated.

Description copied from interface: MediaSource

Releases the period.

Should not be called directly from application code.

This method must be called on the playback thread.

Specified by:releasePeriod in interface MediaSourceParameters:mediaPeriod - The period to release.

- 

releaseSourceInternal

protected void releaseSourceInternal()

Deprecated.

Description copied from class: BaseMediaSource

Releases the source, see BaseMediaSource.releaseSource(MediaSourceCaller). This method is called exactly once after each call to BaseMediaSource.prepareSourceInternal(TransferListener). Specified by:releaseSourceInternal in class BaseMediaSource

- 

onLoadCompleted

public void onLoadCompleted​([ParsingLoadable](../../upstream/ParsingLoadable.html "class in com.google.android.exoplayer2.upstream")<[SsManifest](manifest/SsManifest.html "class in com.google.android.exoplayer2.source.smoothstreaming.manifest")> loadable,
                            long elapsedRealtimeMs,
                            long loadDurationMs)

Deprecated.

Description copied from interface: Loader.Callback

Called when a load has completed.

Note: There is guaranteed to be a memory barrier between Loader.Loadable.load() exiting and this callback being called.

Specified by:onLoadCompleted in interface Loader.Callback<ParsingLoadable<SsManifest>>Parameters:loadable - The loadable whose load has completed.elapsedRealtimeMs - SystemClock.elapsedRealtime() when the load ended.loadDurationMs - The duration in milliseconds of the load since Loader.startLoading(T, com.google.android.exoplayer2.upstream.Loader.Callback<T>, int) was called.

- 

onLoadCanceled

public void onLoadCanceled​([ParsingLoadable](../../upstream/ParsingLoadable.html "class in com.google.android.exoplayer2.upstream")<[SsManifest](manifest/SsManifest.html "class in com.google.android.exoplayer2.source.smoothstreaming.manifest")> loadable,
                           long elapsedRealtimeMs,
                           long loadDurationMs,
                           boolean released)

Deprecated.

Description copied from interface: Loader.Callback

Called when a load has been canceled.

Note: If the Loader has not been released then there is guaranteed to be a memory barrier between Loader.Loadable.load() exiting and this callback being called. If the Loader has been released then this callback may be called before Loader.Loadable.load() exits.

Specified by:onLoadCanceled in interface Loader.Callback<ParsingLoadable<SsManifest>>Parameters:loadable - The loadable whose load has been canceled.elapsedRealtimeMs - SystemClock.elapsedRealtime() when the load was canceled.loadDurationMs - The duration in milliseconds of the load since Loader.startLoading(T, com.google.android.exoplayer2.upstream.Loader.Callback<T>, int) was called up to the point at which it was canceled.released - True if the load was canceled because the Loader was released. False otherwise.

- 

onLoadError

public[Loader.LoadErrorAction](../../upstream/Loader.LoadErrorAction.html "class in com.google.android.exoplayer2.upstream")onLoadError​([ParsingLoadable](../../upstream/ParsingLoadable.html "class in com.google.android.exoplayer2.upstream")<[SsManifest](manifest/SsManifest.html "class in com.google.android.exoplayer2.source.smoothstreaming.manifest")> loadable,
                                          long elapsedRealtimeMs,
                                          long loadDurationMs,[IOException](https://developer.android.com/reference/java/io/IOException.html "class or interface in java.io")error,
                                          int errorCount)

Deprecated.

Description copied from interface: Loader.Callback

Called when a load encounters an error.

Note: There is guaranteed to be a memory barrier between Loader.Loadable.load() exiting and this callback being called.

Specified by:onLoadError in interface Loader.Callback<ParsingLoadable<SsManifest>>Parameters:loadable - The loadable whose load has encountered an error.elapsedRealtimeMs - SystemClock.elapsedRealtime() when the error occurred.loadDurationMs - The duration in milliseconds of the load since Loader.startLoading(T, com.google.android.exoplayer2.upstream.Loader.Callback<T>, int) was called up to the point at which the error occurred.error - The load error.errorCount - The number of errors this load has encountered, including this one.Returns:The desired error handling action. One of Loader.RETRY, Loader.RETRY_RESET_ERROR_COUNT, Loader.DONT_RETRY, Loader.DONT_RETRY_FATAL or a retry action created by Loader.createRetryAction(boolean, long).