17

我正在尝试使用 Google 的ExoPlayerhttp://developer.android.com/guide/topics/media/exoplayer.html)在 android 设备上播放 DASH 视频。文档非常非常差,我找不到使用 DASH 的一些最简单的工作示例(如果有人这样做的话)。在视频 ( https://www.youtube.com/watch?v=6VjF638VObA#t=462 ) 中,它看起来很简单,但实际上有很多未知对象。我只想使用 ExoPlayer 库而不使用他们的 github 演示,因为它非常复杂,而且我没有找到添加测试 URL 的方法,因为所有示例都来自 YouTube。

谢谢

4

2 回答 2

13

这是一个简单的破折号播放示例,它将播放您的流内容到SimpleExoPlayerViewfrom exoplayer-ui

添加SimpleExoPlayerView到您的布局并使用下面的代码

    SimpleExoPlayerView exoPlayerView = (SimpleExoPlayerView) findViewById(R.id.exo_player_view);

    DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(this, Util.getUserAgent(this, "ExoPlayer"));
    Uri uri = Uri.parse("http://your_host/dash/stream.mpd");
    DashMediaSource dashMediaSource = new DashMediaSource(uri, dataSourceFactory,
            new DefaultDashChunkSource.Factory(dataSourceFactory), null, null);

    BandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
    TrackSelector trackSelector = new DefaultTrackSelector(new AdaptiveTrackSelection.Factory(bandwidthMeter));

    SimpleExoPlayer simpleExoPlayer = ExoPlayerFactory.newSimpleInstance(this, trackSelector);

    exoPlayerView.setPlayer(simpleExoPlayer);
    simpleExoPlayer.prepare(dashMediaSource);

还将依赖项添加到您的build.gradle

compile 'com.google.android.exoplayer:exoplayer-core:r2.4.0'
compile 'com.google.android.exoplayer:exoplayer-dash:r2.4.0'
compile 'com.google.android.exoplayer:exoplayer-hls:r2.4.0'
compile 'com.google.android.exoplayer:exoplayer-smoothstreaming:r2.4.0'
compile 'com.google.android.exoplayer:exoplayer-ui:r2.4.0'
于 2017-04-28T10:50:42.787 回答
-1

实际上,将您的测试 URL 添加到 Github 中提供的 ExoPlayer 演示应用程序非常简单。

我试图在这里解释确切的步骤https://stackoverflow.com/a/29722423/4805417

于 2015-04-21T05:10:42.437 回答