mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00
Switch tests to use SimpleExoPlayer
PiperOrigin-RevId: 366033200
This commit is contained in:
parent
c02288452b
commit
f5a4f3e609
@ -24,9 +24,11 @@ import androidx.annotation.Nullable;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import com.google.android.exoplayer2.ExoPlaybackException;
|
||||
import com.google.android.exoplayer2.ExoPlayer;
|
||||
import com.google.android.exoplayer2.MediaItem;
|
||||
import com.google.android.exoplayer2.Player;
|
||||
import com.google.android.exoplayer2.Renderer;
|
||||
import com.google.android.exoplayer2.RenderersFactory;
|
||||
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||
import com.google.android.exoplayer2.audio.AudioProcessor;
|
||||
import com.google.android.exoplayer2.audio.AudioSink;
|
||||
import com.google.android.exoplayer2.audio.DefaultAudioSink;
|
||||
@ -93,7 +95,7 @@ public class FlacPlaybackTest {
|
||||
private final Uri uri;
|
||||
private final AudioSink audioSink;
|
||||
|
||||
@Nullable private ExoPlayer player;
|
||||
@Nullable private SimpleExoPlayer player;
|
||||
@Nullable private ExoPlaybackException playbackException;
|
||||
|
||||
public TestPlaybackRunnable(Uri uri, Context context, AudioSink audioSink) {
|
||||
@ -105,9 +107,16 @@ public class FlacPlaybackTest {
|
||||
@Override
|
||||
public void run() {
|
||||
Looper.prepare();
|
||||
LibflacAudioRenderer audioRenderer =
|
||||
new LibflacAudioRenderer(/* eventHandler= */ null, /* eventListener= */ null, audioSink);
|
||||
player = new ExoPlayer.Builder(context, audioRenderer).build();
|
||||
RenderersFactory renderersFactory =
|
||||
(eventHandler,
|
||||
videoRendererEventListener,
|
||||
audioRendererEventListener,
|
||||
textRendererOutput,
|
||||
metadataRendererOutput) ->
|
||||
new Renderer[] {
|
||||
new LibflacAudioRenderer(eventHandler, audioRendererEventListener, audioSink)
|
||||
};
|
||||
player = new SimpleExoPlayer.Builder(context, renderersFactory).build();
|
||||
player.addListener(this);
|
||||
MediaSource mediaSource =
|
||||
new ProgressiveMediaSource.Factory(
|
||||
|
@ -24,9 +24,11 @@ import androidx.annotation.Nullable;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import com.google.android.exoplayer2.ExoPlaybackException;
|
||||
import com.google.android.exoplayer2.ExoPlayer;
|
||||
import com.google.android.exoplayer2.MediaItem;
|
||||
import com.google.android.exoplayer2.Player;
|
||||
import com.google.android.exoplayer2.Renderer;
|
||||
import com.google.android.exoplayer2.RenderersFactory;
|
||||
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||
import com.google.android.exoplayer2.extractor.mkv.MatroskaExtractor;
|
||||
import com.google.android.exoplayer2.source.MediaSource;
|
||||
import com.google.android.exoplayer2.source.ProgressiveMediaSource;
|
||||
@ -76,7 +78,7 @@ public class OpusPlaybackTest {
|
||||
private final Context context;
|
||||
private final Uri uri;
|
||||
|
||||
@Nullable private ExoPlayer player;
|
||||
@Nullable private SimpleExoPlayer player;
|
||||
@Nullable private ExoPlaybackException playbackException;
|
||||
|
||||
public TestPlaybackRunnable(Uri uri, Context context) {
|
||||
@ -87,8 +89,14 @@ public class OpusPlaybackTest {
|
||||
@Override
|
||||
public void run() {
|
||||
Looper.prepare();
|
||||
LibopusAudioRenderer audioRenderer = new LibopusAudioRenderer();
|
||||
player = new ExoPlayer.Builder(context, audioRenderer).build();
|
||||
RenderersFactory renderersFactory =
|
||||
(eventHandler,
|
||||
videoRendererEventListener,
|
||||
audioRendererEventListener,
|
||||
textRendererOutput,
|
||||
metadataRendererOutput) ->
|
||||
new Renderer[] {new LibopusAudioRenderer(eventHandler, audioRendererEventListener)};
|
||||
player = new SimpleExoPlayer.Builder(context, renderersFactory).build();
|
||||
player.addListener(this);
|
||||
MediaSource mediaSource =
|
||||
new ProgressiveMediaSource.Factory(
|
||||
|
@ -25,10 +25,11 @@ import androidx.annotation.Nullable;
|
||||
import androidx.test.core.app.ApplicationProvider;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
import com.google.android.exoplayer2.ExoPlaybackException;
|
||||
import com.google.android.exoplayer2.ExoPlayer;
|
||||
import com.google.android.exoplayer2.MediaItem;
|
||||
import com.google.android.exoplayer2.Player;
|
||||
import com.google.android.exoplayer2.Renderer;
|
||||
import com.google.android.exoplayer2.RenderersFactory;
|
||||
import com.google.android.exoplayer2.SimpleExoPlayer;
|
||||
import com.google.android.exoplayer2.extractor.mkv.MatroskaExtractor;
|
||||
import com.google.android.exoplayer2.source.MediaSource;
|
||||
import com.google.android.exoplayer2.source.ProgressiveMediaSource;
|
||||
@ -105,7 +106,7 @@ public class VpxPlaybackTest {
|
||||
private final Context context;
|
||||
private final Uri uri;
|
||||
|
||||
@Nullable private ExoPlayer player;
|
||||
@Nullable private SimpleExoPlayer player;
|
||||
@Nullable private ExoPlaybackException playbackException;
|
||||
|
||||
public TestPlaybackRunnable(Uri uri, Context context) {
|
||||
@ -116,18 +117,26 @@ public class VpxPlaybackTest {
|
||||
@Override
|
||||
public void run() {
|
||||
Looper.prepare();
|
||||
LibvpxVideoRenderer videoRenderer = new LibvpxVideoRenderer(0);
|
||||
player = new ExoPlayer.Builder(context, videoRenderer).build();
|
||||
RenderersFactory renderersFactory =
|
||||
(eventHandler,
|
||||
videoRendererEventListener,
|
||||
audioRendererEventListener,
|
||||
textRendererOutput,
|
||||
metadataRendererOutput) ->
|
||||
new Renderer[] {
|
||||
new LibvpxVideoRenderer(
|
||||
/* allowedJoiningTimeMs= */ 0,
|
||||
eventHandler,
|
||||
videoRendererEventListener,
|
||||
/* maxDroppedFramesToNotify= */ -1)
|
||||
};
|
||||
player = new SimpleExoPlayer.Builder(context, renderersFactory).build();
|
||||
player.addListener(this);
|
||||
MediaSource mediaSource =
|
||||
new ProgressiveMediaSource.Factory(
|
||||
new DefaultDataSourceFactory(context), MatroskaExtractor.FACTORY)
|
||||
.createMediaSource(MediaItem.fromUri(uri));
|
||||
player
|
||||
.createMessage(videoRenderer)
|
||||
.setType(Renderer.MSG_SET_VIDEO_DECODER_OUTPUT_BUFFER_RENDERER)
|
||||
.setPayload(new VideoDecoderGLSurfaceView(context).getVideoDecoderOutputBufferRenderer())
|
||||
.send();
|
||||
player.setVideoSurfaceView(new VideoDecoderGLSurfaceView(context));
|
||||
player.setMediaSource(mediaSource);
|
||||
player.prepare();
|
||||
player.play();
|
||||
|
@ -19,6 +19,7 @@ android {
|
||||
// "pm clear" command after each test invocation. This command ensures
|
||||
// that the app's state is completely cleared between tests.
|
||||
testInstrumentationRunnerArguments clearPackageData: 'true'
|
||||
multiDexEnabled true
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
|
@ -176,7 +176,7 @@ public class MediaCodecVideoRenderer extends MediaCodecRenderer {
|
||||
allowedJoiningTimeMs,
|
||||
/* eventHandler= */ null,
|
||||
/* eventListener= */ null,
|
||||
/* maxDroppedFramesToNotify= */ -1);
|
||||
/* maxDroppedFramesToNotify= */ 0);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
x
Reference in New Issue
Block a user