0

我需要在 Exo-player 中一一自动播放 ConcatenatingMediaSources。

我的 ConcatenatingMedia 源代码:

MediaSource movieMediaSource = MyExoPlayer.getMediaSourceFromUrl(StreamPlayerActivity.this, mLiveURL);
long oneMinute =  1000 * 1000 * 60 ;
ClippingMediaSource videoSource1 = new ClippingMediaSource(movieMediaSource, 0,  oneMinute,false);
ClippingMediaSource videoSource2 = new ClippingMediaSource(movieMediaSource,  oneMinute, 2 * oneMinute,false);
ClippingMediaSource videoSource3 = new ClippingMediaSource(movieMediaSource, 2 * oneMinute, 10 * oneMinute,false);

MediaSource adVideoSource1 = MyExoPlayer.getMediaSourceFromUrl(StreamPlayerActivity.this, mPromoVideoURL1);
MediaSource adVideoSource2 = MyExoPlayer.getMediaSourceFromUrl(StreamPlayerActivity.this, mPromoVideoURL2);
ConcatenatingMediaSource concatenatingMediaSource = new ConcatenatingMediaSource(videoSource1, adVideoSource1, videoSource2, adVideoSource2, videoSource3);

我的玩家准备:

mExoPlayer.prepare(mediaSource, false, false);

我目前在 onPlayerStateChanged() 中使用以下代码:

if (playWhenReady && (playbackState == PlaybackStateCompat.STATE_PAUSED)) 
{
mExoPlayer.seekToDefaultPosition(mTrack);
mTrack++;
}

我只是寻找轨道位置。

这是手动搜索。但我想一个接一个地自动播放。

我无法自动播放选项 Exoplayer。任何人都可以帮助我

4

1 回答 1

1

使用 player.prepare(concatenatingMediaSource)。这应该有效。

于 2017-11-08T06:55:28.230 回答