android13/external/exoplayer/tree_15dc86382f17a24a3e881e.../docs/progressive.md

1.4 KiB

title
Progressive

{% include_relative _page_fragments/supported-formats-progressive.md %}

Using MediaItem

To play a progressive stream, create a MediaItem with the media URI and pass it to the player.

// Create a player instance.
ExoPlayer player = new ExoPlayer.Builder(context).build();
// Set the media item to be played.
player.setMediaItem(MediaItem.fromUri(progressiveUri));
// Prepare the player.
player.prepare();

{: .language-java}

Using ProgressiveMediaSource

For more customization options, you can create a ProgressiveMediaSource and directly to the player instead of a MediaItem.

// Create a data source factory.
DataSource.Factory dataSourceFactory = new DefaultHttpDataSource.Factory();
// Create a progressive media source pointing to a stream uri.
MediaSource mediaSource = new ProgressiveMediaSource.Factory(dataSourceFactory)
    .createMediaSource(MediaItem.fromUri(progressiveUri));
// Create a player instance.
ExoPlayer player = new ExoPlayer.Builder(context).build();
// Set the media source to be played.
player.setMediaSource(mediaSource);
// Prepare the player.
player.prepare();

{: .language-java}

Customizing playback

ExoPlayer provides multiple ways for you to tailor playback experience to your app's needs. See the [Customization page][] for examples.

[Customization page]: {{ site.baseurl }}/customization.html