Exoplayer2 HLS Stream Android

时间:2017-03-22 21:05:29

标签: android live-streaming hls exoplayer exoplayer2.x

我正在使用此示例在Android上执行HLS。但是我使用的每个播放列表都会保持播放最低分辨率。你们有什么想法吗?

这是来自https://github.com/ayalus/ExoPlayer-2-Example/blob/master/ExoPlayer2Example/app/src/main/java/com/ayalus/exoplayer2example/MainActivity.java的示例。

所以也许它在trackselector上,我不知道。我需要帮助:(

public class MainActivity extends AppCompatActivity {


private static final String TAG = "MainActivity";
private SimpleExoPlayerView simpleExoPlayerView;
private SimpleExoPlayer player;
private ExoPlayer.EventListener exoPlayerEventListener;


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Log.v(TAG,"portrait detected...");
    setContentView(R.layout.activity_main);


    Handler mainHandler = new Handler();
    BandwidthMeter bandwidthMeter = new DefaultBandwidthMeter();
    TrackSelection.Factory videoTrackSelectionFactory = new AdaptiveVideoTrackSelection.Factory(bandwidthMeter);
    TrackSelector trackSelector = new DefaultTrackSelector(mainHandler, videoTrackSelectionFactory);

    LoadControl loadControl = new DefaultLoadControl();


    player = ExoPlayerFactory.newSimpleInstance(this, trackSelector, loadControl);
    simpleExoPlayerView = new SimpleExoPlayerView(this);
    simpleExoPlayerView = (SimpleExoPlayerView) findViewById(R.id.player_view);


    simpleExoPlayerView.setUseController(true);
    simpleExoPlayerView.requestFocus();


    simpleExoPlayerView.setPlayer(player);Uri mp4VideoUri=Uri.parse("http://23.237.4.162:8080/Skysports1/index.m3u8");





    DefaultBandwidthMeter bandwidthMeterA = new DefaultBandwidthMeter();

DataSource.Factory dataSourceFactory = new DefaultDataSourceFactory(this, Util.getUserAgent(this, "exoplayer2example"), bandwidthMeterA);
    DefaultDataSourceFactory dataSourceFactory = new DefaultDataSourceFactory(this, Util.getUserAgent(this, "exoplayer2example"), bandwidthMeterA);

    ExtractorsFactory extractorsFactory = new DefaultExtractorsFactory();

    MediaSource videoSource = new HlsMediaSource(mp4VideoUri, dataSourceFactory, 1, null, null);
    final LoopingMediaSource loopingSource = new LoopingMediaSource(videoSource);


    player.prepare(loopingSource);

0 个答案:

没有答案
相关问题