Migrate callers to pass MediaItem to createMediaSource()

createMediaSource(Uri) is deprecated.

PiperOrigin-RevId: 321121383
This commit is contained in:
ibaker 2020-07-14 10:20:33 +01:00 committed by Oliver Woodman
parent d615a3a740
commit e9a8335381
12 changed files with 30 additions and 17 deletions

View File

@ -24,6 +24,7 @@ import android.widget.FrameLayout;
import android.widget.Toast; import android.widget.Toast;
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.MediaItem;
import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Player;
import com.google.android.exoplayer2.SimpleExoPlayer; import com.google.android.exoplayer2.SimpleExoPlayer;
import com.google.android.exoplayer2.drm.DefaultDrmSessionManager; import com.google.android.exoplayer2.drm.DefaultDrmSessionManager;
@ -164,12 +165,12 @@ public final class MainActivity extends Activity {
mediaSource = mediaSource =
new DashMediaSource.Factory(dataSourceFactory) new DashMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManager(drmSessionManager)
.createMediaSource(uri); .createMediaSource(MediaItem.fromUri(uri));
} else if (type == C.TYPE_OTHER) { } else if (type == C.TYPE_OTHER) {
mediaSource = mediaSource =
new ProgressiveMediaSource.Factory(dataSourceFactory) new ProgressiveMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManager(drmSessionManager)
.createMediaSource(uri); .createMediaSource(MediaItem.fromUri(uri));
} else { } else {
throw new IllegalStateException(); throw new IllegalStateException();
} }

View File

@ -28,6 +28,7 @@ import android.widget.Button;
import android.widget.GridLayout; import android.widget.GridLayout;
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.MediaItem;
import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Player;
import com.google.android.exoplayer2.SimpleExoPlayer; import com.google.android.exoplayer2.SimpleExoPlayer;
import com.google.android.exoplayer2.drm.DefaultDrmSessionManager; import com.google.android.exoplayer2.drm.DefaultDrmSessionManager;
@ -209,12 +210,12 @@ public final class MainActivity extends Activity {
mediaSource = mediaSource =
new DashMediaSource.Factory(dataSourceFactory) new DashMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManager(drmSessionManager)
.createMediaSource(uri); .createMediaSource(MediaItem.fromUri(uri));
} else if (type == C.TYPE_OTHER) { } else if (type == C.TYPE_OTHER) {
mediaSource = mediaSource =
new ProgressiveMediaSource.Factory(dataSourceFactory) new ProgressiveMediaSource.Factory(dataSourceFactory)
.setDrmSessionManager(drmSessionManager) .setDrmSessionManager(drmSessionManager)
.createMediaSource(uri); .createMediaSource(MediaItem.fromUri(uri));
} else { } else {
throw new IllegalStateException(); throw new IllegalStateException();
} }

View File

