Commit 5b0e971f by bachinger Committed by Andrew Lewis

Make SingleSampleMediaSource provide a media item

This is part of go/exoplayer-playlist-retrieval which aims for all MediaSources to associate the media item to the corresponding window. Media items need to be added to the timeline which then assigns it to the window.mediaItem attribute.

PiperOrigin-RevId: 312065023
parent ef615754
...@@ -22,7 +22,6 @@ import android.util.SparseArray; ...@@ -22,7 +22,6 @@ import android.util.SparseArray;
import androidx.annotation.Nullable; import androidx.annotation.Nullable;
import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.ExoPlayerLibraryInfo; import com.google.android.exoplayer2.ExoPlayerLibraryInfo;
import com.google.android.exoplayer2.Format;
import com.google.android.exoplayer2.MediaItem; import com.google.android.exoplayer2.MediaItem;
import com.google.android.exoplayer2.drm.DefaultDrmSessionManager; import com.google.android.exoplayer2.drm.DefaultDrmSessionManager;
import com.google.android.exoplayer2.drm.DrmSessionManager; import com.google.android.exoplayer2.drm.DrmSessionManager;
...@@ -299,16 +298,9 @@ public final class DefaultMediaSourceFactory implements MediaSourceFactory { ...@@ -299,16 +298,9 @@ public final class DefaultMediaSourceFactory implements MediaSourceFactory {
SingleSampleMediaSource.Factory singleSampleSourceFactory = SingleSampleMediaSource.Factory singleSampleSourceFactory =
new SingleSampleMediaSource.Factory(dataSourceFactory); new SingleSampleMediaSource.Factory(dataSourceFactory);
for (int i = 0; i < subtitles.size(); i++) { for (int i = 0; i < subtitles.size(); i++) {
MediaItem.Subtitle subtitle = subtitles.get(i);
Format subtitleFormat =
new Format.Builder()
.setSampleMimeType(subtitle.mimeType)
.setLanguage(subtitle.language)
.setSelectionFlags(subtitle.selectionFlags)
.build();
mediaSources[i + 1] = mediaSources[i + 1] =
singleSampleSourceFactory.createMediaSource( singleSampleSourceFactory.createMediaSource(
subtitle.uri, subtitleFormat, /* durationUs= */ C.TIME_UNSET); subtitles.get(i), /* durationUs= */ C.TIME_UNSET);
} }
mediaSource = new MergingMediaSource(mediaSources); mediaSource = new MergingMediaSource(mediaSources);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment