Move playback tests off deprecated APIs
------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=210077548
This commit is contained in:
parent
a71e28440d
commit
38f2f352f9
@ -298,7 +298,7 @@ public class DashDownloaderTest {
|
||||
}
|
||||
|
||||
private DashDownloader getDashDownloader(FakeDataSet fakeDataSet, StreamKey... keys) {
|
||||
return getDashDownloader(new Factory(null).setFakeDataSet(fakeDataSet), keys);
|
||||
return getDashDownloader(new Factory().setFakeDataSet(fakeDataSet), keys);
|
||||
}
|
||||
|
||||
private DashDownloader getDashDownloader(Factory factory, StreamKey... keys) {
|
||||
|
@ -235,8 +235,7 @@ public class DownloadManagerDashTest {
|
||||
private void createDownloadManager() {
|
||||
dummyMainThread.runOnMainThread(
|
||||
() -> {
|
||||
Factory fakeDataSourceFactory =
|
||||
new FakeDataSource.Factory(null).setFakeDataSet(fakeDataSet);
|
||||
Factory fakeDataSourceFactory = new FakeDataSource.Factory().setFakeDataSet(fakeDataSet);
|
||||
downloadManager =
|
||||
new DownloadManager(
|
||||
new DownloaderConstructorHelper(cache, fakeDataSourceFactory),
|
||||
|
@ -101,7 +101,7 @@ public class DownloadServiceDashTest {
|
||||
.setRandomData("text_segment_2", 2)
|
||||
.setRandomData("text_segment_3", 3);
|
||||
final DataSource.Factory fakeDataSourceFactory =
|
||||
new FakeDataSource.Factory(null).setFakeDataSet(fakeDataSet);
|
||||
new FakeDataSource.Factory().setFakeDataSet(fakeDataSet);
|
||||
fakeStreamKey1 = new StreamKey(0, 0, 0);
|
||||
fakeStreamKey2 = new StreamKey(0, 1, 0);
|
||||
|
||||
|
@ -183,7 +183,7 @@ public class HlsDownloaderTest {
|
||||
}
|
||||
|
||||
private HlsDownloader getHlsDownloader(String mediaPlaylistUri, List<StreamKey> keys) {
|
||||
Factory factory = new Factory(null).setFakeDataSet(fakeDataSet);
|
||||
Factory factory = new Factory().setFakeDataSet(fakeDataSet);
|
||||
return new HlsDownloader(
|
||||
Uri.parse(mediaPlaylistUri), keys, new DownloaderConstructorHelper(cache, factory));
|
||||
}
|
||||
|
@ -25,6 +25,7 @@ import android.net.Uri;
|
||||
import android.util.Log;
|
||||
import android.view.Surface;
|
||||
import com.google.android.exoplayer2.C;
|
||||
import com.google.android.exoplayer2.DefaultLoadControl;
|
||||
import com.google.android.exoplayer2.ExoPlaybackException;
|
||||
import com.google.android.exoplayer2.ExoPlayerFactory;
|
||||
import com.google.android.exoplayer2.Format;
|
||||
@ -42,7 +43,6 @@ import com.google.android.exoplayer2.source.MediaSource;
|
||||
import com.google.android.exoplayer2.source.TrackGroup;
|
||||
import com.google.android.exoplayer2.source.TrackGroupArray;
|
||||
import com.google.android.exoplayer2.source.dash.DashMediaSource;
|
||||
import com.google.android.exoplayer2.source.dash.DefaultDashChunkSource;
|
||||
import com.google.android.exoplayer2.testutil.ActionSchedule;
|
||||
import com.google.android.exoplayer2.testutil.DebugRenderersFactory;
|
||||
import com.google.android.exoplayer2.testutil.DecoderCountersUtil;
|
||||
@ -55,11 +55,10 @@ import com.google.android.exoplayer2.trackselection.FixedTrackSelection;
|
||||
import com.google.android.exoplayer2.trackselection.MappingTrackSelector;
|
||||
import com.google.android.exoplayer2.trackselection.RandomTrackSelection;
|
||||
import com.google.android.exoplayer2.trackselection.TrackSelection;
|
||||
import com.google.android.exoplayer2.upstream.BandwidthMeter;
|
||||
import com.google.android.exoplayer2.upstream.DataSource;
|
||||
import com.google.android.exoplayer2.upstream.DefaultDataSourceFactory;
|
||||
import com.google.android.exoplayer2.upstream.DefaultHttpDataSourceFactory;
|
||||
import com.google.android.exoplayer2.upstream.TransferListener;
|
||||
import com.google.android.exoplayer2.upstream.DefaultLoadErrorHandlingPolicy;
|
||||
import com.google.android.exoplayer2.util.Assertions;
|
||||
import com.google.android.exoplayer2.util.Util;
|
||||
import java.util.ArrayList;
|
||||
@ -265,8 +264,7 @@ public final class DashTestRunner {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected DefaultTrackSelector buildTrackSelector(
|
||||
HostActivity host, BandwidthMeter bandwidthMeter) {
|
||||
protected DefaultTrackSelector buildTrackSelector(HostActivity host) {
|
||||
return trackSelector;
|
||||
}
|
||||
|
||||
@ -296,30 +294,31 @@ public final class DashTestRunner {
|
||||
}
|
||||
|
||||
@Override
|
||||
protected SimpleExoPlayer buildExoPlayer(HostActivity host, Surface surface,
|
||||
protected SimpleExoPlayer buildExoPlayer(
|
||||
HostActivity host,
|
||||
Surface surface,
|
||||
MappingTrackSelector trackSelector,
|
||||
DrmSessionManager<FrameworkMediaCrypto> drmSessionManager) {
|
||||
SimpleExoPlayer player =
|
||||
ExoPlayerFactory.newSimpleInstance(
|
||||
host, new DebugRenderersFactory(host), trackSelector, drmSessionManager);
|
||||
host,
|
||||
new DebugRenderersFactory(host),
|
||||
trackSelector,
|
||||
new DefaultLoadControl(),
|
||||
drmSessionManager);
|
||||
player.setVideoSurface(surface);
|
||||
return player;
|
||||
}
|
||||
|
||||
@Override
|
||||
protected MediaSource buildSource(
|
||||
HostActivity host, String userAgent, TransferListener mediaTransferListener) {
|
||||
DataSource.Factory manifestDataSourceFactory = dataSourceFactory != null
|
||||
? dataSourceFactory : new DefaultDataSourceFactory(host, userAgent);
|
||||
DataSource.Factory mediaDataSourceFactory = dataSourceFactory != null
|
||||
? dataSourceFactory
|
||||
: new DefaultDataSourceFactory(host, userAgent, mediaTransferListener);
|
||||
protected MediaSource buildSource(HostActivity host, String userAgent) {
|
||||
DataSource.Factory dataSourceFactory =
|
||||
this.dataSourceFactory != null
|
||||
? this.dataSourceFactory
|
||||
: new DefaultDataSourceFactory(host, userAgent);
|
||||
Uri manifestUri = Uri.parse(manifestUrl);
|
||||
DefaultDashChunkSource.Factory chunkSourceFactory = new DefaultDashChunkSource.Factory(
|
||||
mediaDataSourceFactory);
|
||||
return new DashMediaSource.Factory(chunkSourceFactory, manifestDataSourceFactory)
|
||||
.setMinLoadableRetryCount(MIN_LOADABLE_RETRY_COUNT)
|
||||
.setLivePresentationDelayMs(0)
|
||||
return new DashMediaSource.Factory(dataSourceFactory)
|
||||
.setLoadErrorHandlingPolicy(new DefaultLoadErrorHandlingPolicy(MIN_LOADABLE_RETRY_COUNT))
|
||||
.createMediaSource(manifestUri);
|
||||
}
|
||||
|
||||
|
@ -22,6 +22,7 @@ import android.os.Looper;
|
||||
import android.os.SystemClock;
|
||||
import android.util.Log;
|
||||
import android.view.Surface;
|
||||
import com.google.android.exoplayer2.DefaultLoadControl;
|
||||
import com.google.android.exoplayer2.DefaultRenderersFactory;
|
||||
import com.google.android.exoplayer2.ExoPlaybackException;
|
||||
import com.google.android.exoplayer2.ExoPlayer;
|
||||
@ -30,6 +31,7 @@ import com.google.android.exoplayer2.Format;
|
||||
import com.google.android.exoplayer2.Player;
|
||||
import com.google.android.exoplayer2.RenderersFactory;
|
||||
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||
import com.google.android.exoplayer2.analytics.AnalyticsListener;
|
||||
import com.google.android.exoplayer2.audio.AudioRendererEventListener;
|
||||
import com.google.android.exoplayer2.audio.DefaultAudioSink;
|
||||
import com.google.android.exoplayer2.decoder.DecoderCounters;
|
||||
@ -40,9 +42,6 @@ import com.google.android.exoplayer2.testutil.HostActivity.HostedTest;
|
||||
import com.google.android.exoplayer2.trackselection.AdaptiveTrackSelection;
|
||||
import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
|
||||
import com.google.android.exoplayer2.trackselection.MappingTrackSelector;
|
||||
import com.google.android.exoplayer2.upstream.BandwidthMeter;
|
||||
import com.google.android.exoplayer2.upstream.DefaultBandwidthMeter;
|
||||
import com.google.android.exoplayer2.upstream.TransferListener;
|
||||
import com.google.android.exoplayer2.util.Clock;
|
||||
import com.google.android.exoplayer2.util.HandlerWrapper;
|
||||
import com.google.android.exoplayer2.util.Util;
|
||||
@ -80,9 +79,7 @@ public abstract class ExoHostedTest
|
||||
private SimpleExoPlayer player;
|
||||
private Surface surface;
|
||||
private ExoPlaybackException playerError;
|
||||
private Player.EventListener playerEventListener;
|
||||
private VideoRendererEventListener videoDebugListener;
|
||||
private AudioRendererEventListener audioDebugListener;
|
||||
private AnalyticsListener analyticsListener;
|
||||
private boolean playerWasPrepared;
|
||||
|
||||
private boolean playing;
|
||||
@ -135,33 +132,11 @@ public abstract class ExoHostedTest
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets an {@link Player.EventListener} to listen for ExoPlayer events during the test.
|
||||
*/
|
||||
public final void setEventListener(Player.EventListener eventListener) {
|
||||
this.playerEventListener = eventListener;
|
||||
/** Sets an {@link AnalyticsListener} to listen for events during the test. */
|
||||
public final void setAnalyticsListener(AnalyticsListener analyticsListener) {
|
||||
this.analyticsListener = analyticsListener;
|
||||
if (player != null) {
|
||||
player.addListener(eventListener);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets an {@link VideoRendererEventListener} to listen for video debug events during the test.
|
||||
*/
|
||||
public final void setVideoDebugListener(VideoRendererEventListener videoDebugListener) {
|
||||
this.videoDebugListener = videoDebugListener;
|
||||
if (player != null) {
|
||||
player.addVideoDebugListener(videoDebugListener);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets an {@link AudioRendererEventListener} to listen for audio debug events during the test.
|
||||
*/
|
||||
public final void setAudioDebugListener(AudioRendererEventListener audioDebugListener) {
|
||||
this.audioDebugListener = audioDebugListener;
|
||||
if (player != null) {
|
||||
player.addAudioDebugListener(audioDebugListener);
|
||||
player.addAnalyticsListener(analyticsListener);
|
||||
}
|
||||
}
|
||||
|
||||
@ -171,20 +146,13 @@ public abstract class ExoHostedTest
|
||||
public final void onStart(HostActivity host, Surface surface) {
|
||||
this.surface = surface;
|
||||
// Build the player.
|
||||
DefaultBandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
|
||||
trackSelector = buildTrackSelector(host, bandwidthMeter);
|
||||
trackSelector = buildTrackSelector(host);
|
||||
String userAgent = "ExoPlayerPlaybackTests";
|
||||
DrmSessionManager<FrameworkMediaCrypto> drmSessionManager = buildDrmSessionManager(userAgent);
|
||||
player = buildExoPlayer(host, surface, trackSelector, drmSessionManager);
|
||||
player.prepare(buildSource(host, Util.getUserAgent(host, userAgent), bandwidthMeter));
|
||||
if (playerEventListener != null) {
|
||||
player.addListener(playerEventListener);
|
||||
}
|
||||
if (videoDebugListener != null) {
|
||||
player.addVideoDebugListener(videoDebugListener);
|
||||
}
|
||||
if (audioDebugListener != null) {
|
||||
player.addAudioDebugListener(audioDebugListener);
|
||||
player.prepare(buildSource(host, Util.getUserAgent(host, userAgent)));
|
||||
if (analyticsListener != null) {
|
||||
player.addAnalyticsListener(analyticsListener);
|
||||
}
|
||||
player.addListener(this);
|
||||
player.addAudioDebugListener(this);
|
||||
@ -354,26 +322,30 @@ public abstract class ExoHostedTest
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
protected DefaultTrackSelector buildTrackSelector(
|
||||
HostActivity host, BandwidthMeter bandwidthMeter) {
|
||||
return new DefaultTrackSelector(new AdaptiveTrackSelection.Factory(bandwidthMeter));
|
||||
protected DefaultTrackSelector buildTrackSelector(HostActivity host) {
|
||||
return new DefaultTrackSelector(new AdaptiveTrackSelection.Factory());
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
protected SimpleExoPlayer buildExoPlayer(HostActivity host, Surface surface,
|
||||
protected SimpleExoPlayer buildExoPlayer(
|
||||
HostActivity host,
|
||||
Surface surface,
|
||||
MappingTrackSelector trackSelector,
|
||||
DrmSessionManager<FrameworkMediaCrypto> drmSessionManager) {
|
||||
RenderersFactory renderersFactory = new DefaultRenderersFactory(host, drmSessionManager,
|
||||
DefaultRenderersFactory.EXTENSION_RENDERER_MODE_OFF, 0);
|
||||
RenderersFactory renderersFactory =
|
||||
new DefaultRenderersFactory(
|
||||
host,
|
||||
DefaultRenderersFactory.EXTENSION_RENDERER_MODE_OFF,
|
||||
/* allowedVideoJoiningTimeMs= */ 0);
|
||||
SimpleExoPlayer player =
|
||||
ExoPlayerFactory.newSimpleInstance(host, renderersFactory, trackSelector);
|
||||
ExoPlayerFactory.newSimpleInstance(
|
||||
host, renderersFactory, trackSelector, new DefaultLoadControl(), drmSessionManager);
|
||||
player.setVideoSurface(surface);
|
||||
return player;
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
protected abstract MediaSource buildSource(
|
||||
HostActivity host, String userAgent, TransferListener mediaTransferListener);
|
||||
protected abstract MediaSource buildSource(HostActivity host, String userAgent);
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
protected void onPlayerErrorInternal(ExoPlaybackException error) {
|
||||
|
@ -32,17 +32,16 @@ import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||
import com.google.android.exoplayer2.Timeline;
|
||||
import com.google.android.exoplayer2.analytics.AnalyticsCollector;
|
||||
import com.google.android.exoplayer2.analytics.AnalyticsListener;
|
||||
import com.google.android.exoplayer2.audio.AudioRendererEventListener;
|
||||
import com.google.android.exoplayer2.source.MediaSource;
|
||||
import com.google.android.exoplayer2.source.TrackGroupArray;
|
||||
import com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
|
||||
import com.google.android.exoplayer2.trackselection.TrackSelectionArray;
|
||||
import com.google.android.exoplayer2.trackselection.TrackSelector;
|
||||
import com.google.android.exoplayer2.upstream.BandwidthMeter;
|
||||
import com.google.android.exoplayer2.upstream.DefaultBandwidthMeter;
|
||||
import com.google.android.exoplayer2.util.Clock;
|
||||
import com.google.android.exoplayer2.util.HandlerWrapper;
|
||||
import com.google.android.exoplayer2.util.MimeTypes;
|
||||
import com.google.android.exoplayer2.video.VideoRendererEventListener;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Arrays;
|
||||
import java.util.concurrent.CountDownLatch;
|
||||
@ -77,13 +76,12 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
private MediaSource mediaSource;
|
||||
private DefaultTrackSelector trackSelector;
|
||||
private LoadControl loadControl;
|
||||
private BandwidthMeter bandwidthMeter;
|
||||
private Format[] supportedFormats;
|
||||
private Renderer[] renderers;
|
||||
private RenderersFactory renderersFactory;
|
||||
private ActionSchedule actionSchedule;
|
||||
private Player.EventListener eventListener;
|
||||
private VideoRendererEventListener videoRendererEventListener;
|
||||
private AudioRendererEventListener audioRendererEventListener;
|
||||
private AnalyticsListener analyticsListener;
|
||||
private Integer expectedPlayerEndedCount;
|
||||
|
||||
@ -158,6 +156,18 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets the {@link BandwidthMeter} to be used by the test runner. The default value is a {@link
|
||||
* DefaultBandwidthMeter} in its default configuration.
|
||||
*
|
||||
* @param bandwidthMeter The {@link BandwidthMeter} to be used by the test runner.
|
||||
* @return This builder.
|
||||
*/
|
||||
public Builder setBandwidthMeter(BandwidthMeter bandwidthMeter) {
|
||||
this.bandwidthMeter = bandwidthMeter;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets a list of {@link Format}s to be used by a {@link FakeMediaSource} to create media
|
||||
* periods and for setting up a {@link FakeRenderer}. The default value is a single
|
||||
@ -238,28 +248,6 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets a {@link VideoRendererEventListener} to be registered.
|
||||
*
|
||||
* @param eventListener A {@link VideoRendererEventListener} to be registered.
|
||||
* @return This builder.
|
||||
*/
|
||||
public Builder setVideoRendererEventListener(VideoRendererEventListener eventListener) {
|
||||
this.videoRendererEventListener = eventListener;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets an {@link AudioRendererEventListener} to be registered.
|
||||
*
|
||||
* @param eventListener An {@link AudioRendererEventListener} to be registered.
|
||||
* @return This builder.
|
||||
*/
|
||||
public Builder setAudioRendererEventListener(AudioRendererEventListener eventListener) {
|
||||
this.audioRendererEventListener = eventListener;
|
||||
return this;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets an {@link AnalyticsListener} to be registered.
|
||||
*
|
||||
@ -298,6 +286,9 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
if (trackSelector == null) {
|
||||
trackSelector = new DefaultTrackSelector();
|
||||
}
|
||||
if (bandwidthMeter == null) {
|
||||
bandwidthMeter = new DefaultBandwidthMeter.Builder().build();
|
||||
}
|
||||
if (renderersFactory == null) {
|
||||
if (renderers == null) {
|
||||
renderers = new Renderer[] {new FakeRenderer(supportedFormats)};
|
||||
@ -332,10 +323,9 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
renderersFactory,
|
||||
trackSelector,
|
||||
loadControl,
|
||||
bandwidthMeter,
|
||||
actionSchedule,
|
||||
eventListener,
|
||||
videoRendererEventListener,
|
||||
audioRendererEventListener,
|
||||
analyticsListener,
|
||||
expectedPlayerEndedCount);
|
||||
}
|
||||
@ -347,10 +337,9 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
private final RenderersFactory renderersFactory;
|
||||
private final DefaultTrackSelector trackSelector;
|
||||
private final LoadControl loadControl;
|
||||
private final BandwidthMeter bandwidthMeter;
|
||||
private final @Nullable ActionSchedule actionSchedule;
|
||||
private final @Nullable Player.EventListener eventListener;
|
||||
private final @Nullable VideoRendererEventListener videoRendererEventListener;
|
||||
private final @Nullable AudioRendererEventListener audioRendererEventListener;
|
||||
private final @Nullable AnalyticsListener analyticsListener;
|
||||
|
||||
private final HandlerThread playerThread;
|
||||
@ -375,10 +364,9 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
RenderersFactory renderersFactory,
|
||||
DefaultTrackSelector trackSelector,
|
||||
LoadControl loadControl,
|
||||
BandwidthMeter bandwidthMeter,
|
||||
@Nullable ActionSchedule actionSchedule,
|
||||
@Nullable Player.EventListener eventListener,
|
||||
@Nullable VideoRendererEventListener videoRendererEventListener,
|
||||
@Nullable AudioRendererEventListener audioRendererEventListener,
|
||||
@Nullable AnalyticsListener analyticsListener,
|
||||
int expectedPlayerEndedCount) {
|
||||
this.context = context;
|
||||
@ -387,10 +375,9 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
this.renderersFactory = renderersFactory;
|
||||
this.trackSelector = trackSelector;
|
||||
this.loadControl = loadControl;
|
||||
this.bandwidthMeter = bandwidthMeter;
|
||||
this.actionSchedule = actionSchedule;
|
||||
this.eventListener = eventListener;
|
||||
this.videoRendererEventListener = videoRendererEventListener;
|
||||
this.audioRendererEventListener = audioRendererEventListener;
|
||||
this.analyticsListener = analyticsListener;
|
||||
this.timelines = new ArrayList<>();
|
||||
this.manifests = new ArrayList<>();
|
||||
@ -419,17 +406,11 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
try {
|
||||
player =
|
||||
new TestSimpleExoPlayer(
|
||||
context, renderersFactory, trackSelector, loadControl, clock);
|
||||
context, renderersFactory, trackSelector, loadControl, bandwidthMeter, clock);
|
||||
player.addListener(ExoPlayerTestRunner.this);
|
||||
if (eventListener != null) {
|
||||
player.addListener(eventListener);
|
||||
}
|
||||
if (videoRendererEventListener != null) {
|
||||
player.addVideoDebugListener(videoRendererEventListener);
|
||||
}
|
||||
if (audioRendererEventListener != null) {
|
||||
player.addAudioDebugListener(audioRendererEventListener);
|
||||
}
|
||||
if (analyticsListener != null) {
|
||||
player.addAnalyticsListener(analyticsListener);
|
||||
}
|
||||
@ -648,6 +629,7 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
RenderersFactory renderersFactory,
|
||||
TrackSelector trackSelector,
|
||||
LoadControl loadControl,
|
||||
BandwidthMeter bandwidthMeter,
|
||||
Clock clock) {
|
||||
super(
|
||||
context,
|
||||
@ -655,7 +637,7 @@ public final class ExoPlayerTestRunner implements Player.EventListener, ActionSc
|
||||
trackSelector,
|
||||
loadControl,
|
||||
/* drmSessionManager= */ null,
|
||||
new DefaultBandwidthMeter.Builder().build(),
|
||||
bandwidthMeter,
|
||||
new AnalyticsCollector.Factory(),
|
||||
clock,
|
||||
Looper.myLooper());
|
||||
|
@ -15,12 +15,10 @@
|
||||
*/
|
||||
package com.google.android.exoplayer2.testutil;
|
||||
|
||||
import android.os.Handler;
|
||||
import android.support.annotation.Nullable;
|
||||
import com.google.android.exoplayer2.Timeline;
|
||||
import com.google.android.exoplayer2.Timeline.Period;
|
||||
import com.google.android.exoplayer2.source.MediaSource;
|
||||
import com.google.android.exoplayer2.source.MediaSourceEventListener;
|
||||
import com.google.android.exoplayer2.source.MediaSourceEventListener.EventDispatcher;
|
||||
import com.google.android.exoplayer2.source.TrackGroupArray;
|
||||
import com.google.android.exoplayer2.upstream.Allocator;
|
||||
@ -38,12 +36,9 @@ public class FakeAdaptiveMediaSource extends FakeMediaSource {
|
||||
Timeline timeline,
|
||||
Object manifest,
|
||||
TrackGroupArray trackGroupArray,
|
||||
Handler eventHandler,
|
||||
MediaSourceEventListener eventListener,
|
||||
FakeChunkSource.Factory chunkSourceFactory) {
|
||||
super(timeline, manifest, trackGroupArray);
|
||||
this.chunkSourceFactory = chunkSourceFactory;
|
||||
addEventListener(eventHandler, eventListener);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -16,7 +16,6 @@
|
||||
package com.google.android.exoplayer2.testutil;
|
||||
|
||||
import android.net.Uri;
|
||||
import android.support.annotation.Nullable;
|
||||
import com.google.android.exoplayer2.C;
|
||||
import com.google.android.exoplayer2.testutil.FakeDataSet.FakeData;
|
||||
import com.google.android.exoplayer2.testutil.FakeDataSet.FakeData.Segment;
|
||||
@ -24,7 +23,6 @@ import com.google.android.exoplayer2.upstream.BaseDataSource;
|
||||
import com.google.android.exoplayer2.upstream.DataSource;
|
||||
import com.google.android.exoplayer2.upstream.DataSourceException;
|
||||
import com.google.android.exoplayer2.upstream.DataSpec;
|
||||
import com.google.android.exoplayer2.upstream.TransferListener;
|
||||
import com.google.android.exoplayer2.util.Assertions;
|
||||
import java.io.IOException;
|
||||
import java.util.ArrayList;
|
||||
@ -40,14 +38,9 @@ public class FakeDataSource extends BaseDataSource {
|
||||
*/
|
||||
public static class Factory implements DataSource.Factory {
|
||||
|
||||
protected final TransferListener transferListener;
|
||||
protected FakeDataSet fakeDataSet;
|
||||
protected boolean isNetwork;
|
||||
|
||||
public Factory(@Nullable TransferListener transferListener) {
|
||||
this.transferListener = transferListener;
|
||||
}
|
||||
|
||||
public final Factory setFakeDataSet(FakeDataSet fakeDataSet) {
|
||||
this.fakeDataSet = fakeDataSet;
|
||||
return this;
|
||||
@ -60,11 +53,7 @@ public class FakeDataSource extends BaseDataSource {
|
||||
|
||||
@Override
|
||||
public DataSource createDataSource() {
|
||||
FakeDataSource dataSource = new FakeDataSource(fakeDataSet, isNetwork);
|
||||
if (transferListener != null) {
|
||||
dataSource.addTransferListener(transferListener);
|
||||
}
|
||||
return dataSource;
|
||||
return new FakeDataSource(fakeDataSet, isNetwork);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user