在Exoplayer中一起播放不同的MediaSource

时间:2019-05-20 10:18:44

标签: android exoplayer exoplayer2.x

我坚持在Exoplayer中播放并行的不同媒体流

场景:

  • 我有一个音频媒体源。和一个Video MediaSource。
  • 我想同时在ExoPlayer中播放这两个媒体源

经过大量的研发,我发现了

我正在尝试但未能实现。 示例代码在这里

if (player == null) {
    player = ExoPlayerFactory.newSimpleInstance(ChangeAudioActivity.this, new DefaultRenderersFactory(this),
                new DefaultTrackSelector(), new DefaultLoadControl());
    playerView.setPlayer(player);
    player.setPlayWhenReady(playWhenReady);
    player.seekTo(currentWindow, playbackPosition);
}

MediaSource audiosource = new ProgressiveMediaSource.Factory(new FileDataSourceFactory()).createMediaSource(Uri.parse(videoModel.getAudio()));
MediaSource videoSource = new ProgressiveMediaSource.Factory(new FileDataSourceFactory()).createMediaSource(Uri.parse(videoModel.getVideo()));
player.prepare(new MergingMediaSource(videoSource , audiosource ), true, false);

我也参考了Exoplayer文档。

Exoplayer可以吗?预先感谢您的建议。

1 个答案:

答案 0 :(得分:2)

这是Exoplayer的问题,但我的观点不是问题,因为ExoPlayer的想法是有道理的。...

  • 如果您的视频已经有音频,那么为什么要播放第二音频?因此您的输入音频不会在exoplayer中添加或播放。
  • 但是您输入了不带音频的视频,并且还输入了第二个音频输入功能,因此肯定可以正常工作。

我了解!您想在exoPlayer中将双重音频播放与视频混合在一起,但没有任何编辑就不可能