Ich habe 10 Videos, die ich spielen muss, sobald eine fertig ist, beginnt die nächste zu spielen.ExoPlayer - 10 Dateien hintereinander abspielen
Ich benutze Google's ExoPlayer, ich benutze das Beispiel in der DEMO @ GitHub. Ich kann 1 Video spielen, aber wenn ich versuche, den nächsten zu spielen, wird es nicht starten.
Wenn ich versuche, den Player erneut zu starten, und die Wiedergabe beginnt, stürzt es ab.
private void loadvideo() {
Uri uri = Uri.parse(VIDEO_LIBRARY_URL + currentVideo + ".mp4");
sampleSource = new FrameworkSampleSource(this, uri, null, 2);
// 1. Instantiate the player.
// 2. Construct renderers.
videoRenderer = new MediaCodecVideoTrackRenderer(sampleSource, MediaCodec.VIDEO_SCALING_MODE_SCALE_TO_FIT_WITH_CROPPING);
audioRenderer = new MediaCodecAudioTrackRenderer(sampleSource);
// 3. Inject the renderers through prepare.
player.prepare(videoRenderer, audioRenderer);
// 4. Pass the surface to the video renderer.
surface = surfaceView.getHolder().getSurface();
player.sendMessage(videoRenderer, MediaCodecVideoTrackRenderer.MSG_SET_SURFACE, surface);
// 5. Start playback.
player.setPlayWhenReady(true);
player.addListener(new ExoPlayer.Listener() {
@Override
public void onPlayerStateChanged(boolean playWhenReady, int playbackState) {
Log.d(TAG, "onPlayerStateChanged + " + playbackState);
if (playbackState == ExoPlayer.STATE_ENDED) {
currentVideo++;
loadNextVideo();
}
}
@Override
public void onPlayWhenReadyCommitted() {
}
@Override
public void onPlayerError(ExoPlaybackException error) {
}
});
}
Was mache ich falsch? Wie kann ich Videos Kontinuität spielen?
Danke.
welchen Fehler Sie in Crash bekommen? –
Wie sieht Ihr loadNextVideo() Code aus? –