@ -25,6 +25,7 @@ import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.ext.junit.runners.AndroidJUnit4;
import com.google.android.exoplayer2.ExoPlaybackException; import com.google.android.exoplayer2.ExoPlaybackException;
import com.google.android.exoplayer2.ExoPlayer; import com.google.android.exoplayer2.ExoPlayer;
import com.google.android.exoplayer2.MediaItem;
import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Player;
import com.google.android.exoplayer2.audio.AudioProcessor; import com.google.android.exoplayer2.audio.AudioProcessor;
import com.google.android.exoplayer2.audio.AudioSink; import com.google.android.exoplayer2.audio.AudioSink;
@ -109,7 +110,7 @@ public class FlacPlaybackTest {
new ProgressiveMediaSource.Factory( new ProgressiveMediaSource.Factory(
new DefaultDataSourceFactory(context, "ExoPlayerExtFlacTest"), new DefaultDataSourceFactory(context, "ExoPlayerExtFlacTest"),
MatroskaExtractor.FACTORY) MatroskaExtractor.FACTORY)
.createMediaSource(uri); .createMediaSource(MediaItem.fromUri(uri));
player.setMediaSource(mediaSource); player.setMediaSource(mediaSource);
player.prepare(); player.prepare();
player.play(); player.play();

View File

@ -80,8 +80,11 @@ import com.google.android.exoplayer2.util.Util;
dataSourceFactory = dataSourceFactory =
DataSourceCallbackDataSource.getFactory(callbackMediaItem.getDataSourceCallback()); DataSourceCallbackDataSource.getFactory(callbackMediaItem.getDataSourceCallback());
return new ProgressiveMediaSource.Factory(dataSourceFactory, sExtractorsFactory) return new ProgressiveMediaSource.Factory(dataSourceFactory, sExtractorsFactory)
.createMediaSource(
new com.google.android.exoplayer2.MediaItem.Builder()
.setUri(Uri.EMPTY)
.setTag(mediaItem) .setTag(mediaItem)
.createMediaSource(Uri.EMPTY); .build());
} else { } else {
throw new IllegalStateException(); throw new IllegalStateException();
} }
@ -185,13 +188,16 @@ import com.google.android.exoplayer2.util.Util;
MediaSourceFactory mediaSourceFactory = MediaSourceFactory mediaSourceFactory =
factoryClazz.getConstructor(DataSource.Factory.class).newInstance(dataSourceFactory); factoryClazz.getConstructor(DataSource.Factory.class).newInstance(dataSourceFactory);
factoryClazz.getMethod("setTag", Object.class).invoke(mediaSourceFactory, tag); factoryClazz.getMethod("setTag", Object.class).invoke(mediaSourceFactory, tag);
return mediaSourceFactory.createMediaSource(uri); return mediaSourceFactory.createMediaSource(
com.google.android.exoplayer2.MediaItem.fromUri(uri));
} }
// LINT.ThenChange(../../../../../../../../../proguard-rules.txt) // LINT.ThenChange(../../../../../../../../../proguard-rules.txt)
} catch (Exception e) { } catch (Exception e) {
// Expected if the app was built without the corresponding module. // Expected if the app was built without the corresponding module.
} }
return new ProgressiveMediaSource.Factory(dataSourceFactory).setTag(tag).createMediaSource(uri); return new ProgressiveMediaSource.Factory(dataSourceFactory)
.createMediaSource(
new com.google.android.exoplayer2.MediaItem.Builder().setUri(uri).setTag(tag).build());
} }
private Utils() { private Utils() {

View File

@ -25,6 +25,7 @@ import androidx.test.core.app.ApplicationProvider;
import androidx.test.ext.junit.runners.AndroidJUnit4; import androidx.test.ext.junit.runners.AndroidJUnit4;
import com.google.android.exoplayer2.ExoPlaybackException; import com.google.android.exoplayer2.ExoPlaybackException;
import com.google.android.exoplayer2.ExoPlayer; import com.google.android.exoplayer2.ExoPlayer;
import com.google.android.exoplayer2.MediaItem;
import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Player;
import com.google.android.exoplayer2.extractor.mkv.MatroskaExtractor; import com.google.android.exoplayer2.extractor.mkv.MatroskaExtractor;
import com.google.android.exoplayer2.source.MediaSource; import com.google.android.exoplayer2.source.MediaSource;
@ -93,7 +94,7 @@ public class OpusPlaybackTest {
new ProgressiveMediaSource.Factory( new ProgressiveMediaSource.Factory(
new DefaultDataSourceFactory(context, "ExoPlayerExtOpusTest"), new DefaultDataSourceFactory(context, "ExoPlayerExtOpusTest"),
MatroskaExtractor.FACTORY) MatroskaExtractor.FACTORY)
.createMediaSource(uri); .createMediaSource(MediaItem.fromUri(uri));
player.prepare(mediaSource); player.prepare(mediaSource);
player.play(); player.play();
Looper.loop(); Looper.loop();

View File

@ -27,6 +27,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4;
import com.google.android.exoplayer2.C; import com.google.android.exoplayer2.C;
import com.google.android.exoplayer2.ExoPlaybackException; import com.google.android.exoplayer2.ExoPlaybackException;
import com.google.android.exoplayer2.ExoPlayer; import com.google.android.exoplayer2.ExoPlayer;
import com.google.android.exoplayer2.MediaItem;
import com.google.android.exoplayer2.Player; import com.google.android.exoplayer2.Player;
import com.google.android.exoplayer2.extractor.mkv.MatroskaExtractor; import com.google.android.exoplayer2.extractor.mkv.MatroskaExtractor;
import com.google.android.exoplayer2.source.MediaSource; import com.google.android.exoplayer2.source.MediaSource;
@ -121,7 +122,7 @@ public class VpxPlaybackTest {
new ProgressiveMediaSource.Factory( new ProgressiveMediaSource.Factory(
new DefaultDataSourceFactory(context, "ExoPlayerExtVp9Test"), new DefaultDataSourceFactory(context, "ExoPlayerExtVp9Test"),
MatroskaExtractor.FACTORY) MatroskaExtractor.FACTORY)
.createMediaSource(uri); .createMediaSource(MediaItem.fromUri(uri));
player player
.createMessage(videoRenderer) .createMessage(videoRenderer)
.setType(C.MSG_SET_VIDEO_DECODER_OUTPUT_BUFFER_RENDERER) .setType(C.MSG_SET_VIDEO_DECODER_OUTPUT_BUFFER_RENDERER)

View File

@ -197,7 +197,7 @@ public final class ExtractorMediaSource extends CompositeMediaSource<Void> {
} }
/** /**
* @deprecated Use {@link #createMediaSource(Uri)} and {@link #addEventListener(Handler, * @deprecated Use {@link #createMediaSource(MediaItem)} and {@link #addEventListener(Handler,
* MediaSourceEventListener)} instead. * MediaSourceEventListener)} instead.
*/ */
@Deprecated @Deprecated

View File

@ -224,7 +224,8 @@ public final class AdsMediaSource extends CompositeMediaSource<MediaPeriodId> {
AdMediaSourceHolder adMediaSourceHolder = AdMediaSourceHolder adMediaSourceHolder =
adMediaSourceHolders[adGroupIndex][adIndexInAdGroup]; adMediaSourceHolders[adGroupIndex][adIndexInAdGroup];
if (adMediaSourceHolder == null) { if (adMediaSourceHolder == null) {
MediaSource adMediaSource = adMediaSourceFactory.createMediaSource(adUri); MediaSource adMediaSource =
adMediaSourceFactory.createMediaSource(MediaItem.fromUri(adUri));
adMediaSourceHolder = new AdMediaSourceHolder(adMediaSource); adMediaSourceHolder = new AdMediaSourceHolder(adMediaSource);
adMediaSourceHolders[adGroupIndex][adIndexInAdGroup] = adMediaSourceHolder; adMediaSourceHolders[adGroupIndex][adIndexInAdGroup] = adMediaSourceHolder;
prepareChildSource(id, adMediaSource); prepareChildSource(id, adMediaSource);

View File

@ -100,7 +100,8 @@ public final class AdsMediaSourceTest {
contentMediaSource = new FakeMediaSource(/* timeline= */ null); contentMediaSource = new FakeMediaSource(/* timeline= */ null);
prerollAdMediaSource = new FakeMediaSource(/* timeline= */ null); prerollAdMediaSource = new FakeMediaSource(/* timeline= */ null);
MediaSourceFactory adMediaSourceFactory = mock(MediaSourceFactory.class); MediaSourceFactory adMediaSourceFactory = mock(MediaSourceFactory.class);
when(adMediaSourceFactory.createMediaSource(any(Uri.class))).thenReturn(prerollAdMediaSource); when(adMediaSourceFactory.createMediaSource(any(MediaItem.class)))
.thenReturn(prerollAdMediaSource);
// Prepare the AdsMediaSource and capture its ads loader listener. // Prepare the AdsMediaSource and capture its ads loader listener.
AdsLoader mockAdsLoader = mock(AdsLoader.class); AdsLoader mockAdsLoader = mock(AdsLoader.class);

View File

@ -333,7 +333,7 @@ public final class DashMediaSource extends BaseMediaSource {
} }
/** /**
* @deprecated Use {@link #createMediaSource(Uri)} and {@link #addEventListener(Handler, * @deprecated Use {@link #createMediaSource(MediaItem)} and {@link #addEventListener(Handler,
* MediaSourceEventListener)} instead. * MediaSourceEventListener)} instead.
*/ */
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")

View File

@ -313,7 +313,7 @@ public final class HlsMediaSource extends BaseMediaSource
} }
/** /**
* @deprecated Use {@link #createMediaSource(Uri)} and {@link #addEventListener(Handler, * @deprecated Use {@link #createMediaSource(MediaItem)} and {@link #addEventListener(Handler,
* MediaSourceEventListener)} instead. * MediaSourceEventListener)} instead.
*/ */
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")

View File

@ -301,7 +301,7 @@ public final class SsMediaSource extends BaseMediaSource
} }
/** /**
* @deprecated Use {@link #createMediaSource(Uri)} and {@link #addEventListener(Handler, * @deprecated Use {@link #createMediaSource(MediaItem)} and {@link #addEventListener(Handler,
* MediaSourceEventListener)} instead. * MediaSourceEventListener)} instead.
*/ */
@SuppressWarnings("deprecation") @SuppressWarnings("deprecation")