media/docs/doc/reference/com/google/android/exoplayer2/testutil/StubExoPlayer.html
2021-04-21 11:00:57 +01:00

2517 lines
200 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head><!-- start favicons snippet, use https://realfavicongenerator.net/ --><link rel="apple-touch-icon" sizes="180x180" href="/assets/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon-16x16.png"><link rel="manifest" href="/assets/site.webmanifest"><link rel="mask-icon" href="/assets/safari-pinned-tab.svg" color="#fc4d50"><link rel="shortcut icon" href="/assets/favicon.ico"><meta name="msapplication-TileColor" content="#ffc40d"><meta name="msapplication-config" content="/assets/browserconfig.xml"><meta name="theme-color" content="#ffffff"><!-- end favicons snippet -->
<title>StubExoPlayer (ExoPlayer library)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-1.10.2.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="StubExoPlayer (ExoPlayer library)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":42,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":10,"i52":42,"i53":42,"i54":42,"i55":10,"i56":10,"i57":10,"i58":10,"i59":42,"i60":10,"i61":10,"i62":10,"i63":10,"i64":10,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":10,"i71":10,"i72":10,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":10,"i80":10,"i81":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../../../";loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/google/android/exoplayer2/testutil/NoUidTimeline.html" title="class in com.google.android.exoplayer2.testutil"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/google/android/exoplayer2/testutil/TestExoPlayerBuilder.html" title="class in com.google.android.exoplayer2.testutil"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/google/android/exoplayer2/testutil/StubExoPlayer.html" target="_top">Frames</a></li>
<li><a href="StubExoPlayer.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.com.google.android.exoplayer2.BasePlayer">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="../../../../../com/google/android/exoplayer2/testutil/package-summary.html">com.google.android.exoplayer2.testutil</a></div>
<h2 title="Class StubExoPlayer" class="title">Class StubExoPlayer</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">com.google.android.exoplayer2.BasePlayer</a></li>
<li>
<ul class="inheritance">
<li>com.google.android.exoplayer2.testutil.StubExoPlayer</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code>, <code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
<hr>
<pre>public abstract class <span class="typeNameLabel">StubExoPlayer</span>
extends <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a>
implements <a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></pre>
<div class="block">An abstract <a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> implementation that throws <a href="https://developer.android.com/reference/java/lang/UnsupportedOperationException.html" title="class or interface in java.lang" class="externalLink" target="_top"><code>UnsupportedOperationException</code></a>
from every method.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.com.google.android.exoplayer2.ExoPlayer">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;com.google.android.exoplayer2.<a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></h3>
<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.Builder.html" title="class in com.google.android.exoplayer2">ExoPlayer.Builder</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.com.google.android.exoplayer2.Player">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;com.google.android.exoplayer2.<a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></h3>
<code><a href="../../../../../com/google/android/exoplayer2/Player.AudioComponent.html" title="interface in com.google.android.exoplayer2">Player.AudioComponent</a>, <a href="../../../../../com/google/android/exoplayer2/Player.DefaultEventListener.html" title="class in com.google.android.exoplayer2">Player.DefaultEventListener</a>, <a href="../../../../../com/google/android/exoplayer2/Player.DeviceComponent.html" title="interface in com.google.android.exoplayer2">Player.DeviceComponent</a>, <a href="../../../../../com/google/android/exoplayer2/Player.DiscontinuityReason.html" title="annotation in com.google.android.exoplayer2">Player.DiscontinuityReason</a>, <a href="../../../../../com/google/android/exoplayer2/Player.EventFlags.html" title="annotation in com.google.android.exoplayer2">Player.EventFlags</a>, <a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html" title="interface in com.google.android.exoplayer2">Player.EventListener</a>, <a href="../../../../../com/google/android/exoplayer2/Player.Events.html" title="class in com.google.android.exoplayer2">Player.Events</a>, <a href="../../../../../com/google/android/exoplayer2/Player.MediaItemTransitionReason.html" title="annotation in com.google.android.exoplayer2">Player.MediaItemTransitionReason</a>, <a href="../../../../../com/google/android/exoplayer2/Player.MetadataComponent.html" title="interface in com.google.android.exoplayer2">Player.MetadataComponent</a>, <a href="../../../../../com/google/android/exoplayer2/Player.PlaybackSuppressionReason.html" title="annotation in com.google.android.exoplayer2">Player.PlaybackSuppressionReason</a>, <a href="../../../../../com/google/android/exoplayer2/Player.PlayWhenReadyChangeReason.html" title="annotation in com.google.android.exoplayer2">Player.PlayWhenReadyChangeReason</a>, <a href="../../../../../com/google/android/exoplayer2/Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2">Player.RepeatMode</a>, <a href="../../../../../com/google/android/exoplayer2/Player.State.html" title="annotation in com.google.android.exoplayer2">Player.State</a>, <a href="../../../../../com/google/android/exoplayer2/Player.TextComponent.html" title="interface in com.google.android.exoplayer2">Player.TextComponent</a>, <a href="../../../../../com/google/android/exoplayer2/Player.TimelineChangeReason.html" title="annotation in com.google.android.exoplayer2">Player.TimelineChangeReason</a>, <a href="../../../../../com/google/android/exoplayer2/Player.VideoComponent.html" title="interface in com.google.android.exoplayer2">Player.VideoComponent</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.com.google.android.exoplayer2.BasePlayer">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;com.google.android.exoplayer2.<a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></h3>
<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#window">window</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.com.google.android.exoplayer2.ExoPlayer">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;com.google.android.exoplayer2.<a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></h3>
<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#DEFAULT_RELEASE_TIMEOUT_MS">DEFAULT_RELEASE_TIMEOUT_MS</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.com.google.android.exoplayer2.Player">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;com.google.android.exoplayer2.<a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></h3>
<code><a href="../../../../../com/google/android/exoplayer2/Player.html#DISCONTINUITY_REASON_AD_INSERTION">DISCONTINUITY_REASON_AD_INSERTION</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#DISCONTINUITY_REASON_INTERNAL">DISCONTINUITY_REASON_INTERNAL</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#DISCONTINUITY_REASON_PERIOD_TRANSITION">DISCONTINUITY_REASON_PERIOD_TRANSITION</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#DISCONTINUITY_REASON_SEEK">DISCONTINUITY_REASON_SEEK</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#DISCONTINUITY_REASON_SEEK_ADJUSTMENT">DISCONTINUITY_REASON_SEEK_ADJUSTMENT</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_IS_LOADING_CHANGED">EVENT_IS_LOADING_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_IS_PLAYING_CHANGED">EVENT_IS_PLAYING_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_MEDIA_ITEM_TRANSITION">EVENT_MEDIA_ITEM_TRANSITION</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_PLAY_WHEN_READY_CHANGED">EVENT_PLAY_WHEN_READY_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_PLAYBACK_PARAMETERS_CHANGED">EVENT_PLAYBACK_PARAMETERS_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_PLAYBACK_STATE_CHANGED">EVENT_PLAYBACK_STATE_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_PLAYBACK_SUPPRESSION_REASON_CHANGED">EVENT_PLAYBACK_SUPPRESSION_REASON_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_PLAYER_ERROR">EVENT_PLAYER_ERROR</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_POSITION_DISCONTINUITY">EVENT_POSITION_DISCONTINUITY</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_REPEAT_MODE_CHANGED">EVENT_REPEAT_MODE_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_SHUFFLE_MODE_ENABLED_CHANGED">EVENT_SHUFFLE_MODE_ENABLED_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_STATIC_METADATA_CHANGED">EVENT_STATIC_METADATA_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_TIMELINE_CHANGED">EVENT_TIMELINE_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#EVENT_TRACKS_CHANGED">EVENT_TRACKS_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#MEDIA_ITEM_TRANSITION_REASON_AUTO">MEDIA_ITEM_TRANSITION_REASON_AUTO</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#MEDIA_ITEM_TRANSITION_REASON_PLAYLIST_CHANGED">MEDIA_ITEM_TRANSITION_REASON_PLAYLIST_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#MEDIA_ITEM_TRANSITION_REASON_REPEAT">MEDIA_ITEM_TRANSITION_REASON_REPEAT</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#MEDIA_ITEM_TRANSITION_REASON_SEEK">MEDIA_ITEM_TRANSITION_REASON_SEEK</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAY_WHEN_READY_CHANGE_REASON_AUDIO_BECOMING_NOISY">PLAY_WHEN_READY_CHANGE_REASON_AUDIO_BECOMING_NOISY</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAY_WHEN_READY_CHANGE_REASON_AUDIO_FOCUS_LOSS">PLAY_WHEN_READY_CHANGE_REASON_AUDIO_FOCUS_LOSS</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAY_WHEN_READY_CHANGE_REASON_END_OF_MEDIA_ITEM">PLAY_WHEN_READY_CHANGE_REASON_END_OF_MEDIA_ITEM</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAY_WHEN_READY_CHANGE_REASON_REMOTE">PLAY_WHEN_READY_CHANGE_REASON_REMOTE</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAY_WHEN_READY_CHANGE_REASON_USER_REQUEST">PLAY_WHEN_READY_CHANGE_REASON_USER_REQUEST</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAYBACK_SUPPRESSION_REASON_NONE">PLAYBACK_SUPPRESSION_REASON_NONE</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAYBACK_SUPPRESSION_REASON_TRANSIENT_AUDIO_FOCUS_LOSS">PLAYBACK_SUPPRESSION_REASON_TRANSIENT_AUDIO_FOCUS_LOSS</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#REPEAT_MODE_ALL">REPEAT_MODE_ALL</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#REPEAT_MODE_OFF">REPEAT_MODE_OFF</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#REPEAT_MODE_ONE">REPEAT_MODE_ONE</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_BUFFERING">STATE_BUFFERING</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_ENDED">STATE_ENDED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_IDLE">STATE_IDLE</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_READY">STATE_READY</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#TIMELINE_CHANGE_REASON_PLAYLIST_CHANGED">TIMELINE_CHANGE_REASON_PLAYLIST_CHANGED</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#TIMELINE_CHANGE_REASON_SOURCE_UPDATE">TIMELINE_CHANGE_REASON_SOURCE_UPDATE</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#StubExoPlayer--">StubExoPlayer</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addListener-com.google.android.exoplayer2.Player.EventListener-">addListener</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html" title="interface in com.google.android.exoplayer2">Player.EventListener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Register a listener to receive events from the player.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaItem-int-com.google.android.exoplayer2.MediaItem-">addMediaItem</a></span>&#8203;(int&nbsp;index,
<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</code></th>
<td class="colLast">
<div class="block">Adds a media item at the given index of the playlist.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaItem-com.google.android.exoplayer2.MediaItem-">addMediaItem</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</code></th>
<td class="colLast">
<div class="block">Adds a media item to the end of the playlist.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaItems-int-java.util.List-">addMediaItems</a></span>&#8203;(int&nbsp;index,
<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</code></th>
<td class="colLast">
<div class="block">Adds a list of media items at the given index of the playlist.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaItems-java.util.List-">addMediaItems</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</code></th>
<td class="colLast">
<div class="block">Adds a list of media items to the end of the playlist.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaSource-int-com.google.android.exoplayer2.source.MediaSource-">addMediaSource</a></span>&#8203;(int&nbsp;index,
<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</code></th>
<td class="colLast">
<div class="block">Adds a media source at the given index of the playlist.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaSource-com.google.android.exoplayer2.source.MediaSource-">addMediaSource</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</code></th>
<td class="colLast">
<div class="block">Adds a media source to the end of the playlist.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaSources-int-java.util.List-">addMediaSources</a></span>&#8203;(int&nbsp;index,
<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources)</code></th>
<td class="colLast">
<div class="block">Adds a list of media sources at the given index of the playlist.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#addMediaSources-java.util.List-">addMediaSources</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources)</code></th>
<td class="colLast">
<div class="block">Adds a list of media sources to the end of the playlist.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#clearMediaItems--">clearMediaItems</a></span>()</code></th>
<td class="colLast">
<div class="block">Clears the playlist.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#createMessage-com.google.android.exoplayer2.PlayerMessage.Target-">createMessage</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/PlayerMessage.Target.html" title="interface in com.google.android.exoplayer2">PlayerMessage.Target</a>&nbsp;target)</code></th>
<td class="colLast">
<div class="block">Creates a message that can be sent to a <a href="../../../../../com/google/android/exoplayer2/PlayerMessage.Target.html" title="interface in com.google.android.exoplayer2"><code>PlayerMessage.Target</code></a>.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#experimentalIsSleepingForOffload--">experimentalIsSleepingForOffload</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns whether the player has paused its main loop to save power in offload scheduling mode.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#experimentalSetOffloadSchedulingEnabled-boolean-">experimentalSetOffloadSchedulingEnabled</a></span>&#8203;(boolean&nbsp;offloadSchedulingEnabled)</code></th>
<td class="colLast">
<div class="block">Sets whether audio offload scheduling is enabled.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top">Looper</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getApplicationLooper--">getApplicationLooper</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the <a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Looper</code></a> associated with the application thread that's used to access the
player and on which player events are received.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/Player.AudioComponent.html" title="interface in com.google.android.exoplayer2">Player.AudioComponent</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getAudioComponent--">getAudioComponent</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the component of this player for audio output, or null if audio is not supported.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getBufferedPosition--">getBufferedPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an estimate of the position in the current content window or ad up to which data is
buffered, in milliseconds.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/util/Clock.html" title="interface in com.google.android.exoplayer2.util">Clock</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getClock--">getClock</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the <a href="../../../../../com/google/android/exoplayer2/util/Clock.html" title="interface in com.google.android.exoplayer2.util"><code>Clock</code></a> used for playback.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getContentBufferedPosition--">getContentBufferedPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns <code>true</code>, returns an estimate of the content position in
the current content window up to which data is buffered, in milliseconds.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getContentPosition--">getContentPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns <code>true</code>, returns the content position that will be
played once all ads in the ad group have finished playing, in milliseconds.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentAdGroupIndex--">getCurrentAdGroupIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns true, returns the index of the ad group in the period
currently being played.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentAdIndexInAdGroup--">getCurrentAdIndexInAdGroup</a></span>()</code></th>
<td class="colLast">
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns true, returns the index of the ad in its ad group.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentPeriodIndex--">getCurrentPeriodIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the index of the period currently being played.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentPosition--">getCurrentPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the playback position in the current content window or ad, in milliseconds, or the
prospective position in milliseconds if the <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--"><code>current timeline</code></a> is
empty.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/metadata/Metadata.html" title="class in com.google.android.exoplayer2.metadata" target="_top">Metadata</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentStaticMetadata--">getCurrentStaticMetadata</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the current static metadata for the track selections.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2">Timeline</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentTimeline--">getCurrentTimeline</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the current <a href="../../../../../com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a>.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source">TrackGroupArray</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentTrackGroups--">getCurrentTrackGroups</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the available track groups.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/trackselection/TrackSelectionArray.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionArray</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentTrackSelections--">getCurrentTrackSelections</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the current track selections for each renderer.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getCurrentWindowIndex--">getCurrentWindowIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the index of the current <a href="../../../../../com/google/android/exoplayer2/Timeline.Window.html" title="class in com.google.android.exoplayer2"><code>window</code></a> in the <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--"><code>timeline</code></a>, or the prospective window index if the <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--"><code>current timeline</code></a> is empty.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/Player.DeviceComponent.html" title="interface in com.google.android.exoplayer2">Player.DeviceComponent</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getDeviceComponent--">getDeviceComponent</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the component of this player for playback device, or null if it's not supported.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getDuration--">getDuration</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the duration of the current content window or ad in milliseconds, or <a href="../../../../../com/google/android/exoplayer2/C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> if the duration is not known.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/Player.MetadataComponent.html" title="interface in com.google.android.exoplayer2">Player.MetadataComponent</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getMetadataComponent--">getMetadataComponent</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the component of this player for metadata output, or null if metadata is not supported.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPauseAtEndOfMediaItems--">getPauseAtEndOfMediaItems</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns whether the player pauses playback at the end of each media item.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlaybackError--">getPlaybackError</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlayerError--"><code>getPlayerError()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top">Looper</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlaybackLooper--">getPlaybackLooper</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the <a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Looper</code></a> associated with the playback thread.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlaybackParameters--">getPlaybackParameters</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the currently active playback parameters.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlaybackState--">getPlaybackState</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the current <a href="../../../../../com/google/android/exoplayer2/Player.State.html" title="annotation in com.google.android.exoplayer2"><code>playback state</code></a> of the player.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlaybackSuppressionReason--">getPlaybackSuppressionReason</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the reason why playback is suppressed even though <a href="../../../../../com/google/android/exoplayer2/Player.html#getPlayWhenReady--"><code>Player.getPlayWhenReady()</code></a> is <code>
true</code>, or <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAYBACK_SUPPRESSION_REASON_NONE"><code>Player.PLAYBACK_SUPPRESSION_REASON_NONE</code></a> if playback is not suppressed.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlayerError--">getPlayerError</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the error that caused playback to fail.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlayWhenReady--">getPlayWhenReady</a></span>()</code></th>
<td class="colLast">
<div class="block">Whether playback will proceed when <a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackState--"><code>Player.getPlaybackState()</code></a> == <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_READY"><code>Player.STATE_READY</code></a>.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getRendererCount--">getRendererCount</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the number of renderers.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getRendererType-int-">getRendererType</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Returns the track type that the renderer at a given index handles.</div>
</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getRepeatMode--">getRepeatMode</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the current <a href="../../../../../com/google/android/exoplayer2/Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2"><code>Player.RepeatMode</code></a> used for playback.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/SeekParameters.html" title="class in com.google.android.exoplayer2">SeekParameters</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getSeekParameters--">getSeekParameters</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the currently active <a href="../../../../../com/google/android/exoplayer2/SeekParameters.html" title="class in com.google.android.exoplayer2"><code>SeekParameters</code></a> of the player.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getShuffleModeEnabled--">getShuffleModeEnabled</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns whether shuffling of windows is enabled.</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/Player.TextComponent.html" title="interface in com.google.android.exoplayer2">Player.TextComponent</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getTextComponent--">getTextComponent</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the component of this player for text output, or null if text is not supported.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getTotalBufferedDuration--">getTotalBufferedDuration</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an estimate of the total buffered duration from the current position, in milliseconds.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/trackselection/TrackSelector.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelector</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getTrackSelector--">getTrackSelector</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the track selector that this player uses, or null if track selection is not supported.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code><a href="../../../../../com/google/android/exoplayer2/Player.VideoComponent.html" title="interface in com.google.android.exoplayer2">Player.VideoComponent</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getVideoComponent--">getVideoComponent</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the component of this player for video output, or null if video is not supported.</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#isLoading--">isLoading</a></span>()</code></th>
<td class="colLast">
<div class="block">Whether the player is currently loading the source.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#isPlayingAd--">isPlayingAd</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns whether the player is currently playing an ad.</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#moveMediaItem-int-int-">moveMediaItem</a></span>&#8203;(int&nbsp;currentIndex,
int&nbsp;newIndex)</code></th>
<td class="colLast">
<div class="block">Moves the media item at the current index to the new index.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#moveMediaItems-int-int-int-">moveMediaItems</a></span>&#8203;(int&nbsp;fromIndex,
int&nbsp;toIndex,
int&nbsp;newIndex)</code></th>
<td class="colLast">
<div class="block">Moves the media item range to the new index.</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#prepare--">prepare</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-"><code>setMediaSource(MediaSource)</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--"><code>Player.prepare()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#prepare-com.google.android.exoplayer2.source.MediaSource-">prepare</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-"><code>setMediaSource(MediaSource)</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--"><code>Player.prepare()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#prepare-com.google.android.exoplayer2.source.MediaSource-boolean-boolean-">prepare</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource,
boolean&nbsp;resetPosition,
boolean&nbsp;resetState)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-boolean-"><code>setMediaSource(MediaSource, boolean)</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--"><code>Player.prepare()</code></a>
instead.</div>
</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#release--">release</a></span>()</code></th>
<td class="colLast">
<div class="block">Releases the player.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#removeListener-com.google.android.exoplayer2.Player.EventListener-">removeListener</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html" title="interface in com.google.android.exoplayer2">Player.EventListener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Unregister a listener.</div>
</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#removeMediaItem-int-">removeMediaItem</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Removes the media item at the given index of the playlist.</div>
</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#removeMediaItems-int-int-">removeMediaItems</a></span>&#8203;(int&nbsp;fromIndex,
int&nbsp;toIndex)</code></th>
<td class="colLast">
<div class="block">Removes a range of media items from the playlist.</div>
</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#retry--">retry</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#prepare--"><code>prepare()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#seekTo-int-long-">seekTo</a></span>&#8203;(int&nbsp;windowIndex,
long&nbsp;positionMs)</code></th>
<td class="colLast">
<div class="block">Seeks to a position specified in milliseconds in the specified window.</div>
</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setForegroundMode-boolean-">setForegroundMode</a></span>&#8203;(boolean&nbsp;foregroundMode)</code></th>
<td class="colLast">
<div class="block">Sets whether the player is allowed to keep holding limited resources such as video decoders,
even when in the idle state.</div>
</td>
</tr>
<tr id="i62" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaItem-com.google.android.exoplayer2.MediaItem-">setMediaItem</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</code></th>
<td class="colLast">
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> and resets the position to the
default position.</div>
</td>
</tr>
<tr id="i63" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaItem-com.google.android.exoplayer2.MediaItem-boolean-">setMediaItem</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
boolean&nbsp;resetPosition)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</div>
</td>
</tr>
<tr id="i64" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaItem-com.google.android.exoplayer2.MediaItem-long-">setMediaItem</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
long&nbsp;startPositionMs)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</div>
</td>
</tr>
<tr id="i65" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaItems-java.util.List-">setMediaItems</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</code></th>
<td class="colLast">
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a> and resets the position to
the default position.</div>
</td>
</tr>
<tr id="i66" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaItems-java.util.List-boolean-">setMediaItems</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems,
boolean&nbsp;resetPosition)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</div>
</td>
</tr>
<tr id="i67" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaItems-java.util.List-int-long-">setMediaItems</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems,
int&nbsp;startWindowIndex,
long&nbsp;startPositionMs)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</div>
</td>
</tr>
<tr id="i68" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-">setMediaSource</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</code></th>
<td class="colLast">
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> and resets the position to the
default position.</div>
</td>
</tr>
<tr id="i69" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-boolean-">setMediaSource</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource,
boolean&nbsp;resetPosition)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
</td>
</tr>
<tr id="i70" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-long-">setMediaSource</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource,
long&nbsp;startPositionMs)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
</td>
</tr>
<tr id="i71" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSources-java.util.List-">setMediaSources</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources)</code></th>
<td class="colLast">
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a> and resets the
position to the default position.</div>
</td>
</tr>
<tr id="i72" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSources-java.util.List-boolean-">setMediaSources</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources,
boolean&nbsp;resetPosition)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a>.</div>
</td>
</tr>
<tr id="i73" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSources-java.util.List-int-long-">setMediaSources</a></span>&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources,
int&nbsp;startWindowIndex,
long&nbsp;startPositionMs)</code></th>
<td class="colLast">
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a>.</div>
</td>
</tr>
<tr id="i74" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setPauseAtEndOfMediaItems-boolean-">setPauseAtEndOfMediaItems</a></span>&#8203;(boolean&nbsp;pauseAtEndOfMediaItems)</code></th>
<td class="colLast">
<div class="block">Sets whether to pause playback at the end of each media item.</div>
</td>
</tr>
<tr id="i75" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setPlaybackParameters-com.google.android.exoplayer2.PlaybackParameters-">setPlaybackParameters</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a>&nbsp;playbackParameters)</code></th>
<td class="colLast">
<div class="block">Attempts to set the playback parameters.</div>
</td>
</tr>
<tr id="i76" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setPlayWhenReady-boolean-">setPlayWhenReady</a></span>&#8203;(boolean&nbsp;playWhenReady)</code></th>
<td class="colLast">
<div class="block">Sets whether playback should proceed when <a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackState--"><code>Player.getPlaybackState()</code></a> == <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_READY"><code>Player.STATE_READY</code></a>.</div>
</td>
</tr>
<tr id="i77" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setRepeatMode-int-">setRepeatMode</a></span>&#8203;(int&nbsp;repeatMode)</code></th>
<td class="colLast">
<div class="block">Sets the <a href="../../../../../com/google/android/exoplayer2/Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2"><code>Player.RepeatMode</code></a> to be used for playback.</div>
</td>
</tr>
<tr id="i78" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setSeekParameters-com.google.android.exoplayer2.SeekParameters-">setSeekParameters</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/SeekParameters.html" title="class in com.google.android.exoplayer2">SeekParameters</a>&nbsp;seekParameters)</code></th>
<td class="colLast">
<div class="block">Sets the parameters that control how seek operations are performed.</div>
</td>
</tr>
<tr id="i79" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setShuffleModeEnabled-boolean-">setShuffleModeEnabled</a></span>&#8203;(boolean&nbsp;shuffleModeEnabled)</code></th>
<td class="colLast">
<div class="block">Sets whether shuffling of windows is enabled.</div>
</td>
</tr>
<tr id="i80" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setShuffleOrder-com.google.android.exoplayer2.source.ShuffleOrder-">setShuffleOrder</a></span>&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source">ShuffleOrder</a>&nbsp;shuffleOrder)</code></th>
<td class="colLast">
<div class="block">Sets the shuffle order.</div>
</td>
</tr>
<tr id="i81" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#stop-boolean-">stop</a></span>&#8203;(boolean&nbsp;reset)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.com.google.android.exoplayer2.BasePlayer">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;com.google.android.exoplayer2.<a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></h3>
<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getBufferedPercentage--">getBufferedPercentage</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getContentDuration--">getContentDuration</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getCurrentLiveOffset--">getCurrentLiveOffset</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getCurrentManifest--">getCurrentManifest</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getCurrentMediaItem--">getCurrentMediaItem</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getCurrentTag--">getCurrentTag</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getMediaItemAt-int-">getMediaItemAt</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getMediaItemCount--">getMediaItemCount</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getNextWindowIndex--">getNextWindowIndex</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#getPreviousWindowIndex--">getPreviousWindowIndex</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#hasNext--">hasNext</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#hasPrevious--">hasPrevious</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#isCurrentWindowDynamic--">isCurrentWindowDynamic</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#isCurrentWindowLive--">isCurrentWindowLive</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#isCurrentWindowSeekable--">isCurrentWindowSeekable</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#isPlaying--">isPlaying</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#next--">next</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#pause--">pause</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#play--">play</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#previous--">previous</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#seekTo-long-">seekTo</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#seekToDefaultPosition--">seekToDefaultPosition</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#seekToDefaultPosition-int-">seekToDefaultPosition</a>, <a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#stop--">stop</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></h3>
<code><a href="https://developer.android.com/reference/java/lang/Object.html#clone--" title="class or interface in java.lang" class="externalLink">clone</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang" class="externalLink">equals</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang" class="externalLink">finalize</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang" class="externalLink">getClass</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang" class="externalLink">hashCode</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang" class="externalLink">notify</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang" class="externalLink">notifyAll</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang" class="externalLink">toString</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang" class="externalLink">wait</a>, <a href="https://developer.android.com/reference/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang" class="externalLink" target="_top">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.com.google.android.exoplayer2.Player">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;com.google.android.exoplayer2.<a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></h3>
<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getBufferedPercentage--">getBufferedPercentage</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getContentDuration--">getContentDuration</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentLiveOffset--">getCurrentLiveOffset</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentManifest--">getCurrentManifest</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentMediaItem--">getCurrentMediaItem</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTag--">getCurrentTag</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getMediaItemAt-int-">getMediaItemAt</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getMediaItemCount--">getMediaItemCount</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getNextWindowIndex--">getNextWindowIndex</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#getPreviousWindowIndex--">getPreviousWindowIndex</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#hasNext--">hasNext</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#hasPrevious--">hasPrevious</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#isCurrentWindowDynamic--">isCurrentWindowDynamic</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#isCurrentWindowLive--">isCurrentWindowLive</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#isCurrentWindowSeekable--">isCurrentWindowSeekable</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlaying--">isPlaying</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#next--">next</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#pause--">pause</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#play--">play</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#previous--">previous</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#seekTo-long-">seekTo</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#seekToDefaultPosition--">seekToDefaultPosition</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#seekToDefaultPosition-int-">seekToDefaultPosition</a>, <a href="../../../../../com/google/android/exoplayer2/Player.html#stop--">stop</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="StubExoPlayer--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>StubExoPlayer</h4>
<pre>public&nbsp;StubExoPlayer()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getAudioComponent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAudioComponent</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/Player.AudioComponent.html" title="interface in com.google.android.exoplayer2">Player.AudioComponent</a>&nbsp;getAudioComponent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getAudioComponent--">Player</a></code></span></div>
<div class="block">Returns the component of this player for audio output, or null if audio is not supported.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getAudioComponent--">getAudioComponent</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getVideoComponent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVideoComponent</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/Player.VideoComponent.html" title="interface in com.google.android.exoplayer2">Player.VideoComponent</a>&nbsp;getVideoComponent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getVideoComponent--">Player</a></code></span></div>
<div class="block">Returns the component of this player for video output, or null if video is not supported.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getVideoComponent--">getVideoComponent</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getTextComponent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTextComponent</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/Player.TextComponent.html" title="interface in com.google.android.exoplayer2">Player.TextComponent</a>&nbsp;getTextComponent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getTextComponent--">Player</a></code></span></div>
<div class="block">Returns the component of this player for text output, or null if text is not supported.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getTextComponent--">getTextComponent</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getMetadataComponent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMetadataComponent</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/Player.MetadataComponent.html" title="interface in com.google.android.exoplayer2">Player.MetadataComponent</a>&nbsp;getMetadataComponent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getMetadataComponent--">Player</a></code></span></div>
<div class="block">Returns the component of this player for metadata output, or null if metadata is not supported.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getMetadataComponent--">getMetadataComponent</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getDeviceComponent--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDeviceComponent</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/Player.DeviceComponent.html" title="interface in com.google.android.exoplayer2">Player.DeviceComponent</a>&nbsp;getDeviceComponent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getDeviceComponent--">Player</a></code></span></div>
<div class="block">Returns the component of this player for playback device, or null if it's not supported.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getDeviceComponent--">getDeviceComponent</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getPlaybackLooper--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackLooper</h4>
<pre>public&nbsp;<a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top">Looper</a>&nbsp;getPlaybackLooper()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getPlaybackLooper--">ExoPlayer</a></code></span></div>
<div class="block">Returns the <a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Looper</code></a> associated with the playback thread.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getPlaybackLooper--">getPlaybackLooper</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="getApplicationLooper--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getApplicationLooper</h4>
<pre>public&nbsp;<a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top">Looper</a>&nbsp;getApplicationLooper()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getApplicationLooper--">Player</a></code></span></div>
<div class="block">Returns the <a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Looper</code></a> associated with the application thread that's used to access the
player and on which player events are received.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getApplicationLooper--">getApplicationLooper</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getClock--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getClock</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/util/Clock.html" title="interface in com.google.android.exoplayer2.util">Clock</a>&nbsp;getClock()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getClock--">ExoPlayer</a></code></span></div>
<div class="block">Returns the <a href="../../../../../com/google/android/exoplayer2/util/Clock.html" title="interface in com.google.android.exoplayer2.util"><code>Clock</code></a> used for playback.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getClock--">getClock</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="addListener-com.google.android.exoplayer2.Player.EventListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addListener</h4>
<pre>public&nbsp;void&nbsp;addListener&#8203;(<a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html" title="interface in com.google.android.exoplayer2">Player.EventListener</a>&nbsp;listener)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#addListener-com.google.android.exoplayer2.Player.EventListener-">Player</a></code></span></div>
<div class="block">Register a listener to receive events from the player. The listener's methods will be called on
the thread that was used to construct the player. However, if the thread used to construct the
player does not have a <a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Looper</code></a>, then the listener will be called on the main thread.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#addListener-com.google.android.exoplayer2.Player.EventListener-">addListener</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - The listener to register.</dd>
</dl>
</li>
</ul>
<a name="removeListener-com.google.android.exoplayer2.Player.EventListener-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeListener</h4>
<pre>public&nbsp;void&nbsp;removeListener&#8203;(<a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html" title="interface in com.google.android.exoplayer2">Player.EventListener</a>&nbsp;listener)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#removeListener-com.google.android.exoplayer2.Player.EventListener-">Player</a></code></span></div>
<div class="block">Unregister a listener. The listener will no longer receive events from the player.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#removeListener-com.google.android.exoplayer2.Player.EventListener-">removeListener</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>listener</code> - The listener to unregister.</dd>
</dl>
</li>
</ul>
<a name="getPlaybackState--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackState</h4>
<pre><a href="../../../../../com/google/android/exoplayer2/Player.State.html" title="annotation in com.google.android.exoplayer2">@State</a>
public&nbsp;int&nbsp;getPlaybackState()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackState--">Player</a></code></span></div>
<div class="block">Returns the current <a href="../../../../../com/google/android/exoplayer2/Player.State.html" title="annotation in com.google.android.exoplayer2"><code>playback state</code></a> of the player.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackState--">getPlaybackState</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The current <a href="../../../../../com/google/android/exoplayer2/Player.State.html" title="annotation in com.google.android.exoplayer2"><code>playback state</code></a>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlaybackStateChanged-int-"><code>Player.EventListener.onPlaybackStateChanged(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="getPlaybackSuppressionReason--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackSuppressionReason</h4>
<pre><a href="../../../../../com/google/android/exoplayer2/Player.PlaybackSuppressionReason.html" title="annotation in com.google.android.exoplayer2">@PlaybackSuppressionReason</a>
public&nbsp;int&nbsp;getPlaybackSuppressionReason()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackSuppressionReason--">Player</a></code></span></div>
<div class="block">Returns the reason why playback is suppressed even though <a href="../../../../../com/google/android/exoplayer2/Player.html#getPlayWhenReady--"><code>Player.getPlayWhenReady()</code></a> is <code>
true</code>, or <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAYBACK_SUPPRESSION_REASON_NONE"><code>Player.PLAYBACK_SUPPRESSION_REASON_NONE</code></a> if playback is not suppressed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackSuppressionReason--">getPlaybackSuppressionReason</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The current <a href="../../../../../com/google/android/exoplayer2/Player.PlaybackSuppressionReason.html" title="annotation in com.google.android.exoplayer2"><code>playback suppression reason</code></a>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlaybackSuppressionReasonChanged-int-"><code>Player.EventListener.onPlaybackSuppressionReasonChanged(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="getPlaybackError--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackError</h4>
<pre><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
public&nbsp;<a href="../../../../../com/google/android/exoplayer2/ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a>&nbsp;getPlaybackError()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#getPlayerError--"><code>getPlayerError()</code></a> instead.</div>
</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackError--">getPlaybackError</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getPlayerError--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlayerError</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a>&nbsp;getPlayerError()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlayerError--">Player</a></code></span></div>
<div class="block">Returns the error that caused playback to fail. This is the same error that will have been
reported via <a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlayerError-com.google.android.exoplayer2.ExoPlaybackException-"><code>Player.EventListener.onPlayerError(ExoPlaybackException)</code></a> at the time of
failure. It can be queried using this method until the player is re-prepared.
<p>Note that this method will always return <code>null</code> if <a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackState--"><code>Player.getPlaybackState()</code></a> is not
<a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_IDLE"><code>Player.STATE_IDLE</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlayerError--">getPlayerError</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The error, or <code>null</code>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlayerError-com.google.android.exoplayer2.ExoPlaybackException-"><code>Player.EventListener.onPlayerError(ExoPlaybackException)</code></a></dd>
</dl>
</li>
</ul>
<a name="retry--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>retry</h4>
<pre><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
public&nbsp;void&nbsp;retry()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#prepare--"><code>prepare()</code></a> instead.</div>
</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#retry--">retry</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="prepare--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
public&nbsp;void&nbsp;prepare()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-"><code>setMediaSource(MediaSource)</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--"><code>Player.prepare()</code></a> instead.</div>
</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--">Player</a></code></span></div>
<div class="block">Prepares the player.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="prepare-com.google.android.exoplayer2.source.MediaSource-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
public&nbsp;void&nbsp;prepare&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-"><code>setMediaSource(MediaSource)</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--"><code>Player.prepare()</code></a> instead.</div>
</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#prepare-com.google.android.exoplayer2.source.MediaSource-">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="prepare-com.google.android.exoplayer2.source.MediaSource-boolean-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre><a href="https://developer.android.com/reference/java/lang/Deprecated.html" title="class or interface in java.lang" class="externalLink" target="_top">@Deprecated</a>
public&nbsp;void&nbsp;prepare&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource,
boolean&nbsp;resetPosition,
boolean&nbsp;resetState)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="../../../../../com/google/android/exoplayer2/testutil/StubExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-boolean-"><code>setMediaSource(MediaSource, boolean)</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#prepare--"><code>Player.prepare()</code></a>
instead.</div>
</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#prepare-com.google.android.exoplayer2.source.MediaSource-boolean-boolean-">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="setMediaItem-com.google.android.exoplayer2.MediaItem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItem</h4>
<pre>public&nbsp;void&nbsp;setMediaItem&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItem-com.google.android.exoplayer2.MediaItem-">Player</a></code></span></div>
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> and resets the position to the
default position.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItem-com.google.android.exoplayer2.MediaItem-">setMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#setMediaItem-com.google.android.exoplayer2.MediaItem-">setMediaItem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The new <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaItem-com.google.android.exoplayer2.MediaItem-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItem</h4>
<pre>public&nbsp;void&nbsp;setMediaItem&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
long&nbsp;startPositionMs)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItem-com.google.android.exoplayer2.MediaItem-long-">Player</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItem-com.google.android.exoplayer2.MediaItem-long-">setMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#setMediaItem-com.google.android.exoplayer2.MediaItem-long-">setMediaItem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The new <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</dd>
<dd><code>startPositionMs</code> - The position in milliseconds to start playback from.</dd>
</dl>
</li>
</ul>
<a name="setMediaItem-com.google.android.exoplayer2.MediaItem-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItem</h4>
<pre>public&nbsp;void&nbsp;setMediaItem&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
boolean&nbsp;resetPosition)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItem-com.google.android.exoplayer2.MediaItem-boolean-">Player</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItem-com.google.android.exoplayer2.MediaItem-boolean-">setMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#setMediaItem-com.google.android.exoplayer2.MediaItem-boolean-">setMediaItem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The new <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</dd>
<dd><code>resetPosition</code> - Whether the playback position should be reset to the default position. If
false, playback will start from the position defined by <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentWindowIndex--"><code>Player.getCurrentWindowIndex()</code></a>
and <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPosition--"><code>Player.getCurrentPosition()</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaItems-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItems</h4>
<pre>public&nbsp;void&nbsp;setMediaItems&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItems-java.util.List-">Player</a></code></span></div>
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a> and resets the position to
the default position.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItems-java.util.List-">setMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#setMediaItems-java.util.List-">setMediaItems</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItems</code> - The new <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaItems-java.util.List-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItems</h4>
<pre>public&nbsp;void&nbsp;setMediaItems&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems,
boolean&nbsp;resetPosition)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItems-java.util.List-boolean-">Player</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItems-java.util.List-boolean-">setMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItems</code> - The new <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</dd>
<dd><code>resetPosition</code> - Whether the playback position should be reset to the default position in
the first <a href="../../../../../com/google/android/exoplayer2/Timeline.Window.html" title="class in com.google.android.exoplayer2"><code>Timeline.Window</code></a>. If false, playback will start from the position defined
by <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentWindowIndex--"><code>Player.getCurrentWindowIndex()</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPosition--"><code>Player.getCurrentPosition()</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaItems-java.util.List-int-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItems</h4>
<pre>public&nbsp;void&nbsp;setMediaItems&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems,
int&nbsp;startWindowIndex,
long&nbsp;startPositionMs)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItems-java.util.List-int-long-">Player</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setMediaItems-java.util.List-int-long-">setMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItems</code> - The new <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</dd>
<dd><code>startWindowIndex</code> - The window index to start playback from. If <a href="../../../../../com/google/android/exoplayer2/C.html#INDEX_UNSET"><code>C.INDEX_UNSET</code></a> is
passed, the current position is not reset.</dd>
<dd><code>startPositionMs</code> - The position in milliseconds to start playback from. If <a href="../../../../../com/google/android/exoplayer2/C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> is passed, the default position of the given window is used. In any case, if
<code>startWindowIndex</code> is set to <a href="../../../../../com/google/android/exoplayer2/C.html#INDEX_UNSET"><code>C.INDEX_UNSET</code></a>, this parameter is ignored and the
position is not reset at all.</dd>
</dl>
</li>
</ul>
<a name="setMediaSource-com.google.android.exoplayer2.source.MediaSource-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaSource</h4>
<pre>public&nbsp;void&nbsp;setMediaSource&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-">ExoPlayer</a></code></span></div>
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> and resets the position to the
default position.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-">setMediaSource</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSource</code> - The new <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaSource-com.google.android.exoplayer2.source.MediaSource-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaSource</h4>
<pre>public&nbsp;void&nbsp;setMediaSource&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource,
long&nbsp;startPositionMs)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-long-">ExoPlayer</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-long-">setMediaSource</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSource</code> - The new <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</dd>
<dd><code>startPositionMs</code> - The position in milliseconds to start playback from.</dd>
</dl>
</li>
</ul>
<a name="setMediaSource-com.google.android.exoplayer2.source.MediaSource-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaSource</h4>
<pre>public&nbsp;void&nbsp;setMediaSource&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource,
boolean&nbsp;resetPosition)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-boolean-">ExoPlayer</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSource-com.google.android.exoplayer2.source.MediaSource-boolean-">setMediaSource</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSource</code> - The new <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</dd>
<dd><code>resetPosition</code> - Whether the playback position should be reset to the default position. If
false, playback will start from the position defined by <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentWindowIndex--"><code>Player.getCurrentWindowIndex()</code></a>
and <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPosition--"><code>Player.getCurrentPosition()</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaSources-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaSources</h4>
<pre>public&nbsp;void&nbsp;setMediaSources&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSources-java.util.List-">ExoPlayer</a></code></span></div>
<div class="block">Clears the playlist, adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a> and resets the
position to the default position.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSources-java.util.List-">setMediaSources</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSources</code> - The new <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaSources-java.util.List-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaSources</h4>
<pre>public&nbsp;void&nbsp;setMediaSources&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources,
boolean&nbsp;resetPosition)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSources-java.util.List-boolean-">ExoPlayer</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSources-java.util.List-boolean-">setMediaSources</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSources</code> - The new <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a>.</dd>
<dd><code>resetPosition</code> - Whether the playback position should be reset to the default position in
the first <a href="../../../../../com/google/android/exoplayer2/Timeline.Window.html" title="class in com.google.android.exoplayer2"><code>Timeline.Window</code></a>. If false, playback will start from the position defined
by <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentWindowIndex--"><code>Player.getCurrentWindowIndex()</code></a> and <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPosition--"><code>Player.getCurrentPosition()</code></a>.</dd>
</dl>
</li>
</ul>
<a name="setMediaSources-java.util.List-int-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaSources</h4>
<pre>public&nbsp;void&nbsp;setMediaSources&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources,
int&nbsp;startWindowIndex,
long&nbsp;startPositionMs)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSources-java.util.List-int-long-">ExoPlayer</a></code></span></div>
<div class="block">Clears the playlist and adds the specified <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setMediaSources-java.util.List-int-long-">setMediaSources</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSources</code> - The new <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a>.</dd>
<dd><code>startWindowIndex</code> - The window index to start playback from. If <a href="../../../../../com/google/android/exoplayer2/C.html#INDEX_UNSET"><code>C.INDEX_UNSET</code></a> is
passed, the current position is not reset.</dd>
<dd><code>startPositionMs</code> - The position in milliseconds to start playback from. If <a href="../../../../../com/google/android/exoplayer2/C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> is passed, the default position of the given window is used. In any case, if
<code>startWindowIndex</code> is set to <a href="../../../../../com/google/android/exoplayer2/C.html#INDEX_UNSET"><code>C.INDEX_UNSET</code></a>, this parameter is ignored and the
position is not reset at all.</dd>
</dl>
</li>
</ul>
<a name="addMediaItem-com.google.android.exoplayer2.MediaItem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItem</h4>
<pre>public&nbsp;void&nbsp;addMediaItem&#8203;(<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItem-com.google.android.exoplayer2.MediaItem-">Player</a></code></span></div>
<div class="block">Adds a media item to the end of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItem-com.google.android.exoplayer2.MediaItem-">addMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#addMediaItem-com.google.android.exoplayer2.MediaItem-">addMediaItem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="addMediaItem-int-com.google.android.exoplayer2.MediaItem-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItem</h4>
<pre>public&nbsp;void&nbsp;addMediaItem&#8203;(int&nbsp;index,
<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItem-int-com.google.android.exoplayer2.MediaItem-">Player</a></code></span></div>
<div class="block">Adds a media item at the given index of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItem-int-com.google.android.exoplayer2.MediaItem-">addMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#addMediaItem-int-com.google.android.exoplayer2.MediaItem-">addMediaItem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index at which to add the item.</dd>
<dd><code>mediaItem</code> - The <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="addMediaItems-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItems</h4>
<pre>public&nbsp;void&nbsp;addMediaItems&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItems-java.util.List-">Player</a></code></span></div>
<div class="block">Adds a list of media items to the end of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItems-java.util.List-">addMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItems</code> - The <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="addMediaItems-int-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItems</h4>
<pre>public&nbsp;void&nbsp;addMediaItems&#8203;(int&nbsp;index,
<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItems-int-java.util.List-">Player</a></code></span></div>
<div class="block">Adds a list of media items at the given index of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#addMediaItems-int-java.util.List-">addMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index at which to add the media items.</dd>
<dd><code>mediaItems</code> - The <a href="../../../../../com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="addMediaSource-com.google.android.exoplayer2.source.MediaSource-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaSource</h4>
<pre>public&nbsp;void&nbsp;addMediaSource&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSource-com.google.android.exoplayer2.source.MediaSource-">ExoPlayer</a></code></span></div>
<div class="block">Adds a media source to the end of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSource-com.google.android.exoplayer2.source.MediaSource-">addMediaSource</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSource</code> - The <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="addMediaSource-int-com.google.android.exoplayer2.source.MediaSource-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaSource</h4>
<pre>public&nbsp;void&nbsp;addMediaSource&#8203;(int&nbsp;index,
<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a>&nbsp;mediaSource)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSource-int-com.google.android.exoplayer2.source.MediaSource-">ExoPlayer</a></code></span></div>
<div class="block">Adds a media source at the given index of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSource-int-com.google.android.exoplayer2.source.MediaSource-">addMediaSource</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index at which to add the source.</dd>
<dd><code>mediaSource</code> - The <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="addMediaSources-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaSources</h4>
<pre>public&nbsp;void&nbsp;addMediaSources&#8203;(<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSources-java.util.List-">ExoPlayer</a></code></span></div>
<div class="block">Adds a list of media sources to the end of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSources-java.util.List-">addMediaSources</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaSources</code> - The <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="addMediaSources-int-java.util.List-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaSources</h4>
<pre>public&nbsp;void&nbsp;addMediaSources&#8203;(int&nbsp;index,
<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source" target="_top">MediaSource</a>&gt;&nbsp;mediaSources)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSources-int-java.util.List-">ExoPlayer</a></code></span></div>
<div class="block">Adds a list of media sources at the given index of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#addMediaSources-int-java.util.List-">addMediaSources</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index at which to add the media sources.</dd>
<dd><code>mediaSources</code> - The <a href="../../../../../com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a> to add.</dd>
</dl>
</li>
</ul>
<a name="moveMediaItem-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveMediaItem</h4>
<pre>public&nbsp;void&nbsp;moveMediaItem&#8203;(int&nbsp;currentIndex,
int&nbsp;newIndex)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#moveMediaItem-int-int-">Player</a></code></span></div>
<div class="block">Moves the media item at the current index to the new index.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#moveMediaItem-int-int-">moveMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#moveMediaItem-int-int-">moveMediaItem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>currentIndex</code> - The current index of the media item to move.</dd>
<dd><code>newIndex</code> - The new index of the media item. If the new index is larger than the size of
the playlist the item is moved to the end of the playlist.</dd>
</dl>
</li>
</ul>
<a name="moveMediaItems-int-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveMediaItems</h4>
<pre>public&nbsp;void&nbsp;moveMediaItems&#8203;(int&nbsp;fromIndex,
int&nbsp;toIndex,
int&nbsp;newIndex)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#moveMediaItems-int-int-int-">Player</a></code></span></div>
<div class="block">Moves the media item range to the new index.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#moveMediaItems-int-int-int-">moveMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromIndex</code> - The start of the range to move.</dd>
<dd><code>toIndex</code> - The first item not to be included in the range (exclusive).</dd>
<dd><code>newIndex</code> - The new index of the first media item of the range. If the new index is larger
than the size of the remaining playlist after removing the range, the range is moved to the
end of the playlist.</dd>
</dl>
</li>
</ul>
<a name="removeMediaItem-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeMediaItem</h4>
<pre>public&nbsp;void&nbsp;removeMediaItem&#8203;(int&nbsp;index)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#removeMediaItem-int-">Player</a></code></span></div>
<div class="block">Removes the media item at the given index of the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#removeMediaItem-int-">removeMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html#removeMediaItem-int-">removeMediaItem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index at which to remove the media item.</dd>
</dl>
</li>
</ul>
<a name="removeMediaItems-int-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeMediaItems</h4>
<pre>public&nbsp;void&nbsp;removeMediaItems&#8203;(int&nbsp;fromIndex,
int&nbsp;toIndex)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#removeMediaItems-int-int-">Player</a></code></span></div>
<div class="block">Removes a range of media items from the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#removeMediaItems-int-int-">removeMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromIndex</code> - The index at which to start removing media items.</dd>
<dd><code>toIndex</code> - The index of the first item to be kept (exclusive).</dd>
</dl>
</li>
</ul>
<a name="clearMediaItems--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearMediaItems</h4>
<pre>public&nbsp;void&nbsp;clearMediaItems()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#clearMediaItems--">Player</a></code></span></div>
<div class="block">Clears the playlist.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#clearMediaItems--">clearMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="setPlayWhenReady-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlayWhenReady</h4>
<pre>public&nbsp;void&nbsp;setPlayWhenReady&#8203;(boolean&nbsp;playWhenReady)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setPlayWhenReady-boolean-">Player</a></code></span></div>
<div class="block">Sets whether playback should proceed when <a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackState--"><code>Player.getPlaybackState()</code></a> == <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_READY"><code>Player.STATE_READY</code></a>.
<p>If the player is already in the ready state then this method pauses and resumes playback.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setPlayWhenReady-boolean-">setPlayWhenReady</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>playWhenReady</code> - Whether playback should proceed when ready.</dd>
</dl>
</li>
</ul>
<a name="getPlayWhenReady--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlayWhenReady</h4>
<pre>public&nbsp;boolean&nbsp;getPlayWhenReady()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlayWhenReady--">Player</a></code></span></div>
<div class="block">Whether playback will proceed when <a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackState--"><code>Player.getPlaybackState()</code></a> == <a href="../../../../../com/google/android/exoplayer2/Player.html#STATE_READY"><code>Player.STATE_READY</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlayWhenReady--">getPlayWhenReady</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Whether playback will proceed when ready.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlayWhenReadyChanged-boolean-int-"><code>Player.EventListener.onPlayWhenReadyChanged(boolean, int)</code></a></dd>
</dl>
</li>
</ul>
<a name="setRepeatMode-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRepeatMode</h4>
<pre>public&nbsp;void&nbsp;setRepeatMode&#8203;(<a href="../../../../../com/google/android/exoplayer2/Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2">@RepeatMode</a>
int&nbsp;repeatMode)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setRepeatMode-int-">Player</a></code></span></div>
<div class="block">Sets the <a href="../../../../../com/google/android/exoplayer2/Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2"><code>Player.RepeatMode</code></a> to be used for playback.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setRepeatMode-int-">setRepeatMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>repeatMode</code> - The repeat mode.</dd>
</dl>
</li>
</ul>
<a name="getRepeatMode--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRepeatMode</h4>
<pre>public&nbsp;int&nbsp;getRepeatMode()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getRepeatMode--">Player</a></code></span></div>
<div class="block">Returns the current <a href="../../../../../com/google/android/exoplayer2/Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2"><code>Player.RepeatMode</code></a> used for playback.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getRepeatMode--">getRepeatMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The current repeat mode.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onRepeatModeChanged-int-"><code>Player.EventListener.onRepeatModeChanged(int)</code></a></dd>
</dl>
</li>
</ul>
<a name="setShuffleOrder-com.google.android.exoplayer2.source.ShuffleOrder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShuffleOrder</h4>
<pre>public&nbsp;void&nbsp;setShuffleOrder&#8203;(<a href="../../../../../com/google/android/exoplayer2/source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source">ShuffleOrder</a>&nbsp;shuffleOrder)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setShuffleOrder-com.google.android.exoplayer2.source.ShuffleOrder-">ExoPlayer</a></code></span></div>
<div class="block">Sets the shuffle order.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setShuffleOrder-com.google.android.exoplayer2.source.ShuffleOrder-">setShuffleOrder</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>shuffleOrder</code> - The shuffle order.</dd>
</dl>
</li>
</ul>
<a name="setShuffleModeEnabled-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShuffleModeEnabled</h4>
<pre>public&nbsp;void&nbsp;setShuffleModeEnabled&#8203;(boolean&nbsp;shuffleModeEnabled)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setShuffleModeEnabled-boolean-">Player</a></code></span></div>
<div class="block">Sets whether shuffling of windows is enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setShuffleModeEnabled-boolean-">setShuffleModeEnabled</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>shuffleModeEnabled</code> - Whether shuffling is enabled.</dd>
</dl>
</li>
</ul>
<a name="getShuffleModeEnabled--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShuffleModeEnabled</h4>
<pre>public&nbsp;boolean&nbsp;getShuffleModeEnabled()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getShuffleModeEnabled--">Player</a></code></span></div>
<div class="block">Returns whether shuffling of windows is enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getShuffleModeEnabled--">getShuffleModeEnabled</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onShuffleModeEnabledChanged-boolean-"><code>Player.EventListener.onShuffleModeEnabledChanged(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="isLoading--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLoading</h4>
<pre>public&nbsp;boolean&nbsp;isLoading()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#isLoading--">Player</a></code></span></div>
<div class="block">Whether the player is currently loading the source.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#isLoading--">isLoading</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Whether the player is currently loading the source.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onIsLoadingChanged-boolean-"><code>Player.EventListener.onIsLoadingChanged(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="seekTo-int-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekTo</h4>
<pre>public&nbsp;void&nbsp;seekTo&#8203;(int&nbsp;windowIndex,
long&nbsp;positionMs)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#seekTo-int-long-">Player</a></code></span></div>
<div class="block">Seeks to a position specified in milliseconds in the specified window.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#seekTo-int-long-">seekTo</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>windowIndex</code> - The index of the window.</dd>
<dd><code>positionMs</code> - The seek position in the specified window, or <a href="../../../../../com/google/android/exoplayer2/C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> to seek to
the window's default position.</dd>
</dl>
</li>
</ul>
<a name="setPlaybackParameters-com.google.android.exoplayer2.PlaybackParameters-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlaybackParameters</h4>
<pre>public&nbsp;void&nbsp;setPlaybackParameters&#8203;(@Nullable
<a href="../../../../../com/google/android/exoplayer2/PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a>&nbsp;playbackParameters)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#setPlaybackParameters-com.google.android.exoplayer2.PlaybackParameters-">Player</a></code></span></div>
<div class="block">Attempts to set the playback parameters. Passing <code>null</code> sets the parameters to the
default, <a href="../../../../../com/google/android/exoplayer2/PlaybackParameters.html#DEFAULT"><code>PlaybackParameters.DEFAULT</code></a>, which means there is no speed or pitch adjustment.
<p>Playback parameters changes may cause the player to buffer. <a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlaybackParametersChanged-com.google.android.exoplayer2.PlaybackParameters-"><code>Player.EventListener.onPlaybackParametersChanged(PlaybackParameters)</code></a> will be called whenever the
currently active playback parameters change.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#setPlaybackParameters-com.google.android.exoplayer2.PlaybackParameters-">setPlaybackParameters</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>playbackParameters</code> - The playback parameters, or <code>null</code> to use the defaults.</dd>
</dl>
</li>
</ul>
<a name="getPlaybackParameters--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackParameters</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a>&nbsp;getPlaybackParameters()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackParameters--">Player</a></code></span></div>
<div class="block">Returns the currently active playback parameters.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getPlaybackParameters--">getPlaybackParameters</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlaybackParametersChanged-com.google.android.exoplayer2.PlaybackParameters-"><code>Player.EventListener.onPlaybackParametersChanged(PlaybackParameters)</code></a></dd>
</dl>
</li>
</ul>
<a name="setSeekParameters-com.google.android.exoplayer2.SeekParameters-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setSeekParameters</h4>
<pre>public&nbsp;void&nbsp;setSeekParameters&#8203;(@Nullable
<a href="../../../../../com/google/android/exoplayer2/SeekParameters.html" title="class in com.google.android.exoplayer2">SeekParameters</a>&nbsp;seekParameters)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setSeekParameters-com.google.android.exoplayer2.SeekParameters-">ExoPlayer</a></code></span></div>
<div class="block">Sets the parameters that control how seek operations are performed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setSeekParameters-com.google.android.exoplayer2.SeekParameters-">setSeekParameters</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>seekParameters</code> - The seek parameters, or <code>null</code> to use the defaults.</dd>
</dl>
</li>
</ul>
<a name="getSeekParameters--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSeekParameters</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/SeekParameters.html" title="class in com.google.android.exoplayer2">SeekParameters</a>&nbsp;getSeekParameters()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getSeekParameters--">ExoPlayer</a></code></span></div>
<div class="block">Returns the currently active <a href="../../../../../com/google/android/exoplayer2/SeekParameters.html" title="class in com.google.android.exoplayer2"><code>SeekParameters</code></a> of the player.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getSeekParameters--">getSeekParameters</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="stop-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
<pre>public&nbsp;void&nbsp;stop&#8203;(boolean&nbsp;reset)</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#stop-boolean-">stop</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="release--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>release</h4>
<pre>public&nbsp;void&nbsp;release()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#release--">Player</a></code></span></div>
<div class="block">Releases the player. This method must be called when the player is no longer required. The
player must not be used after calling this method.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#release--">release</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="createMessage-com.google.android.exoplayer2.PlayerMessage.Target-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createMessage</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a>&nbsp;createMessage&#8203;(<a href="../../../../../com/google/android/exoplayer2/PlayerMessage.Target.html" title="interface in com.google.android.exoplayer2">PlayerMessage.Target</a>&nbsp;target)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#createMessage-com.google.android.exoplayer2.PlayerMessage.Target-">ExoPlayer</a></code></span></div>
<div class="block">Creates a message that can be sent to a <a href="../../../../../com/google/android/exoplayer2/PlayerMessage.Target.html" title="interface in com.google.android.exoplayer2"><code>PlayerMessage.Target</code></a>. By default, the message
will be delivered immediately without blocking on the playback thread. The default <a href="../../../../../com/google/android/exoplayer2/PlayerMessage.html#getType--"><code>PlayerMessage.getType()</code></a> is 0 and the default <a href="../../../../../com/google/android/exoplayer2/PlayerMessage.html#getPayload--"><code>PlayerMessage.getPayload()</code></a> is null. If a
position is specified with <a href="../../../../../com/google/android/exoplayer2/PlayerMessage.html#setPosition-long-"><code>PlayerMessage.setPosition(long)</code></a>, the message will be
delivered at this position in the current window defined by <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentWindowIndex--"><code>Player.getCurrentWindowIndex()</code></a>.
Alternatively, the message can be sent at a specific window using <a href="../../../../../com/google/android/exoplayer2/PlayerMessage.html#setPosition-int-long-"><code>PlayerMessage.setPosition(int, long)</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#createMessage-com.google.android.exoplayer2.PlayerMessage.Target-">createMessage</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="getRendererCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRendererCount</h4>
<pre>public&nbsp;int&nbsp;getRendererCount()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getRendererCount--">Player</a></code></span></div>
<div class="block">Returns the number of renderers.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getRendererCount--">getRendererCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getRendererType-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRendererType</h4>
<pre>public&nbsp;int&nbsp;getRendererType&#8203;(int&nbsp;index)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getRendererType-int-">Player</a></code></span></div>
<div class="block">Returns the track type that the renderer at a given index handles.
<p>For example, a video renderer will return <a href="../../../../../com/google/android/exoplayer2/C.html#TRACK_TYPE_VIDEO"><code>C.TRACK_TYPE_VIDEO</code></a>, an audio renderer will
return <a href="../../../../../com/google/android/exoplayer2/C.html#TRACK_TYPE_AUDIO"><code>C.TRACK_TYPE_AUDIO</code></a> and a text renderer will return <a href="../../../../../com/google/android/exoplayer2/C.html#TRACK_TYPE_TEXT"><code>C.TRACK_TYPE_TEXT</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getRendererType-int-">getRendererType</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>index</code> - The index of the renderer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>One of the <code>TRACK_TYPE_*</code> constants defined in <a href="../../../../../com/google/android/exoplayer2/C.html" title="class in com.google.android.exoplayer2"><code>C</code></a>.</dd>
</dl>
</li>
</ul>
<a name="getTrackSelector--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTrackSelector</h4>
<pre>@Nullable
public&nbsp;<a href="../../../../../com/google/android/exoplayer2/trackselection/TrackSelector.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelector</a>&nbsp;getTrackSelector()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getTrackSelector--">ExoPlayer</a></code></span></div>
<div class="block">Returns the track selector that this player uses, or null if track selection is not supported.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getTrackSelector--">getTrackSelector</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
</dl>
</li>
</ul>
<a name="getCurrentTrackGroups--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentTrackGroups</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source">TrackGroupArray</a>&nbsp;getCurrentTrackGroups()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTrackGroups--">Player</a></code></span></div>
<div class="block">Returns the available track groups.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTrackGroups--">getCurrentTrackGroups</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onTracksChanged-com.google.android.exoplayer2.source.TrackGroupArray-com.google.android.exoplayer2.trackselection.TrackSelectionArray-"><code>Player.EventListener.onTracksChanged(TrackGroupArray, TrackSelectionArray)</code></a></dd>
</dl>
</li>
</ul>
<a name="getCurrentTrackSelections--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentTrackSelections</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/trackselection/TrackSelectionArray.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionArray</a>&nbsp;getCurrentTrackSelections()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTrackSelections--">Player</a></code></span></div>
<div class="block">Returns the current track selections for each renderer.
<p>A concrete implementation may include null elements if it has a fixed number of renderer
components, wishes to report a TrackSelection for each of them, and has one or more renderer
components that is not assigned any selected tracks.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTrackSelections--">getCurrentTrackSelections</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getCurrentStaticMetadata--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentStaticMetadata</h4>
<pre>public&nbsp;<a href="https://developer.android.com/reference/java/util/List.html" title="class or interface in java.util" class="externalLink">List</a>&lt;<a href="../../../../../com/google/android/exoplayer2/metadata/Metadata.html" title="class in com.google.android.exoplayer2.metadata" target="_top">Metadata</a>&gt;&nbsp;getCurrentStaticMetadata()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentStaticMetadata--">Player</a></code></span></div>
<div class="block">Returns the current static metadata for the track selections.
<p>The returned <code>metadataList</code> is an immutable list of <a href="../../../../../com/google/android/exoplayer2/metadata/Metadata.html" title="class in com.google.android.exoplayer2.metadata"><code>Metadata</code></a> instances, where
the elements correspond to the <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTrackSelections--"><code>current track selections</code></a>,
or an empty list if there are no track selections or the selected tracks contain no static
metadata.
<p>This metadata is considered static in that it comes from the tracks' declared Formats,
rather than being timed (or dynamic) metadata, which is represented within a metadata track.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentStaticMetadata--">getCurrentStaticMetadata</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onStaticMetadataChanged-java.util.List-"><code>Player.EventListener.onStaticMetadataChanged(List)</code></a></dd>
</dl>
</li>
</ul>
<a name="getCurrentTimeline--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentTimeline</h4>
<pre>public&nbsp;<a href="../../../../../com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2">Timeline</a>&nbsp;getCurrentTimeline()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--">Player</a></code></span></div>
<div class="block">Returns the current <a href="../../../../../com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a>. Never null, but may be empty.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--">getCurrentTimeline</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onTimelineChanged-com.google.android.exoplayer2.Timeline-int-"><code>Player.EventListener.onTimelineChanged(Timeline, int)</code></a></dd>
</dl>
</li>
</ul>
<a name="getCurrentPeriodIndex--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentPeriodIndex</h4>
<pre>public&nbsp;int&nbsp;getCurrentPeriodIndex()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPeriodIndex--">Player</a></code></span></div>
<div class="block">Returns the index of the period currently being played.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPeriodIndex--">getCurrentPeriodIndex</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getCurrentWindowIndex--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentWindowIndex</h4>
<pre>public&nbsp;int&nbsp;getCurrentWindowIndex()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentWindowIndex--">Player</a></code></span></div>
<div class="block">Returns the index of the current <a href="../../../../../com/google/android/exoplayer2/Timeline.Window.html" title="class in com.google.android.exoplayer2"><code>window</code></a> in the <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--"><code>timeline</code></a>, or the prospective window index if the <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--"><code>current timeline</code></a> is empty.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentWindowIndex--">getCurrentWindowIndex</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getDuration--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDuration</h4>
<pre>public&nbsp;long&nbsp;getDuration()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getDuration--">Player</a></code></span></div>
<div class="block">Returns the duration of the current content window or ad in milliseconds, or <a href="../../../../../com/google/android/exoplayer2/C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> if the duration is not known.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getDuration--">getDuration</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getCurrentPosition--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentPosition</h4>
<pre>public&nbsp;long&nbsp;getCurrentPosition()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPosition--">Player</a></code></span></div>
<div class="block">Returns the playback position in the current content window or ad, in milliseconds, or the
prospective position in milliseconds if the <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--"><code>current timeline</code></a> is
empty.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPosition--">getCurrentPosition</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getBufferedPosition--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBufferedPosition</h4>
<pre>public&nbsp;long&nbsp;getBufferedPosition()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getBufferedPosition--">Player</a></code></span></div>
<div class="block">Returns an estimate of the position in the current content window or ad up to which data is
buffered, in milliseconds.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getBufferedPosition--">getBufferedPosition</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getTotalBufferedDuration--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalBufferedDuration</h4>
<pre>public&nbsp;long&nbsp;getTotalBufferedDuration()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getTotalBufferedDuration--">Player</a></code></span></div>
<div class="block">Returns an estimate of the total buffered duration from the current position, in milliseconds.
This includes pre-buffered data for subsequent ads and windows.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getTotalBufferedDuration--">getTotalBufferedDuration</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="isPlayingAd--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPlayingAd</h4>
<pre>public&nbsp;boolean&nbsp;isPlayingAd()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--">Player</a></code></span></div>
<div class="block">Returns whether the player is currently playing an ad.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--">isPlayingAd</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getCurrentAdGroupIndex--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentAdGroupIndex</h4>
<pre>public&nbsp;int&nbsp;getCurrentAdGroupIndex()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentAdGroupIndex--">Player</a></code></span></div>
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns true, returns the index of the ad group in the period
currently being played. Returns <a href="../../../../../com/google/android/exoplayer2/C.html#INDEX_UNSET"><code>C.INDEX_UNSET</code></a> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentAdGroupIndex--">getCurrentAdGroupIndex</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getCurrentAdIndexInAdGroup--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentAdIndexInAdGroup</h4>
<pre>public&nbsp;int&nbsp;getCurrentAdIndexInAdGroup()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentAdIndexInAdGroup--">Player</a></code></span></div>
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns true, returns the index of the ad in its ad group. Returns
<a href="../../../../../com/google/android/exoplayer2/C.html#INDEX_UNSET"><code>C.INDEX_UNSET</code></a> otherwise.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentAdIndexInAdGroup--">getCurrentAdIndexInAdGroup</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getContentPosition--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentPosition</h4>
<pre>public&nbsp;long&nbsp;getContentPosition()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getContentPosition--">Player</a></code></span></div>
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns <code>true</code>, returns the content position that will be
played once all ads in the ad group have finished playing, in milliseconds. If there is no ad
playing, the returned position is the same as that returned by <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentPosition--"><code>Player.getCurrentPosition()</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getContentPosition--">getContentPosition</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="getContentBufferedPosition--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentBufferedPosition</h4>
<pre>public&nbsp;long&nbsp;getContentBufferedPosition()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html#getContentBufferedPosition--">Player</a></code></span></div>
<div class="block">If <a href="../../../../../com/google/android/exoplayer2/Player.html#isPlayingAd--"><code>Player.isPlayingAd()</code></a> returns <code>true</code>, returns an estimate of the content position in
the current content window up to which data is buffered, in milliseconds. If there is no ad
playing, the returned position is the same as that returned by <a href="../../../../../com/google/android/exoplayer2/Player.html#getBufferedPosition--"><code>Player.getBufferedPosition()</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/Player.html#getContentBufferedPosition--">getContentBufferedPosition</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a name="setForegroundMode-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForegroundMode</h4>
<pre>public&nbsp;void&nbsp;setForegroundMode&#8203;(boolean&nbsp;foregroundMode)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setForegroundMode-boolean-">ExoPlayer</a></code></span></div>
<div class="block">Sets whether the player is allowed to keep holding limited resources such as video decoders,
even when in the idle state. By doing so, the player may be able to reduce latency when
starting to play another piece of content for which the same resources are required.
<p>This mode should be used with caution, since holding limited resources may prevent other
players of media components from acquiring them. It should only be enabled when <em>both</em>
of the following conditions are true:
<ul>
<li>The application that owns the player is in the foreground.
<li>The player is used in a way that may benefit from foreground mode. For this to be true,
the same player instance must be used to play multiple pieces of content, and there must
be gaps between the playbacks (i.e. <a href="../../../../../com/google/android/exoplayer2/Player.html#stop--"><code>Player.stop()</code></a> is called to halt one playback, and
<a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#prepare-com.google.android.exoplayer2.source.MediaSource-"><code>ExoPlayer.prepare(com.google.android.exoplayer2.source.MediaSource)</code></a> is called some time later to start a new one).
</ul>
<p>Note that foreground mode is <em>not</em> useful for switching between content without gaps
between the playbacks. For this use case <a href="../../../../../com/google/android/exoplayer2/Player.html#stop--"><code>Player.stop()</code></a> does not need to be called, and simply
calling <a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#prepare-com.google.android.exoplayer2.source.MediaSource-"><code>ExoPlayer.prepare(com.google.android.exoplayer2.source.MediaSource)</code></a> for the new media will cause limited resources to be retained even if
foreground mode is not enabled.
<p>If foreground mode is enabled, it's the application's responsibility to disable it when the
conditions described above no longer hold.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setForegroundMode-boolean-">setForegroundMode</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>foregroundMode</code> - Whether the player is allowed to keep limited resources even when in the
idle state.</dd>
</dl>
</li>
</ul>
<a name="setPauseAtEndOfMediaItems-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPauseAtEndOfMediaItems</h4>
<pre>public&nbsp;void&nbsp;setPauseAtEndOfMediaItems&#8203;(boolean&nbsp;pauseAtEndOfMediaItems)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setPauseAtEndOfMediaItems-boolean-">ExoPlayer</a></code></span></div>
<div class="block">Sets whether to pause playback at the end of each media item.
<p>This means the player will pause at the end of each window in the current <a href="../../../../../com/google/android/exoplayer2/Player.html#getCurrentTimeline--"><code>timeline</code></a>. Listeners will be informed by a call to <a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onPlayWhenReadyChanged-boolean-int-"><code>Player.EventListener.onPlayWhenReadyChanged(boolean, int)</code></a> with the reason <a href="../../../../../com/google/android/exoplayer2/Player.html#PLAY_WHEN_READY_CHANGE_REASON_END_OF_MEDIA_ITEM"><code>Player.PLAY_WHEN_READY_CHANGE_REASON_END_OF_MEDIA_ITEM</code></a> when this happens.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setPauseAtEndOfMediaItems-boolean-">setPauseAtEndOfMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>pauseAtEndOfMediaItems</code> - Whether to pause playback at the end of each media item.</dd>
</dl>
</li>
</ul>
<a name="getPauseAtEndOfMediaItems--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPauseAtEndOfMediaItems</h4>
<pre>public&nbsp;boolean&nbsp;getPauseAtEndOfMediaItems()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getPauseAtEndOfMediaItems--">ExoPlayer</a></code></span></div>
<div class="block">Returns whether the player pauses playback at the end of each media item.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#getPauseAtEndOfMediaItems--">getPauseAtEndOfMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#setPauseAtEndOfMediaItems-boolean-"><code>ExoPlayer.setPauseAtEndOfMediaItems(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a name="experimentalSetOffloadSchedulingEnabled-boolean-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>experimentalSetOffloadSchedulingEnabled</h4>
<pre>public&nbsp;void&nbsp;experimentalSetOffloadSchedulingEnabled&#8203;(boolean&nbsp;offloadSchedulingEnabled)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#experimentalSetOffloadSchedulingEnabled-boolean-">ExoPlayer</a></code></span></div>
<div class="block">Sets whether audio offload scheduling is enabled. If enabled, ExoPlayer's main loop will run as
rarely as possible when playing an audio stream using audio offload.
<p>Only use this scheduling mode if the player is not displaying anything to the user. For
example when the application is in the background, or the screen is off. The player state
(including position) is rarely updated (roughly between every 10 seconds and 1 minute).
<p>While offload scheduling is enabled, player events may be delivered severely delayed and
apps should not interact with the player. When returning to the foreground, disable offload
scheduling and wait for <a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onExperimentalOffloadSchedulingEnabledChanged-boolean-"><code>Player.EventListener.onExperimentalOffloadSchedulingEnabledChanged(boolean)</code></a> to be called with
<code>offloadSchedulingEnabled = false</code> before interacting with the player.
<p>This mode should save significant power when the phone is playing offload audio with the
screen off.
<p>This mode only has an effect when playing an audio track in offload mode, which requires all
the following:
<ul>
<li>Audio offload rendering is enabled in <a href="../../../../../com/google/android/exoplayer2/DefaultRenderersFactory.html#setEnableAudioOffload-boolean-"><code>DefaultRenderersFactory.setEnableAudioOffload(boolean)</code></a> or the equivalent option passed to <a href="../../../../../com/google/android/exoplayer2/audio/DefaultAudioSink.html#DefaultAudioSink-com.google.android.exoplayer2.audio.AudioCapabilities-com.google.android.exoplayer2.audio.DefaultAudioSink.AudioProcessorChain-boolean-boolean-boolean-"><code>DefaultAudioSink(AudioCapabilities,
DefaultAudioSink.AudioProcessorChain, boolean, boolean, boolean)</code></a>.
<li>An audio track is playing in a format that the device supports offloading (for example,
MP3 or AAC).
<li>The <a href="../../../../../com/google/android/exoplayer2/audio/AudioSink.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioSink</code></a> is playing with an offload <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack</code></a>.
</ul>
<p>The state where ExoPlayer main loop has been paused to save power during offload playback
can be queried with <a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#experimentalIsSleepingForOffload--"><code>ExoPlayer.experimentalIsSleepingForOffload()</code></a>.
<p>This method is experimental, and will be renamed or removed in a future release.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#experimentalSetOffloadSchedulingEnabled-boolean-">experimentalSetOffloadSchedulingEnabled</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>offloadSchedulingEnabled</code> - Whether to enable offload scheduling.</dd>
</dl>
</li>
</ul>
<a name="experimentalIsSleepingForOffload--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>experimentalIsSleepingForOffload</h4>
<pre>public&nbsp;boolean&nbsp;experimentalIsSleepingForOffload()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#experimentalIsSleepingForOffload--">ExoPlayer</a></code></span></div>
<div class="block">Returns whether the player has paused its main loop to save power in offload scheduling mode.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#experimentalIsSleepingForOffload--">experimentalIsSleepingForOffload</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../com/google/android/exoplayer2/ExoPlayer.html#experimentalSetOffloadSchedulingEnabled-boolean-"><code>ExoPlayer.experimentalSetOffloadSchedulingEnabled(boolean)</code></a>,
<a href="../../../../../com/google/android/exoplayer2/Player.EventListener.html#onExperimentalSleepingForOffloadChanged-boolean-"><code>Player.EventListener.onExperimentalSleepingForOffloadChanged(boolean)</code></a></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../com/google/android/exoplayer2/testutil/NoUidTimeline.html" title="class in com.google.android.exoplayer2.testutil"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../com/google/android/exoplayer2/testutil/TestExoPlayerBuilder.html" title="class in com.google.android.exoplayer2.testutil"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?com/google/android/exoplayer2/testutil/StubExoPlayer.html" target="_top">Frames</a></li>
<li><a href="StubExoPlayer.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.com.google.android.exoplayer2.BasePlayer">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>