media/docs/doc/reference/com/google/android/exoplayer2/ForwardingPlayer.html
bachinger 87420fcdab Update JavaDoc
#minor-release

PiperOrigin-RevId: 455361427
2022-06-16 12:56:30 +00:00

3189 lines
187 KiB
HTML

<!DOCTYPE HTML>
<!-- 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>ForwardingPlayer (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-3.5.1.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="ForwardingPlayer (ExoPlayer library)";
}
}
catch(err) {
}
//-->
var data = {"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":42,"i42":10,"i43":10,"i44":10,"i45":10,"i46":10,"i47":10,"i48":10,"i49":42,"i50":10,"i51":10,"i52":10,"i53":10,"i54":10,"i55":10,"i56":10,"i57":10,"i58":10,"i59":42,"i60":10,"i61":42,"i62":42,"i63":10,"i64":42,"i65":10,"i66":10,"i67":10,"i68":10,"i69":10,"i70":42,"i71":42,"i72":42,"i73":10,"i74":10,"i75":10,"i76":10,"i77":10,"i78":10,"i79":42,"i80":10,"i81":10,"i82":10,"i83":42,"i84":10,"i85":10,"i86":10,"i87":10,"i88":10,"i89":10,"i90":10,"i91":10,"i92":10,"i93":10,"i94":10,"i95":10,"i96":42,"i97":10,"i98":10,"i99":42,"i100":10,"i101":10,"i102":10,"i103":10,"i104":10,"i105":10,"i106":10,"i107":10,"i108":10,"i109":10,"i110":10,"i111":10,"i112":10,"i113":10,"i114":10,"i115":10,"i116":10,"i117":10,"i118":10,"i119":10,"i120":10,"i121":42};
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 = "../../../../";
var useModuleDirectories = false;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.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" id="allclasses_navbar_top">
<li><a href="../../../../allclasses.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><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">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 id="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>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.google.android.exoplayer2</a></div>
<h2 title="Class ForwardingPlayer" class="title">Class ForwardingPlayer</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>com.google.android.exoplayer2.ForwardingPlayer</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">ForwardingPlayer</span>
extends <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>
implements <a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></pre>
<div class="block">A <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> that forwards operations to another <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>. Applications can use this
class to suppress or modify specific operations, by overriding the respective methods.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="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="Player.html" title="interface in com.google.android.exoplayer2">Player</a></h3>
<code><a href="Player.Command.html" title="annotation in com.google.android.exoplayer2">Player.Command</a>, <a href="Player.Commands.html" title="class in com.google.android.exoplayer2">Player.Commands</a>, <a href="Player.DiscontinuityReason.html" title="annotation in com.google.android.exoplayer2">Player.DiscontinuityReason</a>, <a href="Player.Event.html" title="annotation in com.google.android.exoplayer2">Player.Event</a>, <a href="Player.Events.html" title="class in com.google.android.exoplayer2">Player.Events</a>, <a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>, <a href="Player.MediaItemTransitionReason.html" title="annotation in com.google.android.exoplayer2">Player.MediaItemTransitionReason</a>, <a href="Player.PlaybackSuppressionReason.html" title="annotation in com.google.android.exoplayer2">Player.PlaybackSuppressionReason</a>, <a href="Player.PlayWhenReadyChangeReason.html" title="annotation in com.google.android.exoplayer2">Player.PlayWhenReadyChangeReason</a>, <a href="Player.PositionInfo.html" title="class in com.google.android.exoplayer2">Player.PositionInfo</a>, <a href="Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2">Player.RepeatMode</a>, <a href="Player.State.html" title="annotation in com.google.android.exoplayer2">Player.State</a>, <a href="Player.TimelineChangeReason.html" title="annotation in com.google.android.exoplayer2">Player.TimelineChangeReason</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.com.google.android.exoplayer2.Player">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;com.google.android.exoplayer2.<a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></h3>
<code><a href="Player.html#COMMAND_ADJUST_DEVICE_VOLUME">COMMAND_ADJUST_DEVICE_VOLUME</a>, <a href="Player.html#COMMAND_CHANGE_MEDIA_ITEMS">COMMAND_CHANGE_MEDIA_ITEMS</a>, <a href="Player.html#COMMAND_GET_AUDIO_ATTRIBUTES">COMMAND_GET_AUDIO_ATTRIBUTES</a>, <a href="Player.html#COMMAND_GET_CURRENT_MEDIA_ITEM">COMMAND_GET_CURRENT_MEDIA_ITEM</a>, <a href="Player.html#COMMAND_GET_DEVICE_VOLUME">COMMAND_GET_DEVICE_VOLUME</a>, <a href="Player.html#COMMAND_GET_MEDIA_ITEMS_METADATA">COMMAND_GET_MEDIA_ITEMS_METADATA</a>, <a href="Player.html#COMMAND_GET_TEXT">COMMAND_GET_TEXT</a>, <a href="Player.html#COMMAND_GET_TIMELINE">COMMAND_GET_TIMELINE</a>, <a href="Player.html#COMMAND_GET_TRACKS">COMMAND_GET_TRACKS</a>, <a href="Player.html#COMMAND_GET_VOLUME">COMMAND_GET_VOLUME</a>, <a href="Player.html#COMMAND_INVALID">COMMAND_INVALID</a>, <a href="Player.html#COMMAND_PLAY_PAUSE">COMMAND_PLAY_PAUSE</a>, <a href="Player.html#COMMAND_PREPARE">COMMAND_PREPARE</a>, <a href="Player.html#COMMAND_SEEK_BACK">COMMAND_SEEK_BACK</a>, <a href="Player.html#COMMAND_SEEK_FORWARD">COMMAND_SEEK_FORWARD</a>, <a href="Player.html#COMMAND_SEEK_IN_CURRENT_MEDIA_ITEM">COMMAND_SEEK_IN_CURRENT_MEDIA_ITEM</a>, <a href="Player.html#COMMAND_SEEK_IN_CURRENT_WINDOW">COMMAND_SEEK_IN_CURRENT_WINDOW</a>, <a href="Player.html#COMMAND_SEEK_TO_DEFAULT_POSITION">COMMAND_SEEK_TO_DEFAULT_POSITION</a>, <a href="Player.html#COMMAND_SEEK_TO_MEDIA_ITEM">COMMAND_SEEK_TO_MEDIA_ITEM</a>, <a href="Player.html#COMMAND_SEEK_TO_NEXT">COMMAND_SEEK_TO_NEXT</a>, <a href="Player.html#COMMAND_SEEK_TO_NEXT_MEDIA_ITEM">COMMAND_SEEK_TO_NEXT_MEDIA_ITEM</a>, <a href="Player.html#COMMAND_SEEK_TO_NEXT_WINDOW">COMMAND_SEEK_TO_NEXT_WINDOW</a>, <a href="Player.html#COMMAND_SEEK_TO_PREVIOUS">COMMAND_SEEK_TO_PREVIOUS</a>, <a href="Player.html#COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM">COMMAND_SEEK_TO_PREVIOUS_MEDIA_ITEM</a>, <a href="Player.html#COMMAND_SEEK_TO_PREVIOUS_WINDOW">COMMAND_SEEK_TO_PREVIOUS_WINDOW</a>, <a href="Player.html#COMMAND_SEEK_TO_WINDOW">COMMAND_SEEK_TO_WINDOW</a>, <a href="Player.html#COMMAND_SET_DEVICE_VOLUME">COMMAND_SET_DEVICE_VOLUME</a>, <a href="Player.html#COMMAND_SET_MEDIA_ITEM">COMMAND_SET_MEDIA_ITEM</a>, <a href="Player.html#COMMAND_SET_MEDIA_ITEMS_METADATA">COMMAND_SET_MEDIA_ITEMS_METADATA</a>, <a href="Player.html#COMMAND_SET_REPEAT_MODE">COMMAND_SET_REPEAT_MODE</a>, <a href="Player.html#COMMAND_SET_SHUFFLE_MODE">COMMAND_SET_SHUFFLE_MODE</a>, <a href="Player.html#COMMAND_SET_SPEED_AND_PITCH">COMMAND_SET_SPEED_AND_PITCH</a>, <a href="Player.html#COMMAND_SET_TRACK_SELECTION_PARAMETERS">COMMAND_SET_TRACK_SELECTION_PARAMETERS</a>, <a href="Player.html#COMMAND_SET_VIDEO_SURFACE">COMMAND_SET_VIDEO_SURFACE</a>, <a href="Player.html#COMMAND_SET_VOLUME">COMMAND_SET_VOLUME</a>, <a href="Player.html#COMMAND_STOP">COMMAND_STOP</a>, <a href="Player.html#DISCONTINUITY_REASON_AUTO_TRANSITION">DISCONTINUITY_REASON_AUTO_TRANSITION</a>, <a href="Player.html#DISCONTINUITY_REASON_INTERNAL">DISCONTINUITY_REASON_INTERNAL</a>, <a href="Player.html#DISCONTINUITY_REASON_REMOVE">DISCONTINUITY_REASON_REMOVE</a>, <a href="Player.html#DISCONTINUITY_REASON_SEEK">DISCONTINUITY_REASON_SEEK</a>, <a href="Player.html#DISCONTINUITY_REASON_SEEK_ADJUSTMENT">DISCONTINUITY_REASON_SEEK_ADJUSTMENT</a>, <a href="Player.html#DISCONTINUITY_REASON_SKIP">DISCONTINUITY_REASON_SKIP</a>, <a href="Player.html#EVENT_AUDIO_ATTRIBUTES_CHANGED">EVENT_AUDIO_ATTRIBUTES_CHANGED</a>, <a href="Player.html#EVENT_AUDIO_SESSION_ID">EVENT_AUDIO_SESSION_ID</a>, <a href="Player.html#EVENT_AVAILABLE_COMMANDS_CHANGED">EVENT_AVAILABLE_COMMANDS_CHANGED</a>, <a href="Player.html#EVENT_CUES">EVENT_CUES</a>, <a href="Player.html#EVENT_DEVICE_INFO_CHANGED">EVENT_DEVICE_INFO_CHANGED</a>, <a href="Player.html#EVENT_DEVICE_VOLUME_CHANGED">EVENT_DEVICE_VOLUME_CHANGED</a>, <a href="Player.html#EVENT_IS_LOADING_CHANGED">EVENT_IS_LOADING_CHANGED</a>, <a href="Player.html#EVENT_IS_PLAYING_CHANGED">EVENT_IS_PLAYING_CHANGED</a>, <a href="Player.html#EVENT_MAX_SEEK_TO_PREVIOUS_POSITION_CHANGED">EVENT_MAX_SEEK_TO_PREVIOUS_POSITION_CHANGED</a>, <a href="Player.html#EVENT_MEDIA_ITEM_TRANSITION">EVENT_MEDIA_ITEM_TRANSITION</a>, <a href="Player.html#EVENT_MEDIA_METADATA_CHANGED">EVENT_MEDIA_METADATA_CHANGED</a>, <a href="Player.html#EVENT_METADATA">EVENT_METADATA</a>, <a href="Player.html#EVENT_PLAY_WHEN_READY_CHANGED">EVENT_PLAY_WHEN_READY_CHANGED</a>, <a href="Player.html#EVENT_PLAYBACK_PARAMETERS_CHANGED">EVENT_PLAYBACK_PARAMETERS_CHANGED</a>, <a href="Player.html#EVENT_PLAYBACK_STATE_CHANGED">EVENT_PLAYBACK_STATE_CHANGED</a>, <a href="Player.html#EVENT_PLAYBACK_SUPPRESSION_REASON_CHANGED">EVENT_PLAYBACK_SUPPRESSION_REASON_CHANGED</a>, <a href="Player.html#EVENT_PLAYER_ERROR">EVENT_PLAYER_ERROR</a>, <a href="Player.html#EVENT_PLAYLIST_METADATA_CHANGED">EVENT_PLAYLIST_METADATA_CHANGED</a>, <a href="Player.html#EVENT_POSITION_DISCONTINUITY">EVENT_POSITION_DISCONTINUITY</a>, <a href="Player.html#EVENT_RENDERED_FIRST_FRAME">EVENT_RENDERED_FIRST_FRAME</a>, <a href="Player.html#EVENT_REPEAT_MODE_CHANGED">EVENT_REPEAT_MODE_CHANGED</a>, <a href="Player.html#EVENT_SEEK_BACK_INCREMENT_CHANGED">EVENT_SEEK_BACK_INCREMENT_CHANGED</a>, <a href="Player.html#EVENT_SEEK_FORWARD_INCREMENT_CHANGED">EVENT_SEEK_FORWARD_INCREMENT_CHANGED</a>, <a href="Player.html#EVENT_SHUFFLE_MODE_ENABLED_CHANGED">EVENT_SHUFFLE_MODE_ENABLED_CHANGED</a>, <a href="Player.html#EVENT_SKIP_SILENCE_ENABLED_CHANGED">EVENT_SKIP_SILENCE_ENABLED_CHANGED</a>, <a href="Player.html#EVENT_SURFACE_SIZE_CHANGED">EVENT_SURFACE_SIZE_CHANGED</a>, <a href="Player.html#EVENT_TIMELINE_CHANGED">EVENT_TIMELINE_CHANGED</a>, <a href="Player.html#EVENT_TRACK_SELECTION_PARAMETERS_CHANGED">EVENT_TRACK_SELECTION_PARAMETERS_CHANGED</a>, <a href="Player.html#EVENT_TRACKS_CHANGED">EVENT_TRACKS_CHANGED</a>, <a href="Player.html#EVENT_VIDEO_SIZE_CHANGED">EVENT_VIDEO_SIZE_CHANGED</a>, <a href="Player.html#EVENT_VOLUME_CHANGED">EVENT_VOLUME_CHANGED</a>, <a href="Player.html#MEDIA_ITEM_TRANSITION_REASON_AUTO">MEDIA_ITEM_TRANSITION_REASON_AUTO</a>, <a href="Player.html#MEDIA_ITEM_TRANSITION_REASON_PLAYLIST_CHANGED">MEDIA_ITEM_TRANSITION_REASON_PLAYLIST_CHANGED</a>, <a href="Player.html#MEDIA_ITEM_TRANSITION_REASON_REPEAT">MEDIA_ITEM_TRANSITION_REASON_REPEAT</a>, <a href="Player.html#MEDIA_ITEM_TRANSITION_REASON_SEEK">MEDIA_ITEM_TRANSITION_REASON_SEEK</a>, <a href="Player.html#PLAY_WHEN_READY_CHANGE_REASON_AUDIO_BECOMING_NOISY">PLAY_WHEN_READY_CHANGE_REASON_AUDIO_BECOMING_NOISY</a>, <a href="Player.html#PLAY_WHEN_READY_CHANGE_REASON_AUDIO_FOCUS_LOSS">PLAY_WHEN_READY_CHANGE_REASON_AUDIO_FOCUS_LOSS</a>, <a href="Player.html#PLAY_WHEN_READY_CHANGE_REASON_END_OF_MEDIA_ITEM">PLAY_WHEN_READY_CHANGE_REASON_END_OF_MEDIA_ITEM</a>, <a href="Player.html#PLAY_WHEN_READY_CHANGE_REASON_REMOTE">PLAY_WHEN_READY_CHANGE_REASON_REMOTE</a>, <a href="Player.html#PLAY_WHEN_READY_CHANGE_REASON_USER_REQUEST">PLAY_WHEN_READY_CHANGE_REASON_USER_REQUEST</a>, <a href="Player.html#PLAYBACK_SUPPRESSION_REASON_NONE">PLAYBACK_SUPPRESSION_REASON_NONE</a>, <a href="Player.html#PLAYBACK_SUPPRESSION_REASON_TRANSIENT_AUDIO_FOCUS_LOSS">PLAYBACK_SUPPRESSION_REASON_TRANSIENT_AUDIO_FOCUS_LOSS</a>, <a href="Player.html#REPEAT_MODE_ALL">REPEAT_MODE_ALL</a>, <a href="Player.html#REPEAT_MODE_OFF">REPEAT_MODE_OFF</a>, <a href="Player.html#REPEAT_MODE_ONE">REPEAT_MODE_ONE</a>, <a href="Player.html#STATE_BUFFERING">STATE_BUFFERING</a>, <a href="Player.html#STATE_ENDED">STATE_ENDED</a>, <a href="Player.html#STATE_IDLE">STATE_IDLE</a>, <a href="Player.html#STATE_READY">STATE_READY</a>, <a href="Player.html#TIMELINE_CHANGE_REASON_PLAYLIST_CHANGED">TIMELINE_CHANGE_REASON_PLAYLIST_CHANGED</a>, <a href="Player.html#TIMELINE_CHANGE_REASON_SOURCE_UPDATE">TIMELINE_CHANGE_REASON_SOURCE_UPDATE</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<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="#%3Cinit%3E(com.google.android.exoplayer2.Player)">ForwardingPlayer</a></span>&#8203;(<a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a>&nbsp;player)</code></th>
<td class="colLast">
<div class="block">Creates a new instance that forwards all operations to <code>player</code>.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<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="#addListener(com.google.android.exoplayer2.Player.Listener)">addListener</a></span>&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#addListener(com.google.android.exoplayer2.Player.Listener)"><code>Player.addListener(Listener)</code></a> on the delegate.</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="#addMediaItem(int,com.google.android.exoplayer2.MediaItem)">addMediaItem</a></span>&#8203;(int&nbsp;index,
<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#addMediaItem(int,com.google.android.exoplayer2.MediaItem)"><code>Player.addMediaItem(int, MediaItem)</code></a> on the delegate.</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="#addMediaItem(com.google.android.exoplayer2.MediaItem)">addMediaItem</a></span>&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#addMediaItem(com.google.android.exoplayer2.MediaItem)"><code>Player.addMediaItem(MediaItem)</code></a> on the delegate.</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="#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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#addMediaItems(int,java.util.List)"><code>Player.addMediaItems(int, List)</code></a> on the delegate.</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="#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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#addMediaItems(java.util.List)"><code>Player.addMediaItems(List)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#canAdvertiseSession()">canAdvertiseSession</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#canAdvertiseSession()"><code>Player.canAdvertiseSession()</code></a> on the delegate and returns the result.</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="#clearMediaItems()">clearMediaItems</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#clearMediaItems()"><code>Player.clearMediaItems()</code></a> on the delegate.</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="#clearVideoSurface()">clearVideoSurface</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#clearVideoSurface()"><code>Player.clearVideoSurface()</code></a> on the delegate.</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="#clearVideoSurface(android.view.Surface)">clearVideoSurface</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/Surface.html" title="class or interface in android.view" class="externalLink" target="_top">Surface</a>&nbsp;surface)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#clearVideoSurface(android.view.Surface)"><code>Player.clearVideoSurface(Surface)</code></a> on the delegate.</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="#clearVideoSurfaceHolder(android.view.SurfaceHolder)">clearVideoSurfaceHolder</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/SurfaceHolder.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceHolder</a>&nbsp;surfaceHolder)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#clearVideoSurfaceHolder(android.view.SurfaceHolder)"><code>Player.clearVideoSurfaceHolder(SurfaceHolder)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clearVideoSurfaceView(android.view.SurfaceView)">clearVideoSurfaceView</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/SurfaceView.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceView</a>&nbsp;surfaceView)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#clearVideoSurfaceView(android.view.SurfaceView)"><code>Player.clearVideoSurfaceView(SurfaceView)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#clearVideoTextureView(android.view.TextureView)">clearVideoTextureView</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/TextureView.html" title="class or interface in android.view" class="externalLink" target="_top">TextureView</a>&nbsp;textureView)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#clearVideoTextureView(android.view.TextureView)"><code>Player.clearVideoTextureView(TextureView)</code></a> on the delegate.</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="#decreaseDeviceVolume()">decreaseDeviceVolume</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#decreaseDeviceVolume()"><code>Player.decreaseDeviceVolume()</code></a> on the delegate.</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="#getApplicationLooper()">getApplicationLooper</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getApplicationLooper()"><code>Player.getApplicationLooper()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="audio/AudioAttributes.html" title="class in com.google.android.exoplayer2.audio">AudioAttributes</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAudioAttributes()">getAudioAttributes</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getAudioAttributes()"><code>Player.getAudioAttributes()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code><a href="Player.Commands.html" title="class in com.google.android.exoplayer2">Player.Commands</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getAvailableCommands()">getAvailableCommands</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getAvailableCommands()"><code>Player.getAvailableCommands()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getBufferedPercentage()">getBufferedPercentage</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getBufferedPercentage()"><code>Player.getBufferedPercentage()</code></a> on the delegate and returns the result.</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="#getBufferedPosition()">getBufferedPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getBufferedPosition()"><code>Player.getBufferedPosition()</code></a> on the delegate and returns the result.</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="#getContentBufferedPosition()">getContentBufferedPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getContentBufferedPosition()"><code>Player.getContentBufferedPosition()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContentDuration()">getContentDuration</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getContentDuration()"><code>Player.getContentDuration()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getContentPosition()">getContentPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getContentPosition()"><code>Player.getContentPosition()</code></a> on the delegate and returns the result.</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="#getCurrentAdGroupIndex()">getCurrentAdGroupIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentAdGroupIndex()"><code>Player.getCurrentAdGroupIndex()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentAdIndexInAdGroup()">getCurrentAdIndexInAdGroup</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentAdIndexInAdGroup()"><code>Player.getCurrentAdIndexInAdGroup()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code><a href="text/CueGroup.html" title="class in com.google.android.exoplayer2.text">CueGroup</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentCues()">getCurrentCues</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentCues()"><code>Player.getCurrentCues()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentLiveOffset()">getCurrentLiveOffset</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentLiveOffset()"><code>Player.getCurrentLiveOffset()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code><a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentManifest()">getCurrentManifest</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentManifest()"><code>Player.getCurrentManifest()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code><a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentMediaItem()">getCurrentMediaItem</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentMediaItem()"><code>Player.getCurrentMediaItem()</code></a> on the delegate and returns the result.</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="#getCurrentMediaItemIndex()">getCurrentMediaItemIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentMediaItemIndex()"><code>Player.getCurrentMediaItemIndex()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentPeriodIndex()">getCurrentPeriodIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentPeriodIndex()"><code>Player.getCurrentPeriodIndex()</code></a> on the delegate and returns the result.</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="#getCurrentPosition()">getCurrentPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentPosition()"><code>Player.getCurrentPosition()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code><a href="Timeline.html" title="class in com.google.android.exoplayer2">Timeline</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentTimeline()">getCurrentTimeline</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentTimeline()"><code>Player.getCurrentTimeline()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code><a href="Tracks.html" title="class in com.google.android.exoplayer2">Tracks</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentTracks()">getCurrentTracks</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getCurrentTracks()"><code>Player.getCurrentTracks()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getCurrentWindowIndex()">getCurrentWindowIndex</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#getCurrentMediaItemIndex()"><code>getCurrentMediaItemIndex()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code><a href="DeviceInfo.html" title="class in com.google.android.exoplayer2">DeviceInfo</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDeviceInfo()">getDeviceInfo</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getDeviceInfo()"><code>Player.getDeviceInfo()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDeviceVolume()">getDeviceVolume</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getDeviceVolume()"><code>Player.getDeviceVolume()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getDuration()">getDuration</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getDuration()"><code>Player.getDuration()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMaxSeekToPreviousPosition()">getMaxSeekToPreviousPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getMaxSeekToPreviousPosition()"><code>Player.getMaxSeekToPreviousPosition()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code><a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMediaItemAt(int)">getMediaItemAt</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getMediaItemAt(int)"><code>Player.getMediaItemAt(int)</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMediaItemCount()">getMediaItemCount</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getMediaItemCount()"><code>Player.getMediaItemCount()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code><a href="MediaMetadata.html" title="class in com.google.android.exoplayer2">MediaMetadata</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getMediaMetadata()">getMediaMetadata</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getMediaMetadata()"><code>Player.getMediaMetadata()</code></a> on the delegate and returns the result.</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="#getNextMediaItemIndex()">getNextMediaItemIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getNextMediaItemIndex()"><code>Player.getNextMediaItemIndex()</code></a> on the delegate and returns the result.</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="#getNextWindowIndex()">getNextWindowIndex</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#getNextMediaItemIndex()"><code>getNextMediaItemIndex()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code><a href="PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPlaybackParameters()">getPlaybackParameters</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getPlaybackParameters()"><code>Player.getPlaybackParameters()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPlaybackState()">getPlaybackState</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getPlaybackState()"><code>Player.getPlaybackState()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPlaybackSuppressionReason()">getPlaybackSuppressionReason</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getPlaybackSuppressionReason()"><code>Player.getPlaybackSuppressionReason()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code><a href="PlaybackException.html" title="class in com.google.android.exoplayer2">PlaybackException</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPlayerError()">getPlayerError</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getPlayerError()"><code>Player.getPlayerError()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code><a href="MediaMetadata.html" title="class in com.google.android.exoplayer2">MediaMetadata</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPlaylistMetadata()">getPlaylistMetadata</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getPlaylistMetadata()"><code>Player.getPlaylistMetadata()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPlayWhenReady()">getPlayWhenReady</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getPlayWhenReady()"><code>Player.getPlayWhenReady()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPreviousMediaItemIndex()">getPreviousMediaItemIndex</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getPreviousMediaItemIndex()"><code>Player.getPreviousMediaItemIndex()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getPreviousWindowIndex()">getPreviousWindowIndex</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#getPreviousMediaItemIndex()"><code>getPreviousMediaItemIndex()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getRepeatMode()">getRepeatMode</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getRepeatMode()"><code>Player.getRepeatMode()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSeekBackIncrement()">getSeekBackIncrement</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getSeekBackIncrement()"><code>Player.getSeekBackIncrement()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getSeekForwardIncrement()">getSeekForwardIncrement</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getSeekForwardIncrement()"><code>Player.getSeekForwardIncrement()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getShuffleModeEnabled()">getShuffleModeEnabled</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getShuffleModeEnabled()"><code>Player.getShuffleModeEnabled()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTotalBufferedDuration()">getTotalBufferedDuration</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getTotalBufferedDuration()"><code>Player.getTotalBufferedDuration()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code><a href="trackselection/TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getTrackSelectionParameters()">getTrackSelectionParameters</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getTrackSelectionParameters()"><code>Player.getTrackSelectionParameters()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code><a href="video/VideoSize.html" title="class in com.google.android.exoplayer2.video">VideoSize</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVideoSize()">getVideoSize</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getVideoSize()"><code>Player.getVideoSize()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>float</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getVolume()">getVolume</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#getVolume()"><code>Player.getVolume()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getWrappedPlayer()">getWrappedPlayer</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> to which operations are forwarded.</div>
</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasNext()">hasNext</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasNextMediaItem()"><code>hasNextMediaItem()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasNextMediaItem()">hasNextMediaItem</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#hasNextMediaItem()"><code>Player.hasNextMediaItem()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasNextWindow()">hasNextWindow</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasNextMediaItem()"><code>hasNextMediaItem()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i62" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasPrevious()">hasPrevious</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasPreviousMediaItem()"><code>hasPreviousMediaItem()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i63" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasPreviousMediaItem()">hasPreviousMediaItem</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#hasPreviousMediaItem()"><code>Player.hasPreviousMediaItem()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i64" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#hasPreviousWindow()">hasPreviousWindow</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasPreviousMediaItem()"><code>hasPreviousMediaItem()</code></a> instead.</div>
</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="#increaseDeviceVolume()">increaseDeviceVolume</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#increaseDeviceVolume()"><code>Player.increaseDeviceVolume()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i66" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCommandAvailable(@com.google.android.exoplayer2.Player.Commandint)">isCommandAvailable</a></span>&#8203;(@com.google.android.exoplayer2.Player.Command int&nbsp;command)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isCommandAvailable(@com.google.android.exoplayer2.Player.Commandint)"><code>Player.isCommandAvailable(int)</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i67" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCurrentMediaItemDynamic()">isCurrentMediaItemDynamic</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isCurrentMediaItemDynamic()"><code>Player.isCurrentMediaItemDynamic()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i68" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCurrentMediaItemLive()">isCurrentMediaItemLive</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isCurrentMediaItemLive()"><code>Player.isCurrentMediaItemLive()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i69" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCurrentMediaItemSeekable()">isCurrentMediaItemSeekable</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isCurrentMediaItemSeekable()"><code>Player.isCurrentMediaItemSeekable()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i70" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCurrentWindowDynamic()">isCurrentWindowDynamic</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#isCurrentMediaItemDynamic()"><code>isCurrentMediaItemDynamic()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i71" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCurrentWindowLive()">isCurrentWindowLive</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#isCurrentMediaItemLive()"><code>isCurrentMediaItemLive()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i72" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCurrentWindowSeekable()">isCurrentWindowSeekable</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#isCurrentMediaItemSeekable()"><code>isCurrentMediaItemSeekable()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i73" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isDeviceMuted()">isDeviceMuted</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isDeviceMuted()"><code>Player.isDeviceMuted()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i74" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isLoading()">isLoading</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isLoading()"><code>Player.isLoading()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i75" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPlaying()">isPlaying</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isPlaying()"><code>Player.isPlaying()</code></a> on the delegate and returns the result.</div>
</td>
</tr>
<tr id="i76" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isPlayingAd()">isPlayingAd</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#isPlayingAd()"><code>Player.isPlayingAd()</code></a> on the delegate and returns the result.</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="#moveMediaItem(int,int)">moveMediaItem</a></span>&#8203;(int&nbsp;currentIndex,
int&nbsp;newIndex)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#moveMediaItem(int,int)"><code>Player.moveMediaItem(int, int)</code></a> on the delegate.</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="#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">Calls <a href="Player.html#moveMediaItems(int,int,int)"><code>Player.moveMediaItems(int, int, int)</code></a> on the delegate.</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="#next()">next</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToNextMediaItem()"><code>seekToNextMediaItem()</code></a> instead.</div>
</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="#pause()">pause</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#pause()"><code>Player.pause()</code></a> on the delegate.</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="#play()">play</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#play()"><code>Player.play()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i82" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prepare()">prepare</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#prepare()"><code>Player.prepare()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i83" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#previous()">previous</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToPreviousMediaItem()"><code>seekToPreviousMediaItem()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i84" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#release()">release</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#release()"><code>Player.release()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i85" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeListener(com.google.android.exoplayer2.Player.Listener)">removeListener</a></span>&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#removeListener(com.google.android.exoplayer2.Player.Listener)"><code>Player.removeListener(Listener)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i86" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeMediaItem(int)">removeMediaItem</a></span>&#8203;(int&nbsp;index)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#removeMediaItem(int)"><code>Player.removeMediaItem(int)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i87" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#removeMediaItems(int,int)">removeMediaItems</a></span>&#8203;(int&nbsp;fromIndex,
int&nbsp;toIndex)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#removeMediaItems(int,int)"><code>Player.removeMediaItems(int, int)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i88" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekBack()">seekBack</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekBack()"><code>Player.seekBack()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i89" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekForward()">seekForward</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekForward()"><code>Player.seekForward()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i90" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekTo(int,long)">seekTo</a></span>&#8203;(int&nbsp;mediaItemIndex,
long&nbsp;positionMs)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekTo(int,long)"><code>Player.seekTo(int, long)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i91" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekTo(long)">seekTo</a></span>&#8203;(long&nbsp;positionMs)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekTo(long)"><code>Player.seekTo(long)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i92" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToDefaultPosition()">seekToDefaultPosition</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekToDefaultPosition()"><code>Player.seekToDefaultPosition()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i93" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToDefaultPosition(int)">seekToDefaultPosition</a></span>&#8203;(int&nbsp;mediaItemIndex)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekToDefaultPosition(int)"><code>Player.seekToDefaultPosition(int)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i94" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToNext()">seekToNext</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekToNext()"><code>Player.seekToNext()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i95" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToNextMediaItem()">seekToNextMediaItem</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekToNextMediaItem()"><code>Player.seekToNextMediaItem()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i96" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToNextWindow()">seekToNextWindow</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToNextMediaItem()"><code>seekToNextMediaItem()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i97" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToPrevious()">seekToPrevious</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekToPrevious()"><code>Player.seekToPrevious()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i98" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToPreviousMediaItem()">seekToPreviousMediaItem</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#seekToPreviousMediaItem()"><code>Player.seekToPreviousMediaItem()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i99" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#seekToPreviousWindow()">seekToPreviousWindow</a></span>()</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToPreviousMediaItem()"><code>seekToPreviousMediaItem()</code></a> instead.</div>
</div>
</td>
</tr>
<tr id="i100" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDeviceMuted(boolean)">setDeviceMuted</a></span>&#8203;(boolean&nbsp;muted)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setDeviceMuted(boolean)"><code>Player.setDeviceMuted(boolean)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i101" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setDeviceVolume(int)">setDeviceVolume</a></span>&#8203;(int&nbsp;volume)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setDeviceVolume(int)"><code>Player.setDeviceVolume(int)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i102" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMediaItem(com.google.android.exoplayer2.MediaItem)">setMediaItem</a></span>&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem)"><code>Player.setMediaItem(MediaItem)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i103" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMediaItem(com.google.android.exoplayer2.MediaItem,boolean)">setMediaItem</a></span>&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
boolean&nbsp;resetPosition)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem,boolean)"><code>Player.setMediaItem(MediaItem, boolean)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i104" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMediaItem(com.google.android.exoplayer2.MediaItem,long)">setMediaItem</a></span>&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
long&nbsp;startPositionMs)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem,long)"><code>Player.setMediaItem(MediaItem, long)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i105" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setMediaItems(java.util.List)"><code>Player.setMediaItems(List)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i106" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#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="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">Calls <a href="Player.html#setMediaItems(java.util.List,boolean)"><code>Player.setMediaItems(List, boolean)</code></a> ()} on the delegate.</div>
</td>
</tr>
<tr id="i107" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems,
int&nbsp;startIndex,
long&nbsp;startPositionMs)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setMediaItems(java.util.List,int,long)"><code>Player.setMediaItems(List, int, long)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i108" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPlaybackParameters(com.google.android.exoplayer2.PlaybackParameters)">setPlaybackParameters</a></span>&#8203;(<a href="PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a>&nbsp;playbackParameters)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setPlaybackParameters(com.google.android.exoplayer2.PlaybackParameters)"><code>Player.setPlaybackParameters(PlaybackParameters)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i109" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPlaybackSpeed(float)">setPlaybackSpeed</a></span>&#8203;(float&nbsp;speed)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setPlaybackSpeed(float)"><code>Player.setPlaybackSpeed(float)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i110" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPlaylistMetadata(com.google.android.exoplayer2.MediaMetadata)">setPlaylistMetadata</a></span>&#8203;(<a href="MediaMetadata.html" title="class in com.google.android.exoplayer2">MediaMetadata</a>&nbsp;mediaMetadata)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setPlaylistMetadata(com.google.android.exoplayer2.MediaMetadata)"><code>Player.setPlaylistMetadata(MediaMetadata)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i111" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setPlayWhenReady(boolean)">setPlayWhenReady</a></span>&#8203;(boolean&nbsp;playWhenReady)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setPlayWhenReady(boolean)"><code>Player.setPlayWhenReady(boolean)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i112" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setRepeatMode(@com.google.android.exoplayer2.Player.RepeatModeint)">setRepeatMode</a></span>&#8203;(@com.google.android.exoplayer2.Player.RepeatMode int&nbsp;repeatMode)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setRepeatMode(@com.google.android.exoplayer2.Player.RepeatModeint)"><code>Player.setRepeatMode(int)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i113" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setShuffleModeEnabled(boolean)">setShuffleModeEnabled</a></span>&#8203;(boolean&nbsp;shuffleModeEnabled)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setShuffleModeEnabled(boolean)"><code>Player.setShuffleModeEnabled(boolean)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i114" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setTrackSelectionParameters(com.google.android.exoplayer2.trackselection.TrackSelectionParameters)">setTrackSelectionParameters</a></span>&#8203;(<a href="trackselection/TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a>&nbsp;parameters)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setTrackSelectionParameters(com.google.android.exoplayer2.trackselection.TrackSelectionParameters)"><code>Player.setTrackSelectionParameters(TrackSelectionParameters)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i115" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoSurface(android.view.Surface)">setVideoSurface</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/Surface.html" title="class or interface in android.view" class="externalLink" target="_top">Surface</a>&nbsp;surface)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setVideoSurface(android.view.Surface)"><code>Player.setVideoSurface(Surface)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i116" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoSurfaceHolder(android.view.SurfaceHolder)">setVideoSurfaceHolder</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/SurfaceHolder.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceHolder</a>&nbsp;surfaceHolder)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setVideoSurfaceHolder(android.view.SurfaceHolder)"><code>Player.setVideoSurfaceHolder(SurfaceHolder)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i117" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoSurfaceView(android.view.SurfaceView)">setVideoSurfaceView</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/SurfaceView.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceView</a>&nbsp;surfaceView)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setVideoSurfaceView(android.view.SurfaceView)"><code>Player.setVideoSurfaceView(SurfaceView)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i118" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVideoTextureView(android.view.TextureView)">setVideoTextureView</a></span>&#8203;(<a href="https://developer.android.com/reference/android/view/TextureView.html" title="class or interface in android.view" class="externalLink" target="_top">TextureView</a>&nbsp;textureView)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setVideoTextureView(android.view.TextureView)"><code>Player.setVideoTextureView(TextureView)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i119" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setVolume(float)">setVolume</a></span>&#8203;(float&nbsp;volume)</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#setVolume(float)"><code>Player.setVolume(float)</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i120" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stop()">stop</a></span>()</code></th>
<td class="colLast">
<div class="block">Calls <a href="Player.html#stop()"><code>Player.stop()</code></a> on the delegate.</div>
</td>
</tr>
<tr id="i121" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stop(boolean)">stop</a></span>&#8203;(boolean&nbsp;reset)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#stop()"><code>stop()</code></a> and <a href="#clearMediaItems()"><code>clearMediaItems()</code></a> (if <code>reset</code> is true) or
just <a href="#stop()"><code>stop()</code></a> (if <code>reset</code> is false).</div>
</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="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>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;(com.google.android.exoplayer2.Player)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ForwardingPlayer</h4>
<pre>public&nbsp;ForwardingPlayer&#8203;(<a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a>&nbsp;player)</pre>
<div class="block">Creates a new instance that forwards all operations to <code>player</code>.</div>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="getApplicationLooper()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getApplicationLooper</h4>
<pre class="methodSignature">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">Calls <a href="Player.html#getApplicationLooper()"><code>Player.getApplicationLooper()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getApplicationLooper()">getApplicationLooper</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="addListener(com.google.android.exoplayer2.Player.Listener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addListener</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addListener&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</pre>
<div class="block">Calls <a href="Player.html#addListener(com.google.android.exoplayer2.Player.Listener)"><code>Player.addListener(Listener)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#addListener(com.google.android.exoplayer2.Player.Listener)">addListener</a></code>&nbsp;in interface&nbsp;<code><a href="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 id="removeListener(com.google.android.exoplayer2.Player.Listener)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeListener</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeListener&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</pre>
<div class="block">Calls <a href="Player.html#removeListener(com.google.android.exoplayer2.Player.Listener)"><code>Player.removeListener(Listener)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#removeListener(com.google.android.exoplayer2.Player.Listener)">removeListener</a></code>&nbsp;in interface&nbsp;<code><a href="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 id="setMediaItems(java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItems</h4>
<pre class="methodSignature">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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</pre>
<div class="block">Calls <a href="Player.html#setMediaItems(java.util.List)"><code>Player.setMediaItems(List)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setMediaItems(java.util.List)">setMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="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="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</dd>
</dl>
</li>
</ul>
<a id="setMediaItems(java.util.List,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItems</h4>
<pre class="methodSignature">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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems,
boolean&nbsp;resetPosition)</pre>
<div class="block">Calls <a href="Player.html#setMediaItems(java.util.List,boolean)"><code>Player.setMediaItems(List, boolean)</code></a> ()} on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setMediaItems(java.util.List,boolean)">setMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="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="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="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="Player.html#getCurrentMediaItemIndex()"><code>Player.getCurrentMediaItemIndex()</code></a> and <a href="Player.html#getCurrentPosition()"><code>Player.getCurrentPosition()</code></a>.</dd>
</dl>
</li>
</ul>
<a id="setMediaItems(java.util.List,int,long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItems</h4>
<pre class="methodSignature">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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems,
int&nbsp;startIndex,
long&nbsp;startPositionMs)</pre>
<div class="block">Calls <a href="Player.html#setMediaItems(java.util.List,int,long)"><code>Player.setMediaItems(List, int, long)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setMediaItems(java.util.List,int,long)">setMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="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="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</dd>
<dd><code>startIndex</code> - The <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> index to start playback from. If <a href="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="C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a> is passed, the default position of the given <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> is used. In
any case, if <code>startIndex</code> is set to <a href="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 id="setMediaItem(com.google.android.exoplayer2.MediaItem)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMediaItem&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</pre>
<div class="block">Calls <a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem)"><code>Player.setMediaItem(MediaItem)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem)">setMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The new <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</dd>
</dl>
</li>
</ul>
<a id="setMediaItem(com.google.android.exoplayer2.MediaItem,long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMediaItem&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
long&nbsp;startPositionMs)</pre>
<div class="block">Calls <a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem,long)"><code>Player.setMediaItem(MediaItem, long)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem,long)">setMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The new <a href="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 id="setMediaItem(com.google.android.exoplayer2.MediaItem,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMediaItem&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem,
boolean&nbsp;resetPosition)</pre>
<div class="block">Calls <a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem,boolean)"><code>Player.setMediaItem(MediaItem, boolean)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setMediaItem(com.google.android.exoplayer2.MediaItem,boolean)">setMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The new <a href="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="Player.html#getCurrentMediaItemIndex()"><code>Player.getCurrentMediaItemIndex()</code></a>
and <a href="Player.html#getCurrentPosition()"><code>Player.getCurrentPosition()</code></a>.</dd>
</dl>
</li>
</ul>
<a id="addMediaItem(com.google.android.exoplayer2.MediaItem)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addMediaItem&#8203;(<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</pre>
<div class="block">Calls <a href="Player.html#addMediaItem(com.google.android.exoplayer2.MediaItem)"><code>Player.addMediaItem(MediaItem)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#addMediaItem(com.google.android.exoplayer2.MediaItem)">addMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItem</code> - The <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> to add.</dd>
</dl>
</li>
</ul>
<a id="addMediaItem(int,com.google.android.exoplayer2.MediaItem)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;addMediaItem&#8203;(int&nbsp;index,
<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;mediaItem)</pre>
<div class="block">Calls <a href="Player.html#addMediaItem(int,com.google.android.exoplayer2.MediaItem)"><code>Player.addMediaItem(int, MediaItem)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#addMediaItem(int,com.google.android.exoplayer2.MediaItem)">addMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="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 item. If the index is larger than the size of
the playlist, the media item is added to the end of the playlist.</dd>
<dd><code>mediaItem</code> - The <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> to add.</dd>
</dl>
</li>
</ul>
<a id="addMediaItems(java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItems</h4>
<pre class="methodSignature">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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</pre>
<div class="block">Calls <a href="Player.html#addMediaItems(java.util.List)"><code>Player.addMediaItems(List)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#addMediaItems(java.util.List)">addMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="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="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a> to add.</dd>
</dl>
</li>
</ul>
<a id="addMediaItems(int,java.util.List)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addMediaItems</h4>
<pre class="methodSignature">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="MediaItem.html" title="class in com.google.android.exoplayer2" target="_top">MediaItem</a>&gt;&nbsp;mediaItems)</pre>
<div class="block">Calls <a href="Player.html#addMediaItems(int,java.util.List)"><code>Player.addMediaItems(int, List)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#addMediaItems(int,java.util.List)">addMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="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. If the index is larger than the size of
the playlist, the media items are added to the end of the playlist.</dd>
<dd><code>mediaItems</code> - The <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a> to add.</dd>
</dl>
</li>
</ul>
<a id="moveMediaItem(int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;moveMediaItem&#8203;(int&nbsp;currentIndex,
int&nbsp;newIndex)</pre>
<div class="block">Calls <a href="Player.html#moveMediaItem(int,int)"><code>Player.moveMediaItem(int, int)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#moveMediaItem(int,int)">moveMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</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 id="moveMediaItems(int,int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveMediaItems</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;moveMediaItems&#8203;(int&nbsp;fromIndex,
int&nbsp;toIndex,
int&nbsp;newIndex)</pre>
<div class="block">Calls <a href="Player.html#moveMediaItems(int,int,int)"><code>Player.moveMediaItems(int, int, int)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#moveMediaItems(int,int,int)">moveMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="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 id="removeMediaItem(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeMediaItem&#8203;(int&nbsp;index)</pre>
<div class="block">Calls <a href="Player.html#removeMediaItem(int)"><code>Player.removeMediaItem(int)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#removeMediaItem(int)">removeMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="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 remove the media item.</dd>
</dl>
</li>
</ul>
<a id="removeMediaItems(int,int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>removeMediaItems</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;removeMediaItems&#8203;(int&nbsp;fromIndex,
int&nbsp;toIndex)</pre>
<div class="block">Calls <a href="Player.html#removeMediaItems(int,int)"><code>Player.removeMediaItems(int, int)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#removeMediaItems(int,int)">removeMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="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). If the index is larger than
the size of the playlist, media items to the end of the playlist are removed.</dd>
</dl>
</li>
</ul>
<a id="clearMediaItems()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearMediaItems</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearMediaItems()</pre>
<div class="block">Calls <a href="Player.html#clearMediaItems()"><code>Player.clearMediaItems()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#clearMediaItems()">clearMediaItems</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="isCommandAvailable(@com.google.android.exoplayer2.Player.Commandint)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCommandAvailable</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isCommandAvailable&#8203;(<a href="Player.Command.html" title="annotation in com.google.android.exoplayer2">@Command</a>
@com.google.android.exoplayer2.Player.Command int&nbsp;command)</pre>
<div class="block">Calls <a href="Player.html#isCommandAvailable(@com.google.android.exoplayer2.Player.Commandint)"><code>Player.isCommandAvailable(int)</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isCommandAvailable(@com.google.android.exoplayer2.Player.Commandint)">isCommandAvailable</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>command</code> - A <a href="Player.Command.html" title="annotation in com.google.android.exoplayer2"><code>Player.Command</code></a>.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Whether the <a href="Player.Command.html" title="annotation in com.google.android.exoplayer2"><code>Player.Command</code></a> is available.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onAvailableCommandsChanged(com.google.android.exoplayer2.Player.Commands)"><code>Player.Listener.onAvailableCommandsChanged(Commands)</code></a></dd>
</dl>
</li>
</ul>
<a id="canAdvertiseSession()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>canAdvertiseSession</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;canAdvertiseSession()</pre>
<div class="block">Calls <a href="Player.html#canAdvertiseSession()"><code>Player.canAdvertiseSession()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#canAdvertiseSession()">canAdvertiseSession</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getAvailableCommands()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAvailableCommands</h4>
<pre class="methodSignature">public&nbsp;<a href="Player.Commands.html" title="class in com.google.android.exoplayer2">Player.Commands</a>&nbsp;getAvailableCommands()</pre>
<div class="block">Calls <a href="Player.html#getAvailableCommands()"><code>Player.getAvailableCommands()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getAvailableCommands()">getAvailableCommands</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The currently available <a href="Player.Commands.html" title="class in com.google.android.exoplayer2"><code>Player.Commands</code></a>.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onAvailableCommandsChanged(com.google.android.exoplayer2.Player.Commands)"><code>Player.Listener.onAvailableCommandsChanged(com.google.android.exoplayer2.Player.Commands)</code></a></dd>
</dl>
</li>
</ul>
<a id="prepare()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;prepare()</pre>
<div class="block">Calls <a href="Player.html#prepare()"><code>Player.prepare()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#prepare()">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getPlaybackState()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackState</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getPlaybackState()</pre>
<div class="block">Calls <a href="Player.html#getPlaybackState()"><code>Player.getPlaybackState()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPlaybackState()">getPlaybackState</a></code>&nbsp;in interface&nbsp;<code><a href="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="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="Player.Listener.html#onPlaybackStateChanged(@com.google.android.exoplayer2.Player.Stateint)"><code>Player.Listener.onPlaybackStateChanged(int)</code></a></dd>
</dl>
</li>
</ul>
<a id="getPlaybackSuppressionReason()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackSuppressionReason</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getPlaybackSuppressionReason()</pre>
<div class="block">Calls <a href="Player.html#getPlaybackSuppressionReason()"><code>Player.getPlaybackSuppressionReason()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPlaybackSuppressionReason()">getPlaybackSuppressionReason</a></code>&nbsp;in interface&nbsp;<code><a href="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="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="Player.Listener.html#onPlaybackSuppressionReasonChanged(@com.google.android.exoplayer2.Player.PlaybackSuppressionReasonint)"><code>Player.Listener.onPlaybackSuppressionReasonChanged(int)</code></a></dd>
</dl>
</li>
</ul>
<a id="isPlaying()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPlaying</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isPlaying()</pre>
<div class="block">Calls <a href="Player.html#isPlaying()"><code>Player.isPlaying()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isPlaying()">isPlaying</a></code>&nbsp;in interface&nbsp;<code><a href="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 playing.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onIsPlayingChanged(boolean)"><code>Player.Listener.onIsPlayingChanged(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a id="getPlayerError()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlayerError</h4>
<pre class="methodSignature">@Nullable
public&nbsp;<a href="PlaybackException.html" title="class in com.google.android.exoplayer2">PlaybackException</a>&nbsp;getPlayerError()</pre>
<div class="block">Calls <a href="Player.html#getPlayerError()"><code>Player.getPlayerError()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPlayerError()">getPlayerError</a></code>&nbsp;in interface&nbsp;<code><a href="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="Player.Listener.html#onPlayerError(com.google.android.exoplayer2.PlaybackException)"><code>Player.Listener.onPlayerError(PlaybackException)</code></a></dd>
</dl>
</li>
</ul>
<a id="play()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>play</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;play()</pre>
<div class="block">Calls <a href="Player.html#play()"><code>Player.play()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#play()">play</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="pause()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>pause</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;pause()</pre>
<div class="block">Calls <a href="Player.html#pause()"><code>Player.pause()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#pause()">pause</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="setPlayWhenReady(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlayWhenReady</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setPlayWhenReady&#8203;(boolean&nbsp;playWhenReady)</pre>
<div class="block">Calls <a href="Player.html#setPlayWhenReady(boolean)"><code>Player.setPlayWhenReady(boolean)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setPlayWhenReady(boolean)">setPlayWhenReady</a></code>&nbsp;in interface&nbsp;<code><a href="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 id="getPlayWhenReady()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlayWhenReady</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;getPlayWhenReady()</pre>
<div class="block">Calls <a href="Player.html#getPlayWhenReady()"><code>Player.getPlayWhenReady()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPlayWhenReady()">getPlayWhenReady</a></code>&nbsp;in interface&nbsp;<code><a href="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="Player.Listener.html#onPlayWhenReadyChanged(boolean,@com.google.android.exoplayer2.Player.PlayWhenReadyChangeReasonint)"><code>Player.Listener.onPlayWhenReadyChanged(boolean, int)</code></a></dd>
</dl>
</li>
</ul>
<a id="setRepeatMode(@com.google.android.exoplayer2.Player.RepeatModeint)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setRepeatMode</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setRepeatMode&#8203;(<a href="Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2">@RepeatMode</a>
@com.google.android.exoplayer2.Player.RepeatMode int&nbsp;repeatMode)</pre>
<div class="block">Calls <a href="Player.html#setRepeatMode(@com.google.android.exoplayer2.Player.RepeatModeint)"><code>Player.setRepeatMode(int)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setRepeatMode(@com.google.android.exoplayer2.Player.RepeatModeint)">setRepeatMode</a></code>&nbsp;in interface&nbsp;<code><a href="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 id="getRepeatMode()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getRepeatMode</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getRepeatMode()</pre>
<div class="block">Calls <a href="Player.html#getRepeatMode()"><code>Player.getRepeatMode()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getRepeatMode()">getRepeatMode</a></code>&nbsp;in interface&nbsp;<code><a href="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="Player.Listener.html#onRepeatModeChanged(@com.google.android.exoplayer2.Player.RepeatModeint)"><code>Player.Listener.onRepeatModeChanged(int)</code></a></dd>
</dl>
</li>
</ul>
<a id="setShuffleModeEnabled(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setShuffleModeEnabled</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setShuffleModeEnabled&#8203;(boolean&nbsp;shuffleModeEnabled)</pre>
<div class="block">Calls <a href="Player.html#setShuffleModeEnabled(boolean)"><code>Player.setShuffleModeEnabled(boolean)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setShuffleModeEnabled(boolean)">setShuffleModeEnabled</a></code>&nbsp;in interface&nbsp;<code><a href="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 id="getShuffleModeEnabled()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getShuffleModeEnabled</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;getShuffleModeEnabled()</pre>
<div class="block">Calls <a href="Player.html#getShuffleModeEnabled()"><code>Player.getShuffleModeEnabled()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getShuffleModeEnabled()">getShuffleModeEnabled</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onShuffleModeEnabledChanged(boolean)"><code>Player.Listener.onShuffleModeEnabledChanged(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a id="isLoading()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isLoading</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isLoading()</pre>
<div class="block">Calls <a href="Player.html#isLoading()"><code>Player.isLoading()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isLoading()">isLoading</a></code>&nbsp;in interface&nbsp;<code><a href="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="Player.Listener.html#onIsLoadingChanged(boolean)"><code>Player.Listener.onIsLoadingChanged(boolean)</code></a></dd>
</dl>
</li>
</ul>
<a id="seekToDefaultPosition()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToDefaultPosition</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekToDefaultPosition()</pre>
<div class="block">Calls <a href="Player.html#seekToDefaultPosition()"><code>Player.seekToDefaultPosition()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToDefaultPosition()">seekToDefaultPosition</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="seekToDefaultPosition(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToDefaultPosition</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekToDefaultPosition&#8203;(int&nbsp;mediaItemIndex)</pre>
<div class="block">Calls <a href="Player.html#seekToDefaultPosition(int)"><code>Player.seekToDefaultPosition(int)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToDefaultPosition(int)">seekToDefaultPosition</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItemIndex</code> - The index of the <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> whose associated default position
should be seeked to.</dd>
</dl>
</li>
</ul>
<a id="seekTo(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekTo</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekTo&#8203;(long&nbsp;positionMs)</pre>
<div class="block">Calls <a href="Player.html#seekTo(long)"><code>Player.seekTo(long)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekTo(long)">seekTo</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>positionMs</code> - The seek position in the current <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>, or <a href="C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a>
to seek to the media item's default position.</dd>
</dl>
</li>
</ul>
<a id="seekTo(int,long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekTo</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekTo&#8203;(int&nbsp;mediaItemIndex,
long&nbsp;positionMs)</pre>
<div class="block">Calls <a href="Player.html#seekTo(int,long)"><code>Player.seekTo(int, long)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekTo(int,long)">seekTo</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>mediaItemIndex</code> - The index of the <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</dd>
<dd><code>positionMs</code> - The seek position in the specified <a href="MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>, or <a href="C.html#TIME_UNSET"><code>C.TIME_UNSET</code></a>
to seek to the media item's default position.</dd>
</dl>
</li>
</ul>
<a id="getSeekBackIncrement()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSeekBackIncrement</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getSeekBackIncrement()</pre>
<div class="block">Calls <a href="Player.html#getSeekBackIncrement()"><code>Player.getSeekBackIncrement()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getSeekBackIncrement()">getSeekBackIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The seek back increment, in milliseconds.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onSeekBackIncrementChanged(long)"><code>Player.Listener.onSeekBackIncrementChanged(long)</code></a></dd>
</dl>
</li>
</ul>
<a id="seekBack()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekBack</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekBack()</pre>
<div class="block">Calls <a href="Player.html#seekBack()"><code>Player.seekBack()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekBack()">seekBack</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getSeekForwardIncrement()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getSeekForwardIncrement</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getSeekForwardIncrement()</pre>
<div class="block">Calls <a href="Player.html#getSeekForwardIncrement()"><code>Player.getSeekForwardIncrement()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getSeekForwardIncrement()">getSeekForwardIncrement</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The seek forward increment, in milliseconds.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onSeekForwardIncrementChanged(long)"><code>Player.Listener.onSeekForwardIncrementChanged(long)</code></a></dd>
</dl>
</li>
</ul>
<a id="seekForward()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekForward</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekForward()</pre>
<div class="block">Calls <a href="Player.html#seekForward()"><code>Player.seekForward()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekForward()">seekForward</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="hasPrevious()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasPrevious</h4>
<pre class="methodSignature"><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;boolean&nbsp;hasPrevious()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasPreviousMediaItem()"><code>hasPreviousMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#hasPrevious()"><code>Player.hasPrevious()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#hasPrevious()">hasPrevious</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="hasPreviousWindow()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasPreviousWindow</h4>
<pre class="methodSignature"><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;boolean&nbsp;hasPreviousWindow()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasPreviousMediaItem()"><code>hasPreviousMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#hasPreviousWindow()"><code>Player.hasPreviousWindow()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#hasPreviousWindow()">hasPreviousWindow</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="hasPreviousMediaItem()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasPreviousMediaItem</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;hasPreviousMediaItem()</pre>
<div class="block">Calls <a href="Player.html#hasPreviousMediaItem()"><code>Player.hasPreviousMediaItem()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#hasPreviousMediaItem()">hasPreviousMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="previous()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>previous</h4>
<pre class="methodSignature"><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;previous()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToPreviousMediaItem()"><code>seekToPreviousMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#previous()"><code>Player.previous()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#previous()">previous</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="seekToPreviousWindow()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToPreviousWindow</h4>
<pre class="methodSignature"><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;seekToPreviousWindow()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToPreviousMediaItem()"><code>seekToPreviousMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#seekToPreviousWindow()"><code>Player.seekToPreviousWindow()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToPreviousWindow()">seekToPreviousWindow</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="seekToPreviousMediaItem()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToPreviousMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekToPreviousMediaItem()</pre>
<div class="block">Calls <a href="Player.html#seekToPreviousMediaItem()"><code>Player.seekToPreviousMediaItem()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToPreviousMediaItem()">seekToPreviousMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="seekToPrevious()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToPrevious</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekToPrevious()</pre>
<div class="block">Calls <a href="Player.html#seekToPrevious()"><code>Player.seekToPrevious()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToPrevious()">seekToPrevious</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getMaxSeekToPreviousPosition()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxSeekToPreviousPosition</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getMaxSeekToPreviousPosition()</pre>
<div class="block">Calls <a href="Player.html#getMaxSeekToPreviousPosition()"><code>Player.getMaxSeekToPreviousPosition()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getMaxSeekToPreviousPosition()">getMaxSeekToPreviousPosition</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The maximum seek to previous position, in milliseconds.</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onMaxSeekToPreviousPositionChanged(long)"><code>Player.Listener.onMaxSeekToPreviousPositionChanged(long)</code></a></dd>
</dl>
</li>
</ul>
<a id="hasNext()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNext</h4>
<pre class="methodSignature"><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;boolean&nbsp;hasNext()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasNextMediaItem()"><code>hasNextMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#hasNext()"><code>Player.hasNext()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#hasNext()">hasNext</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="hasNextWindow()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNextWindow</h4>
<pre class="methodSignature"><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;boolean&nbsp;hasNextWindow()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#hasNextMediaItem()"><code>hasNextMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#hasNextWindow()"><code>Player.hasNextWindow()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#hasNextWindow()">hasNextWindow</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="hasNextMediaItem()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>hasNextMediaItem</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;hasNextMediaItem()</pre>
<div class="block">Calls <a href="Player.html#hasNextMediaItem()"><code>Player.hasNextMediaItem()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#hasNextMediaItem()">hasNextMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="next()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>next</h4>
<pre class="methodSignature"><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;next()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToNextMediaItem()"><code>seekToNextMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#next()"><code>Player.next()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#next()">next</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="seekToNextWindow()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToNextWindow</h4>
<pre class="methodSignature"><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;seekToNextWindow()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#seekToNextMediaItem()"><code>seekToNextMediaItem()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#seekToNextWindow()"><code>Player.seekToNextWindow()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToNextWindow()">seekToNextWindow</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="seekToNextMediaItem()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToNextMediaItem</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekToNextMediaItem()</pre>
<div class="block">Calls <a href="Player.html#seekToNextMediaItem()"><code>Player.seekToNextMediaItem()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToNextMediaItem()">seekToNextMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="seekToNext()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToNext</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;seekToNext()</pre>
<div class="block">Calls <a href="Player.html#seekToNext()"><code>Player.seekToNext()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#seekToNext()">seekToNext</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="setPlaybackParameters(com.google.android.exoplayer2.PlaybackParameters)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlaybackParameters</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setPlaybackParameters&#8203;(<a href="PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a>&nbsp;playbackParameters)</pre>
<div class="block">Calls <a href="Player.html#setPlaybackParameters(com.google.android.exoplayer2.PlaybackParameters)"><code>Player.setPlaybackParameters(PlaybackParameters)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setPlaybackParameters(com.google.android.exoplayer2.PlaybackParameters)">setPlaybackParameters</a></code>&nbsp;in interface&nbsp;<code><a href="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.</dd>
</dl>
</li>
</ul>
<a id="setPlaybackSpeed(float)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlaybackSpeed</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setPlaybackSpeed&#8203;(float&nbsp;speed)</pre>
<div class="block">Calls <a href="Player.html#setPlaybackSpeed(float)"><code>Player.setPlaybackSpeed(float)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setPlaybackSpeed(float)">setPlaybackSpeed</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>speed</code> - The linear factor by which playback will be sped up. Must be higher than 0. 1 is
normal speed, 2 is twice as fast, 0.5 is half normal speed...</dd>
</dl>
</li>
</ul>
<a id="getPlaybackParameters()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaybackParameters</h4>
<pre class="methodSignature">public&nbsp;<a href="PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a>&nbsp;getPlaybackParameters()</pre>
<div class="block">Calls <a href="Player.html#getPlaybackParameters()"><code>Player.getPlaybackParameters()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPlaybackParameters()">getPlaybackParameters</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onPlaybackParametersChanged(com.google.android.exoplayer2.PlaybackParameters)"><code>Player.Listener.onPlaybackParametersChanged(PlaybackParameters)</code></a></dd>
</dl>
</li>
</ul>
<a id="stop()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;stop()</pre>
<div class="block">Calls <a href="Player.html#stop()"><code>Player.stop()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#stop()">stop</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="stop(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stop</h4>
<pre class="methodSignature"><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;stop&#8203;(boolean&nbsp;reset)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#stop()"><code>stop()</code></a> and <a href="#clearMediaItems()"><code>clearMediaItems()</code></a> (if <code>reset</code> is true) or
just <a href="#stop()"><code>stop()</code></a> (if <code>reset</code> is false). Any player error will be cleared when
<a href="#prepare()"><code>re-preparing</code></a> the player.</div>
</div>
<div class="block">Calls <a href="Player.html#stop(boolean)"><code>Player.stop(boolean)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#stop(boolean)">stop</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="release()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>release</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;release()</pre>
<div class="block">Calls <a href="Player.html#release()"><code>Player.release()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#release()">release</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentTracks()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentTracks</h4>
<pre class="methodSignature">public&nbsp;<a href="Tracks.html" title="class in com.google.android.exoplayer2">Tracks</a>&nbsp;getCurrentTracks()</pre>
<div class="block">Calls <a href="Player.html#getCurrentTracks()"><code>Player.getCurrentTracks()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentTracks()">getCurrentTracks</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onTracksChanged(com.google.android.exoplayer2.Tracks)"><code>Player.Listener.onTracksChanged(Tracks)</code></a></dd>
</dl>
</li>
</ul>
<a id="getTrackSelectionParameters()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTrackSelectionParameters</h4>
<pre class="methodSignature">public&nbsp;<a href="trackselection/TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a>&nbsp;getTrackSelectionParameters()</pre>
<div class="block">Calls <a href="Player.html#getTrackSelectionParameters()"><code>Player.getTrackSelectionParameters()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getTrackSelectionParameters()">getTrackSelectionParameters</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onTrackSelectionParametersChanged(com.google.android.exoplayer2.trackselection.TrackSelectionParameters)"><code>}</code></a></dd>
</dl>
</li>
</ul>
<a id="setTrackSelectionParameters(com.google.android.exoplayer2.trackselection.TrackSelectionParameters)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setTrackSelectionParameters</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setTrackSelectionParameters&#8203;(<a href="trackselection/TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a>&nbsp;parameters)</pre>
<div class="block">Calls <a href="Player.html#setTrackSelectionParameters(com.google.android.exoplayer2.trackselection.TrackSelectionParameters)"><code>Player.setTrackSelectionParameters(TrackSelectionParameters)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setTrackSelectionParameters(com.google.android.exoplayer2.trackselection.TrackSelectionParameters)">setTrackSelectionParameters</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getMediaMetadata()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMediaMetadata</h4>
<pre class="methodSignature">public&nbsp;<a href="MediaMetadata.html" title="class in com.google.android.exoplayer2">MediaMetadata</a>&nbsp;getMediaMetadata()</pre>
<div class="block">Calls <a href="Player.html#getMediaMetadata()"><code>Player.getMediaMetadata()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getMediaMetadata()">getMediaMetadata</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getPlaylistMetadata()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPlaylistMetadata</h4>
<pre class="methodSignature">public&nbsp;<a href="MediaMetadata.html" title="class in com.google.android.exoplayer2">MediaMetadata</a>&nbsp;getPlaylistMetadata()</pre>
<div class="block">Calls <a href="Player.html#getPlaylistMetadata()"><code>Player.getPlaylistMetadata()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPlaylistMetadata()">getPlaylistMetadata</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="setPlaylistMetadata(com.google.android.exoplayer2.MediaMetadata)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setPlaylistMetadata</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setPlaylistMetadata&#8203;(<a href="MediaMetadata.html" title="class in com.google.android.exoplayer2">MediaMetadata</a>&nbsp;mediaMetadata)</pre>
<div class="block">Calls <a href="Player.html#setPlaylistMetadata(com.google.android.exoplayer2.MediaMetadata)"><code>Player.setPlaylistMetadata(MediaMetadata)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setPlaylistMetadata(com.google.android.exoplayer2.MediaMetadata)">setPlaylistMetadata</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentManifest()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentManifest</h4>
<pre class="methodSignature">@Nullable
public&nbsp;<a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&nbsp;getCurrentManifest()</pre>
<div class="block">Calls <a href="Player.html#getCurrentManifest()"><code>Player.getCurrentManifest()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentManifest()">getCurrentManifest</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentTimeline()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentTimeline</h4>
<pre class="methodSignature">public&nbsp;<a href="Timeline.html" title="class in com.google.android.exoplayer2">Timeline</a>&nbsp;getCurrentTimeline()</pre>
<div class="block">Calls <a href="Player.html#getCurrentTimeline()"><code>Player.getCurrentTimeline()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentTimeline()">getCurrentTimeline</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onTimelineChanged(com.google.android.exoplayer2.Timeline,@com.google.android.exoplayer2.Player.TimelineChangeReasonint)"><code>Player.Listener.onTimelineChanged(Timeline, int)</code></a></dd>
</dl>
</li>
</ul>
<a id="getCurrentPeriodIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentPeriodIndex</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getCurrentPeriodIndex()</pre>
<div class="block">Calls <a href="Player.html#getCurrentPeriodIndex()"><code>Player.getCurrentPeriodIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentPeriodIndex()">getCurrentPeriodIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentWindowIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentWindowIndex</h4>
<pre class="methodSignature"><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;int&nbsp;getCurrentWindowIndex()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#getCurrentMediaItemIndex()"><code>getCurrentMediaItemIndex()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#getCurrentWindowIndex()"><code>Player.getCurrentWindowIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentWindowIndex()">getCurrentWindowIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentMediaItemIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentMediaItemIndex</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getCurrentMediaItemIndex()</pre>
<div class="block">Calls <a href="Player.html#getCurrentMediaItemIndex()"><code>Player.getCurrentMediaItemIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentMediaItemIndex()">getCurrentMediaItemIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getNextWindowIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNextWindowIndex</h4>
<pre class="methodSignature"><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;int&nbsp;getNextWindowIndex()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#getNextMediaItemIndex()"><code>getNextMediaItemIndex()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#getNextWindowIndex()"><code>Player.getNextWindowIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getNextWindowIndex()">getNextWindowIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getNextMediaItemIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNextMediaItemIndex</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getNextMediaItemIndex()</pre>
<div class="block">Calls <a href="Player.html#getNextMediaItemIndex()"><code>Player.getNextMediaItemIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getNextMediaItemIndex()">getNextMediaItemIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getPreviousWindowIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPreviousWindowIndex</h4>
<pre class="methodSignature"><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;int&nbsp;getPreviousWindowIndex()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#getPreviousMediaItemIndex()"><code>getPreviousMediaItemIndex()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#getPreviousWindowIndex()"><code>Player.getPreviousWindowIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPreviousWindowIndex()">getPreviousWindowIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getPreviousMediaItemIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getPreviousMediaItemIndex</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getPreviousMediaItemIndex()</pre>
<div class="block">Calls <a href="Player.html#getPreviousMediaItemIndex()"><code>Player.getPreviousMediaItemIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getPreviousMediaItemIndex()">getPreviousMediaItemIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentMediaItem()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentMediaItem</h4>
<pre class="methodSignature">@Nullable
public&nbsp;<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;getCurrentMediaItem()</pre>
<div class="block">Calls <a href="Player.html#getCurrentMediaItem()"><code>Player.getCurrentMediaItem()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentMediaItem()">getCurrentMediaItem</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onMediaItemTransition(com.google.android.exoplayer2.MediaItem,@com.google.android.exoplayer2.Player.MediaItemTransitionReasonint)"><code>Player.Listener.onMediaItemTransition(MediaItem, int)</code></a></dd>
</dl>
</li>
</ul>
<a id="getMediaItemCount()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMediaItemCount</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getMediaItemCount()</pre>
<div class="block">Calls <a href="Player.html#getMediaItemCount()"><code>Player.getMediaItemCount()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getMediaItemCount()">getMediaItemCount</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getMediaItemAt(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMediaItemAt</h4>
<pre class="methodSignature">public&nbsp;<a href="MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a>&nbsp;getMediaItemAt&#8203;(int&nbsp;index)</pre>
<div class="block">Calls <a href="Player.html#getMediaItemAt(int)"><code>Player.getMediaItemAt(int)</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getMediaItemAt(int)">getMediaItemAt</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getDuration()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDuration</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getDuration()</pre>
<div class="block">Calls <a href="Player.html#getDuration()"><code>Player.getDuration()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getDuration()">getDuration</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentPosition()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentPosition</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getCurrentPosition()</pre>
<div class="block">Calls <a href="Player.html#getCurrentPosition()"><code>Player.getCurrentPosition()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentPosition()">getCurrentPosition</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getBufferedPosition()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBufferedPosition</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getBufferedPosition()</pre>
<div class="block">Calls <a href="Player.html#getBufferedPosition()"><code>Player.getBufferedPosition()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getBufferedPosition()">getBufferedPosition</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getBufferedPercentage()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBufferedPercentage</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getBufferedPercentage()</pre>
<div class="block">Calls <a href="Player.html#getBufferedPercentage()"><code>Player.getBufferedPercentage()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getBufferedPercentage()">getBufferedPercentage</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getTotalBufferedDuration()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTotalBufferedDuration</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getTotalBufferedDuration()</pre>
<div class="block">Calls <a href="Player.html#getTotalBufferedDuration()"><code>Player.getTotalBufferedDuration()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getTotalBufferedDuration()">getTotalBufferedDuration</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="isCurrentWindowDynamic()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCurrentWindowDynamic</h4>
<pre class="methodSignature"><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;boolean&nbsp;isCurrentWindowDynamic()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#isCurrentMediaItemDynamic()"><code>isCurrentMediaItemDynamic()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#isCurrentWindowDynamic()"><code>Player.isCurrentWindowDynamic()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isCurrentWindowDynamic()">isCurrentWindowDynamic</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="isCurrentMediaItemDynamic()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCurrentMediaItemDynamic</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isCurrentMediaItemDynamic()</pre>
<div class="block">Calls <a href="Player.html#isCurrentMediaItemDynamic()"><code>Player.isCurrentMediaItemDynamic()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isCurrentMediaItemDynamic()">isCurrentMediaItemDynamic</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Timeline.Window.html#isDynamic"><code>Timeline.Window.isDynamic</code></a></dd>
</dl>
</li>
</ul>
<a id="isCurrentWindowLive()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCurrentWindowLive</h4>
<pre class="methodSignature"><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;boolean&nbsp;isCurrentWindowLive()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#isCurrentMediaItemLive()"><code>isCurrentMediaItemLive()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#isCurrentWindowLive()"><code>Player.isCurrentWindowLive()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isCurrentWindowLive()">isCurrentWindowLive</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="isCurrentMediaItemLive()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCurrentMediaItemLive</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isCurrentMediaItemLive()</pre>
<div class="block">Calls <a href="Player.html#isCurrentMediaItemLive()"><code>Player.isCurrentMediaItemLive()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isCurrentMediaItemLive()">isCurrentMediaItemLive</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Timeline.Window.html#isLive()"><code>Timeline.Window.isLive()</code></a></dd>
</dl>
</li>
</ul>
<a id="getCurrentLiveOffset()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentLiveOffset</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getCurrentLiveOffset()</pre>
<div class="block">Calls <a href="Player.html#getCurrentLiveOffset()"><code>Player.getCurrentLiveOffset()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentLiveOffset()">getCurrentLiveOffset</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="isCurrentWindowSeekable()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCurrentWindowSeekable</h4>
<pre class="methodSignature"><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;boolean&nbsp;isCurrentWindowSeekable()</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">Use <a href="#isCurrentMediaItemSeekable()"><code>isCurrentMediaItemSeekable()</code></a> instead.</div>
</div>
<div class="block">Calls <a href="Player.html#isCurrentWindowSeekable()"><code>Player.isCurrentWindowSeekable()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isCurrentWindowSeekable()">isCurrentWindowSeekable</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="isCurrentMediaItemSeekable()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCurrentMediaItemSeekable</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isCurrentMediaItemSeekable()</pre>
<div class="block">Calls <a href="Player.html#isCurrentMediaItemSeekable()"><code>Player.isCurrentMediaItemSeekable()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isCurrentMediaItemSeekable()">isCurrentMediaItemSeekable</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Timeline.Window.html#isSeekable"><code>Timeline.Window.isSeekable</code></a></dd>
</dl>
</li>
</ul>
<a id="isPlayingAd()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPlayingAd</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isPlayingAd()</pre>
<div class="block">Calls <a href="Player.html#isPlayingAd()"><code>Player.isPlayingAd()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isPlayingAd()">isPlayingAd</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentAdGroupIndex()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentAdGroupIndex</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getCurrentAdGroupIndex()</pre>
<div class="block">Calls <a href="Player.html#getCurrentAdGroupIndex()"><code>Player.getCurrentAdGroupIndex()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentAdGroupIndex()">getCurrentAdGroupIndex</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getCurrentAdIndexInAdGroup()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentAdIndexInAdGroup</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getCurrentAdIndexInAdGroup()</pre>
<div class="block">Calls <a href="Player.html#getCurrentAdIndexInAdGroup()"><code>Player.getCurrentAdIndexInAdGroup()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentAdIndexInAdGroup()">getCurrentAdIndexInAdGroup</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getContentDuration()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentDuration</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getContentDuration()</pre>
<div class="block">Calls <a href="Player.html#getContentDuration()"><code>Player.getContentDuration()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getContentDuration()">getContentDuration</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getContentPosition()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentPosition</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getContentPosition()</pre>
<div class="block">Calls <a href="Player.html#getContentPosition()"><code>Player.getContentPosition()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getContentPosition()">getContentPosition</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getContentBufferedPosition()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getContentBufferedPosition</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;getContentBufferedPosition()</pre>
<div class="block">Calls <a href="Player.html#getContentBufferedPosition()"><code>Player.getContentBufferedPosition()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getContentBufferedPosition()">getContentBufferedPosition</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getAudioAttributes()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getAudioAttributes</h4>
<pre class="methodSignature">public&nbsp;<a href="audio/AudioAttributes.html" title="class in com.google.android.exoplayer2.audio">AudioAttributes</a>&nbsp;getAudioAttributes()</pre>
<div class="block">Calls <a href="Player.html#getAudioAttributes()"><code>Player.getAudioAttributes()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getAudioAttributes()">getAudioAttributes</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="setVolume(float)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVolume</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setVolume&#8203;(float&nbsp;volume)</pre>
<div class="block">Calls <a href="Player.html#setVolume(float)"><code>Player.setVolume(float)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setVolume(float)">setVolume</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>volume</code> - Linear output gain to apply to all audio channels.</dd>
</dl>
</li>
</ul>
<a id="getVolume()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVolume</h4>
<pre class="methodSignature">public&nbsp;float&nbsp;getVolume()</pre>
<div class="block">Calls <a href="Player.html#getVolume()"><code>Player.getVolume()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getVolume()">getVolume</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The linear gain applied to all audio channels.</dd>
</dl>
</li>
</ul>
<a id="getVideoSize()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getVideoSize</h4>
<pre class="methodSignature">public&nbsp;<a href="video/VideoSize.html" title="class in com.google.android.exoplayer2.video">VideoSize</a>&nbsp;getVideoSize()</pre>
<div class="block">Calls <a href="Player.html#getVideoSize()"><code>Player.getVideoSize()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getVideoSize()">getVideoSize</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="Player.Listener.html#onVideoSizeChanged(com.google.android.exoplayer2.video.VideoSize)"><code>Player.Listener.onVideoSizeChanged(VideoSize)</code></a></dd>
</dl>
</li>
</ul>
<a id="clearVideoSurface()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearVideoSurface</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearVideoSurface()</pre>
<div class="block">Calls <a href="Player.html#clearVideoSurface()"><code>Player.clearVideoSurface()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#clearVideoSurface()">clearVideoSurface</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="clearVideoSurface(android.view.Surface)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearVideoSurface</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearVideoSurface&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/Surface.html" title="class or interface in android.view" class="externalLink" target="_top">Surface</a>&nbsp;surface)</pre>
<div class="block">Calls <a href="Player.html#clearVideoSurface(android.view.Surface)"><code>Player.clearVideoSurface(Surface)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#clearVideoSurface(android.view.Surface)">clearVideoSurface</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>surface</code> - The surface to clear.</dd>
</dl>
</li>
</ul>
<a id="setVideoSurface(android.view.Surface)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVideoSurface</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setVideoSurface&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/Surface.html" title="class or interface in android.view" class="externalLink" target="_top">Surface</a>&nbsp;surface)</pre>
<div class="block">Calls <a href="Player.html#setVideoSurface(android.view.Surface)"><code>Player.setVideoSurface(Surface)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setVideoSurface(android.view.Surface)">setVideoSurface</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>surface</code> - The <a href="https://developer.android.com/reference/android/view/Surface.html" title="class or interface in android.view" class="externalLink" target="_top"><code>Surface</code></a>.</dd>
</dl>
</li>
</ul>
<a id="setVideoSurfaceHolder(android.view.SurfaceHolder)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVideoSurfaceHolder</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setVideoSurfaceHolder&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/SurfaceHolder.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceHolder</a>&nbsp;surfaceHolder)</pre>
<div class="block">Calls <a href="Player.html#setVideoSurfaceHolder(android.view.SurfaceHolder)"><code>Player.setVideoSurfaceHolder(SurfaceHolder)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setVideoSurfaceHolder(android.view.SurfaceHolder)">setVideoSurfaceHolder</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>surfaceHolder</code> - The surface holder.</dd>
</dl>
</li>
</ul>
<a id="clearVideoSurfaceHolder(android.view.SurfaceHolder)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearVideoSurfaceHolder</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearVideoSurfaceHolder&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/SurfaceHolder.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceHolder</a>&nbsp;surfaceHolder)</pre>
<div class="block">Calls <a href="Player.html#clearVideoSurfaceHolder(android.view.SurfaceHolder)"><code>Player.clearVideoSurfaceHolder(SurfaceHolder)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#clearVideoSurfaceHolder(android.view.SurfaceHolder)">clearVideoSurfaceHolder</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>surfaceHolder</code> - The surface holder to clear.</dd>
</dl>
</li>
</ul>
<a id="setVideoSurfaceView(android.view.SurfaceView)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVideoSurfaceView</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setVideoSurfaceView&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/SurfaceView.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceView</a>&nbsp;surfaceView)</pre>
<div class="block">Calls <a href="Player.html#setVideoSurfaceView(android.view.SurfaceView)"><code>Player.setVideoSurfaceView(SurfaceView)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setVideoSurfaceView(android.view.SurfaceView)">setVideoSurfaceView</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>surfaceView</code> - The surface view.</dd>
</dl>
</li>
</ul>
<a id="clearVideoSurfaceView(android.view.SurfaceView)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearVideoSurfaceView</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearVideoSurfaceView&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/SurfaceView.html" title="class or interface in android.view" class="externalLink" target="_top">SurfaceView</a>&nbsp;surfaceView)</pre>
<div class="block">Calls <a href="Player.html#clearVideoSurfaceView(android.view.SurfaceView)"><code>Player.clearVideoSurfaceView(SurfaceView)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#clearVideoSurfaceView(android.view.SurfaceView)">clearVideoSurfaceView</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>surfaceView</code> - The texture view to clear.</dd>
</dl>
</li>
</ul>
<a id="setVideoTextureView(android.view.TextureView)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setVideoTextureView</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setVideoTextureView&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/TextureView.html" title="class or interface in android.view" class="externalLink" target="_top">TextureView</a>&nbsp;textureView)</pre>
<div class="block">Calls <a href="Player.html#setVideoTextureView(android.view.TextureView)"><code>Player.setVideoTextureView(TextureView)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setVideoTextureView(android.view.TextureView)">setVideoTextureView</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>textureView</code> - The texture view.</dd>
</dl>
</li>
</ul>
<a id="clearVideoTextureView(android.view.TextureView)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>clearVideoTextureView</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;clearVideoTextureView&#8203;(@Nullable
<a href="https://developer.android.com/reference/android/view/TextureView.html" title="class or interface in android.view" class="externalLink" target="_top">TextureView</a>&nbsp;textureView)</pre>
<div class="block">Calls <a href="Player.html#clearVideoTextureView(android.view.TextureView)"><code>Player.clearVideoTextureView(TextureView)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#clearVideoTextureView(android.view.TextureView)">clearVideoTextureView</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>textureView</code> - The texture view to clear.</dd>
</dl>
</li>
</ul>
<a id="getCurrentCues()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getCurrentCues</h4>
<pre class="methodSignature">public&nbsp;<a href="text/CueGroup.html" title="class in com.google.android.exoplayer2.text">CueGroup</a>&nbsp;getCurrentCues()</pre>
<div class="block">Calls <a href="Player.html#getCurrentCues()"><code>Player.getCurrentCues()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getCurrentCues()">getCurrentCues</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getDeviceInfo()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDeviceInfo</h4>
<pre class="methodSignature">public&nbsp;<a href="DeviceInfo.html" title="class in com.google.android.exoplayer2">DeviceInfo</a>&nbsp;getDeviceInfo()</pre>
<div class="block">Calls <a href="Player.html#getDeviceInfo()"><code>Player.getDeviceInfo()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getDeviceInfo()">getDeviceInfo</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getDeviceVolume()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getDeviceVolume</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getDeviceVolume()</pre>
<div class="block">Calls <a href="Player.html#getDeviceVolume()"><code>Player.getDeviceVolume()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#getDeviceVolume()">getDeviceVolume</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="isDeviceMuted()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDeviceMuted</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isDeviceMuted()</pre>
<div class="block">Calls <a href="Player.html#isDeviceMuted()"><code>Player.isDeviceMuted()</code></a> on the delegate and returns the result.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#isDeviceMuted()">isDeviceMuted</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="setDeviceVolume(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDeviceVolume</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setDeviceVolume&#8203;(int&nbsp;volume)</pre>
<div class="block">Calls <a href="Player.html#setDeviceVolume(int)"><code>Player.setDeviceVolume(int)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setDeviceVolume(int)">setDeviceVolume</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>volume</code> - The volume to set.</dd>
</dl>
</li>
</ul>
<a id="increaseDeviceVolume()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>increaseDeviceVolume</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;increaseDeviceVolume()</pre>
<div class="block">Calls <a href="Player.html#increaseDeviceVolume()"><code>Player.increaseDeviceVolume()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#increaseDeviceVolume()">increaseDeviceVolume</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="decreaseDeviceVolume()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>decreaseDeviceVolume</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;decreaseDeviceVolume()</pre>
<div class="block">Calls <a href="Player.html#decreaseDeviceVolume()"><code>Player.decreaseDeviceVolume()</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#decreaseDeviceVolume()">decreaseDeviceVolume</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="setDeviceMuted(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDeviceMuted</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setDeviceMuted&#8203;(boolean&nbsp;muted)</pre>
<div class="block">Calls <a href="Player.html#setDeviceMuted(boolean)"><code>Player.setDeviceMuted(boolean)</code></a> on the delegate.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#setDeviceMuted(boolean)">setDeviceMuted</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
</dl>
</li>
</ul>
<a id="getWrappedPlayer()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>getWrappedPlayer</h4>
<pre class="methodSignature">public&nbsp;<a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a>&nbsp;getWrappedPlayer()</pre>
<div class="block">Returns the <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> to which operations are forwarded.</div>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../index.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" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses.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><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">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 id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
</footer>
</body>
</html>