ConcatenatingMediaSource2.Builder


public final class ConcatenatingMediaSource2.Builder


A builder for ConcatenatingMediaSource2 instances.

Summary

Public constructors

Creates the builder.

Public methods

ConcatenatingMediaSource2.Builder

Adds a MediaItem to the concatenation.

ConcatenatingMediaSource2.Builder

Adds a MediaSource to the concatenation.

ConcatenatingMediaSource2.Builder
@CanIgnoreReturnValue
add(MediaItem mediaItem, long initialPlaceholderDurationMs)

Adds a MediaItem to the concatenation and specifies its initial placeholder duration used while the actual duration is still unknown.

ConcatenatingMediaSource2.Builder
@CanIgnoreReturnValue
add(MediaSource mediaSource, long initialPlaceholderDurationMs)

Adds a MediaSource to the concatenation and specifies its initial placeholder duration used while the actual duration is still unknown.

ConcatenatingMediaSource2

Builds the concatenating media source.

ConcatenatingMediaSource2.Builder

Sets the MediaItem to be used for the concatenated media source.

ConcatenatingMediaSource2.Builder

Sets a MediaSource.Factory that is used to convert MediaItems to MediaSources for all future calls to add or add.

ConcatenatingMediaSource2.Builder

Instructs the builder to use a DefaultMediaSourceFactory to convert MediaItems to MediaSources for all future calls to add or add.

Public constructors

Builder

public Builder()

Creates the builder.

Public methods

add

@CanIgnoreReturnValue
public ConcatenatingMediaSource2.Builder add(MediaItem mediaItem)

Adds a MediaItem to the concatenation.

useDefaultMediaSourceFactory or setMediaSourceFactory must be called before this method.

This method must not be used with media items for progressive media that can't provide their duration with their first Timeline update. Use add instead.

Parameters
MediaItem mediaItem

The MediaItem.

Returns
ConcatenatingMediaSource2.Builder

This builder.

add

@CanIgnoreReturnValue
public ConcatenatingMediaSource2.Builder add(MediaSource mediaSource)

Adds a MediaSource to the concatenation.

This method must not be used for sources like ProgressiveMediaSource that can't provide their duration with their first Timeline update. Use add instead.

Parameters
MediaSource mediaSource

The MediaSource.

Returns
ConcatenatingMediaSource2.Builder

This builder.

add

@CanIgnoreReturnValue
public ConcatenatingMediaSource2.Builder add(MediaItem mediaItem, long initialPlaceholderDurationMs)

Adds a MediaItem to the concatenation and specifies its initial placeholder duration used while the actual duration is still unknown.

useDefaultMediaSourceFactory or setMediaSourceFactory must be called before this method.

Setting a placeholder duration is required for media items for progressive media that can't provide their duration with their first Timeline update. It may also be used for other items to make the duration known immediately.

Parameters
MediaItem mediaItem

The MediaItem.

long initialPlaceholderDurationMs

The initial placeholder duration in milliseconds used while the actual duration is still unknown, or TIME_UNSET to not define one. The placeholder duration is used for every Timeline.Window defined by of the MediaItem.

Returns
ConcatenatingMediaSource2.Builder

This builder.

add

@CanIgnoreReturnValue
public ConcatenatingMediaSource2.Builder add(MediaSource mediaSource, long initialPlaceholderDurationMs)

Adds a MediaSource to the concatenation and specifies its initial placeholder duration used while the actual duration is still unknown.

Setting a placeholder duration is required for sources like ProgressiveMediaSource that can't provide their duration with their first Timeline update. It may also be used for other sources to make the duration known immediately.

Parameters
MediaSource mediaSource

The MediaSource.

long initialPlaceholderDurationMs

The initial placeholder duration in milliseconds used while the actual duration is still unknown, or TIME_UNSET to not define one. The placeholder duration is used for every Timeline.Window defined by of the MediaSource.

Returns
ConcatenatingMediaSource2.Builder

This builder.

build

public ConcatenatingMediaSource2 build()

Builds the concatenating media source.

setMediaItem

@CanIgnoreReturnValue
public ConcatenatingMediaSource2.Builder setMediaItem(MediaItem mediaItem)

Sets the MediaItem to be used for the concatenated media source.

This MediaItem will be used as mediaItem for the concatenated source and will be returned by getCurrentMediaItem.

The default is MediaItem.fromUri(Uri.EMPTY).

Parameters
MediaItem mediaItem

The MediaItem.

Returns
ConcatenatingMediaSource2.Builder

This builder.

setMediaSourceFactory

@CanIgnoreReturnValue
public ConcatenatingMediaSource2.Builder setMediaSourceFactory(MediaSource.Factory mediaSourceFactory)

Sets a MediaSource.Factory that is used to convert MediaItems to MediaSources for all future calls to add or add.

Parameters
MediaSource.Factory mediaSourceFactory

A MediaSource.Factory.

Returns
ConcatenatingMediaSource2.Builder

This builder.

useDefaultMediaSourceFactory

@CanIgnoreReturnValue
public ConcatenatingMediaSource2.Builder useDefaultMediaSourceFactory(Context context)

Instructs the builder to use a DefaultMediaSourceFactory to convert MediaItems to MediaSources for all future calls to add or add.

Parameters
Context context

A Context.

Returns
ConcatenatingMediaSource2.Builder

This builder.