import
android.net.Uri;
import
android.os.Bundle;
import
android.util.Log;
import
androidx.appcompat.app.AppCompatActivity;
import
com.google.android.exoplayer2.ExoPlayerFactory;
import
com.google.android.exoplayer2.SimpleExoPlayer;
import
com.google.android.exoplayer2.extractor.DefaultExtractorsFactory;
import
com.google.android.exoplayer2.extractor.ExtractorsFactory;
import
com.google.android.exoplayer2.source.ExtractorMediaSource;
import
com.google.android.exoplayer2.source.MediaSource;
import
com.google.android.exoplayer2.trackselection.AdaptiveTrackSelection;
import
com.google.android.exoplayer2.trackselection.DefaultTrackSelector;
import
com.google.android.exoplayer2.trackselection.TrackSelector;
import
com.google.android.exoplayer2.ui.SimpleExoPlayerView;
import
com.google.android.exoplayer2.upstream.BandwidthMeter;
import
com.google.android.exoplayer2.upstream.DefaultBandwidthMeter;
import
com.google.android.exoplayer2.upstream.DefaultHttpDataSourceFactory;
public
class
MainActivity
extends
AppCompatActivity {
SimpleExoPlayerView exoPlayerView;
SimpleExoPlayer exoPlayer;
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
exoPlayerView = findViewById(R.id.idExoPlayerVIew);
try
{
BandwidthMeter bandwidthMeter =
new
DefaultBandwidthMeter();
TrackSelector trackSelector =
new
DefaultTrackSelector(
new
AdaptiveTrackSelection.Factory(bandwidthMeter));
exoPlayer = ExoPlayerFactory.newSimpleInstance(
this
, trackSelector);
Uri videouri = Uri.parse(videoURL);
DefaultHttpDataSourceFactory dataSourceFactory =
new
DefaultHttpDataSourceFactory(
"exoplayer_video"
);
ExtractorsFactory extractorsFactory =
new
DefaultExtractorsFactory();
MediaSource mediaSource =
new
ExtractorMediaSource(videouri, dataSourceFactory, extractorsFactory,
null
,
null
);
exoPlayerView.setPlayer(exoPlayer);
exoPlayer.prepare(mediaSource);
exoPlayer.setPlayWhenReady(
true
);
}
catch
(Exception e) {
Log.e(
"TAG"
,
"Error : "
+ e.toString());
}
}
}