1<!DOCTYPE HTML>
2<!-- NewPage -->
3<html lang="en">
4<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 -->
5<title>All Classes (ExoPlayer library)</title>
6<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
7<link rel="stylesheet" type="text/css" href="stylesheet.css" title="Style">
8<link rel="stylesheet" type="text/css" href="jquery/jquery-ui.css" title="Style">
9<script type="text/javascript" src="script.js"></script>
10<script type="text/javascript" src="jquery/jszip/dist/jszip.min.js"></script>
11<script type="text/javascript" src="jquery/jszip-utils/dist/jszip-utils.min.js"></script>
12<!--[if IE]>
13<script type="text/javascript" src="jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
14<![endif]-->
15<script type="text/javascript" src="jquery/jquery-3.5.1.js"></script>
16<script type="text/javascript" src="jquery/jquery-ui.js"></script>
17</head>
18<body>
19<script type="text/javascript"><!--
20    try {
21        if (location.href.indexOf('is-external=true') == -1) {
22            parent.document.title="All Classes (ExoPlayer library)";
23        }
24    }
25    catch(err) {
26    }
27//-->
28var data = {"i0":2,"i1":32,"i2":2,"i3":2,"i4":2,"i5":2,"i6":2,"i7":2,"i8":32,"i9":2,"i10":2,"i11":2,"i12":2,"i13":2,"i14":2,"i15":2,"i16":2,"i17":2,"i18":2,"i19":2,"i20":2,"i21":2,"i22":2,"i23":2,"i24":2,"i25":2,"i26":2,"i27":2,"i28":2,"i29":2,"i30":2,"i31":2,"i32":2,"i33":2,"i34":2,"i35":2,"i36":2,"i37":2,"i38":2,"i39":2,"i40":2,"i41":2,"i42":2,"i43":2,"i44":2,"i45":2,"i46":1,"i47":2,"i48":2,"i49":1,"i50":2,"i51":2,"i52":2,"i53":2,"i54":2,"i55":2,"i56":2,"i57":32,"i58":2,"i59":2,"i60":32,"i61":1,"i62":1,"i63":1,"i64":2,"i65":8,"i66":32,"i67":2,"i68":32,"i69":2,"i70":1,"i71":2,"i72":2,"i73":2,"i74":2,"i75":1,"i76":1,"i77":2,"i78":32,"i79":1,"i80":1,"i81":32,"i82":2,"i83":2,"i84":2,"i85":2,"i86":2,"i87":2,"i88":1,"i89":32,"i90":2,"i91":2,"i92":2,"i93":8,"i94":2,"i95":2,"i96":2,"i97":2,"i98":2,"i99":1,"i100":1,"i101":2,"i102":8,"i103":1,"i104":2,"i105":1,"i106":8,"i107":8,"i108":1,"i109":32,"i110":8,"i111":8,"i112":2,"i113":2,"i114":1,"i115":1,"i116":2,"i117":2,"i118":2,"i119":2,"i120":2,"i121":2,"i122":2,"i123":2,"i124":2,"i125":2,"i126":2,"i127":2,"i128":8,"i129":2,"i130":2,"i131":2,"i132":2,"i133":2,"i134":1,"i135":2,"i136":1,"i137":2,"i138":1,"i139":1,"i140":2,"i141":2,"i142":2,"i143":2,"i144":2,"i145":2,"i146":2,"i147":2,"i148":2,"i149":32,"i150":32,"i151":32,"i152":32,"i153":32,"i154":32,"i155":32,"i156":32,"i157":32,"i158":32,"i159":32,"i160":32,"i161":32,"i162":32,"i163":32,"i164":32,"i165":32,"i166":32,"i167":32,"i168":32,"i169":32,"i170":32,"i171":32,"i172":32,"i173":32,"i174":32,"i175":32,"i176":32,"i177":1,"i178":8,"i179":1,"i180":2,"i181":2,"i182":2,"i183":8,"i184":2,"i185":2,"i186":32,"i187":1,"i188":2,"i189":32,"i190":2,"i191":1,"i192":1,"i193":2,"i194":2,"i195":1,"i196":1,"i197":2,"i198":2,"i199":32,"i200":2,"i201":2,"i202":2,"i203":2,"i204":2,"i205":2,"i206":2,"i207":2,"i208":2,"i209":1,"i210":1,"i211":1,"i212":2,"i213":2,"i214":2,"i215":1,"i216":1,"i217":2,"i218":2,"i219":8,"i220":32,"i221":1,"i222":2,"i223":1,"i224":1,"i225":2,"i226":2,"i227":2,"i228":2,"i229":2,"i230":2,"i231":1,"i232":2,"i233":2,"i234":2,"i235":1,"i236":2,"i237":2,"i238":8,"i239":1,"i240":2,"i241":2,"i242":2,"i243":2,"i244":8,"i245":2,"i246":2,"i247":2,"i248":1,"i249":8,"i250":2,"i251":2,"i252":32,"i253":2,"i254":32,"i255":32,"i256":32,"i257":2,"i258":2,"i259":1,"i260":1,"i261":2,"i262":2,"i263":2,"i264":2,"i265":8,"i266":2,"i267":2,"i268":1,"i269":2,"i270":2,"i271":8,"i272":1,"i273":2,"i274":1,"i275":2,"i276":1,"i277":1,"i278":1,"i279":1,"i280":2,"i281":2,"i282":2,"i283":2,"i284":8,"i285":2,"i286":2,"i287":2,"i288":2,"i289":32,"i290":32,"i291":2,"i292":1,"i293":2,"i294":2,"i295":2,"i296":8,"i297":2,"i298":32,"i299":8,"i300":2,"i301":1,"i302":2,"i303":32,"i304":32,"i305":2,"i306":2,"i307":2,"i308":2,"i309":1,"i310":2,"i311":2,"i312":8,"i313":32,"i314":32,"i315":2,"i316":2,"i317":2,"i318":2,"i319":2,"i320":2,"i321":2,"i322":2,"i323":2,"i324":2,"i325":2,"i326":2,"i327":2,"i328":2,"i329":2,"i330":2,"i331":2,"i332":2,"i333":2,"i334":8,"i335":32,"i336":2,"i337":2,"i338":2,"i339":2,"i340":2,"i341":2,"i342":2,"i343":2,"i344":2,"i345":2,"i346":2,"i347":2,"i348":2,"i349":2,"i350":2,"i351":2,"i352":2,"i353":2,"i354":2,"i355":1,"i356":2,"i357":2,"i358":32,"i359":2,"i360":2,"i361":2,"i362":2,"i363":2,"i364":2,"i365":2,"i366":2,"i367":2,"i368":32,"i369":2,"i370":2,"i371":32,"i372":2,"i373":2,"i374":32,"i375":2,"i376":2,"i377":32,"i378":32,"i379":2,"i380":1,"i381":1,"i382":1,"i383":1,"i384":8,"i385":2,"i386":1,"i387":8,"i388":1,"i389":2,"i390":1,"i391":2,"i392":2,"i393":2,"i394":2,"i395":8,"i396":2,"i397":2,"i398":2,"i399":1,"i400":8,"i401":32,"i402":1,"i403":2,"i404":1,"i405":1,"i406":1,"i407":2,"i408":32,"i409":2,"i410":2,"i411":2,"i412":2,"i413":2,"i414":2,"i415":1,"i416":2,"i417":2,"i418":2,"i419":2,"i420":1,"i421":2,"i422":2,"i423":2,"i424":1,"i425":32,"i426":2,"i427":8,"i428":32,"i429":1,"i430":1,"i431":2,"i432":2,"i433":1,"i434":2,"i435":2,"i436":2,"i437":2,"i438":2,"i439":2,"i440":2,"i441":2,"i442":1,"i443":2,"i444":2,"i445":32,"i446":2,"i447":1,"i448":1,"i449":1,"i450":1,"i451":2,"i452":8,"i453":32,"i454":1,"i455":1,"i456":1,"i457":2,"i458":1,"i459":1,"i460":1,"i461":2,"i462":2,"i463":2,"i464":2,"i465":8,"i466":32,"i467":1,"i468":2,"i469":1,"i470":1,"i471":32,"i472":2,"i473":2,"i474":2,"i475":1,"i476":2,"i477":1,"i478":1,"i479":1,"i480":2,"i481":2,"i482":2,"i483":2,"i484":2,"i485":2,"i486":2,"i487":2,"i488":2,"i489":2,"i490":2,"i491":2,"i492":2,"i493":2,"i494":2,"i495":2,"i496":2,"i497":2,"i498":2,"i499":2,"i500":2,"i501":2,"i502":2,"i503":8,"i504":2,"i505":2,"i506":2,"i507":2,"i508":2,"i509":1,"i510":2,"i511":2,"i512":2,"i513":2,"i514":2,"i515":2,"i516":2,"i517":2,"i518":2,"i519":2,"i520":2,"i521":1,"i522":2,"i523":2,"i524":2,"i525":2,"i526":8,"i527":2,"i528":2,"i529":2,"i530":8,"i531":2,"i532":32,"i533":1,"i534":2,"i535":2,"i536":2,"i537":2,"i538":2,"i539":8,"i540":2,"i541":2,"i542":32,"i543":32,"i544":2,"i545":2,"i546":2,"i547":2,"i548":2,"i549":2,"i550":2,"i551":2,"i552":2,"i553":2,"i554":2,"i555":2,"i556":2,"i557":2,"i558":2,"i559":2,"i560":2,"i561":2,"i562":2,"i563":32,"i564":2,"i565":2,"i566":2,"i567":2,"i568":8,"i569":2,"i570":2,"i571":2,"i572":8,"i573":2,"i574":2,"i575":2,"i576":2,"i577":2,"i578":1,"i579":1,"i580":2,"i581":2,"i582":1,"i583":2,"i584":1,"i585":2,"i586":2,"i587":1,"i588":2,"i589":2,"i590":2,"i591":32,"i592":2,"i593":2,"i594":2,"i595":2,"i596":2,"i597":2,"i598":32,"i599":2,"i600":2,"i601":2,"i602":2,"i603":2,"i604":8,"i605":1,"i606":1,"i607":1,"i608":1,"i609":8,"i610":8,"i611":1,"i612":2,"i613":2,"i614":2,"i615":2,"i616":1,"i617":1,"i618":2,"i619":8,"i620":1,"i621":8,"i622":32,"i623":8,"i624":8,"i625":2,"i626":2,"i627":2,"i628":2,"i629":2,"i630":2,"i631":2,"i632":2,"i633":1,"i634":2,"i635":2,"i636":2,"i637":8,"i638":2,"i639":2,"i640":2,"i641":2,"i642":2,"i643":2,"i644":2,"i645":2,"i646":2,"i647":2,"i648":2,"i649":2,"i650":2,"i651":8,"i652":1,"i653":2,"i654":2,"i655":2,"i656":2,"i657":2,"i658":2,"i659":2,"i660":2,"i661":2,"i662":1,"i663":1,"i664":1,"i665":1,"i666":2,"i667":1,"i668":1,"i669":2,"i670":1,"i671":8,"i672":1,"i673":2,"i674":1,"i675":2,"i676":2,"i677":32,"i678":2,"i679":2,"i680":2,"i681":2,"i682":32,"i683":2,"i684":2,"i685":2,"i686":2,"i687":32,"i688":2,"i689":1,"i690":2,"i691":2,"i692":2,"i693":32,"i694":2,"i695":2,"i696":2,"i697":1,"i698":1,"i699":1,"i700":2,"i701":1,"i702":1,"i703":2,"i704":8,"i705":2,"i706":2,"i707":8,"i708":1,"i709":2,"i710":8,"i711":8,"i712":2,"i713":2,"i714":1,"i715":8,"i716":2,"i717":2,"i718":2,"i719":2,"i720":2,"i721":2,"i722":2,"i723":2,"i724":2,"i725":2,"i726":2,"i727":2,"i728":2,"i729":2,"i730":2,"i731":2,"i732":2,"i733":1,"i734":1,"i735":2,"i736":2,"i737":2,"i738":32,"i739":32,"i740":2,"i741":2,"i742":2,"i743":2,"i744":2,"i745":1,"i746":1,"i747":2,"i748":1,"i749":2,"i750":2,"i751":1,"i752":1,"i753":1,"i754":2,"i755":1,"i756":1,"i757":32,"i758":1,"i759":1,"i760":1,"i761":1,"i762":1,"i763":1,"i764":2,"i765":1,"i766":1,"i767":2,"i768":1,"i769":2,"i770":2,"i771":8,"i772":32,"i773":2,"i774":1,"i775":1,"i776":1,"i777":2,"i778":1,"i779":2,"i780":2,"i781":2,"i782":2,"i783":2,"i784":2,"i785":32,"i786":2,"i787":32,"i788":2,"i789":2,"i790":2,"i791":2,"i792":2,"i793":2,"i794":2,"i795":2,"i796":2,"i797":2,"i798":1,"i799":32,"i800":2,"i801":2,"i802":2,"i803":32,"i804":2,"i805":2,"i806":2,"i807":2,"i808":2,"i809":2,"i810":2,"i811":8,"i812":2,"i813":2,"i814":2,"i815":2,"i816":2,"i817":2,"i818":8,"i819":2,"i820":1,"i821":2,"i822":2,"i823":2,"i824":2,"i825":2,"i826":2,"i827":2,"i828":2,"i829":8,"i830":32,"i831":32,"i832":2,"i833":2,"i834":1,"i835":1,"i836":2,"i837":2,"i838":2,"i839":2,"i840":2,"i841":1,"i842":1,"i843":32,"i844":2,"i845":2,"i846":32,"i847":32,"i848":2,"i849":1,"i850":32,"i851":32,"i852":32,"i853":2,"i854":32,"i855":32,"i856":32,"i857":2,"i858":1,"i859":1,"i860":2,"i861":1,"i862":2,"i863":2,"i864":1,"i865":1,"i866":2,"i867":2,"i868":1,"i869":1,"i870":1,"i871":32,"i872":32,"i873":2,"i874":32,"i875":2,"i876":2,"i877":2,"i878":2,"i879":2,"i880":8,"i881":2,"i882":2,"i883":2,"i884":2,"i885":2,"i886":1,"i887":1,"i888":2,"i889":2,"i890":2,"i891":2,"i892":2,"i893":2,"i894":2,"i895":2,"i896":2,"i897":2,"i898":2,"i899":8,"i900":1,"i901":32,"i902":32,"i903":1,"i904":1,"i905":32,"i906":32,"i907":32,"i908":32,"i909":32,"i910":32,"i911":2,"i912":1,"i913":2,"i914":2,"i915":32,"i916":2,"i917":2,"i918":2,"i919":2,"i920":32,"i921":2,"i922":1,"i923":2,"i924":2,"i925":1,"i926":2,"i927":2,"i928":2,"i929":2,"i930":2,"i931":2,"i932":2,"i933":2,"i934":1,"i935":1,"i936":2,"i937":2,"i938":2,"i939":8,"i940":2,"i941":2,"i942":2,"i943":1,"i944":8,"i945":1,"i946":32,"i947":32,"i948":1,"i949":1,"i950":2,"i951":1,"i952":2,"i953":2,"i954":2,"i955":2,"i956":2,"i957":2,"i958":2,"i959":2,"i960":2,"i961":2,"i962":2,"i963":2,"i964":2,"i965":1,"i966":1,"i967":2,"i968":1,"i969":2,"i970":2,"i971":1,"i972":2,"i973":1,"i974":1,"i975":2,"i976":1,"i977":2,"i978":1,"i979":1,"i980":1,"i981":1,"i982":2,"i983":2,"i984":1,"i985":2,"i986":2,"i987":2,"i988":2,"i989":2,"i990":2,"i991":2,"i992":2,"i993":2,"i994":2,"i995":2,"i996":2,"i997":2,"i998":2,"i999":2,"i1000":2,"i1001":2,"i1002":2,"i1003":2,"i1004":2,"i1005":2,"i1006":2,"i1007":1,"i1008":2,"i1009":2,"i1010":1,"i1011":1,"i1012":1,"i1013":1,"i1014":1,"i1015":1,"i1016":1,"i1017":1,"i1018":1,"i1019":2,"i1020":2,"i1021":1,"i1022":2,"i1023":2,"i1024":2,"i1025":2,"i1026":2,"i1027":2,"i1028":2,"i1029":2,"i1030":2,"i1031":1,"i1032":1,"i1033":2,"i1034":2,"i1035":2,"i1036":2,"i1037":2,"i1038":8,"i1039":2,"i1040":2,"i1041":2,"i1042":2,"i1043":2,"i1044":2,"i1045":2,"i1046":2,"i1047":2,"i1048":2,"i1049":2,"i1050":1,"i1051":1,"i1052":1,"i1053":2,"i1054":32,"i1055":2,"i1056":1,"i1057":1,"i1058":8,"i1059":1,"i1060":2,"i1061":2,"i1062":2,"i1063":2,"i1064":32,"i1065":2,"i1066":2,"i1067":2,"i1068":2,"i1069":1,"i1070":2,"i1071":2,"i1072":2,"i1073":2,"i1074":2,"i1075":2,"i1076":2,"i1077":32,"i1078":2,"i1079":32,"i1080":32,"i1081":2,"i1082":1,"i1083":2,"i1084":2,"i1085":1,"i1086":1,"i1087":2,"i1088":2,"i1089":2,"i1090":2,"i1091":2,"i1092":2,"i1093":2,"i1094":1,"i1095":2,"i1096":1,"i1097":2,"i1098":2,"i1099":2,"i1100":2,"i1101":1,"i1102":2,"i1103":2,"i1104":32,"i1105":2,"i1106":2,"i1107":2,"i1108":1,"i1109":1,"i1110":2,"i1111":32,"i1112":1,"i1113":32,"i1114":2,"i1115":2,"i1116":1,"i1117":2,"i1118":2,"i1119":2,"i1120":2,"i1121":2,"i1122":2,"i1123":1,"i1124":2,"i1125":1,"i1126":2,"i1127":1,"i1128":2,"i1129":2,"i1130":2,"i1131":1,"i1132":8,"i1133":32,"i1134":2,"i1135":2,"i1136":2,"i1137":2,"i1138":1,"i1139":1,"i1140":32,"i1141":2,"i1142":2,"i1143":32,"i1144":1,"i1145":2,"i1146":2,"i1147":1,"i1148":32,"i1149":2,"i1150":2,"i1151":2,"i1152":2,"i1153":2,"i1154":8,"i1155":32,"i1156":8,"i1157":8,"i1158":32,"i1159":2,"i1160":2,"i1161":2,"i1162":2,"i1163":2,"i1164":2,"i1165":2,"i1166":2,"i1167":1,"i1168":1,"i1169":2,"i1170":1,"i1171":2,"i1172":2,"i1173":2,"i1174":2,"i1175":2,"i1176":2,"i1177":2,"i1178":2,"i1179":2,"i1180":2,"i1181":8,"i1182":2,"i1183":2,"i1184":2,"i1185":2,"i1186":2,"i1187":2,"i1188":2,"i1189":32,"i1190":32,"i1191":2,"i1192":2,"i1193":2,"i1194":2,"i1195":2,"i1196":2,"i1197":2,"i1198":2,"i1199":1,"i1200":2};
29var tabs = {65535:["t0","All Classes"],1:["t1","Interface Summary"],2:["t2","Class Summary"],8:["t4","Exception Summary"],32:["t6","Annotation Types Summary"]};
30var altColor = "altColor";
31var rowColor = "rowColor";
32var tableTab = "tableTab";
33var activeTableTab = "activeTableTab";
34var pathtoroot = "./";
35var useModuleDirectories = false;
36loadScripts(document, 'script');</script>
37<noscript>
38<div>JavaScript is disabled on your browser.</div>
39</noscript>
40<header role="banner">
41<nav role="navigation">
42<div class="fixedNav">
43<!-- ========= START OF TOP NAVBAR ======= -->
44<div class="topNav"><a id="navbar.top">
45<!--   -->
46</a>
47<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
48<a id="navbar.top.firstrow">
49<!--   -->
50</a>
51<ul class="navList" title="Navigation">
52<li><a href="index.html">Overview</a></li>
53<li>Package</li>
54<li>Class</li>
55<li><a href="overview-tree.html">Tree</a></li>
56<li><a href="deprecated-list.html">Deprecated</a></li>
57<li><a href="index-all.html">Index</a></li>
58<li><a href="help-doc.html">Help</a></li>
59</ul>
60</div>
61<div class="subNav">
62<ul class="navList" id="allclasses_navbar_top">
63<li><a href="allclasses.html">All&nbsp;Classes</a></li>
64</ul>
65<ul class="navListSearch">
66<li><label for="search">SEARCH:</label>
67<input type="text" id="search" value="search" disabled="disabled">
68<input type="reset" id="reset" value="reset" disabled="disabled">
69</li>
70</ul>
71<div>
72<script type="text/javascript"><!--
73  allClassesLink = document.getElementById("allclasses_navbar_top");
74  if(window==top) {
75    allClassesLink.style.display = "block";
76  }
77  else {
78    allClassesLink.style.display = "none";
79  }
80  //-->
81</script>
82<noscript>
83<div>JavaScript is disabled on your browser.</div>
84</noscript>
85</div>
86<a id="skip.navbar.top">
87<!--   -->
88</a></div>
89<!-- ========= END OF TOP NAVBAR ========= -->
90</div>
91<div class="navPadding">&nbsp;</div>
92<script type="text/javascript"><!--
93$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
94//-->
95</script>
96</nav>
97</header>
98<main role="main">
99<div class="header">
100<h1 title="All&amp;nbsp;Classes" class="title">All&nbsp;Classes</h1>
101</div>
102<div class="allClassesContainer">
103<ul class="blockList">
104<li class="blockList">
105<table class="typeSummary">
106<caption><span id="t0" class="activeTableTab"><span>All Classes</span><span class="tabEnd">&nbsp;</span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Interface Summary</a></span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Class Summary</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Exception Summary</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Annotation Types Summary</a></span><span class="tabEnd">&nbsp;</span></span></caption>
107<tr>
108<th class="colFirst" scope="col">Class</th>
109<th class="colLast" scope="col">Description</th>
110</tr>
111<tr id="i0" class="altColor">
112<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AacUtil.html" title="class in com.google.android.exoplayer2.audio">AacUtil</a></td>
113<th class="colLast" scope="row">
114<div class="block">Utility methods for handling AAC audio streams.</div>
115</th>
116</tr>
117<tr id="i1" class="rowColor">
118<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AacUtil.AacAudioObjectType.html" title="annotation in com.google.android.exoplayer2.audio">AacUtil.AacAudioObjectType</a></td>
119<th class="colLast" scope="row">
120<div class="block">Valid AAC Audio object types.</div>
121</th>
122</tr>
123<tr id="i2" class="altColor">
124<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AacUtil.Config.html" title="class in com.google.android.exoplayer2.audio">AacUtil.Config</a></td>
125<th class="colLast" scope="row">
126<div class="block">Holds sample format information for AAC audio.</div>
127</th>
128</tr>
129<tr id="i3" class="rowColor">
130<td class="colFirst"><a href="com/google/android/exoplayer2/AbstractConcatenatedTimeline.html" title="class in com.google.android.exoplayer2">AbstractConcatenatedTimeline</a></td>
131<th class="colLast" scope="row">
132<div class="block">Abstract base class for the concatenation of one or more <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a>s.</div>
133</th>
134</tr>
135<tr id="i4" class="altColor">
136<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/Ac3Extractor.html" title="class in com.google.android.exoplayer2.extractor.ts">Ac3Extractor</a></td>
137<th class="colLast" scope="row">
138<div class="block">Extracts data from (E-)AC-3 bitstreams.</div>
139</th>
140</tr>
141<tr id="i5" class="rowColor">
142<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/Ac3Reader.html" title="class in com.google.android.exoplayer2.extractor.ts">Ac3Reader</a></td>
143<th class="colLast" scope="row">
144<div class="block">Parses a continuous (E-)AC-3 byte stream and extracts individual samples.</div>
145</th>
146</tr>
147<tr id="i6" class="altColor">
148<td class="colFirst"><a href="com/google/android/exoplayer2/audio/Ac3Util.html" title="class in com.google.android.exoplayer2.audio">Ac3Util</a></td>
149<th class="colLast" scope="row">
150<div class="block">Utility methods for parsing Dolby TrueHD and (E-)AC-3 syncframes.</div>
151</th>
152</tr>
153<tr id="i7" class="rowColor">
154<td class="colFirst"><a href="com/google/android/exoplayer2/audio/Ac3Util.SyncFrameInfo.html" title="class in com.google.android.exoplayer2.audio">Ac3Util.SyncFrameInfo</a></td>
155<th class="colLast" scope="row">
156<div class="block">Holds sample format information as presented by a syncframe header.</div>
157</th>
158</tr>
159<tr id="i8" class="altColor">
160<td class="colFirst"><a href="com/google/android/exoplayer2/audio/Ac3Util.SyncFrameInfo.StreamType.html" title="annotation in com.google.android.exoplayer2.audio">Ac3Util.SyncFrameInfo.StreamType</a></td>
161<th class="colLast" scope="row">
162<div class="block">AC3 stream types.</div>
163</th>
164</tr>
165<tr id="i9" class="rowColor">
166<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/Ac4Extractor.html" title="class in com.google.android.exoplayer2.extractor.ts">Ac4Extractor</a></td>
167<th class="colLast" scope="row">
168<div class="block">Extracts data from AC-4 bitstreams.</div>
169</th>
170</tr>
171<tr id="i10" class="altColor">
172<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/Ac4Reader.html" title="class in com.google.android.exoplayer2.extractor.ts">Ac4Reader</a></td>
173<th class="colLast" scope="row">
174<div class="block">Parses a continuous AC-4 byte stream and extracts individual samples.</div>
175</th>
176</tr>
177<tr id="i11" class="rowColor">
178<td class="colFirst"><a href="com/google/android/exoplayer2/audio/Ac4Util.html" title="class in com.google.android.exoplayer2.audio">Ac4Util</a></td>
179<th class="colLast" scope="row">
180<div class="block">Utility methods for parsing AC-4 frames, which are access units in AC-4 bitstreams.</div>
181</th>
182</tr>
183<tr id="i12" class="altColor">
184<td class="colFirst"><a href="com/google/android/exoplayer2/audio/Ac4Util.SyncFrameInfo.html" title="class in com.google.android.exoplayer2.audio">Ac4Util.SyncFrameInfo</a></td>
185<th class="colLast" scope="row">
186<div class="block">Holds sample format information as presented by a syncframe header.</div>
187</th>
188</tr>
189<tr id="i13" class="rowColor">
190<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.html" title="class in com.google.android.exoplayer2.testutil">Action</a></td>
191<th class="colLast" scope="row">
192<div class="block">Base class for actions to perform during playback tests.</div>
193</th>
194</tr>
195<tr id="i14" class="altColor">
196<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.AddMediaItems.html" title="class in com.google.android.exoplayer2.testutil">Action.AddMediaItems</a></td>
197<th class="colLast" scope="row">
198<div class="block">Calls <a href="com/google/android/exoplayer2/ExoPlayer.html#addMediaSources(java.util.List)"><code>ExoPlayer.addMediaSources(List)</code></a>.</div>
199</th>
200</tr>
201<tr id="i15" class="rowColor">
202<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.ClearMediaItems.html" title="class in com.google.android.exoplayer2.testutil">Action.ClearMediaItems</a></td>
203<th class="colLast" scope="row">
204<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#clearMediaItems()"><code>Player.clearMediaItems()</code></a>}.</div>
205</th>
206</tr>
207<tr id="i16" class="altColor">
208<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.ClearVideoSurface.html" title="class in com.google.android.exoplayer2.testutil">Action.ClearVideoSurface</a></td>
209<th class="colLast" scope="row">
210<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#clearVideoSurface()"><code>Player.clearVideoSurface()</code></a>.</div>
211</th>
212</tr>
213<tr id="i17" class="rowColor">
214<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.ExecuteRunnable.html" title="class in com.google.android.exoplayer2.testutil">Action.ExecuteRunnable</a></td>
215<th class="colLast" scope="row">
216<div class="block">Calls <code>Runnable.run()</code>.</div>
217</th>
218</tr>
219<tr id="i18" class="altColor">
220<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.MoveMediaItem.html" title="class in com.google.android.exoplayer2.testutil">Action.MoveMediaItem</a></td>
221<th class="colLast" scope="row">
222<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#moveMediaItem(int,int)"><code>Player.moveMediaItem(int, int)</code></a>.</div>
223</th>
224</tr>
225<tr id="i19" class="rowColor">
226<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.PlayUntilPosition.html" title="class in com.google.android.exoplayer2.testutil">Action.PlayUntilPosition</a></td>
227<th class="colLast" scope="row">
228<div class="block">Schedules a play action to be executed, waits until the player reaches the specified position,
229 and pauses the player again.</div>
230</th>
231</tr>
232<tr id="i20" class="altColor">
233<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.Prepare.html" title="class in com.google.android.exoplayer2.testutil">Action.Prepare</a></td>
234<th class="colLast" scope="row">
235<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#prepare()"><code>Player.prepare()</code></a>.</div>
236</th>
237</tr>
238<tr id="i21" class="rowColor">
239<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.RemoveMediaItem.html" title="class in com.google.android.exoplayer2.testutil">Action.RemoveMediaItem</a></td>
240<th class="colLast" scope="row">
241<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#removeMediaItem(int)"><code>Player.removeMediaItem(int)</code></a>.</div>
242</th>
243</tr>
244<tr id="i22" class="altColor">
245<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.RemoveMediaItems.html" title="class in com.google.android.exoplayer2.testutil">Action.RemoveMediaItems</a></td>
246<th class="colLast" scope="row">
247<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#removeMediaItems(int,int)"><code>Player.removeMediaItems(int, int)</code></a>.</div>
248</th>
249</tr>
250<tr id="i23" class="rowColor">
251<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.Seek.html" title="class in com.google.android.exoplayer2.testutil">Action.Seek</a></td>
252<th class="colLast" scope="row">
253<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#seekTo(long)"><code>Player.seekTo(long)</code></a> or <a href="com/google/android/exoplayer2/Player.html#seekTo(int,long)"><code>Player.seekTo(int, long)</code></a>.</div>
254</th>
255</tr>
256<tr id="i24" class="altColor">
257<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SendMessages.html" title="class in com.google.android.exoplayer2.testutil">Action.SendMessages</a></td>
258<th class="colLast" scope="row">
259<div class="block">Calls <a href="com/google/android/exoplayer2/ExoPlayer.html#createMessage(com.google.android.exoplayer2.PlayerMessage.Target)"><code>ExoPlayer.createMessage(Target)</code></a> and <a href="com/google/android/exoplayer2/PlayerMessage.html#send()"><code>PlayerMessage.send()</code></a>.</div>
260</th>
261</tr>
262<tr id="i25" class="rowColor">
263<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetAudioAttributes.html" title="class in com.google.android.exoplayer2.testutil">Action.SetAudioAttributes</a></td>
264<th class="colLast" scope="row">
265<div class="block">Calls <a href="com/google/android/exoplayer2/ExoPlayer.html#setAudioAttributes(com.google.android.exoplayer2.audio.AudioAttributes,boolean)"><code>ExoPlayer.setAudioAttributes(AudioAttributes, boolean)</code></a>.</div>
266</th>
267</tr>
268<tr id="i26" class="altColor">
269<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetMediaItems.html" title="class in com.google.android.exoplayer2.testutil">Action.SetMediaItems</a></td>
270<th class="colLast" scope="row">
271<div class="block">Calls <a href="com/google/android/exoplayer2/ExoPlayer.html#setMediaSources(java.util.List,int,long)"><code>ExoPlayer.setMediaSources(List, int, long)</code></a>.</div>
272</th>
273</tr>
274<tr id="i27" class="rowColor">
275<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetMediaItemsResetPosition.html" title="class in com.google.android.exoplayer2.testutil">Action.SetMediaItemsResetPosition</a></td>
276<th class="colLast" scope="row">
277<div class="block">Calls <a href="com/google/android/exoplayer2/ExoPlayer.html#setMediaSources(java.util.List,boolean)"><code>ExoPlayer.setMediaSources(List, boolean)</code></a>.</div>
278</th>
279</tr>
280<tr id="i28" class="altColor">
281<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetPlaybackParameters.html" title="class in com.google.android.exoplayer2.testutil">Action.SetPlaybackParameters</a></td>
282<th class="colLast" scope="row">
283<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#setPlaybackParameters(com.google.android.exoplayer2.PlaybackParameters)"><code>Player.setPlaybackParameters(PlaybackParameters)</code></a>.</div>
284</th>
285</tr>
286<tr id="i29" class="rowColor">
287<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetPlayWhenReady.html" title="class in com.google.android.exoplayer2.testutil">Action.SetPlayWhenReady</a></td>
288<th class="colLast" scope="row">
289<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#setPlayWhenReady(boolean)"><code>Player.setPlayWhenReady(boolean)</code></a>.</div>
290</th>
291</tr>
292<tr id="i30" class="altColor">
293<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetRendererDisabled.html" title="class in com.google.android.exoplayer2.testutil">Action.SetRendererDisabled</a></td>
294<th class="colLast" scope="row">
295<div class="block">Updates the <a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector.Parameters</code></a> of a <a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector</code></a> to specify whether the
296 renderer at a given index should be disabled.</div>
297</th>
298</tr>
299<tr id="i31" class="rowColor">
300<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetRepeatMode.html" title="class in com.google.android.exoplayer2.testutil">Action.SetRepeatMode</a></td>
301<th class="colLast" scope="row">
302<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#setRepeatMode(@com.google.android.exoplayer2.Player.RepeatModeint)"><code>Player.setRepeatMode(int)</code></a>.</div>
303</th>
304</tr>
305<tr id="i32" class="altColor">
306<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetShuffleModeEnabled.html" title="class in com.google.android.exoplayer2.testutil">Action.SetShuffleModeEnabled</a></td>
307<th class="colLast" scope="row">
308<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#setShuffleModeEnabled(boolean)"><code>Player.setShuffleModeEnabled(boolean)</code></a>.</div>
309</th>
310</tr>
311<tr id="i33" class="rowColor">
312<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetShuffleOrder.html" title="class in com.google.android.exoplayer2.testutil">Action.SetShuffleOrder</a></td>
313<th class="colLast" scope="row">
314<div class="block">Calls <a href="com/google/android/exoplayer2/ExoPlayer.html#setShuffleOrder(com.google.android.exoplayer2.source.ShuffleOrder)"><code>ExoPlayer.setShuffleOrder(ShuffleOrder)</code></a> .</div>
315</th>
316</tr>
317<tr id="i34" class="altColor">
318<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.SetVideoSurface.html" title="class in com.google.android.exoplayer2.testutil">Action.SetVideoSurface</a></td>
319<th class="colLast" scope="row">
320<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#setVideoSurface(android.view.Surface)"><code>Player.setVideoSurface(Surface)</code></a>.</div>
321</th>
322</tr>
323<tr id="i35" class="rowColor">
324<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.Stop.html" title="class in com.google.android.exoplayer2.testutil">Action.Stop</a></td>
325<th class="colLast" scope="row">
326<div class="block">Calls <a href="com/google/android/exoplayer2/Player.html#stop()"><code>Player.stop()</code></a> or <a href="com/google/android/exoplayer2/Player.html#stop(boolean)"><code>Player.stop(boolean)</code></a>.</div>
327</th>
328</tr>
329<tr id="i36" class="altColor">
330<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.ThrowPlaybackException.html" title="class in com.google.android.exoplayer2.testutil">Action.ThrowPlaybackException</a></td>
331<th class="colLast" scope="row">
332<div class="block">Throws a playback exception on the playback thread.</div>
333</th>
334</tr>
335<tr id="i37" class="rowColor">
336<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.WaitForIsLoading.html" title="class in com.google.android.exoplayer2.testutil">Action.WaitForIsLoading</a></td>
337<th class="colLast" scope="row">
338<div class="block">Waits for a specified loading state, returning either immediately or after a call to <a href="com/google/android/exoplayer2/Player.Listener.html#onIsLoadingChanged(boolean)"><code>Player.Listener.onIsLoadingChanged(boolean)</code></a>.</div>
339</th>
340</tr>
341<tr id="i38" class="altColor">
342<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.WaitForMessage.html" title="class in com.google.android.exoplayer2.testutil">Action.WaitForMessage</a></td>
343<th class="colLast" scope="row">
344<div class="block">Waits for a player message to arrive.</div>
345</th>
346</tr>
347<tr id="i39" class="rowColor">
348<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.WaitForPendingPlayerCommands.html" title="class in com.google.android.exoplayer2.testutil">Action.WaitForPendingPlayerCommands</a></td>
349<th class="colLast" scope="row">
350<div class="block">Waits until the player acknowledged all pending player commands.</div>
351</th>
352</tr>
353<tr id="i40" class="altColor">
354<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.WaitForPlaybackState.html" title="class in com.google.android.exoplayer2.testutil">Action.WaitForPlaybackState</a></td>
355<th class="colLast" scope="row">
356<div class="block">Waits for a specified playback state, returning either immediately or after a call to <a href="com/google/android/exoplayer2/Player.Listener.html#onPlaybackStateChanged(@com.google.android.exoplayer2.Player.Stateint)"><code>Player.Listener.onPlaybackStateChanged(int)</code></a>.</div>
357</th>
358</tr>
359<tr id="i41" class="rowColor">
360<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.WaitForPlayWhenReady.html" title="class in com.google.android.exoplayer2.testutil">Action.WaitForPlayWhenReady</a></td>
361<th class="colLast" scope="row">
362<div class="block">Waits for a specified playWhenReady value, returning either immediately or after a call to
363 <a href="com/google/android/exoplayer2/Player.Listener.html#onPlayWhenReadyChanged(boolean,@com.google.android.exoplayer2.Player.PlayWhenReadyChangeReasonint)"><code>Player.Listener.onPlayWhenReadyChanged(boolean, int)</code></a>.</div>
364</th>
365</tr>
366<tr id="i42" class="altColor">
367<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.WaitForPositionDiscontinuity.html" title="class in com.google.android.exoplayer2.testutil">Action.WaitForPositionDiscontinuity</a></td>
368<th class="colLast" scope="row">
369<div class="block">Waits for <a href="com/google/android/exoplayer2/Player.Listener.html#onPositionDiscontinuity(com.google.android.exoplayer2.Player.PositionInfo,com.google.android.exoplayer2.Player.PositionInfo,@com.google.android.exoplayer2.Player.DiscontinuityReasonint)"><code>Player.Listener.onPositionDiscontinuity(Player.PositionInfo,
370 Player.PositionInfo, int)</code></a>.</div>
371</th>
372</tr>
373<tr id="i43" class="rowColor">
374<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Action.WaitForTimelineChanged.html" title="class in com.google.android.exoplayer2.testutil">Action.WaitForTimelineChanged</a></td>
375<th class="colLast" scope="row">
376<div class="block">Waits for <a href="com/google/android/exoplayer2/Player.Listener.html#onTimelineChanged(com.google.android.exoplayer2.Timeline,@com.google.android.exoplayer2.Player.TimelineChangeReasonint)"><code>Player.Listener.onTimelineChanged(Timeline, int)</code></a>.</div>
377</th>
378</tr>
379<tr id="i44" class="altColor">
380<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ActionSchedule.html" title="class in com.google.android.exoplayer2.testutil">ActionSchedule</a></td>
381<th class="colLast" scope="row">
382<div class="block">Schedules a sequence of <a href="com/google/android/exoplayer2/testutil/Action.html" title="class in com.google.android.exoplayer2.testutil"><code>Action</code></a>s for execution during a test.</div>
383</th>
384</tr>
385<tr id="i45" class="rowColor">
386<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ActionSchedule.Builder.html" title="class in com.google.android.exoplayer2.testutil">ActionSchedule.Builder</a></td>
387<th class="colLast" scope="row">
388<div class="block">A builder for <a href="com/google/android/exoplayer2/testutil/ActionSchedule.html" title="class in com.google.android.exoplayer2.testutil"><code>ActionSchedule</code></a> instances.</div>
389</th>
390</tr>
391<tr id="i46" class="altColor">
392<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ActionSchedule.Callback.html" title="interface in com.google.android.exoplayer2.testutil">ActionSchedule.Callback</a></td>
393<th class="colLast" scope="row">
394<div class="block">Callback to notify listener that the action schedule has finished.</div>
395</th>
396</tr>
397<tr id="i47" class="rowColor">
398<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ActionSchedule.PlayerRunnable.html" title="class in com.google.android.exoplayer2.testutil">ActionSchedule.PlayerRunnable</a></td>
399<th class="colLast" scope="row">
400<div class="block">Provides a wrapper for a <a href="https://developer.android.com/reference/java/lang/Runnable.html" title="class or interface in java.lang" class="externalLink" target="_top"><code>Runnable</code></a> which has access to the player.</div>
401</th>
402</tr>
403<tr id="i48" class="altColor">
404<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ActionSchedule.PlayerTarget.html" title="class in com.google.android.exoplayer2.testutil">ActionSchedule.PlayerTarget</a></td>
405<th class="colLast" scope="row">
406<div class="block">Provides a wrapper for a <a href="com/google/android/exoplayer2/PlayerMessage.Target.html" title="interface in com.google.android.exoplayer2"><code>PlayerMessage.Target</code></a> which has access to the player when handling messages.</div>
407</th>
408</tr>
409<tr id="i49" class="rowColor">
410<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ActionSchedule.PlayerTarget.Callback.html" title="interface in com.google.android.exoplayer2.testutil">ActionSchedule.PlayerTarget.Callback</a></td>
411<th class="colLast" scope="row">
412<div class="block">Callback to be called when message arrives.</div>
413</th>
414</tr>
415<tr id="i50" class="altColor">
416<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/AdaptationSet.html" title="class in com.google.android.exoplayer2.source.dash.manifest">AdaptationSet</a></td>
417<th class="colLast" scope="row">
418<div class="block">Represents a set of interchangeable encoded versions of a media content component.</div>
419</th>
420</tr>
421<tr id="i51" class="rowColor">
422<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.html" title="class in com.google.android.exoplayer2.trackselection">AdaptiveTrackSelection</a></td>
423<th class="colLast" scope="row">
424<div class="block">A bandwidth based adaptive <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>ExoTrackSelection</code></a>, whose selected track is updated to be the
425 one of highest quality given the current network conditions and the state of the buffer.</div>
426</th>
427</tr>
428<tr id="i52" class="altColor">
429<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.AdaptationCheckpoint.html" title="class in com.google.android.exoplayer2.trackselection">AdaptiveTrackSelection.AdaptationCheckpoint</a></td>
430<th class="colLast" scope="row">
431<div class="block">Checkpoint to determine allocated bandwidth.</div>
432</th>
433</tr>
434<tr id="i53" class="rowColor">
435<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.Factory.html" title="class in com.google.android.exoplayer2.trackselection">AdaptiveTrackSelection.Factory</a></td>
436<th class="colLast" scope="row">
437<div class="block">Factory for <a href="com/google/android/exoplayer2/trackselection/AdaptiveTrackSelection.html" title="class in com.google.android.exoplayer2.trackselection"><code>AdaptiveTrackSelection</code></a> instances.</div>
438</th>
439</tr>
440<tr id="i54" class="altColor">
441<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/AdditionalFailureInfo.html" title="class in com.google.android.exoplayer2.testutil">AdditionalFailureInfo</a></td>
442<th class="colLast" scope="row">
443<div class="block">A JUnit <code>Rule</code> that attaches additional info to any errors/exceptions thrown by the test.</div>
444</th>
445</tr>
446<tr id="i55" class="rowColor">
447<td class="colFirst"><a href="com/google/android/exoplayer2/ui/AdOverlayInfo.html" title="class in com.google.android.exoplayer2.ui">AdOverlayInfo</a></td>
448<th class="colLast" scope="row">
449<div class="block">Provides information about an overlay view shown on top of an ad view group.</div>
450</th>
451</tr>
452<tr id="i56" class="altColor">
453<td class="colFirst"><a href="com/google/android/exoplayer2/ui/AdOverlayInfo.Builder.html" title="class in com.google.android.exoplayer2.ui">AdOverlayInfo.Builder</a></td>
454<th class="colLast" scope="row">
455<div class="block">A builder for <a href="com/google/android/exoplayer2/ui/AdOverlayInfo.html" title="class in com.google.android.exoplayer2.ui"><code>AdOverlayInfo</code></a> instances.</div>
456</th>
457</tr>
458<tr id="i57" class="rowColor">
459<td class="colFirst"><a href="com/google/android/exoplayer2/ui/AdOverlayInfo.Purpose.html" title="annotation in com.google.android.exoplayer2.ui">AdOverlayInfo.Purpose</a></td>
460<th class="colLast" scope="row">
461<div class="block">The purpose of the overlay.</div>
462</th>
463</tr>
464<tr id="i58" class="altColor">
465<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdPlaybackState.html" title="class in com.google.android.exoplayer2.source.ads">AdPlaybackState</a></td>
466<th class="colLast" scope="row">
467<div class="block">Represents ad group times and information on the state and URIs of ads within each ad group.</div>
468</th>
469</tr>
470<tr id="i59" class="rowColor">
471<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdPlaybackState.AdGroup.html" title="class in com.google.android.exoplayer2.source.ads">AdPlaybackState.AdGroup</a></td>
472<th class="colLast" scope="row">
473<div class="block">Represents a group of ads, with information about their states.</div>
474</th>
475</tr>
476<tr id="i60" class="altColor">
477<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdPlaybackState.AdState.html" title="annotation in com.google.android.exoplayer2.source.ads">AdPlaybackState.AdState</a></td>
478<th class="colLast" scope="row">
479<div class="block">Represents the state of an ad in an ad group.</div>
480</th>
481</tr>
482<tr id="i61" class="rowColor">
483<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdsLoader.html" title="interface in com.google.android.exoplayer2.source.ads">AdsLoader</a></td>
484<th class="colLast" scope="row">
485<div class="block">Interface for loaders of ads, which can be used with <a href="com/google/android/exoplayer2/source/ads/AdsMediaSource.html" title="class in com.google.android.exoplayer2.source.ads"><code>AdsMediaSource</code></a>.</div>
486</th>
487</tr>
488<tr id="i62" class="altColor">
489<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdsLoader.EventListener.html" title="interface in com.google.android.exoplayer2.source.ads">AdsLoader.EventListener</a></td>
490<th class="colLast" scope="row">
491<div class="block">Listener for ads loader events.</div>
492</th>
493</tr>
494<tr id="i63" class="rowColor">
495<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdsLoader.Provider.html" title="interface in com.google.android.exoplayer2.source.ads">AdsLoader.Provider</a></td>
496<th class="colLast" scope="row">
497<div class="block">Provides <a href="com/google/android/exoplayer2/source/ads/AdsLoader.html" title="interface in com.google.android.exoplayer2.source.ads"><code>AdsLoader</code></a> instances for media items that have <a href="com/google/android/exoplayer2/MediaItem.LocalConfiguration.html#adsConfiguration"><code>ad tag URIs</code></a>.</div>
498</th>
499</tr>
500<tr id="i64" class="altColor">
501<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdsMediaSource.html" title="class in com.google.android.exoplayer2.source.ads">AdsMediaSource</a></td>
502<th class="colLast" scope="row">
503<div class="block">A <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> that inserts ads linearly into a provided content media source.</div>
504</th>
505</tr>
506<tr id="i65" class="rowColor">
507<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdsMediaSource.AdLoadException.html" title="class in com.google.android.exoplayer2.source.ads">AdsMediaSource.AdLoadException</a></td>
508<th class="colLast" scope="row">
509<div class="block">Wrapper for exceptions that occur while loading ads, which are notified via <a href="com/google/android/exoplayer2/source/MediaSourceEventListener.html#onLoadError(int,com.google.android.exoplayer2.source.MediaSource.MediaPeriodId,com.google.android.exoplayer2.source.LoadEventInfo,com.google.android.exoplayer2.source.MediaLoadData,java.io.IOException,boolean)"><code>MediaSourceEventListener.onLoadError(int, MediaPeriodId, LoadEventInfo, MediaLoadData,
510 IOException, boolean)</code></a>.</div>
511</th>
512</tr>
513<tr id="i66" class="altColor">
514<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/AdsMediaSource.AdLoadException.Type.html" title="annotation in com.google.android.exoplayer2.source.ads">AdsMediaSource.AdLoadException.Type</a></td>
515<th class="colLast" scope="row">
516<div class="block">Types of ad load exceptions.</div>
517</th>
518</tr>
519<tr id="i67" class="rowColor">
520<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/AdtsExtractor.html" title="class in com.google.android.exoplayer2.extractor.ts">AdtsExtractor</a></td>
521<th class="colLast" scope="row">
522<div class="block">Extracts data from AAC bit streams with ADTS framing.</div>
523</th>
524</tr>
525<tr id="i68" class="altColor">
526<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/AdtsExtractor.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.ts">AdtsExtractor.Flags</a></td>
527<th class="colLast" scope="row">
528<div class="block">Flags controlling the behavior of the extractor.</div>
529</th>
530</tr>
531<tr id="i69" class="rowColor">
532<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/AdtsReader.html" title="class in com.google.android.exoplayer2.extractor.ts">AdtsReader</a></td>
533<th class="colLast" scope="row">
534<div class="block">Parses a continuous ADTS byte stream and extracts individual frames.</div>
535</th>
536</tr>
537<tr id="i70" class="altColor">
538<td class="colFirst"><a href="com/google/android/exoplayer2/ui/AdViewProvider.html" title="interface in com.google.android.exoplayer2.ui">AdViewProvider</a></td>
539<th class="colLast" scope="row">
540<div class="block">Provides information about views for the ad playback UI.</div>
541</th>
542</tr>
543<tr id="i71" class="rowColor">
544<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/crypto/AesCipherDataSink.html" title="class in com.google.android.exoplayer2.upstream.crypto">AesCipherDataSink</a></td>
545<th class="colLast" scope="row">
546<div class="block">A wrapping <a href="com/google/android/exoplayer2/upstream/DataSink.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSink</code></a> that encrypts the data being consumed.</div>
547</th>
548</tr>
549<tr id="i72" class="altColor">
550<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/crypto/AesCipherDataSource.html" title="class in com.google.android.exoplayer2.upstream.crypto">AesCipherDataSource</a></td>
551<th class="colLast" scope="row">
552<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> that decrypts the data read from an upstream source.</div>
553</th>
554</tr>
555<tr id="i73" class="rowColor">
556<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/crypto/AesFlushingCipher.html" title="class in com.google.android.exoplayer2.upstream.crypto">AesFlushingCipher</a></td>
557<th class="colLast" scope="row">
558<div class="block">A flushing variant of a AES/CTR/NoPadding <a href="https://developer.android.com/reference/javax/crypto/Cipher.html" title="class or interface in javax.crypto" class="externalLink" target="_top"><code>Cipher</code></a>.</div>
559</th>
560</tr>
561<tr id="i74" class="altColor">
562<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Allocation.html" title="class in com.google.android.exoplayer2.upstream">Allocation</a></td>
563<th class="colLast" scope="row">
564<div class="block">An allocation within a byte array.</div>
565</th>
566</tr>
567<tr id="i75" class="rowColor">
568<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Allocator.html" title="interface in com.google.android.exoplayer2.upstream">Allocator</a></td>
569<th class="colLast" scope="row">
570<div class="block">A source of allocations.</div>
571</th>
572</tr>
573<tr id="i76" class="altColor">
574<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Allocator.AllocationNode.html" title="interface in com.google.android.exoplayer2.upstream">Allocator.AllocationNode</a></td>
575<th class="colLast" scope="row">
576<div class="block">A node in a chain of <a href="com/google/android/exoplayer2/upstream/Allocation.html" title="class in com.google.android.exoplayer2.upstream"><code>Allocations</code></a>.</div>
577</th>
578</tr>
579<tr id="i77" class="rowColor">
580<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/amr/AmrExtractor.html" title="class in com.google.android.exoplayer2.extractor.amr">AmrExtractor</a></td>
581<th class="colLast" scope="row">
582<div class="block">Extracts data from the AMR containers format (either AMR or AMR-WB).</div>
583</th>
584</tr>
585<tr id="i78" class="altColor">
586<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/amr/AmrExtractor.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.amr">AmrExtractor.Flags</a></td>
587<th class="colLast" scope="row">
588<div class="block">Flags controlling the behavior of the extractor.</div>
589</th>
590</tr>
591<tr id="i79" class="rowColor">
592<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/AnalyticsCollector.html" title="interface in com.google.android.exoplayer2.analytics">AnalyticsCollector</a></td>
593<th class="colLast" scope="row">
594<div class="block">Interface for data collectors that forward analytics events to <a href="com/google/android/exoplayer2/analytics/AnalyticsListener.html" title="interface in com.google.android.exoplayer2.analytics"><code>AnalyticsListeners</code></a>.</div>
595</th>
596</tr>
597<tr id="i80" class="altColor">
598<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/AnalyticsListener.html" title="interface in com.google.android.exoplayer2.analytics">AnalyticsListener</a></td>
599<th class="colLast" scope="row">
600<div class="block">A listener for analytics events.</div>
601</th>
602</tr>
603<tr id="i81" class="rowColor">
604<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/AnalyticsListener.EventFlags.html" title="annotation in com.google.android.exoplayer2.analytics">AnalyticsListener.EventFlags</a></td>
605<th class="colLast" scope="row">
606<div class="block">Events that can be reported via <a href="com/google/android/exoplayer2/analytics/AnalyticsListener.html#onEvents(com.google.android.exoplayer2.Player,com.google.android.exoplayer2.analytics.AnalyticsListener.Events)"><code>AnalyticsListener.onEvents(Player, Events)</code></a>.</div>
607</th>
608</tr>
609<tr id="i82" class="altColor">
610<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/AnalyticsListener.Events.html" title="class in com.google.android.exoplayer2.analytics">AnalyticsListener.Events</a></td>
611<th class="colLast" scope="row">
612<div class="block">A set of <a href="com/google/android/exoplayer2/analytics/AnalyticsListener.EventFlags.html" title="annotation in com.google.android.exoplayer2.analytics"><code>AnalyticsListener.EventFlags</code></a>.</div>
613</th>
614</tr>
615<tr id="i83" class="rowColor">
616<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/AnalyticsListener.EventTime.html" title="class in com.google.android.exoplayer2.analytics">AnalyticsListener.EventTime</a></td>
617<th class="colLast" scope="row">
618<div class="block">Time information of an event.</div>
619</th>
620</tr>
621<tr id="i84" class="altColor">
622<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/ApicFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">ApicFrame</a></td>
623<th class="colLast" scope="row">
624<div class="block">APIC (Attached Picture) ID3 frame.</div>
625</th>
626</tr>
627<tr id="i85" class="rowColor">
628<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/dvbsi/AppInfoTable.html" title="class in com.google.android.exoplayer2.metadata.dvbsi">AppInfoTable</a></td>
629<th class="colLast" scope="row">
630<div class="block">A representation of a DVB Application Information Table (AIT).</div>
631</th>
632</tr>
633<tr id="i86" class="altColor">
634<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/dvbsi/AppInfoTableDecoder.html" title="class in com.google.android.exoplayer2.metadata.dvbsi">AppInfoTableDecoder</a></td>
635<th class="colLast" scope="row">
636<div class="block">Decoder for the DVB Application Information Table (AIT).</div>
637</th>
638</tr>
639<tr id="i87" class="rowColor">
640<td class="colFirst"><a href="com/google/android/exoplayer2/ui/AspectRatioFrameLayout.html" title="class in com.google.android.exoplayer2.ui">AspectRatioFrameLayout</a></td>
641<th class="colLast" scope="row">
642<div class="block">A <a href="https://developer.android.com/reference/android/widget/FrameLayout.html" title="class or interface in android.widget" class="externalLink" target="_top"><code>FrameLayout</code></a> that resizes itself to match a specified aspect ratio.</div>
643</th>
644</tr>
645<tr id="i88" class="altColor">
646<td class="colFirst"><a href="com/google/android/exoplayer2/ui/AspectRatioFrameLayout.AspectRatioListener.html" title="interface in com.google.android.exoplayer2.ui">AspectRatioFrameLayout.AspectRatioListener</a></td>
647<th class="colLast" scope="row">
648<div class="block">Listener to be notified about changes of the aspect ratios of this view.</div>
649</th>
650</tr>
651<tr id="i89" class="rowColor">
652<td class="colFirst"><a href="com/google/android/exoplayer2/ui/AspectRatioFrameLayout.ResizeMode.html" title="annotation in com.google.android.exoplayer2.ui">AspectRatioFrameLayout.ResizeMode</a></td>
653<th class="colLast" scope="row">
654<div class="block">Resize modes for <a href="com/google/android/exoplayer2/ui/AspectRatioFrameLayout.html" title="class in com.google.android.exoplayer2.ui"><code>AspectRatioFrameLayout</code></a>.</div>
655</th>
656</tr>
657<tr id="i90" class="altColor">
658<td class="colFirst"><a href="com/google/android/exoplayer2/util/Assertions.html" title="class in com.google.android.exoplayer2.util">Assertions</a></td>
659<th class="colLast" scope="row">
660<div class="block">Provides methods for asserting the truth of expressions and properties.</div>
661</th>
662</tr>
663<tr id="i91" class="rowColor">
664<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/AssetContentProvider.html" title="class in com.google.android.exoplayer2.testutil">AssetContentProvider</a></td>
665<th class="colLast" scope="row">
666<div class="block">A <a href="https://developer.android.com/reference/android/content/ContentProvider.html" title="class or interface in android.content" class="externalLink" target="_top"><code>ContentProvider</code></a> for reading asset data.</div>
667</th>
668</tr>
669<tr id="i92" class="altColor">
670<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/AssetDataSource.html" title="class in com.google.android.exoplayer2.upstream">AssetDataSource</a></td>
671<th class="colLast" scope="row">
672<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> for reading from a local asset.</div>
673</th>
674</tr>
675<tr id="i93" class="rowColor">
676<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/AssetDataSource.AssetDataSourceException.html" title="class in com.google.android.exoplayer2.upstream">AssetDataSource.AssetDataSourceException</a></td>
677<th class="colLast" scope="row">
678<div class="block">Thrown when an <a href="https://developer.android.com/reference/java/io/IOException.html" title="class or interface in java.io" class="externalLink" target="_top"><code>IOException</code></a> is encountered reading a local asset.</div>
679</th>
680</tr>
681<tr id="i94" class="altColor">
682<td class="colFirst"><a href="com/google/android/exoplayer2/util/AtomicFile.html" title="class in com.google.android.exoplayer2.util">AtomicFile</a></td>
683<th class="colLast" scope="row">
684<div class="block">A helper class for performing atomic operations on a file by creating a backup file until a write
685 has successfully completed.</div>
686</th>
687</tr>
688<tr id="i95" class="rowColor">
689<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioAttributes.html" title="class in com.google.android.exoplayer2.audio">AudioAttributes</a></td>
690<th class="colLast" scope="row">
691<div class="block">Attributes for audio playback, which configure the underlying platform <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack</code></a>.</div>
692</th>
693</tr>
694<tr id="i96" class="altColor">
695<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioAttributes.Builder.html" title="class in com.google.android.exoplayer2.audio">AudioAttributes.Builder</a></td>
696<th class="colLast" scope="row">
697<div class="block">Builder for <a href="com/google/android/exoplayer2/audio/AudioAttributes.html" title="class in com.google.android.exoplayer2.audio"><code>AudioAttributes</code></a>.</div>
698</th>
699</tr>
700<tr id="i97" class="rowColor">
701<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioCapabilities.html" title="class in com.google.android.exoplayer2.audio">AudioCapabilities</a></td>
702<th class="colLast" scope="row">
703<div class="block">Represents the set of audio formats that a device is capable of playing.</div>
704</th>
705</tr>
706<tr id="i98" class="altColor">
707<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioCapabilitiesReceiver.html" title="class in com.google.android.exoplayer2.audio">AudioCapabilitiesReceiver</a></td>
708<th class="colLast" scope="row">
709<div class="block">Receives broadcast events indicating changes to the device's audio capabilities, notifying a
710 <a href="com/google/android/exoplayer2/audio/AudioCapabilitiesReceiver.Listener.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioCapabilitiesReceiver.Listener</code></a> when audio capability changes occur.</div>
711</th>
712</tr>
713<tr id="i99" class="rowColor">
714<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioCapabilitiesReceiver.Listener.html" title="interface in com.google.android.exoplayer2.audio">AudioCapabilitiesReceiver.Listener</a></td>
715<th class="colLast" scope="row">
716<div class="block">Listener notified when audio capabilities change.</div>
717</th>
718</tr>
719<tr id="i100" class="altColor">
720<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioProcessor.html" title="interface in com.google.android.exoplayer2.audio">AudioProcessor</a></td>
721<th class="colLast" scope="row">
722<div class="block">Interface for audio processors, which take audio data as input and transform it, potentially
723 modifying its channel count, encoding and/or sample rate.</div>
724</th>
725</tr>
726<tr id="i101" class="rowColor">
727<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioProcessor.AudioFormat.html" title="class in com.google.android.exoplayer2.audio">AudioProcessor.AudioFormat</a></td>
728<th class="colLast" scope="row">
729<div class="block">PCM audio format that may be handled by an audio processor.</div>
730</th>
731</tr>
732<tr id="i102" class="altColor">
733<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioProcessor.UnhandledAudioFormatException.html" title="class in com.google.android.exoplayer2.audio">AudioProcessor.UnhandledAudioFormatException</a></td>
734<th class="colLast" scope="row">
735<div class="block">Exception thrown when a processor can't be configured for a given input audio format.</div>
736</th>
737</tr>
738<tr id="i103" class="rowColor">
739<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioRendererEventListener.html" title="interface in com.google.android.exoplayer2.audio">AudioRendererEventListener</a></td>
740<th class="colLast" scope="row">
741<div class="block">Listener of audio <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> events.</div>
742</th>
743</tr>
744<tr id="i104" class="altColor">
745<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioRendererEventListener.EventDispatcher.html" title="class in com.google.android.exoplayer2.audio">AudioRendererEventListener.EventDispatcher</a></td>
746<th class="colLast" scope="row">
747<div class="block">Dispatches events to an <a href="com/google/android/exoplayer2/audio/AudioRendererEventListener.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioRendererEventListener</code></a>.</div>
748</th>
749</tr>
750<tr id="i105" class="rowColor">
751<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioSink.html" title="interface in com.google.android.exoplayer2.audio">AudioSink</a></td>
752<th class="colLast" scope="row">
753<div class="block">A sink that consumes audio data.</div>
754</th>
755</tr>
756<tr id="i106" class="altColor">
757<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioSink.ConfigurationException.html" title="class in com.google.android.exoplayer2.audio">AudioSink.ConfigurationException</a></td>
758<th class="colLast" scope="row">
759<div class="block">Thrown when a failure occurs configuring the sink.</div>
760</th>
761</tr>
762<tr id="i107" class="rowColor">
763<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioSink.InitializationException.html" title="class in com.google.android.exoplayer2.audio">AudioSink.InitializationException</a></td>
764<th class="colLast" scope="row">
765<div class="block">Thrown when a failure occurs initializing the sink.</div>
766</th>
767</tr>
768<tr id="i108" class="altColor">
769<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioSink.Listener.html" title="interface in com.google.android.exoplayer2.audio">AudioSink.Listener</a></td>
770<th class="colLast" scope="row">
771<div class="block">Listener for audio sink events.</div>
772</th>
773</tr>
774<tr id="i109" class="rowColor">
775<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioSink.SinkFormatSupport.html" title="annotation in com.google.android.exoplayer2.audio">AudioSink.SinkFormatSupport</a></td>
776<th class="colLast" scope="row">
777<div class="block">The level of support the sink provides for a format.</div>
778</th>
779</tr>
780<tr id="i110" class="altColor">
781<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioSink.UnexpectedDiscontinuityException.html" title="class in com.google.android.exoplayer2.audio">AudioSink.UnexpectedDiscontinuityException</a></td>
782<th class="colLast" scope="row">
783<div class="block">Thrown when the sink encounters an unexpected timestamp discontinuity.</div>
784</th>
785</tr>
786<tr id="i111" class="rowColor">
787<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AudioSink.WriteException.html" title="class in com.google.android.exoplayer2.audio">AudioSink.WriteException</a></td>
788<th class="colLast" scope="row">
789<div class="block">Thrown when a failure occurs writing to the sink.</div>
790</th>
791</tr>
792<tr id="i112" class="altColor">
793<td class="colFirst"><a href="com/google/android/exoplayer2/audio/AuxEffectInfo.html" title="class in com.google.android.exoplayer2.audio">AuxEffectInfo</a></td>
794<th class="colLast" scope="row">
795<div class="block">Represents auxiliary effect information, which can be used to attach an auxiliary effect to an
796 underlying <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack</code></a>.</div>
797</th>
798</tr>
799<tr id="i113" class="rowColor">
800<td class="colFirst"><a href="com/google/android/exoplayer2/video/AvcConfig.html" title="class in com.google.android.exoplayer2.video">AvcConfig</a></td>
801<th class="colLast" scope="row">
802<div class="block">AVC configuration data.</div>
803</th>
804</tr>
805<tr id="i114" class="altColor">
806<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/BandwidthMeter.html" title="interface in com.google.android.exoplayer2.upstream">BandwidthMeter</a></td>
807<th class="colLast" scope="row">
808<div class="block">Provides estimates of the currently available bandwidth.</div>
809</th>
810</tr>
811<tr id="i115" class="rowColor">
812<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/BandwidthMeter.EventListener.html" title="interface in com.google.android.exoplayer2.upstream">BandwidthMeter.EventListener</a></td>
813<th class="colLast" scope="row">
814<div class="block">A listener of <a href="com/google/android/exoplayer2/upstream/BandwidthMeter.html" title="interface in com.google.android.exoplayer2.upstream"><code>BandwidthMeter</code></a> events.</div>
815</th>
816</tr>
817<tr id="i116" class="altColor">
818<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/BandwidthMeter.EventListener.EventDispatcher.html" title="class in com.google.android.exoplayer2.upstream">BandwidthMeter.EventListener.EventDispatcher</a></td>
819<th class="colLast" scope="row">
820<div class="block">Event dispatcher which allows listener registration.</div>
821</th>
822</tr>
823<tr id="i117" class="rowColor">
824<td class="colFirst"><a href="com/google/android/exoplayer2/audio/BaseAudioProcessor.html" title="class in com.google.android.exoplayer2.audio">BaseAudioProcessor</a></td>
825<th class="colLast" scope="row">
826<div class="block">Base class for audio processors that keep an output buffer and an internal buffer that is reused
827 whenever input is queued.</div>
828</th>
829</tr>
830<tr id="i118" class="altColor">
831<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/BaseDataSource.html" title="class in com.google.android.exoplayer2.upstream">BaseDataSource</a></td>
832<th class="colLast" scope="row">
833<div class="block">Base <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> implementation to keep a list of <a href="com/google/android/exoplayer2/upstream/TransferListener.html" title="interface in com.google.android.exoplayer2.upstream"><code>TransferListener</code></a>s.</div>
834</th>
835</tr>
836<tr id="i119" class="rowColor">
837<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/BaseMediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk">BaseMediaChunk</a></td>
838<th class="colLast" scope="row">
839<div class="block">A base implementation of <a href="com/google/android/exoplayer2/source/chunk/MediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>MediaChunk</code></a> that outputs to a <a href="com/google/android/exoplayer2/source/chunk/BaseMediaChunkOutput.html" title="class in com.google.android.exoplayer2.source.chunk"><code>BaseMediaChunkOutput</code></a>.</div>
840</th>
841</tr>
842<tr id="i120" class="altColor">
843<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/BaseMediaChunkIterator.html" title="class in com.google.android.exoplayer2.source.chunk">BaseMediaChunkIterator</a></td>
844<th class="colLast" scope="row">
845<div class="block">Base class for <a href="com/google/android/exoplayer2/source/chunk/MediaChunkIterator.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>MediaChunkIterator</code></a>s.</div>
846</th>
847</tr>
848<tr id="i121" class="rowColor">
849<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/BaseMediaChunkOutput.html" title="class in com.google.android.exoplayer2.source.chunk">BaseMediaChunkOutput</a></td>
850<th class="colLast" scope="row">
851<div class="block">A <a href="com/google/android/exoplayer2/source/chunk/ChunkExtractor.TrackOutputProvider.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkExtractor.TrackOutputProvider</code></a> that provides <a href="com/google/android/exoplayer2/extractor/TrackOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>TrackOutputs</code></a> based on a
852 predefined mapping from track type to output.</div>
853</th>
854</tr>
855<tr id="i122" class="altColor">
856<td class="colFirst"><a href="com/google/android/exoplayer2/source/BaseMediaSource.html" title="class in com.google.android.exoplayer2.source">BaseMediaSource</a></td>
857<th class="colLast" scope="row">
858<div class="block">Base <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> implementation to handle parallel reuse and to keep a list of <a href="com/google/android/exoplayer2/source/MediaSourceEventListener.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSourceEventListener</code></a>s.</div>
859</th>
860</tr>
861<tr id="i123" class="rowColor">
862<td class="colFirst"><a href="com/google/android/exoplayer2/BasePlayer.html" title="class in com.google.android.exoplayer2">BasePlayer</a></td>
863<th class="colLast" scope="row">
864<div class="block">Abstract base <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> which implements common implementation independent methods.</div>
865</th>
866</tr>
867<tr id="i124" class="altColor">
868<td class="colFirst"><a href="com/google/android/exoplayer2/BaseRenderer.html" title="class in com.google.android.exoplayer2">BaseRenderer</a></td>
869<th class="colLast" scope="row">
870<div class="block">An abstract base class suitable for most <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> implementations.</div>
871</th>
872</tr>
873<tr id="i125" class="rowColor">
874<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/BaseTrackSelection.html" title="class in com.google.android.exoplayer2.trackselection">BaseTrackSelection</a></td>
875<th class="colLast" scope="row">
876<div class="block">An abstract base class suitable for most <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>ExoTrackSelection</code></a> implementations.</div>
877</th>
878</tr>
879<tr id="i126" class="altColor">
880<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/BaseUrl.html" title="class in com.google.android.exoplayer2.source.dash.manifest">BaseUrl</a></td>
881<th class="colLast" scope="row">
882<div class="block">A base URL, as defined by ISO 23009-1, 2nd edition, 5.6.</div>
883</th>
884</tr>
885<tr id="i127" class="rowColor">
886<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/BaseUrlExclusionList.html" title="class in com.google.android.exoplayer2.source.dash">BaseUrlExclusionList</a></td>
887<th class="colLast" scope="row">
888<div class="block">Holds the state of <a href="com/google/android/exoplayer2/source/dash/BaseUrlExclusionList.html#exclude(com.google.android.exoplayer2.source.dash.manifest.BaseUrl,long)"><code>excluded</code></a> base URLs to be used to <a href="com/google/android/exoplayer2/source/dash/BaseUrlExclusionList.html#selectBaseUrl(java.util.List)"><code>select</code></a> a base URL based on these exclusions.</div>
889</th>
890</tr>
891<tr id="i128" class="altColor">
892<td class="colFirst"><a href="com/google/android/exoplayer2/source/BehindLiveWindowException.html" title="class in com.google.android.exoplayer2.source">BehindLiveWindowException</a></td>
893<th class="colLast" scope="row">
894<div class="block">Thrown when a live playback falls behind the available media window.</div>
895</th>
896</tr>
897<tr id="i129" class="rowColor">
898<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/BinaryFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">BinaryFrame</a></td>
899<th class="colLast" scope="row">
900<div class="block">Binary ID3 frame.</div>
901</th>
902</tr>
903<tr id="i130" class="altColor">
904<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.html" title="class in com.google.android.exoplayer2.extractor">BinarySearchSeeker</a></td>
905<th class="colLast" scope="row">
906<div class="block">A seeker that supports seeking within a stream by searching for the target frame using binary
907 search.</div>
908</th>
909</tr>
910<tr id="i131" class="rowColor">
911<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.BinarySearchSeekMap.html" title="class in com.google.android.exoplayer2.extractor">BinarySearchSeeker.BinarySearchSeekMap</a></td>
912<th class="colLast" scope="row">
913<div class="block">A <a href="com/google/android/exoplayer2/extractor/SeekMap.html" title="interface in com.google.android.exoplayer2.extractor"><code>SeekMap</code></a> implementation that returns the estimated byte location from <a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.SeekOperationParams.html#calculateNextSearchBytePosition(long,long,long,long,long,long)"><code>BinarySearchSeeker.SeekOperationParams.calculateNextSearchBytePosition(long, long, long, long, long, long)</code></a> for
914 each <a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.BinarySearchSeekMap.html#getSeekPoints(long)"><code>BinarySearchSeeker.BinarySearchSeekMap.getSeekPoints(long)</code></a> query.</div>
915</th>
916</tr>
917<tr id="i132" class="altColor">
918<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.DefaultSeekTimestampConverter.html" title="class in com.google.android.exoplayer2.extractor">BinarySearchSeeker.DefaultSeekTimestampConverter</a></td>
919<th class="colLast" scope="row">
920<div class="block">A <a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.SeekTimestampConverter.html" title="interface in com.google.android.exoplayer2.extractor"><code>BinarySearchSeeker.SeekTimestampConverter</code></a> implementation that returns the seek time itself as the
921 timestamp for a seek time position.</div>
922</th>
923</tr>
924<tr id="i133" class="rowColor">
925<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.SeekOperationParams.html" title="class in com.google.android.exoplayer2.extractor">BinarySearchSeeker.SeekOperationParams</a></td>
926<th class="colLast" scope="row">
927<div class="block">Contains parameters for a pending seek operation by <a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.html" title="class in com.google.android.exoplayer2.extractor"><code>BinarySearchSeeker</code></a>.</div>
928</th>
929</tr>
930<tr id="i134" class="altColor">
931<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.SeekTimestampConverter.html" title="interface in com.google.android.exoplayer2.extractor">BinarySearchSeeker.SeekTimestampConverter</a></td>
932<th class="colLast" scope="row">
933<div class="block">A converter that converts seek time in stream time into target timestamp for the <a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.html" title="class in com.google.android.exoplayer2.extractor"><code>BinarySearchSeeker</code></a>.</div>
934</th>
935</tr>
936<tr id="i135" class="rowColor">
937<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.TimestampSearchResult.html" title="class in com.google.android.exoplayer2.extractor">BinarySearchSeeker.TimestampSearchResult</a></td>
938<th class="colLast" scope="row">
939<div class="block">Represents possible search results for <a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.TimestampSeeker.html#searchForTimestamp(com.google.android.exoplayer2.extractor.ExtractorInput,long)"><code>BinarySearchSeeker.TimestampSeeker.searchForTimestamp(ExtractorInput, long)</code></a>.</div>
940</th>
941</tr>
942<tr id="i136" class="altColor">
943<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/BinarySearchSeeker.TimestampSeeker.html" title="interface in com.google.android.exoplayer2.extractor">BinarySearchSeeker.TimestampSeeker</a></td>
944<th class="colLast" scope="row">
945<div class="block">A seeker that looks for a given timestamp from an input.</div>
946</th>
947</tr>
948<tr id="i137" class="rowColor">
949<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/Buffer.html" title="class in com.google.android.exoplayer2.decoder">Buffer</a></td>
950<th class="colLast" scope="row">
951<div class="block">Base class for buffers with flags.</div>
952</th>
953</tr>
954<tr id="i138" class="altColor">
955<td class="colFirst"><a href="com/google/android/exoplayer2/Bundleable.html" title="interface in com.google.android.exoplayer2">Bundleable</a></td>
956<th class="colLast" scope="row">
957<div class="block">Interface for classes whose instance can be stored in a <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink"><code>Bundle</code></a> by <a href="com/google/android/exoplayer2/Bundleable.html#toBundle()" target="_top"><code>Bundleable.toBundle()</code></a> and
958 can be restored from the <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundle</code></a> by using the static <code>CREATOR</code> field that implements
959 <a href="com/google/android/exoplayer2/Bundleable.Creator.html" title="interface in com.google.android.exoplayer2"><code>Bundleable.Creator</code></a>.</div>
960</th>
961</tr>
962<tr id="i139" class="rowColor">
963<td class="colFirst"><a href="com/google/android/exoplayer2/Bundleable.Creator.html" title="interface in com.google.android.exoplayer2">Bundleable.Creator</a>&lt;<a href="com/google/android/exoplayer2/Bundleable.Creator.html" title="type parameter in Bundleable.Creator">T</a> extends <a href="com/google/android/exoplayer2/Bundleable.html" title="interface in com.google.android.exoplayer2">Bundleable</a>&gt;</td>
964<th class="colLast" scope="row">
965<div class="block">Interface for the static <code>CREATOR</code> field of <a href="com/google/android/exoplayer2/Bundleable.html" title="interface in com.google.android.exoplayer2"><code>Bundleable</code></a> classes.</div>
966</th>
967</tr>
968<tr id="i140" class="altColor">
969<td class="colFirst"><a href="com/google/android/exoplayer2/util/BundleableUtil.html" title="class in com.google.android.exoplayer2.util">BundleableUtil</a></td>
970<th class="colLast" scope="row">
971<div class="block">Utilities for <a href="com/google/android/exoplayer2/Bundleable.html" title="interface in com.google.android.exoplayer2"><code>Bundleable</code></a>.</div>
972</th>
973</tr>
974<tr id="i141" class="rowColor">
975<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/BundledChunkExtractor.html" title="class in com.google.android.exoplayer2.source.chunk">BundledChunkExtractor</a></td>
976<th class="colLast" scope="row">
977<div class="block"><a href="com/google/android/exoplayer2/source/chunk/ChunkExtractor.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkExtractor</code></a> implementation that uses ExoPlayer app-bundled <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractors</code></a>.</div>
978</th>
979</tr>
980<tr id="i142" class="altColor">
981<td class="colFirst"><a href="com/google/android/exoplayer2/source/BundledExtractorsAdapter.html" title="class in com.google.android.exoplayer2.source">BundledExtractorsAdapter</a></td>
982<th class="colLast" scope="row">
983<div class="block"><a href="com/google/android/exoplayer2/source/ProgressiveMediaExtractor.html" title="interface in com.google.android.exoplayer2.source"><code>ProgressiveMediaExtractor</code></a> built on top of <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a> instances, whose
984 implementation classes are bundled in the app.</div>
985</th>
986</tr>
987<tr id="i143" class="rowColor">
988<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/BundledHlsMediaChunkExtractor.html" title="class in com.google.android.exoplayer2.source.hls">BundledHlsMediaChunkExtractor</a></td>
989<th class="colLast" scope="row">
990<div class="block"><a href="com/google/android/exoplayer2/source/hls/HlsMediaChunkExtractor.html" title="interface in com.google.android.exoplayer2.source.hls"><code>HlsMediaChunkExtractor</code></a> implementation that uses ExoPlayer app-bundled <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractors</code></a>.</div>
991</th>
992</tr>
993<tr id="i144" class="altColor">
994<td class="colFirst"><a href="com/google/android/exoplayer2/BundleListRetriever.html" title="class in com.google.android.exoplayer2">BundleListRetriever</a></td>
995<th class="colLast" scope="row">
996<div class="block">A <a href="https://developer.android.com/reference/android/os/Binder.html" title="class or interface in android.os" class="externalLink"><code>Binder</code></a> to transfer a list of <a href="https://developer.android.com/reference/android/os/Bundle.html?is-external=true" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundles</code></a> across processes by splitting the
997 list into multiple transactions.</div>
998</th>
999</tr>
1000<tr id="i145" class="rowColor">
1001<td class="colFirst"><a href="com/google/android/exoplayer2/util/BundleUtil.html" title="class in com.google.android.exoplayer2.util">BundleUtil</a></td>
1002<th class="colLast" scope="row">
1003<div class="block">Utilities for <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundle</code></a>.</div>
1004</th>
1005</tr>
1006<tr id="i146" class="altColor">
1007<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ByteArrayDataSink.html" title="class in com.google.android.exoplayer2.upstream">ByteArrayDataSink</a></td>
1008<th class="colLast" scope="row">
1009<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSink.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSink</code></a> for writing to a byte array.</div>
1010</th>
1011</tr>
1012<tr id="i147" class="rowColor">
1013<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ByteArrayDataSource.html" title="class in com.google.android.exoplayer2.upstream">ByteArrayDataSource</a></td>
1014<th class="colLast" scope="row">
1015<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> for reading from a byte array.</div>
1016</th>
1017</tr>
1018<tr id="i148" class="altColor">
1019<td class="colFirst"><a href="com/google/android/exoplayer2/C.html" title="class in com.google.android.exoplayer2">C</a></td>
1020<th class="colLast" scope="row">
1021<div class="block">Defines constants used by the library.</div>
1022</th>
1023</tr>
1024<tr id="i149" class="rowColor">
1025<td class="colFirst"><a href="com/google/android/exoplayer2/C.AudioAllowedCapturePolicy.html" title="annotation in com.google.android.exoplayer2">C.AudioAllowedCapturePolicy</a></td>
1026<th class="colLast" scope="row">
1027<div class="block">Capture policies for audio attributes.</div>
1028</th>
1029</tr>
1030<tr id="i150" class="altColor">
1031<td class="colFirst"><a href="com/google/android/exoplayer2/C.AudioContentType.html" title="annotation in com.google.android.exoplayer2">C.AudioContentType</a></td>
1032<th class="colLast" scope="row">
1033<div class="block">Content types for audio attributes.</div>
1034</th>
1035</tr>
1036<tr id="i151" class="rowColor">
1037<td class="colFirst"><a href="com/google/android/exoplayer2/C.AudioFlags.html" title="annotation in com.google.android.exoplayer2">C.AudioFlags</a></td>
1038<th class="colLast" scope="row">
1039<div class="block">Flags for audio attributes.</div>
1040</th>
1041</tr>
1042<tr id="i152" class="altColor">
1043<td class="colFirst"><a href="com/google/android/exoplayer2/C.AudioUsage.html" title="annotation in com.google.android.exoplayer2">C.AudioUsage</a></td>
1044<th class="colLast" scope="row">
1045<div class="block">Usage types for audio attributes.</div>
1046</th>
1047</tr>
1048<tr id="i153" class="rowColor">
1049<td class="colFirst"><a href="com/google/android/exoplayer2/C.BufferFlags.html" title="annotation in com.google.android.exoplayer2">C.BufferFlags</a></td>
1050<th class="colLast" scope="row">
1051<div class="block">Flags which can apply to a buffer containing a media sample.</div>
1052</th>
1053</tr>
1054<tr id="i154" class="altColor">
1055<td class="colFirst"><a href="com/google/android/exoplayer2/C.ColorRange.html" title="annotation in com.google.android.exoplayer2">C.ColorRange</a></td>
1056<th class="colLast" scope="row">
1057<div class="block">Video color range.</div>
1058</th>
1059</tr>
1060<tr id="i155" class="rowColor">
1061<td class="colFirst"><a href="com/google/android/exoplayer2/C.ColorSpace.html" title="annotation in com.google.android.exoplayer2">C.ColorSpace</a></td>
1062<th class="colLast" scope="row">
1063<div class="block">Video colorspaces.</div>
1064</th>
1065</tr>
1066<tr id="i156" class="altColor">
1067<td class="colFirst"><a href="com/google/android/exoplayer2/C.ColorTransfer.html" title="annotation in com.google.android.exoplayer2">C.ColorTransfer</a></td>
1068<th class="colLast" scope="row">
1069<div class="block">Video color transfer characteristics.</div>
1070</th>
1071</tr>
1072<tr id="i157" class="rowColor">
1073<td class="colFirst"><a href="com/google/android/exoplayer2/C.ContentType.html" title="annotation in com.google.android.exoplayer2">C.ContentType</a></td>
1074<th class="colLast" scope="row">
1075<div class="block">Represents a streaming or other media type.</div>
1076</th>
1077</tr>
1078<tr id="i158" class="altColor">
1079<td class="colFirst"><a href="com/google/android/exoplayer2/C.CryptoMode.html" title="annotation in com.google.android.exoplayer2">C.CryptoMode</a></td>
1080<th class="colLast" scope="row">
1081<div class="block">Crypto modes for a codec.</div>
1082</th>
1083</tr>
1084<tr id="i159" class="rowColor">
1085<td class="colFirst"><a href="com/google/android/exoplayer2/C.CryptoType.html" title="annotation in com.google.android.exoplayer2">C.CryptoType</a></td>
1086<th class="colLast" scope="row">
1087<div class="block">Types of crypto implementation.</div>
1088</th>
1089</tr>
1090<tr id="i160" class="altColor">
1091<td class="colFirst"><a href="com/google/android/exoplayer2/C.DataType.html" title="annotation in com.google.android.exoplayer2">C.DataType</a></td>
1092<th class="colLast" scope="row">
1093<div class="block">Represents a type of data.</div>
1094</th>
1095</tr>
1096<tr id="i161" class="rowColor">
1097<td class="colFirst"><a href="com/google/android/exoplayer2/C.Encoding.html" title="annotation in com.google.android.exoplayer2">C.Encoding</a></td>
1098<th class="colLast" scope="row">
1099<div class="block">Represents an audio encoding, or an invalid or unset value.</div>
1100</th>
1101</tr>
1102<tr id="i162" class="altColor">
1103<td class="colFirst"><a href="com/google/android/exoplayer2/C.FormatSupport.html" title="annotation in com.google.android.exoplayer2">C.FormatSupport</a></td>
1104<th class="colLast" scope="row">
1105<div class="block">Level of renderer support for a format.</div>
1106</th>
1107</tr>
1108<tr id="i163" class="rowColor">
1109<td class="colFirst"><a href="com/google/android/exoplayer2/C.NetworkType.html" title="annotation in com.google.android.exoplayer2">C.NetworkType</a></td>
1110<th class="colLast" scope="row">
1111<div class="block">Network connection type.</div>
1112</th>
1113</tr>
1114<tr id="i164" class="altColor">
1115<td class="colFirst"><a href="com/google/android/exoplayer2/C.PcmEncoding.html" title="annotation in com.google.android.exoplayer2">C.PcmEncoding</a></td>
1116<th class="colLast" scope="row">
1117<div class="block">Represents a PCM audio encoding, or an invalid or unset value.</div>
1118</th>
1119</tr>
1120<tr id="i165" class="rowColor">
1121<td class="colFirst"><a href="com/google/android/exoplayer2/C.Projection.html" title="annotation in com.google.android.exoplayer2">C.Projection</a></td>
1122<th class="colLast" scope="row">
1123<div class="block">Video projection types.</div>
1124</th>
1125</tr>
1126<tr id="i166" class="altColor">
1127<td class="colFirst"><a href="com/google/android/exoplayer2/C.RoleFlags.html" title="annotation in com.google.android.exoplayer2">C.RoleFlags</a></td>
1128<th class="colLast" scope="row">
1129<div class="block">Track role flags.</div>
1130</th>
1131</tr>
1132<tr id="i167" class="rowColor">
1133<td class="colFirst"><a href="com/google/android/exoplayer2/C.SelectionFlags.html" title="annotation in com.google.android.exoplayer2">C.SelectionFlags</a></td>
1134<th class="colLast" scope="row">
1135<div class="block">Track selection flags.</div>
1136</th>
1137</tr>
1138<tr id="i168" class="altColor">
1139<td class="colFirst"><a href="com/google/android/exoplayer2/C.SelectionReason.html" title="annotation in com.google.android.exoplayer2">C.SelectionReason</a></td>
1140<th class="colLast" scope="row">
1141<div class="block">Represents a reason for selection.</div>
1142</th>
1143</tr>
1144<tr id="i169" class="rowColor">
1145<td class="colFirst"><a href="com/google/android/exoplayer2/C.SpatializationBehavior.html" title="annotation in com.google.android.exoplayer2">C.SpatializationBehavior</a></td>
1146<th class="colLast" scope="row">
1147<div class="block">Represents the behavior affecting whether spatialization will be used.</div>
1148</th>
1149</tr>
1150<tr id="i170" class="altColor">
1151<td class="colFirst"><a href="com/google/android/exoplayer2/C.StereoMode.html" title="annotation in com.google.android.exoplayer2">C.StereoMode</a></td>
1152<th class="colLast" scope="row">
1153<div class="block">The stereo mode for 360/3D/VR videos.</div>
1154</th>
1155</tr>
1156<tr id="i171" class="rowColor">
1157<td class="colFirst"><a href="com/google/android/exoplayer2/C.StreamType.html" title="annotation in com.google.android.exoplayer2">C.StreamType</a></td>
1158<th class="colLast" scope="row">
1159<div class="block">Stream types for an <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack</code></a>.</div>
1160</th>
1161</tr>
1162<tr id="i172" class="altColor">
1163<td class="colFirst"><a href="com/google/android/exoplayer2/C.TrackType.html" title="annotation in com.google.android.exoplayer2">C.TrackType</a></td>
1164<th class="colLast" scope="row">
1165<div class="block">Represents a type of media track.</div>
1166</th>
1167</tr>
1168<tr id="i173" class="rowColor">
1169<td class="colFirst"><a href="com/google/android/exoplayer2/C.VideoChangeFrameRateStrategy.html" title="annotation in com.google.android.exoplayer2">C.VideoChangeFrameRateStrategy</a></td>
1170<th class="colLast" scope="row">
1171<div class="block">Strategies for calling <a href="https://developer.android.com/reference/android/view/Surface.html#setFrameRate(float,int,int)" title="class or interface in android.view" class="externalLink" target="_top"><code>Surface.setFrameRate(float, int, int)</code></a>.</div>
1172</th>
1173</tr>
1174<tr id="i174" class="altColor">
1175<td class="colFirst"><a href="com/google/android/exoplayer2/C.VideoOutputMode.html" title="annotation in com.google.android.exoplayer2">C.VideoOutputMode</a></td>
1176<th class="colLast" scope="row">
1177<div class="block">Video decoder output modes.</div>
1178</th>
1179</tr>
1180<tr id="i175" class="rowColor">
1181<td class="colFirst"><a href="com/google/android/exoplayer2/C.VideoScalingMode.html" title="annotation in com.google.android.exoplayer2">C.VideoScalingMode</a></td>
1182<th class="colLast" scope="row">
1183<div class="block">Video scaling modes for <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a>-based renderers.</div>
1184</th>
1185</tr>
1186<tr id="i176" class="altColor">
1187<td class="colFirst"><a href="com/google/android/exoplayer2/C.WakeMode.html" title="annotation in com.google.android.exoplayer2">C.WakeMode</a></td>
1188<th class="colLast" scope="row">
1189<div class="block">Mode specifying whether the player should hold a WakeLock and a WifiLock.</div>
1190</th>
1191</tr>
1192<tr id="i177" class="rowColor">
1193<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/Cache.html" title="interface in com.google.android.exoplayer2.upstream.cache">Cache</a></td>
1194<th class="colLast" scope="row">
1195<div class="block">A cache that supports partial caching of resources.</div>
1196</th>
1197</tr>
1198<tr id="i178" class="altColor">
1199<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/Cache.CacheException.html" title="class in com.google.android.exoplayer2.upstream.cache">Cache.CacheException</a></td>
1200<th class="colLast" scope="row">
1201<div class="block">Thrown when an error is encountered when writing data.</div>
1202</th>
1203</tr>
1204<tr id="i179" class="rowColor">
1205<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/Cache.Listener.html" title="interface in com.google.android.exoplayer2.upstream.cache">Cache.Listener</a></td>
1206<th class="colLast" scope="row">
1207<div class="block">Listener of <a href="com/google/android/exoplayer2/upstream/cache/Cache.html" title="interface in com.google.android.exoplayer2.upstream.cache"><code>Cache</code></a> events.</div>
1208</th>
1209</tr>
1210<tr id="i180" class="altColor">
1211<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/CacheAsserts.html" title="class in com.google.android.exoplayer2.testutil">CacheAsserts</a></td>
1212<th class="colLast" scope="row">
1213<div class="block">Assertion methods for <a href="com/google/android/exoplayer2/upstream/cache/Cache.html" title="interface in com.google.android.exoplayer2.upstream.cache"><code>Cache</code></a>.</div>
1214</th>
1215</tr>
1216<tr id="i181" class="rowColor">
1217<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/CacheAsserts.RequestSet.html" title="class in com.google.android.exoplayer2.testutil">CacheAsserts.RequestSet</a></td>
1218<th class="colLast" scope="row">
1219<div class="block">Defines a set of data requests.</div>
1220</th>
1221</tr>
1222<tr id="i182" class="altColor">
1223<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSink.html" title="class in com.google.android.exoplayer2.upstream.cache">CacheDataSink</a></td>
1224<th class="colLast" scope="row">
1225<div class="block">Writes data into a cache.</div>
1226</th>
1227</tr>
1228<tr id="i183" class="rowColor">
1229<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSink.CacheDataSinkException.html" title="class in com.google.android.exoplayer2.upstream.cache">CacheDataSink.CacheDataSinkException</a></td>
1230<th class="colLast" scope="row">
1231<div class="block">Thrown when an <a href="https://developer.android.com/reference/java/io/IOException.html" title="class or interface in java.io" class="externalLink" target="_top"><code>IOException</code></a> is encountered when writing data to the sink.</div>
1232</th>
1233</tr>
1234<tr id="i184" class="altColor">
1235<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSink.Factory.html" title="class in com.google.android.exoplayer2.upstream.cache">CacheDataSink.Factory</a></td>
1236<th class="colLast" scope="row">
1237<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSink.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSink.Factory</code></a> for <a href="com/google/android/exoplayer2/upstream/cache/CacheDataSink.html" title="class in com.google.android.exoplayer2.upstream.cache"><code>CacheDataSink</code></a> instances.</div>
1238</th>
1239</tr>
1240<tr id="i185" class="rowColor">
1241<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSource.html" title="class in com.google.android.exoplayer2.upstream.cache">CacheDataSource</a></td>
1242<th class="colLast" scope="row">
1243<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> that reads and writes a <a href="com/google/android/exoplayer2/upstream/cache/Cache.html" title="interface in com.google.android.exoplayer2.upstream.cache"><code>Cache</code></a>.</div>
1244</th>
1245</tr>
1246<tr id="i186" class="altColor">
1247<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSource.CacheIgnoredReason.html" title="annotation in com.google.android.exoplayer2.upstream.cache">CacheDataSource.CacheIgnoredReason</a></td>
1248<th class="colLast" scope="row">
1249<div class="block">Reasons the cache may be ignored.</div>
1250</th>
1251</tr>
1252<tr id="i187" class="rowColor">
1253<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSource.EventListener.html" title="interface in com.google.android.exoplayer2.upstream.cache">CacheDataSource.EventListener</a></td>
1254<th class="colLast" scope="row">
1255<div class="block">Listener of <a href="com/google/android/exoplayer2/upstream/cache/CacheDataSource.html" title="class in com.google.android.exoplayer2.upstream.cache"><code>CacheDataSource</code></a> events.</div>
1256</th>
1257</tr>
1258<tr id="i188" class="altColor">
1259<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream.cache">CacheDataSource.Factory</a></td>
1260<th class="colLast" scope="row">
1261<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/upstream/cache/CacheDataSource.html" title="class in com.google.android.exoplayer2.upstream.cache"><code>CacheDataSource</code></a> instances.</div>
1262</th>
1263</tr>
1264<tr id="i189" class="rowColor">
1265<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheDataSource.Flags.html" title="annotation in com.google.android.exoplayer2.upstream.cache">CacheDataSource.Flags</a></td>
1266<th class="colLast" scope="row">
1267<div class="block">Flags controlling the CacheDataSource's behavior.</div>
1268</th>
1269</tr>
1270<tr id="i190" class="altColor">
1271<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/CachedRegionTracker.html" title="class in com.google.android.exoplayer2.upstream">CachedRegionTracker</a></td>
1272<th class="colLast" scope="row">
1273<div class="block">Utility class for efficiently tracking regions of data that are stored in a <a href="com/google/android/exoplayer2/upstream/cache/Cache.html" title="interface in com.google.android.exoplayer2.upstream.cache"><code>Cache</code></a> for a
1274 given cache key.</div>
1275</th>
1276</tr>
1277<tr id="i191" class="rowColor">
1278<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheEvictor.html" title="interface in com.google.android.exoplayer2.upstream.cache">CacheEvictor</a></td>
1279<th class="colLast" scope="row">
1280<div class="block">Evicts data from a <a href="com/google/android/exoplayer2/upstream/cache/Cache.html" title="interface in com.google.android.exoplayer2.upstream.cache"><code>Cache</code></a>.</div>
1281</th>
1282</tr>
1283<tr id="i192" class="altColor">
1284<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheKeyFactory.html" title="interface in com.google.android.exoplayer2.upstream.cache">CacheKeyFactory</a></td>
1285<th class="colLast" scope="row">
1286<div class="block">Factory for cache keys.</div>
1287</th>
1288</tr>
1289<tr id="i193" class="rowColor">
1290<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheSpan.html" title="class in com.google.android.exoplayer2.upstream.cache">CacheSpan</a></td>
1291<th class="colLast" scope="row">
1292<div class="block">Defines a span of data that may or may not be cached (as indicated by <a href="com/google/android/exoplayer2/upstream/cache/CacheSpan.html#isCached"><code>CacheSpan.isCached</code></a>).</div>
1293</th>
1294</tr>
1295<tr id="i194" class="altColor">
1296<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheWriter.html" title="class in com.google.android.exoplayer2.upstream.cache">CacheWriter</a></td>
1297<th class="colLast" scope="row">
1298<div class="block">Caching related utility methods.</div>
1299</th>
1300</tr>
1301<tr id="i195" class="rowColor">
1302<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/CacheWriter.ProgressListener.html" title="interface in com.google.android.exoplayer2.upstream.cache">CacheWriter.ProgressListener</a></td>
1303<th class="colLast" scope="row">
1304<div class="block">Receives progress updates during cache operations.</div>
1305</th>
1306</tr>
1307<tr id="i196" class="altColor">
1308<td class="colFirst"><a href="com/google/android/exoplayer2/video/spherical/CameraMotionListener.html" title="interface in com.google.android.exoplayer2.video.spherical">CameraMotionListener</a></td>
1309<th class="colLast" scope="row">
1310<div class="block">Listens camera motion.</div>
1311</th>
1312</tr>
1313<tr id="i197" class="rowColor">
1314<td class="colFirst"><a href="com/google/android/exoplayer2/video/spherical/CameraMotionRenderer.html" title="class in com.google.android.exoplayer2.video.spherical">CameraMotionRenderer</a></td>
1315<th class="colLast" scope="row">
1316<div class="block">A <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> that parses the camera motion track.</div>
1317</th>
1318</tr>
1319<tr id="i198" class="altColor">
1320<td class="colFirst"><a href="com/google/android/exoplayer2/ui/CaptionStyleCompat.html" title="class in com.google.android.exoplayer2.ui">CaptionStyleCompat</a></td>
1321<th class="colLast" scope="row">
1322<div class="block">A compatibility wrapper for <a href="https://developer.android.com/reference/android/view/accessibility/CaptioningManager.CaptionStyle.html" title="class or interface in android.view.accessibility" class="externalLink" target="_top"><code>CaptioningManager.CaptionStyle</code></a>.</div>
1323</th>
1324</tr>
1325<tr id="i199" class="rowColor">
1326<td class="colFirst"><a href="com/google/android/exoplayer2/ui/CaptionStyleCompat.EdgeType.html" title="annotation in com.google.android.exoplayer2.ui">CaptionStyleCompat.EdgeType</a></td>
1327<th class="colLast" scope="row">
1328<div class="block">The type of edge, which may be none.</div>
1329</th>
1330</tr>
1331<tr id="i200" class="altColor">
1332<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/CapturingAudioSink.html" title="class in com.google.android.exoplayer2.testutil">CapturingAudioSink</a></td>
1333<th class="colLast" scope="row">
1334<div class="block">A <a href="com/google/android/exoplayer2/audio/ForwardingAudioSink.html" title="class in com.google.android.exoplayer2.audio"><code>ForwardingAudioSink</code></a> that captures configuration, discontinuity and buffer events.</div>
1335</th>
1336</tr>
1337<tr id="i201" class="rowColor">
1338<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/CapturingRenderersFactory.html" title="class in com.google.android.exoplayer2.testutil">CapturingRenderersFactory</a></td>
1339<th class="colLast" scope="row">
1340<div class="block">A <a href="com/google/android/exoplayer2/RenderersFactory.html" title="interface in com.google.android.exoplayer2"><code>RenderersFactory</code></a> that captures interactions with the audio and video <a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.html" title="interface in com.google.android.exoplayer2.mediacodec"><code>MediaCodecAdapter</code></a> instances.</div>
1341</th>
1342</tr>
1343<tr id="i202" class="altColor">
1344<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cast/CastPlayer.html" title="class in com.google.android.exoplayer2.ext.cast">CastPlayer</a></td>
1345<th class="colLast" scope="row">
1346<div class="block"><a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> implementation that communicates with a Cast receiver app.</div>
1347</th>
1348</tr>
1349<tr id="i203" class="rowColor">
1350<td class="colFirst"><a href="com/google/android/exoplayer2/text/cea/Cea608Decoder.html" title="class in com.google.android.exoplayer2.text.cea">Cea608Decoder</a></td>
1351<th class="colLast" scope="row">
1352<div class="block">A <a href="com/google/android/exoplayer2/text/SubtitleDecoder.html" title="interface in com.google.android.exoplayer2.text"><code>SubtitleDecoder</code></a> for CEA-608 (also known as "line 21 captions" and "EIA-608").</div>
1353</th>
1354</tr>
1355<tr id="i204" class="altColor">
1356<td class="colFirst"><a href="com/google/android/exoplayer2/text/cea/Cea708Decoder.html" title="class in com.google.android.exoplayer2.text.cea">Cea708Decoder</a></td>
1357<th class="colLast" scope="row">
1358<div class="block">A <a href="com/google/android/exoplayer2/text/SubtitleDecoder.html" title="interface in com.google.android.exoplayer2.text"><code>SubtitleDecoder</code></a> for CEA-708 (also known as "EIA-708").</div>
1359</th>
1360</tr>
1361<tr id="i205" class="rowColor">
1362<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/CeaUtil.html" title="class in com.google.android.exoplayer2.extractor">CeaUtil</a></td>
1363<th class="colLast" scope="row">
1364<div class="block">Utility methods for handling CEA-608/708 messages.</div>
1365</th>
1366</tr>
1367<tr id="i206" class="altColor">
1368<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/ChapterFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">ChapterFrame</a></td>
1369<th class="colLast" scope="row">
1370<div class="block">Chapter information ID3 frame.</div>
1371</th>
1372</tr>
1373<tr id="i207" class="rowColor">
1374<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/ChapterTocFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">ChapterTocFrame</a></td>
1375<th class="colLast" scope="row">
1376<div class="block">Chapter table of contents ID3 frame.</div>
1377</th>
1378</tr>
1379<tr id="i208" class="altColor">
1380<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/Chunk.html" title="class in com.google.android.exoplayer2.source.chunk">Chunk</a></td>
1381<th class="colLast" scope="row">
1382<div class="block">An abstract base class for <a href="com/google/android/exoplayer2/upstream/Loader.Loadable.html" title="interface in com.google.android.exoplayer2.upstream"><code>Loader.Loadable</code></a> implementations that load chunks of data required for
1383 the playback of streams.</div>
1384</th>
1385</tr>
1386<tr id="i209" class="rowColor">
1387<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ChunkExtractor.html" title="interface in com.google.android.exoplayer2.source.chunk">ChunkExtractor</a></td>
1388<th class="colLast" scope="row">
1389<div class="block">Extracts samples and track <a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2"><code>Formats</code></a> from chunks.</div>
1390</th>
1391</tr>
1392<tr id="i210" class="altColor">
1393<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ChunkExtractor.Factory.html" title="interface in com.google.android.exoplayer2.source.chunk">ChunkExtractor.Factory</a></td>
1394<th class="colLast" scope="row">
1395<div class="block">Creates <a href="com/google/android/exoplayer2/source/chunk/ChunkExtractor.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkExtractor</code></a> instances.</div>
1396</th>
1397</tr>
1398<tr id="i211" class="rowColor">
1399<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ChunkExtractor.TrackOutputProvider.html" title="interface in com.google.android.exoplayer2.source.chunk">ChunkExtractor.TrackOutputProvider</a></td>
1400<th class="colLast" scope="row">
1401<div class="block">Provides <a href="com/google/android/exoplayer2/extractor/TrackOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>TrackOutput</code></a> instances to be written to during extraction.</div>
1402</th>
1403</tr>
1404<tr id="i212" class="altColor">
1405<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ChunkHolder.html" title="class in com.google.android.exoplayer2.source.chunk">ChunkHolder</a></td>
1406<th class="colLast" scope="row">
1407<div class="block">Holds a chunk or an indication that the end of the stream has been reached.</div>
1408</th>
1409</tr>
1410<tr id="i213" class="rowColor">
1411<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ChunkIndex.html" title="class in com.google.android.exoplayer2.extractor">ChunkIndex</a></td>
1412<th class="colLast" scope="row">
1413<div class="block">Defines chunks of samples within a media stream.</div>
1414</th>
1415</tr>
1416<tr id="i214" class="altColor">
1417<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ChunkSampleStream.html" title="class in com.google.android.exoplayer2.source.chunk">ChunkSampleStream</a>&lt;<a href="com/google/android/exoplayer2/source/chunk/ChunkSampleStream.html" title="type parameter in ChunkSampleStream">T</a> extends <a href="com/google/android/exoplayer2/source/chunk/ChunkSource.html" title="interface in com.google.android.exoplayer2.source.chunk">ChunkSource</a>&gt;</td>
1418<th class="colLast" scope="row">
1419<div class="block">A <a href="com/google/android/exoplayer2/source/SampleStream.html" title="interface in com.google.android.exoplayer2.source"><code>SampleStream</code></a> that loads media in <a href="com/google/android/exoplayer2/source/chunk/Chunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>Chunk</code></a>s, obtained from a <a href="com/google/android/exoplayer2/source/chunk/ChunkSource.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkSource</code></a>.</div>
1420</th>
1421</tr>
1422<tr id="i215" class="rowColor">
1423<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ChunkSampleStream.ReleaseCallback.html" title="interface in com.google.android.exoplayer2.source.chunk">ChunkSampleStream.ReleaseCallback</a>&lt;<a href="com/google/android/exoplayer2/source/chunk/ChunkSampleStream.ReleaseCallback.html" title="type parameter in ChunkSampleStream.ReleaseCallback">T</a> extends <a href="com/google/android/exoplayer2/source/chunk/ChunkSource.html" title="interface in com.google.android.exoplayer2.source.chunk">ChunkSource</a>&gt;</td>
1424<th class="colLast" scope="row">
1425<div class="block">A callback to be notified when a sample stream has finished being released.</div>
1426</th>
1427</tr>
1428<tr id="i216" class="altColor">
1429<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ChunkSource.html" title="interface in com.google.android.exoplayer2.source.chunk">ChunkSource</a></td>
1430<th class="colLast" scope="row">
1431<div class="block">A provider of <a href="com/google/android/exoplayer2/source/chunk/Chunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>Chunk</code></a>s for a <a href="com/google/android/exoplayer2/source/chunk/ChunkSampleStream.html" title="class in com.google.android.exoplayer2.source.chunk"><code>ChunkSampleStream</code></a> to load.</div>
1432</th>
1433</tr>
1434<tr id="i217" class="rowColor">
1435<td class="colFirst"><a href="com/google/android/exoplayer2/source/ClippingMediaPeriod.html" title="class in com.google.android.exoplayer2.source">ClippingMediaPeriod</a></td>
1436<th class="colLast" scope="row">
1437<div class="block">Wraps a <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source"><code>MediaPeriod</code></a> and clips its <a href="com/google/android/exoplayer2/source/SampleStream.html" title="interface in com.google.android.exoplayer2.source"><code>SampleStream</code></a>s to provide a subsequence of their
1438 samples.</div>
1439</th>
1440</tr>
1441<tr id="i218" class="altColor">
1442<td class="colFirst"><a href="com/google/android/exoplayer2/source/ClippingMediaSource.html" title="class in com.google.android.exoplayer2.source">ClippingMediaSource</a></td>
1443<th class="colLast" scope="row">
1444<div class="block"><a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> that wraps a source and clips its timeline based on specified start/end
1445 positions.</div>
1446</th>
1447</tr>
1448<tr id="i219" class="rowColor">
1449<td class="colFirst"><a href="com/google/android/exoplayer2/source/ClippingMediaSource.IllegalClippingException.html" title="class in com.google.android.exoplayer2.source">ClippingMediaSource.IllegalClippingException</a></td>
1450<th class="colLast" scope="row">
1451<div class="block">Thrown when a <a href="com/google/android/exoplayer2/source/ClippingMediaSource.html" title="class in com.google.android.exoplayer2.source"><code>ClippingMediaSource</code></a> cannot clip its wrapped source.</div>
1452</th>
1453</tr>
1454<tr id="i220" class="altColor">
1455<td class="colFirst"><a href="com/google/android/exoplayer2/source/ClippingMediaSource.IllegalClippingException.Reason.html" title="annotation in com.google.android.exoplayer2.source">ClippingMediaSource.IllegalClippingException.Reason</a></td>
1456<th class="colLast" scope="row">
1457<div class="block">The reason clipping failed.</div>
1458</th>
1459</tr>
1460<tr id="i221" class="rowColor">
1461<td class="colFirst"><a href="com/google/android/exoplayer2/util/Clock.html" title="interface in com.google.android.exoplayer2.util">Clock</a></td>
1462<th class="colLast" scope="row">
1463<div class="block">An interface through which system clocks can be read and <a href="com/google/android/exoplayer2/util/HandlerWrapper.html" title="interface in com.google.android.exoplayer2.util"><code>HandlerWrapper</code></a>s created.</div>
1464</th>
1465</tr>
1466<tr id="i222" class="altColor">
1467<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Codec.html" title="class in com.google.android.exoplayer2.transformer">Codec</a></td>
1468<th class="colLast" scope="row">
1469<div class="block">A wrapper around <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a>.</div>
1470</th>
1471</tr>
1472<tr id="i223" class="rowColor">
1473<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Codec.DecoderFactory.html" title="interface in com.google.android.exoplayer2.transformer">Codec.DecoderFactory</a></td>
1474<th class="colLast" scope="row">
1475<div class="block">A factory for <a href="com/google/android/exoplayer2/transformer/Codec.html" title="class in com.google.android.exoplayer2.transformer"><code>decoder</code></a> instances.</div>
1476</th>
1477</tr>
1478<tr id="i224" class="altColor">
1479<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Codec.EncoderFactory.html" title="interface in com.google.android.exoplayer2.transformer">Codec.EncoderFactory</a></td>
1480<th class="colLast" scope="row">
1481<div class="block">A factory for <a href="com/google/android/exoplayer2/transformer/Codec.html" title="class in com.google.android.exoplayer2.transformer"><code>encoder</code></a> instances.</div>
1482</th>
1483</tr>
1484<tr id="i225" class="rowColor">
1485<td class="colFirst"><a href="com/google/android/exoplayer2/util/CodecSpecificDataUtil.html" title="class in com.google.android.exoplayer2.util">CodecSpecificDataUtil</a></td>
1486<th class="colLast" scope="row">
1487<div class="block">Provides utilities for handling various types of codec-specific data.</div>
1488</th>
1489</tr>
1490<tr id="i226" class="altColor">
1491<td class="colFirst"><a href="com/google/android/exoplayer2/video/ColorInfo.html" title="class in com.google.android.exoplayer2.video">ColorInfo</a></td>
1492<th class="colLast" scope="row">
1493<div class="block">Stores color info.</div>
1494</th>
1495</tr>
1496<tr id="i227" class="rowColor">
1497<td class="colFirst"><a href="com/google/android/exoplayer2/util/ColorParser.html" title="class in com.google.android.exoplayer2.util">ColorParser</a></td>
1498<th class="colLast" scope="row">
1499<div class="block">Parser for color expressions found in styling formats, e.g.</div>
1500</th>
1501</tr>
1502<tr id="i228" class="altColor">
1503<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/CommentFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">CommentFrame</a></td>
1504<th class="colLast" scope="row">
1505<div class="block">Comment ID3 frame.</div>
1506</th>
1507</tr>
1508<tr id="i229" class="rowColor">
1509<td class="colFirst"><a href="com/google/android/exoplayer2/source/CompositeMediaSource.html" title="class in com.google.android.exoplayer2.source">CompositeMediaSource</a>&lt;<a href="com/google/android/exoplayer2/source/CompositeMediaSource.html" title="type parameter in CompositeMediaSource">T</a>&gt;</td>
1510<th class="colLast" scope="row">
1511<div class="block">Composite <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> consisting of multiple child sources.</div>
1512</th>
1513</tr>
1514<tr id="i230" class="altColor">
1515<td class="colFirst"><a href="com/google/android/exoplayer2/source/CompositeSequenceableLoader.html" title="class in com.google.android.exoplayer2.source">CompositeSequenceableLoader</a></td>
1516<th class="colLast" scope="row">
1517<div class="block">A <a href="com/google/android/exoplayer2/source/SequenceableLoader.html" title="interface in com.google.android.exoplayer2.source"><code>SequenceableLoader</code></a> that encapsulates multiple other <a href="com/google/android/exoplayer2/source/SequenceableLoader.html" title="interface in com.google.android.exoplayer2.source"><code>SequenceableLoader</code></a>s.</div>
1518</th>
1519</tr>
1520<tr id="i231" class="rowColor">
1521<td class="colFirst"><a href="com/google/android/exoplayer2/source/CompositeSequenceableLoaderFactory.html" title="interface in com.google.android.exoplayer2.source">CompositeSequenceableLoaderFactory</a></td>
1522<th class="colLast" scope="row">
1523<div class="block">A factory to create composite <a href="com/google/android/exoplayer2/source/SequenceableLoader.html" title="interface in com.google.android.exoplayer2.source"><code>SequenceableLoader</code></a>s.</div>
1524</th>
1525</tr>
1526<tr id="i232" class="altColor">
1527<td class="colFirst"><a href="com/google/android/exoplayer2/source/ConcatenatingMediaSource.html" title="class in com.google.android.exoplayer2.source">ConcatenatingMediaSource</a></td>
1528<th class="colLast" scope="row">
1529<div class="block">Concatenates multiple <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>s.</div>
1530</th>
1531</tr>
1532<tr id="i233" class="rowColor">
1533<td class="colFirst"><a href="com/google/android/exoplayer2/util/ConditionVariable.html" title="class in com.google.android.exoplayer2.util">ConditionVariable</a></td>
1534<th class="colLast" scope="row">
1535<div class="block">An interruptible condition variable.</div>
1536</th>
1537</tr>
1538<tr id="i234" class="altColor">
1539<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ConstantBitrateSeekMap.html" title="class in com.google.android.exoplayer2.extractor">ConstantBitrateSeekMap</a></td>
1540<th class="colLast" scope="row">
1541<div class="block">A <a href="com/google/android/exoplayer2/extractor/SeekMap.html" title="interface in com.google.android.exoplayer2.extractor"><code>SeekMap</code></a> implementation that assumes the stream has a constant bitrate and consists of
1542 multiple independent frames of the same size.</div>
1543</th>
1544</tr>
1545<tr id="i235" class="rowColor">
1546<td class="colFirst"><a href="com/google/android/exoplayer2/util/Consumer.html" title="interface in com.google.android.exoplayer2.util">Consumer</a>&lt;<a href="com/google/android/exoplayer2/util/Consumer.html" title="type parameter in Consumer">T</a>&gt;</td>
1547<th class="colLast" scope="row">
1548<div class="block">Represents an operation that accepts a single input argument and returns no result.</div>
1549</th>
1550</tr>
1551<tr id="i236" class="altColor">
1552<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/ContainerMediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk">ContainerMediaChunk</a></td>
1553<th class="colLast" scope="row">
1554<div class="block">A <a href="com/google/android/exoplayer2/source/chunk/BaseMediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>BaseMediaChunk</code></a> that uses an <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a> to decode sample data.</div>
1555</th>
1556</tr>
1557<tr id="i237" class="rowColor">
1558<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ContentDataSource.html" title="class in com.google.android.exoplayer2.upstream">ContentDataSource</a></td>
1559<th class="colLast" scope="row">
1560<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> for reading from a content URI.</div>
1561</th>
1562</tr>
1563<tr id="i238" class="altColor">
1564<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ContentDataSource.ContentDataSourceException.html" title="class in com.google.android.exoplayer2.upstream">ContentDataSource.ContentDataSourceException</a></td>
1565<th class="colLast" scope="row">
1566<div class="block">Thrown when an <a href="https://developer.android.com/reference/java/io/IOException.html" title="class or interface in java.io" class="externalLink" target="_top"><code>IOException</code></a> is encountered reading from a content URI.</div>
1567</th>
1568</tr>
1569<tr id="i239" class="rowColor">
1570<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/ContentMetadata.html" title="interface in com.google.android.exoplayer2.upstream.cache">ContentMetadata</a></td>
1571<th class="colLast" scope="row">
1572<div class="block">Interface for an immutable snapshot of keyed metadata.</div>
1573</th>
1574</tr>
1575<tr id="i240" class="altColor">
1576<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/ContentMetadataMutations.html" title="class in com.google.android.exoplayer2.upstream.cache">ContentMetadataMutations</a></td>
1577<th class="colLast" scope="row">
1578<div class="block">Defines multiple mutations on metadata value which are applied atomically.</div>
1579</th>
1580</tr>
1581<tr id="i241" class="rowColor">
1582<td class="colFirst"><a href="com/google/android/exoplayer2/util/CopyOnWriteMultiset.html" title="class in com.google.android.exoplayer2.util">CopyOnWriteMultiset</a>&lt;<a href="com/google/android/exoplayer2/util/CopyOnWriteMultiset.html" title="type parameter in CopyOnWriteMultiset">E</a>&gt;</td>
1583<th class="colLast" scope="row">
1584<div class="block">An unordered collection of elements that allows duplicates, but also allows access to a set of
1585 unique elements.</div>
1586</th>
1587</tr>
1588<tr id="i242" class="altColor">
1589<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cronet/CronetDataSource.html" title="class in com.google.android.exoplayer2.ext.cronet">CronetDataSource</a></td>
1590<th class="colLast" scope="row">
1591<div class="block">DataSource without intermediate buffer based on Cronet API set using UrlRequest.</div>
1592</th>
1593</tr>
1594<tr id="i243" class="rowColor">
1595<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cronet/CronetDataSource.Factory.html" title="class in com.google.android.exoplayer2.ext.cronet">CronetDataSource.Factory</a></td>
1596<th class="colLast" scope="row">
1597<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/ext/cronet/CronetDataSource.html" title="class in com.google.android.exoplayer2.ext.cronet"><code>CronetDataSource</code></a> instances.</div>
1598</th>
1599</tr>
1600<tr id="i244" class="altColor">
1601<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cronet/CronetDataSource.OpenException.html" title="class in com.google.android.exoplayer2.ext.cronet">CronetDataSource.OpenException</a></td>
1602<th class="colLast" scope="row">
1603<div class="block">Thrown when an error is encountered when trying to open a <a href="com/google/android/exoplayer2/ext/cronet/CronetDataSource.html" title="class in com.google.android.exoplayer2.ext.cronet"><code>CronetDataSource</code></a>.</div>
1604</th>
1605</tr>
1606<tr id="i245" class="rowColor">
1607<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cronet/CronetDataSourceFactory.html" title="class in com.google.android.exoplayer2.ext.cronet">CronetDataSourceFactory</a></td>
1608<th class="colLast" scope="row">Deprecated.
1609<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ext/cronet/CronetDataSource.Factory.html" title="class in com.google.android.exoplayer2.ext.cronet"><code>CronetDataSource.Factory</code></a> instead.</div>
1610</th>
1611</tr>
1612<tr id="i246" class="altColor">
1613<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cronet/CronetEngineWrapper.html" title="class in com.google.android.exoplayer2.ext.cronet">CronetEngineWrapper</a></td>
1614<th class="colLast" scope="row">Deprecated.
1615<div class="deprecationComment">Use <code>CronetEngine</code> directly.</div>
1616</th>
1617</tr>
1618<tr id="i247" class="rowColor">
1619<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cronet/CronetUtil.html" title="class in com.google.android.exoplayer2.ext.cronet">CronetUtil</a></td>
1620<th class="colLast" scope="row">
1621<div class="block">Cronet utility methods.</div>
1622</th>
1623</tr>
1624<tr id="i248" class="altColor">
1625<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/CryptoConfig.html" title="interface in com.google.android.exoplayer2.decoder">CryptoConfig</a></td>
1626<th class="colLast" scope="row">
1627<div class="block">Configuration for a decoder to allow it to decode encrypted media data.</div>
1628</th>
1629</tr>
1630<tr id="i249" class="rowColor">
1631<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/CryptoException.html" title="class in com.google.android.exoplayer2.decoder">CryptoException</a></td>
1632<th class="colLast" scope="row">
1633<div class="block">Thrown when a non-platform component fails to decrypt data.</div>
1634</th>
1635</tr>
1636<tr id="i250" class="altColor">
1637<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/CryptoInfo.html" title="class in com.google.android.exoplayer2.decoder">CryptoInfo</a></td>
1638<th class="colLast" scope="row">
1639<div class="block">Metadata describing the structure of an encrypted input sample.</div>
1640</th>
1641</tr>
1642<tr id="i251" class="rowColor">
1643<td class="colFirst"><a href="com/google/android/exoplayer2/text/Cue.html" title="class in com.google.android.exoplayer2.text">Cue</a></td>
1644<th class="colLast" scope="row">
1645<div class="block">Contains information about a specific cue, including textual content and formatting data.</div>
1646</th>
1647</tr>
1648<tr id="i252" class="altColor">
1649<td class="colFirst"><a href="com/google/android/exoplayer2/text/Cue.AnchorType.html" title="annotation in com.google.android.exoplayer2.text">Cue.AnchorType</a></td>
1650<th class="colLast" scope="row">
1651<div class="block">The type of anchor, which may be unset.</div>
1652</th>
1653</tr>
1654<tr id="i253" class="rowColor">
1655<td class="colFirst"><a href="com/google/android/exoplayer2/text/Cue.Builder.html" title="class in com.google.android.exoplayer2.text">Cue.Builder</a></td>
1656<th class="colLast" scope="row">
1657<div class="block">A builder for <a href="com/google/android/exoplayer2/text/Cue.html" title="class in com.google.android.exoplayer2.text"><code>Cue</code></a> objects.</div>
1658</th>
1659</tr>
1660<tr id="i254" class="altColor">
1661<td class="colFirst"><a href="com/google/android/exoplayer2/text/Cue.LineType.html" title="annotation in com.google.android.exoplayer2.text">Cue.LineType</a></td>
1662<th class="colLast" scope="row">
1663<div class="block">The type of line, which may be unset.</div>
1664</th>
1665</tr>
1666<tr id="i255" class="rowColor">
1667<td class="colFirst"><a href="com/google/android/exoplayer2/text/Cue.TextSizeType.html" title="annotation in com.google.android.exoplayer2.text">Cue.TextSizeType</a></td>
1668<th class="colLast" scope="row">
1669<div class="block">The type of default text size for this cue, which may be unset.</div>
1670</th>
1671</tr>
1672<tr id="i256" class="altColor">
1673<td class="colFirst"><a href="com/google/android/exoplayer2/text/Cue.VerticalType.html" title="annotation in com.google.android.exoplayer2.text">Cue.VerticalType</a></td>
1674<th class="colLast" scope="row">
1675<div class="block">The type of vertical layout for this cue, which may be unset (i.e.</div>
1676</th>
1677</tr>
1678<tr id="i257" class="rowColor">
1679<td class="colFirst"><a href="com/google/android/exoplayer2/text/CueDecoder.html" title="class in com.google.android.exoplayer2.text">CueDecoder</a></td>
1680<th class="colLast" scope="row">
1681<div class="block">Decodes data encoded by <a href="com/google/android/exoplayer2/text/CueEncoder.html" title="class in com.google.android.exoplayer2.text"><code>CueEncoder</code></a>.</div>
1682</th>
1683</tr>
1684<tr id="i258" class="altColor">
1685<td class="colFirst"><a href="com/google/android/exoplayer2/text/CueEncoder.html" title="class in com.google.android.exoplayer2.text">CueEncoder</a></td>
1686<th class="colLast" scope="row">
1687<div class="block">Encodes data that can be decoded by <a href="com/google/android/exoplayer2/text/CueDecoder.html" title="class in com.google.android.exoplayer2.text"><code>CueDecoder</code></a>.</div>
1688</th>
1689</tr>
1690<tr id="i259" class="rowColor">
1691<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashChunkSource.html" title="interface in com.google.android.exoplayer2.source.dash">DashChunkSource</a></td>
1692<th class="colLast" scope="row">
1693<div class="block">A <a href="com/google/android/exoplayer2/source/chunk/ChunkSource.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkSource</code></a> for DASH streams.</div>
1694</th>
1695</tr>
1696<tr id="i260" class="altColor">
1697<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashChunkSource.Factory.html" title="interface in com.google.android.exoplayer2.source.dash">DashChunkSource.Factory</a></td>
1698<th class="colLast" scope="row">
1699<div class="block">Factory for <a href="com/google/android/exoplayer2/source/dash/DashChunkSource.html" title="interface in com.google.android.exoplayer2.source.dash"><code>DashChunkSource</code></a>s.</div>
1700</th>
1701</tr>
1702<tr id="i261" class="rowColor">
1703<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/offline/DashDownloader.html" title="class in com.google.android.exoplayer2.source.dash.offline">DashDownloader</a></td>
1704<th class="colLast" scope="row">
1705<div class="block">A downloader for DASH streams.</div>
1706</th>
1707</tr>
1708<tr id="i262" class="altColor">
1709<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/DashManifest.html" title="class in com.google.android.exoplayer2.source.dash.manifest">DashManifest</a></td>
1710<th class="colLast" scope="row">
1711<div class="block">Represents a DASH media presentation description (mpd), as defined by ISO/IEC 23009-1:2014
1712 Section 5.3.1.2.</div>
1713</th>
1714</tr>
1715<tr id="i263" class="rowColor">
1716<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.html" title="class in com.google.android.exoplayer2.source.dash.manifest">DashManifestParser</a></td>
1717<th class="colLast" scope="row">
1718<div class="block">A parser of media presentation description files.</div>
1719</th>
1720</tr>
1721<tr id="i264" class="altColor">
1722<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/DashManifestParser.RepresentationInfo.html" title="class in com.google.android.exoplayer2.source.dash.manifest">DashManifestParser.RepresentationInfo</a></td>
1723<th class="colLast" scope="row">
1724<div class="block">A parsed Representation element.</div>
1725</th>
1726</tr>
1727<tr id="i265" class="rowColor">
1728<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashManifestStaleException.html" title="class in com.google.android.exoplayer2.source.dash">DashManifestStaleException</a></td>
1729<th class="colLast" scope="row">
1730<div class="block">Thrown when a live playback's manifest is stale and a new manifest could not be loaded.</div>
1731</th>
1732</tr>
1733<tr id="i266" class="altColor">
1734<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashMediaSource.html" title="class in com.google.android.exoplayer2.source.dash">DashMediaSource</a></td>
1735<th class="colLast" scope="row">
1736<div class="block">A DASH <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
1737</th>
1738</tr>
1739<tr id="i267" class="rowColor">
1740<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashMediaSource.Factory.html" title="class in com.google.android.exoplayer2.source.dash">DashMediaSource.Factory</a></td>
1741<th class="colLast" scope="row">
1742<div class="block">Factory for <a href="com/google/android/exoplayer2/source/dash/DashMediaSource.html" title="class in com.google.android.exoplayer2.source.dash"><code>DashMediaSource</code></a>s.</div>
1743</th>
1744</tr>
1745<tr id="i268" class="altColor">
1746<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashSegmentIndex.html" title="interface in com.google.android.exoplayer2.source.dash">DashSegmentIndex</a></td>
1747<th class="colLast" scope="row">
1748<div class="block">Indexes the segments within a media stream.</div>
1749</th>
1750</tr>
1751<tr id="i269" class="rowColor">
1752<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashUtil.html" title="class in com.google.android.exoplayer2.source.dash">DashUtil</a></td>
1753<th class="colLast" scope="row">
1754<div class="block">Utility methods for DASH streams.</div>
1755</th>
1756</tr>
1757<tr id="i270" class="altColor">
1758<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DashWrappingSegmentIndex.html" title="class in com.google.android.exoplayer2.source.dash">DashWrappingSegmentIndex</a></td>
1759<th class="colLast" scope="row">
1760<div class="block">An implementation of <a href="com/google/android/exoplayer2/source/dash/DashSegmentIndex.html" title="interface in com.google.android.exoplayer2.source.dash"><code>DashSegmentIndex</code></a> that wraps a <a href="com/google/android/exoplayer2/extractor/ChunkIndex.html" title="class in com.google.android.exoplayer2.extractor"><code>ChunkIndex</code></a> parsed from a media
1761 stream.</div>
1762</th>
1763</tr>
1764<tr id="i271" class="rowColor">
1765<td class="colFirst"><a href="com/google/android/exoplayer2/database/DatabaseIOException.html" title="class in com.google.android.exoplayer2.database">DatabaseIOException</a></td>
1766<th class="colLast" scope="row">
1767<div class="block">An <a href="https://developer.android.com/reference/java/io/IOException.html" title="class or interface in java.io" class="externalLink"><code>IOException</code></a> whose cause is an <a href="https://developer.android.com/reference/android/database/SQLException.html?is-external=true" title="class or interface in android.database" class="externalLink" target="_top"><code>SQLException</code></a>.</div>
1768</th>
1769</tr>
1770<tr id="i272" class="altColor">
1771<td class="colFirst"><a href="com/google/android/exoplayer2/database/DatabaseProvider.html" title="interface in com.google.android.exoplayer2.database">DatabaseProvider</a></td>
1772<th class="colLast" scope="row">
1773<div class="block">Provides <a href="https://developer.android.com/reference/android/database/sqlite/SQLiteDatabase.html" title="class or interface in android.database.sqlite" class="externalLink" target="_top"><code>SQLiteDatabase</code></a> instances to media library components, which may read and write
1774 tables prefixed with <a href="com/google/android/exoplayer2/database/DatabaseProvider.html#TABLE_PREFIX"><code>DatabaseProvider.TABLE_PREFIX</code></a>.</div>
1775</th>
1776</tr>
1777<tr id="i273" class="rowColor">
1778<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/DataChunk.html" title="class in com.google.android.exoplayer2.source.chunk">DataChunk</a></td>
1779<th class="colLast" scope="row">
1780<div class="block">A base class for <a href="com/google/android/exoplayer2/source/chunk/Chunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>Chunk</code></a> implementations where the data should be loaded into a <code>
1781 byte[]</code> before being consumed.</div>
1782</th>
1783</tr>
1784<tr id="i274" class="altColor">
1785<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataReader.html" title="interface in com.google.android.exoplayer2.upstream">DataReader</a></td>
1786<th class="colLast" scope="row">
1787<div class="block">Reads bytes from a data stream.</div>
1788</th>
1789</tr>
1790<tr id="i275" class="rowColor">
1791<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSchemeDataSource.html" title="class in com.google.android.exoplayer2.upstream">DataSchemeDataSource</a></td>
1792<th class="colLast" scope="row">
1793<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> for reading data URLs, as defined by RFC 2397.</div>
1794</th>
1795</tr>
1796<tr id="i276" class="altColor">
1797<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSink.html" title="interface in com.google.android.exoplayer2.upstream">DataSink</a></td>
1798<th class="colLast" scope="row">
1799<div class="block">A component to which streams of data can be written.</div>
1800</th>
1801</tr>
1802<tr id="i277" class="rowColor">
1803<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSink.Factory.html" title="interface in com.google.android.exoplayer2.upstream">DataSink.Factory</a></td>
1804<th class="colLast" scope="row">
1805<div class="block">A factory for <a href="com/google/android/exoplayer2/upstream/DataSink.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSink</code></a> instances.</div>
1806</th>
1807</tr>
1808<tr id="i278" class="altColor">
1809<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream">DataSource</a></td>
1810<th class="colLast" scope="row">
1811<div class="block">Reads data from URI-identified resources.</div>
1812</th>
1813</tr>
1814<tr id="i279" class="rowColor">
1815<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream">DataSource.Factory</a></td>
1816<th class="colLast" scope="row">
1817<div class="block">A factory for <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> instances.</div>
1818</th>
1819</tr>
1820<tr id="i280" class="altColor">
1821<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DataSourceContractTest.html" title="class in com.google.android.exoplayer2.testutil">DataSourceContractTest</a></td>
1822<th class="colLast" scope="row">
1823<div class="block">A collection of contract tests for <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> implementations.</div>
1824</th>
1825</tr>
1826<tr id="i281" class="rowColor">
1827<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DataSourceContractTest.FakeTransferListener.html" title="class in com.google.android.exoplayer2.testutil">DataSourceContractTest.FakeTransferListener</a></td>
1828<th class="colLast" scope="row">
1829<div class="block">A <a href="com/google/android/exoplayer2/upstream/TransferListener.html" title="interface in com.google.android.exoplayer2.upstream"><code>TransferListener</code></a> that only keeps track of the transferred bytes.</div>
1830</th>
1831</tr>
1832<tr id="i282" class="altColor">
1833<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DataSourceContractTest.TestResource.html" title="class in com.google.android.exoplayer2.testutil">DataSourceContractTest.TestResource</a></td>
1834<th class="colLast" scope="row">
1835<div class="block">Information about a resource that can be used to test the <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> instance.</div>
1836</th>
1837</tr>
1838<tr id="i283" class="rowColor">
1839<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DataSourceContractTest.TestResource.Builder.html" title="class in com.google.android.exoplayer2.testutil">DataSourceContractTest.TestResource.Builder</a></td>
1840<th class="colLast" scope="row">
1841<div class="block">Builder for <a href="com/google/android/exoplayer2/testutil/DataSourceContractTest.TestResource.html" title="class in com.google.android.exoplayer2.testutil"><code>DataSourceContractTest.TestResource</code></a> instances.</div>
1842</th>
1843</tr>
1844<tr id="i284" class="altColor">
1845<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSourceException.html" title="class in com.google.android.exoplayer2.upstream">DataSourceException</a></td>
1846<th class="colLast" scope="row">
1847<div class="block">Used to specify reason of a DataSource error.</div>
1848</th>
1849</tr>
1850<tr id="i285" class="rowColor">
1851<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSourceInputStream.html" title="class in com.google.android.exoplayer2.upstream">DataSourceInputStream</a></td>
1852<th class="colLast" scope="row">
1853<div class="block">Allows data corresponding to a given <a href="com/google/android/exoplayer2/upstream/DataSpec.html" title="class in com.google.android.exoplayer2.upstream"><code>DataSpec</code></a> to be read from a <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> and
1854 consumed through an <a href="https://developer.android.com/reference/java/io/InputStream.html" title="class or interface in java.io" class="externalLink" target="_top"><code>InputStream</code></a>.</div>
1855</th>
1856</tr>
1857<tr id="i286" class="altColor">
1858<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSourceUtil.html" title="class in com.google.android.exoplayer2.upstream">DataSourceUtil</a></td>
1859<th class="colLast" scope="row">
1860<div class="block">Utility methods for <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a>.</div>
1861</th>
1862</tr>
1863<tr id="i287" class="rowColor">
1864<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSpec.html" title="class in com.google.android.exoplayer2.upstream">DataSpec</a></td>
1865<th class="colLast" scope="row">
1866<div class="block">Defines a region of data in a resource.</div>
1867</th>
1868</tr>
1869<tr id="i288" class="altColor">
1870<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSpec.Builder.html" title="class in com.google.android.exoplayer2.upstream">DataSpec.Builder</a></td>
1871<th class="colLast" scope="row">
1872<div class="block">Builds <a href="com/google/android/exoplayer2/upstream/DataSpec.html" title="class in com.google.android.exoplayer2.upstream"><code>DataSpec</code></a> instances.</div>
1873</th>
1874</tr>
1875<tr id="i289" class="rowColor">
1876<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSpec.Flags.html" title="annotation in com.google.android.exoplayer2.upstream">DataSpec.Flags</a></td>
1877<th class="colLast" scope="row">
1878<div class="block">The flags that apply to any request for data.</div>
1879</th>
1880</tr>
1881<tr id="i290" class="altColor">
1882<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DataSpec.HttpMethod.html" title="annotation in com.google.android.exoplayer2.upstream">DataSpec.HttpMethod</a></td>
1883<th class="colLast" scope="row">
1884<div class="block">HTTP methods supported by ExoPlayer <a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource</code></a>s.</div>
1885</th>
1886</tr>
1887<tr id="i291" class="rowColor">
1888<td class="colFirst"><a href="com/google/android/exoplayer2/util/DebugTextViewHelper.html" title="class in com.google.android.exoplayer2.util">DebugTextViewHelper</a></td>
1889<th class="colLast" scope="row">
1890<div class="block">A helper class for periodically updating a <a href="https://developer.android.com/reference/android/widget/TextView.html" title="class or interface in android.widget" class="externalLink" target="_top"><code>TextView</code></a> with debug information obtained from
1891 an <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a>.</div>
1892</th>
1893</tr>
1894<tr id="i292" class="altColor">
1895<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/Decoder.html" title="interface in com.google.android.exoplayer2.decoder">Decoder</a>&lt;<a href="com/google/android/exoplayer2/decoder/Decoder.html" title="type parameter in Decoder">I</a>,&#8203;<a href="com/google/android/exoplayer2/decoder/Decoder.html" title="type parameter in Decoder">O</a>,&#8203;<a href="com/google/android/exoplayer2/decoder/Decoder.html" title="type parameter in Decoder">E</a> extends <a href="com/google/android/exoplayer2/decoder/DecoderException.html" title="class in com.google.android.exoplayer2.decoder">DecoderException</a>&gt;</td>
1896<th class="colLast" scope="row">
1897<div class="block">A media decoder.</div>
1898</th>
1899</tr>
1900<tr id="i293" class="rowColor">
1901<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DecoderAudioRenderer.html" title="class in com.google.android.exoplayer2.audio">DecoderAudioRenderer</a>&lt;<a href="com/google/android/exoplayer2/audio/DecoderAudioRenderer.html" title="type parameter in DecoderAudioRenderer">T</a> extends <a href="com/google/android/exoplayer2/decoder/Decoder.html" title="interface in com.google.android.exoplayer2.decoder">Decoder</a>&lt;<a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html" title="class in com.google.android.exoplayer2.decoder">DecoderInputBuffer</a>,&#8203;? extends <a href="com/google/android/exoplayer2/decoder/SimpleDecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder">SimpleDecoderOutputBuffer</a>,&#8203;? extends <a href="com/google/android/exoplayer2/decoder/DecoderException.html" title="class in com.google.android.exoplayer2.decoder">DecoderException</a>&gt;&gt;</td>
1902<th class="colLast" scope="row">
1903<div class="block">Decodes and renders audio using a <a href="com/google/android/exoplayer2/decoder/Decoder.html" title="interface in com.google.android.exoplayer2.decoder"><code>Decoder</code></a>.</div>
1904</th>
1905</tr>
1906<tr id="i294" class="altColor">
1907<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderCounters.html" title="class in com.google.android.exoplayer2.decoder">DecoderCounters</a></td>
1908<th class="colLast" scope="row">
1909<div class="block">Maintains decoder event counts, for debugging purposes only.</div>
1910</th>
1911</tr>
1912<tr id="i295" class="rowColor">
1913<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DecoderCountersUtil.html" title="class in com.google.android.exoplayer2.testutil">DecoderCountersUtil</a></td>
1914<th class="colLast" scope="row">
1915<div class="block">Assertions for <a href="com/google/android/exoplayer2/decoder/DecoderCounters.html" title="class in com.google.android.exoplayer2.decoder"><code>DecoderCounters</code></a>.</div>
1916</th>
1917</tr>
1918<tr id="i296" class="altColor">
1919<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderException.html" title="class in com.google.android.exoplayer2.decoder">DecoderException</a></td>
1920<th class="colLast" scope="row">
1921<div class="block">Thrown when a <a href="com/google/android/exoplayer2/decoder/Decoder.html" title="interface in com.google.android.exoplayer2.decoder"><code>Decoder</code></a> error occurs.</div>
1922</th>
1923</tr>
1924<tr id="i297" class="rowColor">
1925<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html" title="class in com.google.android.exoplayer2.decoder">DecoderInputBuffer</a></td>
1926<th class="colLast" scope="row">
1927<div class="block">Holds input for a decoder.</div>
1928</th>
1929</tr>
1930<tr id="i298" class="altColor">
1931<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.BufferReplacementMode.html" title="annotation in com.google.android.exoplayer2.decoder">DecoderInputBuffer.BufferReplacementMode</a></td>
1932<th class="colLast" scope="row">
1933<div class="block">The buffer replacement mode.</div>
1934</th>
1935</tr>
1936<tr id="i299" class="rowColor">
1937<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.InsufficientCapacityException.html" title="class in com.google.android.exoplayer2.decoder">DecoderInputBuffer.InsufficientCapacityException</a></td>
1938<th class="colLast" scope="row">
1939<div class="block">Thrown when an attempt is made to write into a <a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html" title="class in com.google.android.exoplayer2.decoder"><code>DecoderInputBuffer</code></a> whose <a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html#bufferReplacementMode"><code>DecoderInputBuffer.bufferReplacementMode</code></a> is <a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html#BUFFER_REPLACEMENT_MODE_DISABLED"><code>DecoderInputBuffer.BUFFER_REPLACEMENT_MODE_DISABLED</code></a> and who <a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html#data"><code>DecoderInputBuffer.data</code></a>
1940 capacity is smaller than required.</div>
1941</th>
1942</tr>
1943<tr id="i300" class="altColor">
1944<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder">DecoderOutputBuffer</a></td>
1945<th class="colLast" scope="row">
1946<div class="block">Output buffer decoded by a <a href="com/google/android/exoplayer2/decoder/Decoder.html" title="interface in com.google.android.exoplayer2.decoder"><code>Decoder</code></a>.</div>
1947</th>
1948</tr>
1949<tr id="i301" class="rowColor">
1950<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderOutputBuffer.Owner.html" title="interface in com.google.android.exoplayer2.decoder">DecoderOutputBuffer.Owner</a>&lt;<a href="com/google/android/exoplayer2/decoder/DecoderOutputBuffer.Owner.html" title="type parameter in DecoderOutputBuffer.Owner">S</a> extends <a href="com/google/android/exoplayer2/decoder/DecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder">DecoderOutputBuffer</a>&gt;</td>
1951<th class="colLast" scope="row">
1952<div class="block">Buffer owner.</div>
1953</th>
1954</tr>
1955<tr id="i302" class="altColor">
1956<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderReuseEvaluation.html" title="class in com.google.android.exoplayer2.decoder">DecoderReuseEvaluation</a></td>
1957<th class="colLast" scope="row">
1958<div class="block">The result of an evaluation to determine whether a decoder can be reused for a new input format.</div>
1959</th>
1960</tr>
1961<tr id="i303" class="rowColor">
1962<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderReuseEvaluation.DecoderDiscardReasons.html" title="annotation in com.google.android.exoplayer2.decoder">DecoderReuseEvaluation.DecoderDiscardReasons</a></td>
1963<th class="colLast" scope="row">
1964<div class="block">Possible reasons why reuse is not possible.</div>
1965</th>
1966</tr>
1967<tr id="i304" class="altColor">
1968<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/DecoderReuseEvaluation.DecoderReuseResult.html" title="annotation in com.google.android.exoplayer2.decoder">DecoderReuseEvaluation.DecoderReuseResult</a></td>
1969<th class="colLast" scope="row">
1970<div class="block">Possible outcomes of the evaluation.</div>
1971</th>
1972</tr>
1973<tr id="i305" class="rowColor">
1974<td class="colFirst"><a href="com/google/android/exoplayer2/video/DecoderVideoRenderer.html" title="class in com.google.android.exoplayer2.video">DecoderVideoRenderer</a></td>
1975<th class="colLast" scope="row">
1976<div class="block">Decodes and renders video using a <a href="com/google/android/exoplayer2/decoder/Decoder.html" title="interface in com.google.android.exoplayer2.decoder"><code>Decoder</code></a>.</div>
1977</th>
1978</tr>
1979<tr id="i306" class="altColor">
1980<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultAllocator.html" title="class in com.google.android.exoplayer2.upstream">DefaultAllocator</a></td>
1981<th class="colLast" scope="row">
1982<div class="block">Default implementation of <a href="com/google/android/exoplayer2/upstream/Allocator.html" title="interface in com.google.android.exoplayer2.upstream"><code>Allocator</code></a>.</div>
1983</th>
1984</tr>
1985<tr id="i307" class="rowColor">
1986<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/DefaultAnalyticsCollector.html" title="class in com.google.android.exoplayer2.analytics">DefaultAnalyticsCollector</a></td>
1987<th class="colLast" scope="row">
1988<div class="block">Data collector that forwards analytics events to <a href="com/google/android/exoplayer2/analytics/AnalyticsListener.html" title="interface in com.google.android.exoplayer2.analytics"><code>AnalyticsListeners</code></a>.</div>
1989</th>
1990</tr>
1991<tr id="i308" class="altColor">
1992<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink</a></td>
1993<th class="colLast" scope="row">
1994<div class="block">Plays audio data.</div>
1995</th>
1996</tr>
1997<tr id="i309" class="rowColor">
1998<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioSink.AudioProcessorChain.html" title="interface in com.google.android.exoplayer2.audio">DefaultAudioSink.AudioProcessorChain</a></td>
1999<th class="colLast" scope="row">
2000<div class="block">Provides a chain of audio processors, which are used for any user-defined processing and
2001 applying playback parameters (if supported).</div>
2002</th>
2003</tr>
2004<tr id="i310" class="altColor">
2005<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioSink.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.Builder</a></td>
2006<th class="colLast" scope="row">
2007<div class="block">A builder to create <a href="com/google/android/exoplayer2/audio/DefaultAudioSink.html" title="class in com.google.android.exoplayer2.audio"><code>DefaultAudioSink</code></a> instances.</div>
2008</th>
2009</tr>
2010<tr id="i311" class="rowColor">
2011<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioSink.DefaultAudioProcessorChain.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.DefaultAudioProcessorChain</a></td>
2012<th class="colLast" scope="row">
2013<div class="block">The default audio processor chain, which applies a (possibly empty) chain of user-defined audio
2014 processors followed by <a href="com/google/android/exoplayer2/audio/SilenceSkippingAudioProcessor.html" title="class in com.google.android.exoplayer2.audio"><code>SilenceSkippingAudioProcessor</code></a> and <a href="com/google/android/exoplayer2/audio/SonicAudioProcessor.html" title="class in com.google.android.exoplayer2.audio"><code>SonicAudioProcessor</code></a>.</div>
2015</th>
2016</tr>
2017<tr id="i312" class="altColor">
2018<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioSink.InvalidAudioTrackTimestampException.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioSink.InvalidAudioTrackTimestampException</a></td>
2019<th class="colLast" scope="row">
2020<div class="block">Thrown when the audio track has provided a spurious timestamp, if <a href="com/google/android/exoplayer2/audio/DefaultAudioSink.html#failOnSpuriousAudioTimestamp"><code>DefaultAudioSink.failOnSpuriousAudioTimestamp</code></a> is set.</div>
2021</th>
2022</tr>
2023<tr id="i313" class="rowColor">
2024<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioSink.OffloadMode.html" title="annotation in com.google.android.exoplayer2.audio">DefaultAudioSink.OffloadMode</a></td>
2025<th class="colLast" scope="row">
2026<div class="block">Audio offload mode configuration.</div>
2027</th>
2028</tr>
2029<tr id="i314" class="altColor">
2030<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioSink.OutputMode.html" title="annotation in com.google.android.exoplayer2.audio">DefaultAudioSink.OutputMode</a></td>
2031<th class="colLast" scope="row">
2032<div class="block">Output mode of the audio sink.</div>
2033</th>
2034</tr>
2035<tr id="i315" class="rowColor">
2036<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioTrackBufferSizeProvider.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioTrackBufferSizeProvider</a></td>
2037<th class="colLast" scope="row">
2038<div class="block">Provide the buffer size to use when creating an <a href="https://developer.android.com/reference/android/media/AudioTrack.html" title="class or interface in android.media" class="externalLink" target="_top"><code>AudioTrack</code></a>.</div>
2039</th>
2040</tr>
2041<tr id="i316" class="altColor">
2042<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DefaultAudioTrackBufferSizeProvider.Builder.html" title="class in com.google.android.exoplayer2.audio">DefaultAudioTrackBufferSizeProvider.Builder</a></td>
2043<th class="colLast" scope="row">
2044<div class="block">A builder to create <a href="com/google/android/exoplayer2/audio/DefaultAudioTrackBufferSizeProvider.html" title="class in com.google.android.exoplayer2.audio"><code>DefaultAudioTrackBufferSizeProvider</code></a> instances.</div>
2045</th>
2046</tr>
2047<tr id="i317" class="rowColor">
2048<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultBandwidthMeter.html" title="class in com.google.android.exoplayer2.upstream">DefaultBandwidthMeter</a></td>
2049<th class="colLast" scope="row">
2050<div class="block">Estimates bandwidth by listening to data transfers.</div>
2051</th>
2052</tr>
2053<tr id="i318" class="altColor">
2054<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultBandwidthMeter.Builder.html" title="class in com.google.android.exoplayer2.upstream">DefaultBandwidthMeter.Builder</a></td>
2055<th class="colLast" scope="row">
2056<div class="block">Builder for a bandwidth meter.</div>
2057</th>
2058</tr>
2059<tr id="i319" class="rowColor">
2060<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cast/DefaultCastOptionsProvider.html" title="class in com.google.android.exoplayer2.ext.cast">DefaultCastOptionsProvider</a></td>
2061<th class="colLast" scope="row">
2062<div class="block">A convenience <code>OptionsProvider</code> to target the default cast receiver app.</div>
2063</th>
2064</tr>
2065<tr id="i320" class="altColor">
2066<td class="colFirst"><a href="com/google/android/exoplayer2/source/DefaultCompositeSequenceableLoaderFactory.html" title="class in com.google.android.exoplayer2.source">DefaultCompositeSequenceableLoaderFactory</a></td>
2067<th class="colLast" scope="row">
2068<div class="block">Default implementation of <a href="com/google/android/exoplayer2/source/CompositeSequenceableLoaderFactory.html" title="interface in com.google.android.exoplayer2.source"><code>CompositeSequenceableLoaderFactory</code></a>.</div>
2069</th>
2070</tr>
2071<tr id="i321" class="rowColor">
2072<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/DefaultContentMetadata.html" title="class in com.google.android.exoplayer2.upstream.cache">DefaultContentMetadata</a></td>
2073<th class="colLast" scope="row">
2074<div class="block">Default implementation of <a href="com/google/android/exoplayer2/upstream/cache/ContentMetadata.html" title="interface in com.google.android.exoplayer2.upstream.cache"><code>ContentMetadata</code></a>.</div>
2075</th>
2076</tr>
2077<tr id="i322" class="altColor">
2078<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DefaultDashChunkSource.html" title="class in com.google.android.exoplayer2.source.dash">DefaultDashChunkSource</a></td>
2079<th class="colLast" scope="row">
2080<div class="block">A default <a href="com/google/android/exoplayer2/source/dash/DashChunkSource.html" title="interface in com.google.android.exoplayer2.source.dash"><code>DashChunkSource</code></a> implementation.</div>
2081</th>
2082</tr>
2083<tr id="i323" class="rowColor">
2084<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DefaultDashChunkSource.Factory.html" title="class in com.google.android.exoplayer2.source.dash">DefaultDashChunkSource.Factory</a></td>
2085<th class="colLast" scope="row">&nbsp;</th>
2086</tr>
2087<tr id="i324" class="altColor">
2088<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DefaultDashChunkSource.RepresentationHolder.html" title="class in com.google.android.exoplayer2.source.dash">DefaultDashChunkSource.RepresentationHolder</a></td>
2089<th class="colLast" scope="row">
2090<div class="block">Holds information about a snapshot of a single <a href="com/google/android/exoplayer2/source/dash/manifest/Representation.html" title="class in com.google.android.exoplayer2.source.dash.manifest"><code>Representation</code></a>.</div>
2091</th>
2092</tr>
2093<tr id="i325" class="rowColor">
2094<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/DefaultDashChunkSource.RepresentationSegmentIterator.html" title="class in com.google.android.exoplayer2.source.dash">DefaultDashChunkSource.RepresentationSegmentIterator</a></td>
2095<th class="colLast" scope="row">
2096<div class="block"><a href="com/google/android/exoplayer2/source/chunk/MediaChunkIterator.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>MediaChunkIterator</code></a> wrapping a <a href="com/google/android/exoplayer2/source/dash/DefaultDashChunkSource.RepresentationHolder.html" title="class in com.google.android.exoplayer2.source.dash"><code>DefaultDashChunkSource.RepresentationHolder</code></a>.</div>
2097</th>
2098</tr>
2099<tr id="i326" class="altColor">
2100<td class="colFirst"><a href="com/google/android/exoplayer2/database/DefaultDatabaseProvider.html" title="class in com.google.android.exoplayer2.database">DefaultDatabaseProvider</a></td>
2101<th class="colLast" scope="row">
2102<div class="block">A <a href="com/google/android/exoplayer2/database/DatabaseProvider.html" title="interface in com.google.android.exoplayer2.database"><code>DatabaseProvider</code></a> that provides instances obtained from a <a href="https://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html" title="class or interface in android.database.sqlite" class="externalLink" target="_top"><code>SQLiteOpenHelper</code></a>.</div>
2103</th>
2104</tr>
2105<tr id="i327" class="rowColor">
2106<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultDataSource.html" title="class in com.google.android.exoplayer2.upstream">DefaultDataSource</a></td>
2107<th class="colLast" scope="row">
2108<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> that supports multiple URI schemes.</div>
2109</th>
2110</tr>
2111<tr id="i328" class="altColor">
2112<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream">DefaultDataSource.Factory</a></td>
2113<th class="colLast" scope="row">
2114<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/upstream/DefaultDataSource.html" title="class in com.google.android.exoplayer2.upstream"><code>DefaultDataSource</code></a> instances.</div>
2115</th>
2116</tr>
2117<tr id="i329" class="rowColor">
2118<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultDataSourceFactory.html" title="class in com.google.android.exoplayer2.upstream">DefaultDataSourceFactory</a></td>
2119<th class="colLast" scope="row">Deprecated.
2120<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/upstream/DefaultDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream"><code>DefaultDataSource.Factory</code></a> instead.</div>
2121</th>
2122</tr>
2123<tr id="i330" class="altColor">
2124<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DefaultDownloaderFactory.html" title="class in com.google.android.exoplayer2.offline">DefaultDownloaderFactory</a></td>
2125<th class="colLast" scope="row">
2126<div class="block">Default <a href="com/google/android/exoplayer2/offline/DownloaderFactory.html" title="interface in com.google.android.exoplayer2.offline"><code>DownloaderFactory</code></a>, supporting creation of progressive, DASH, HLS and
2127 SmoothStreaming downloaders.</div>
2128</th>
2129</tr>
2130<tr id="i331" class="rowColor">
2131<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DefaultDownloadIndex.html" title="class in com.google.android.exoplayer2.offline">DefaultDownloadIndex</a></td>
2132<th class="colLast" scope="row">
2133<div class="block">A <a href="com/google/android/exoplayer2/offline/DownloadIndex.html" title="interface in com.google.android.exoplayer2.offline"><code>DownloadIndex</code></a> that uses SQLite to persist <a href="com/google/android/exoplayer2/offline/Download.html" title="class in com.google.android.exoplayer2.offline"><code>Downloads</code></a>.</div>
2134</th>
2135</tr>
2136<tr id="i332" class="altColor">
2137<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DefaultDrmSessionManager.html" title="class in com.google.android.exoplayer2.drm">DefaultDrmSessionManager</a></td>
2138<th class="colLast" scope="row">
2139<div class="block">A <a href="com/google/android/exoplayer2/drm/DrmSessionManager.html" title="interface in com.google.android.exoplayer2.drm"><code>DrmSessionManager</code></a> that supports playbacks using <a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm"><code>ExoMediaDrm</code></a>.</div>
2140</th>
2141</tr>
2142<tr id="i333" class="rowColor">
2143<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DefaultDrmSessionManager.Builder.html" title="class in com.google.android.exoplayer2.drm">DefaultDrmSessionManager.Builder</a></td>
2144<th class="colLast" scope="row">
2145<div class="block">Builder for <a href="com/google/android/exoplayer2/drm/DefaultDrmSessionManager.html" title="class in com.google.android.exoplayer2.drm"><code>DefaultDrmSessionManager</code></a> instances.</div>
2146</th>
2147</tr>
2148<tr id="i334" class="altColor">
2149<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DefaultDrmSessionManager.MissingSchemeDataException.html" title="class in com.google.android.exoplayer2.drm">DefaultDrmSessionManager.MissingSchemeDataException</a></td>
2150<th class="colLast" scope="row">
2151<div class="block">Signals that the <a href="com/google/android/exoplayer2/Format.html#drmInitData"><code>Format.drmInitData</code></a> passed to <a href="com/google/android/exoplayer2/drm/DefaultDrmSessionManager.html#acquireSession(com.google.android.exoplayer2.drm.DrmSessionEventListener.EventDispatcher,com.google.android.exoplayer2.Format)"><code>DefaultDrmSessionManager.acquireSession(com.google.android.exoplayer2.drm.DrmSessionEventListener.EventDispatcher, com.google.android.exoplayer2.Format)</code></a> does not contain
2152 scheme data for the required UUID.</div>
2153</th>
2154</tr>
2155<tr id="i335" class="rowColor">
2156<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DefaultDrmSessionManager.Mode.html" title="annotation in com.google.android.exoplayer2.drm">DefaultDrmSessionManager.Mode</a></td>
2157<th class="colLast" scope="row">
2158<div class="block">Determines the action to be done after a session acquired.</div>
2159</th>
2160</tr>
2161<tr id="i336" class="altColor">
2162<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DefaultDrmSessionManagerProvider.html" title="class in com.google.android.exoplayer2.drm">DefaultDrmSessionManagerProvider</a></td>
2163<th class="colLast" scope="row">
2164<div class="block">Default implementation of <a href="com/google/android/exoplayer2/drm/DrmSessionManagerProvider.html" title="interface in com.google.android.exoplayer2.drm"><code>DrmSessionManagerProvider</code></a>.</div>
2165</th>
2166</tr>
2167<tr id="i337" class="rowColor">
2168<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/DefaultExtractorInput.html" title="class in com.google.android.exoplayer2.extractor">DefaultExtractorInput</a></td>
2169<th class="colLast" scope="row">
2170<div class="block">An <a href="com/google/android/exoplayer2/extractor/ExtractorInput.html" title="interface in com.google.android.exoplayer2.extractor"><code>ExtractorInput</code></a> that wraps a <a href="com/google/android/exoplayer2/upstream/DataReader.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataReader</code></a>.</div>
2171</th>
2172</tr>
2173<tr id="i338" class="altColor">
2174<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/DefaultExtractorsFactory.html" title="class in com.google.android.exoplayer2.extractor">DefaultExtractorsFactory</a></td>
2175<th class="colLast" scope="row">
2176<div class="block">An <a href="com/google/android/exoplayer2/extractor/ExtractorsFactory.html" title="interface in com.google.android.exoplayer2.extractor"><code>ExtractorsFactory</code></a> that provides an array of extractors for the following formats:
2177
2178
2179   MP4, including M4A (<a href="com/google/android/exoplayer2/extractor/mp4/Mp4Extractor.html" title="class in com.google.android.exoplayer2.extractor.mp4"><code>Mp4Extractor</code></a>)
2180   fMP4 (<a href="com/google/android/exoplayer2/extractor/mp4/FragmentedMp4Extractor.html" title="class in com.google.android.exoplayer2.extractor.mp4"><code>FragmentedMp4Extractor</code></a>)
2181   Matroska and WebM (<a href="com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.html" title="class in com.google.android.exoplayer2.extractor.mkv"><code>MatroskaExtractor</code></a>)
2182   Ogg Vorbis/FLAC (<a href="com/google/android/exoplayer2/extractor/ogg/OggExtractor.html" title="class in com.google.android.exoplayer2.extractor.ogg"><code>OggExtractor</code></a>
2183   MP3 (<a href="com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.html" title="class in com.google.android.exoplayer2.extractor.mp3"><code>Mp3Extractor</code></a>)
2184   AAC (<a href="com/google/android/exoplayer2/extractor/ts/AdtsExtractor.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>AdtsExtractor</code></a>)
2185   MPEG TS (<a href="com/google/android/exoplayer2/extractor/ts/TsExtractor.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>TsExtractor</code></a>)
2186   MPEG PS (<a href="com/google/android/exoplayer2/extractor/ts/PsExtractor.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>PsExtractor</code></a>)
2187   FLV (<a href="com/google/android/exoplayer2/extractor/flv/FlvExtractor.html" title="class in com.google.android.exoplayer2.extractor.flv"><code>FlvExtractor</code></a>)
2188   WAV (<a href="com/google/android/exoplayer2/extractor/wav/WavExtractor.html" title="class in com.google.android.exoplayer2.extractor.wav"><code>WavExtractor</code></a>)
2189   AC3 (<a href="com/google/android/exoplayer2/extractor/ts/Ac3Extractor.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>Ac3Extractor</code></a>)
2190   AC4 (<a href="com/google/android/exoplayer2/extractor/ts/Ac4Extractor.html" title="class in com.google.android.exoplayer2.extractor.ts"><code>Ac4Extractor</code></a>)
2191   AMR (<a href="com/google/android/exoplayer2/extractor/amr/AmrExtractor.html" title="class in com.google.android.exoplayer2.extractor.amr"><code>AmrExtractor</code></a>)
2192   FLAC
2193
2194         If available, the FLAC extension's <code>
2195             com.google.android.exoplayer2.ext.flac.FlacExtractor</code> is used.</div>
2196</th>
2197</tr>
2198<tr id="i339" class="rowColor">
2199<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/DefaultHlsDataSourceFactory.html" title="class in com.google.android.exoplayer2.source.hls">DefaultHlsDataSourceFactory</a></td>
2200<th class="colLast" scope="row">
2201<div class="block">Default implementation of <a href="com/google/android/exoplayer2/source/hls/HlsDataSourceFactory.html" title="interface in com.google.android.exoplayer2.source.hls"><code>HlsDataSourceFactory</code></a>.</div>
2202</th>
2203</tr>
2204<tr id="i340" class="altColor">
2205<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/DefaultHlsExtractorFactory.html" title="class in com.google.android.exoplayer2.source.hls">DefaultHlsExtractorFactory</a></td>
2206<th class="colLast" scope="row">
2207<div class="block">Default <a href="com/google/android/exoplayer2/source/hls/HlsExtractorFactory.html" title="interface in com.google.android.exoplayer2.source.hls"><code>HlsExtractorFactory</code></a> implementation.</div>
2208</th>
2209</tr>
2210<tr id="i341" class="rowColor">
2211<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/DefaultHlsPlaylistParserFactory.html" title="class in com.google.android.exoplayer2.source.hls.playlist">DefaultHlsPlaylistParserFactory</a></td>
2212<th class="colLast" scope="row">
2213<div class="block">Default implementation for <a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParserFactory.html" title="interface in com.google.android.exoplayer2.source.hls.playlist"><code>HlsPlaylistParserFactory</code></a>.</div>
2214</th>
2215</tr>
2216<tr id="i342" class="altColor">
2217<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/DefaultHlsPlaylistTracker.html" title="class in com.google.android.exoplayer2.source.hls.playlist">DefaultHlsPlaylistTracker</a></td>
2218<th class="colLast" scope="row">
2219<div class="block">Default implementation for <a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.html" title="interface in com.google.android.exoplayer2.source.hls.playlist"><code>HlsPlaylistTracker</code></a>.</div>
2220</th>
2221</tr>
2222<tr id="i343" class="rowColor">
2223<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultHttpDataSource.html" title="class in com.google.android.exoplayer2.upstream">DefaultHttpDataSource</a></td>
2224<th class="colLast" scope="row">
2225<div class="block">An <a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource</code></a> that uses Android's <a href="https://developer.android.com/reference/java/net/HttpURLConnection.html" title="class or interface in java.net" class="externalLink" target="_top"><code>HttpURLConnection</code></a>.</div>
2226</th>
2227</tr>
2228<tr id="i344" class="altColor">
2229<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultHttpDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream">DefaultHttpDataSource.Factory</a></td>
2230<th class="colLast" scope="row">
2231<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/upstream/DefaultHttpDataSource.html" title="class in com.google.android.exoplayer2.upstream"><code>DefaultHttpDataSource</code></a> instances.</div>
2232</th>
2233</tr>
2234<tr id="i345" class="rowColor">
2235<td class="colFirst"><a href="com/google/android/exoplayer2/DefaultLivePlaybackSpeedControl.html" title="class in com.google.android.exoplayer2">DefaultLivePlaybackSpeedControl</a></td>
2236<th class="colLast" scope="row">
2237<div class="block">A <a href="com/google/android/exoplayer2/LivePlaybackSpeedControl.html" title="interface in com.google.android.exoplayer2"><code>LivePlaybackSpeedControl</code></a> that adjusts the playback speed using a proportional
2238 controller.</div>
2239</th>
2240</tr>
2241<tr id="i346" class="altColor">
2242<td class="colFirst"><a href="com/google/android/exoplayer2/DefaultLivePlaybackSpeedControl.Builder.html" title="class in com.google.android.exoplayer2">DefaultLivePlaybackSpeedControl.Builder</a></td>
2243<th class="colLast" scope="row">
2244<div class="block">Builder for a <a href="com/google/android/exoplayer2/DefaultLivePlaybackSpeedControl.html" title="class in com.google.android.exoplayer2"><code>DefaultLivePlaybackSpeedControl</code></a>.</div>
2245</th>
2246</tr>
2247<tr id="i347" class="rowColor">
2248<td class="colFirst"><a href="com/google/android/exoplayer2/DefaultLoadControl.html" title="class in com.google.android.exoplayer2">DefaultLoadControl</a></td>
2249<th class="colLast" scope="row">
2250<div class="block">The default <a href="com/google/android/exoplayer2/LoadControl.html" title="interface in com.google.android.exoplayer2"><code>LoadControl</code></a> implementation.</div>
2251</th>
2252</tr>
2253<tr id="i348" class="altColor">
2254<td class="colFirst"><a href="com/google/android/exoplayer2/DefaultLoadControl.Builder.html" title="class in com.google.android.exoplayer2">DefaultLoadControl.Builder</a></td>
2255<th class="colLast" scope="row">
2256<div class="block">Builder for <a href="com/google/android/exoplayer2/DefaultLoadControl.html" title="class in com.google.android.exoplayer2"><code>DefaultLoadControl</code></a>.</div>
2257</th>
2258</tr>
2259<tr id="i349" class="rowColor">
2260<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DefaultLoadErrorHandlingPolicy.html" title="class in com.google.android.exoplayer2.upstream">DefaultLoadErrorHandlingPolicy</a></td>
2261<th class="colLast" scope="row">
2262<div class="block">Default implementation of <a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.html" title="interface in com.google.android.exoplayer2.upstream"><code>LoadErrorHandlingPolicy</code></a>.</div>
2263</th>
2264</tr>
2265<tr id="i350" class="altColor">
2266<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/DefaultMediaCodecAdapterFactory.html" title="class in com.google.android.exoplayer2.mediacodec">DefaultMediaCodecAdapterFactory</a></td>
2267<th class="colLast" scope="row">
2268<div class="block">The default <a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.Factory.html" title="interface in com.google.android.exoplayer2.mediacodec"><code>MediaCodecAdapter.Factory</code></a>.</div>
2269</th>
2270</tr>
2271<tr id="i351" class="rowColor">
2272<td class="colFirst"><a href="com/google/android/exoplayer2/ui/DefaultMediaDescriptionAdapter.html" title="class in com.google.android.exoplayer2.ui">DefaultMediaDescriptionAdapter</a></td>
2273<th class="colLast" scope="row">
2274<div class="block">Default implementation of <a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.MediaDescriptionAdapter.html" title="interface in com.google.android.exoplayer2.ui"><code>PlayerNotificationManager.MediaDescriptionAdapter</code></a>.</div>
2275</th>
2276</tr>
2277<tr id="i352" class="altColor">
2278<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cast/DefaultMediaItemConverter.html" title="class in com.google.android.exoplayer2.ext.cast">DefaultMediaItemConverter</a></td>
2279<th class="colLast" scope="row">
2280<div class="block">Default <a href="com/google/android/exoplayer2/ext/cast/MediaItemConverter.html" title="interface in com.google.android.exoplayer2.ext.cast"><code>MediaItemConverter</code></a> implementation.</div>
2281</th>
2282</tr>
2283<tr id="i353" class="rowColor">
2284<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/DefaultMediaItemConverter.html" title="class in com.google.android.exoplayer2.ext.media2">DefaultMediaItemConverter</a></td>
2285<th class="colLast" scope="row">
2286<div class="block">Default implementation of <a href="com/google/android/exoplayer2/ext/media2/MediaItemConverter.html" title="interface in com.google.android.exoplayer2.ext.media2"><code>MediaItemConverter</code></a>.</div>
2287</th>
2288</tr>
2289<tr id="i354" class="altColor">
2290<td class="colFirst"><a href="com/google/android/exoplayer2/source/DefaultMediaSourceFactory.html" title="class in com.google.android.exoplayer2.source">DefaultMediaSourceFactory</a></td>
2291<th class="colLast" scope="row">
2292<div class="block">The default <a href="com/google/android/exoplayer2/source/MediaSource.Factory.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource.Factory</code></a> implementation.</div>
2293</th>
2294</tr>
2295<tr id="i355" class="rowColor">
2296<td class="colFirst"><a href="com/google/android/exoplayer2/source/DefaultMediaSourceFactory.AdsLoaderProvider.html" title="interface in com.google.android.exoplayer2.source">DefaultMediaSourceFactory.AdsLoaderProvider</a></td>
2297<th class="colLast" scope="row">Deprecated.
2298<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/source/ads/AdsLoader.Provider.html" title="interface in com.google.android.exoplayer2.source.ads"><code>AdsLoader.Provider</code></a> instead.</div>
2299</th>
2300</tr>
2301<tr id="i356" class="altColor">
2302<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/DefaultPlaybackSessionManager.html" title="class in com.google.android.exoplayer2.analytics">DefaultPlaybackSessionManager</a></td>
2303<th class="colLast" scope="row">
2304<div class="block">Default <a href="com/google/android/exoplayer2/analytics/PlaybackSessionManager.html" title="interface in com.google.android.exoplayer2.analytics"><code>PlaybackSessionManager</code></a> which instantiates a new session for each window in the
2305 timeline and also for each ad within the windows.</div>
2306</th>
2307</tr>
2308<tr id="i357" class="rowColor">
2309<td class="colFirst"><a href="com/google/android/exoplayer2/DefaultRenderersFactory.html" title="class in com.google.android.exoplayer2">DefaultRenderersFactory</a></td>
2310<th class="colLast" scope="row">
2311<div class="block">Default <a href="com/google/android/exoplayer2/RenderersFactory.html" title="interface in com.google.android.exoplayer2"><code>RenderersFactory</code></a> implementation.</div>
2312</th>
2313</tr>
2314<tr id="i358" class="altColor">
2315<td class="colFirst"><a href="com/google/android/exoplayer2/DefaultRenderersFactory.ExtensionRendererMode.html" title="annotation in com.google.android.exoplayer2">DefaultRenderersFactory.ExtensionRendererMode</a></td>
2316<th class="colLast" scope="row">
2317<div class="block">Modes for using extension renderers.</div>
2318</th>
2319</tr>
2320<tr id="i359" class="rowColor">
2321<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DefaultRenderersFactoryAsserts.html" title="class in com.google.android.exoplayer2.testutil">DefaultRenderersFactoryAsserts</a></td>
2322<th class="colLast" scope="row">
2323<div class="block">Assertions for <a href="com/google/android/exoplayer2/DefaultRenderersFactory.html" title="class in com.google.android.exoplayer2"><code>DefaultRenderersFactory</code></a>.</div>
2324</th>
2325</tr>
2326<tr id="i360" class="altColor">
2327<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/reader/DefaultRtpPayloadReaderFactory.html" title="class in com.google.android.exoplayer2.source.rtsp.reader">DefaultRtpPayloadReaderFactory</a></td>
2328<th class="colLast" scope="row">
2329<div class="block">Default <a href="com/google/android/exoplayer2/source/rtsp/reader/RtpPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.source.rtsp.reader"><code>RtpPayloadReader.Factory</code></a> implementation.</div>
2330</th>
2331</tr>
2332<tr id="i361" class="rowColor">
2333<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/DefaultSsChunkSource.html" title="class in com.google.android.exoplayer2.source.smoothstreaming">DefaultSsChunkSource</a></td>
2334<th class="colLast" scope="row">
2335<div class="block">A default <a href="com/google/android/exoplayer2/source/smoothstreaming/SsChunkSource.html" title="interface in com.google.android.exoplayer2.source.smoothstreaming"><code>SsChunkSource</code></a> implementation.</div>
2336</th>
2337</tr>
2338<tr id="i362" class="altColor">
2339<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/DefaultSsChunkSource.Factory.html" title="class in com.google.android.exoplayer2.source.smoothstreaming">DefaultSsChunkSource.Factory</a></td>
2340<th class="colLast" scope="row">&nbsp;</th>
2341</tr>
2342<tr id="i363" class="rowColor">
2343<td class="colFirst"><a href="com/google/android/exoplayer2/ui/DefaultTimeBar.html" title="class in com.google.android.exoplayer2.ui">DefaultTimeBar</a></td>
2344<th class="colLast" scope="row">
2345<div class="block">A time bar that shows a current position, buffered position, duration and ad markers.</div>
2346</th>
2347</tr>
2348<tr id="i364" class="altColor">
2349<td class="colFirst"><a href="com/google/android/exoplayer2/ui/DefaultTrackNameProvider.html" title="class in com.google.android.exoplayer2.ui">DefaultTrackNameProvider</a></td>
2350<th class="colLast" scope="row">
2351<div class="block">A default <a href="com/google/android/exoplayer2/ui/TrackNameProvider.html" title="interface in com.google.android.exoplayer2.ui"><code>TrackNameProvider</code></a>.</div>
2352</th>
2353</tr>
2354<tr id="i365" class="rowColor">
2355<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector</a></td>
2356<th class="colLast" scope="row">
2357<div class="block">A default <a href="com/google/android/exoplayer2/trackselection/TrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>TrackSelector</code></a> suitable for most use cases.</div>
2358</th>
2359</tr>
2360<tr id="i366" class="altColor">
2361<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.Parameters</a></td>
2362<th class="colLast" scope="row">
2363<div class="block">Extends <a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector.Parameters</code></a> by adding fields that are specific to <a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector</code></a>.</div>
2364</th>
2365</tr>
2366<tr id="i367" class="rowColor">
2367<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.ParametersBuilder.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.ParametersBuilder</a></td>
2368<th class="colLast" scope="row">
2369<div class="block">A builder for <a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.Parameters.html" title="class in com.google.android.exoplayer2.trackselection"><code>DefaultTrackSelector.Parameters</code></a>.</div>
2370</th>
2371</tr>
2372<tr id="i368" class="altColor">
2373<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.SelectionEligibility.html" title="annotation in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.SelectionEligibility</a></td>
2374<th class="colLast" scope="row">
2375<div class="block">The extent to which tracks are eligible for selection.</div>
2376</th>
2377</tr>
2378<tr id="i369" class="rowColor">
2379<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/DefaultTrackSelector.SelectionOverride.html" title="class in com.google.android.exoplayer2.trackselection">DefaultTrackSelector.SelectionOverride</a></td>
2380<th class="colLast" scope="row">
2381<div class="block">A track selection override.</div>
2382</th>
2383</tr>
2384<tr id="i370" class="altColor">
2385<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/DefaultTsPayloadReaderFactory.html" title="class in com.google.android.exoplayer2.extractor.ts">DefaultTsPayloadReaderFactory</a></td>
2386<th class="colLast" scope="row">
2387<div class="block">Default <a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>TsPayloadReader.Factory</code></a> implementation.</div>
2388</th>
2389</tr>
2390<tr id="i371" class="rowColor">
2391<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/DefaultTsPayloadReaderFactory.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.ts">DefaultTsPayloadReaderFactory.Flags</a></td>
2392<th class="colLast" scope="row">
2393<div class="block">Flags controlling elementary stream readers' behavior.</div>
2394</th>
2395</tr>
2396<tr id="i372" class="altColor">
2397<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/Descriptor.html" title="class in com.google.android.exoplayer2.source.dash.manifest">Descriptor</a></td>
2398<th class="colLast" scope="row">
2399<div class="block">A descriptor, as defined by ISO 23009-1, 2nd edition, 5.8.2.</div>
2400</th>
2401</tr>
2402<tr id="i373" class="rowColor">
2403<td class="colFirst"><a href="com/google/android/exoplayer2/DeviceInfo.html" title="class in com.google.android.exoplayer2">DeviceInfo</a></td>
2404<th class="colLast" scope="row">
2405<div class="block">Information about the playback device.</div>
2406</th>
2407</tr>
2408<tr id="i374" class="altColor">
2409<td class="colFirst"><a href="com/google/android/exoplayer2/DeviceInfo.PlaybackType.html" title="annotation in com.google.android.exoplayer2">DeviceInfo.PlaybackType</a></td>
2410<th class="colLast" scope="row">
2411<div class="block">Types of playback.</div>
2412</th>
2413</tr>
2414<tr id="i375" class="rowColor">
2415<td class="colFirst"><a href="com/google/android/exoplayer2/video/DolbyVisionConfig.html" title="class in com.google.android.exoplayer2.video">DolbyVisionConfig</a></td>
2416<th class="colLast" scope="row">
2417<div class="block">Dolby Vision configuration data.</div>
2418</th>
2419</tr>
2420<tr id="i376" class="altColor">
2421<td class="colFirst"><a href="com/google/android/exoplayer2/offline/Download.html" title="class in com.google.android.exoplayer2.offline">Download</a></td>
2422<th class="colLast" scope="row">
2423<div class="block">Represents state of a download.</div>
2424</th>
2425</tr>
2426<tr id="i377" class="rowColor">
2427<td class="colFirst"><a href="com/google/android/exoplayer2/offline/Download.FailureReason.html" title="annotation in com.google.android.exoplayer2.offline">Download.FailureReason</a></td>
2428<th class="colLast" scope="row">
2429<div class="block">Failure reasons.</div>
2430</th>
2431</tr>
2432<tr id="i378" class="altColor">
2433<td class="colFirst"><a href="com/google/android/exoplayer2/offline/Download.State.html" title="annotation in com.google.android.exoplayer2.offline">Download.State</a></td>
2434<th class="colLast" scope="row">
2435<div class="block">Download states.</div>
2436</th>
2437</tr>
2438<tr id="i379" class="rowColor">
2439<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DownloadBuilder.html" title="class in com.google.android.exoplayer2.testutil">DownloadBuilder</a></td>
2440<th class="colLast" scope="row">
2441<div class="block">Builder for <a href="com/google/android/exoplayer2/offline/Download.html" title="class in com.google.android.exoplayer2.offline"><code>Download</code></a>.</div>
2442</th>
2443</tr>
2444<tr id="i380" class="altColor">
2445<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadCursor.html" title="interface in com.google.android.exoplayer2.offline">DownloadCursor</a></td>
2446<th class="colLast" scope="row">
2447<div class="block">Provides random read-write access to the result set returned by a database query.</div>
2448</th>
2449</tr>
2450<tr id="i381" class="rowColor">
2451<td class="colFirst"><a href="com/google/android/exoplayer2/offline/Downloader.html" title="interface in com.google.android.exoplayer2.offline">Downloader</a></td>
2452<th class="colLast" scope="row">
2453<div class="block">Downloads and removes a piece of content.</div>
2454</th>
2455</tr>
2456<tr id="i382" class="altColor">
2457<td class="colFirst"><a href="com/google/android/exoplayer2/offline/Downloader.ProgressListener.html" title="interface in com.google.android.exoplayer2.offline">Downloader.ProgressListener</a></td>
2458<th class="colLast" scope="row">
2459<div class="block">Receives progress updates during download operations.</div>
2460</th>
2461</tr>
2462<tr id="i383" class="rowColor">
2463<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloaderFactory.html" title="interface in com.google.android.exoplayer2.offline">DownloaderFactory</a></td>
2464<th class="colLast" scope="row">
2465<div class="block">Creates <a href="com/google/android/exoplayer2/offline/Downloader.html" title="interface in com.google.android.exoplayer2.offline"><code>Downloaders</code></a> for given <a href="com/google/android/exoplayer2/offline/DownloadRequest.html" title="class in com.google.android.exoplayer2.offline"><code>DownloadRequests</code></a>.</div>
2466</th>
2467</tr>
2468<tr id="i384" class="altColor">
2469<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadException.html" title="class in com.google.android.exoplayer2.offline">DownloadException</a></td>
2470<th class="colLast" scope="row">
2471<div class="block">Thrown on an error during downloading.</div>
2472</th>
2473</tr>
2474<tr id="i385" class="rowColor">
2475<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadHelper.html" title="class in com.google.android.exoplayer2.offline">DownloadHelper</a></td>
2476<th class="colLast" scope="row">
2477<div class="block">A helper for initializing and removing downloads.</div>
2478</th>
2479</tr>
2480<tr id="i386" class="altColor">
2481<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadHelper.Callback.html" title="interface in com.google.android.exoplayer2.offline">DownloadHelper.Callback</a></td>
2482<th class="colLast" scope="row">
2483<div class="block">A callback to be notified when the <a href="com/google/android/exoplayer2/offline/DownloadHelper.html" title="class in com.google.android.exoplayer2.offline"><code>DownloadHelper</code></a> is prepared.</div>
2484</th>
2485</tr>
2486<tr id="i387" class="rowColor">
2487<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadHelper.LiveContentUnsupportedException.html" title="class in com.google.android.exoplayer2.offline">DownloadHelper.LiveContentUnsupportedException</a></td>
2488<th class="colLast" scope="row">
2489<div class="block">Thrown at an attempt to download live content.</div>
2490</th>
2491</tr>
2492<tr id="i388" class="altColor">
2493<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadIndex.html" title="interface in com.google.android.exoplayer2.offline">DownloadIndex</a></td>
2494<th class="colLast" scope="row">
2495<div class="block">An index of <a href="com/google/android/exoplayer2/offline/Download.html" title="class in com.google.android.exoplayer2.offline"><code>Downloads</code></a>.</div>
2496</th>
2497</tr>
2498<tr id="i389" class="rowColor">
2499<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadManager.html" title="class in com.google.android.exoplayer2.offline">DownloadManager</a></td>
2500<th class="colLast" scope="row">
2501<div class="block">Manages downloads.</div>
2502</th>
2503</tr>
2504<tr id="i390" class="altColor">
2505<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadManager.Listener.html" title="interface in com.google.android.exoplayer2.offline">DownloadManager.Listener</a></td>
2506<th class="colLast" scope="row">
2507<div class="block">Listener for <a href="com/google/android/exoplayer2/offline/DownloadManager.html" title="class in com.google.android.exoplayer2.offline"><code>DownloadManager</code></a> events.</div>
2508</th>
2509</tr>
2510<tr id="i391" class="rowColor">
2511<td class="colFirst"><a href="com/google/android/exoplayer2/ui/DownloadNotificationHelper.html" title="class in com.google.android.exoplayer2.ui">DownloadNotificationHelper</a></td>
2512<th class="colLast" scope="row">
2513<div class="block">Helper for creating download notifications.</div>
2514</th>
2515</tr>
2516<tr id="i392" class="altColor">
2517<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadProgress.html" title="class in com.google.android.exoplayer2.offline">DownloadProgress</a></td>
2518<th class="colLast" scope="row">
2519<div class="block">Mutable <a href="com/google/android/exoplayer2/offline/Download.html" title="class in com.google.android.exoplayer2.offline"><code>Download</code></a> progress.</div>
2520</th>
2521</tr>
2522<tr id="i393" class="rowColor">
2523<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadRequest.html" title="class in com.google.android.exoplayer2.offline">DownloadRequest</a></td>
2524<th class="colLast" scope="row">
2525<div class="block">Defines content to be downloaded.</div>
2526</th>
2527</tr>
2528<tr id="i394" class="altColor">
2529<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadRequest.Builder.html" title="class in com.google.android.exoplayer2.offline">DownloadRequest.Builder</a></td>
2530<th class="colLast" scope="row">
2531<div class="block">A builder for download requests.</div>
2532</th>
2533</tr>
2534<tr id="i395" class="rowColor">
2535<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadRequest.UnsupportedRequestException.html" title="class in com.google.android.exoplayer2.offline">DownloadRequest.UnsupportedRequestException</a></td>
2536<th class="colLast" scope="row">
2537<div class="block">Thrown when the encoded request data belongs to an unsupported request type.</div>
2538</th>
2539</tr>
2540<tr id="i396" class="altColor">
2541<td class="colFirst"><a href="com/google/android/exoplayer2/offline/DownloadService.html" title="class in com.google.android.exoplayer2.offline">DownloadService</a></td>
2542<th class="colLast" scope="row">
2543<div class="block">A <a href="https://developer.android.com/reference/android/app/Service.html" title="class or interface in android.app" class="externalLink" target="_top"><code>Service</code></a> for downloading media.</div>
2544</th>
2545</tr>
2546<tr id="i397" class="rowColor">
2547<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmInitData.html" title="class in com.google.android.exoplayer2.drm">DrmInitData</a></td>
2548<th class="colLast" scope="row">
2549<div class="block">Initialization data for one or more DRM schemes.</div>
2550</th>
2551</tr>
2552<tr id="i398" class="altColor">
2553<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmInitData.SchemeData.html" title="class in com.google.android.exoplayer2.drm">DrmInitData.SchemeData</a></td>
2554<th class="colLast" scope="row">
2555<div class="block">Scheme initialization data.</div>
2556</th>
2557</tr>
2558<tr id="i399" class="rowColor">
2559<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSession.html" title="interface in com.google.android.exoplayer2.drm">DrmSession</a></td>
2560<th class="colLast" scope="row">
2561<div class="block">A DRM session.</div>
2562</th>
2563</tr>
2564<tr id="i400" class="altColor">
2565<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSession.DrmSessionException.html" title="class in com.google.android.exoplayer2.drm">DrmSession.DrmSessionException</a></td>
2566<th class="colLast" scope="row">
2567<div class="block">Wraps the throwable which is the cause of the error state.</div>
2568</th>
2569</tr>
2570<tr id="i401" class="rowColor">
2571<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSession.State.html" title="annotation in com.google.android.exoplayer2.drm">DrmSession.State</a></td>
2572<th class="colLast" scope="row">
2573<div class="block">The state of the DRM session.</div>
2574</th>
2575</tr>
2576<tr id="i402" class="altColor">
2577<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSessionEventListener.html" title="interface in com.google.android.exoplayer2.drm">DrmSessionEventListener</a></td>
2578<th class="colLast" scope="row">
2579<div class="block">Listener of <a href="com/google/android/exoplayer2/drm/DrmSessionManager.html" title="interface in com.google.android.exoplayer2.drm"><code>DrmSessionManager</code></a> events.</div>
2580</th>
2581</tr>
2582<tr id="i403" class="rowColor">
2583<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSessionEventListener.EventDispatcher.html" title="class in com.google.android.exoplayer2.drm">DrmSessionEventListener.EventDispatcher</a></td>
2584<th class="colLast" scope="row">
2585<div class="block">Dispatches events to <a href="com/google/android/exoplayer2/drm/DrmSessionEventListener.html" title="interface in com.google.android.exoplayer2.drm"><code>DrmSessionEventListeners</code></a>.</div>
2586</th>
2587</tr>
2588<tr id="i404" class="altColor">
2589<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSessionManager.html" title="interface in com.google.android.exoplayer2.drm">DrmSessionManager</a></td>
2590<th class="colLast" scope="row">
2591<div class="block">Manages a DRM session.</div>
2592</th>
2593</tr>
2594<tr id="i405" class="rowColor">
2595<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSessionManager.DrmSessionReference.html" title="interface in com.google.android.exoplayer2.drm">DrmSessionManager.DrmSessionReference</a></td>
2596<th class="colLast" scope="row">
2597<div class="block">Represents a single reference count of a <a href="com/google/android/exoplayer2/drm/DrmSession.html" title="interface in com.google.android.exoplayer2.drm"><code>DrmSession</code></a>, while deliberately not giving
2598 access to the underlying session.</div>
2599</th>
2600</tr>
2601<tr id="i406" class="altColor">
2602<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmSessionManagerProvider.html" title="interface in com.google.android.exoplayer2.drm">DrmSessionManagerProvider</a></td>
2603<th class="colLast" scope="row">
2604<div class="block">A provider to obtain a <a href="com/google/android/exoplayer2/drm/DrmSessionManager.html" title="interface in com.google.android.exoplayer2.drm"><code>DrmSessionManager</code></a> suitable for playing the content described by a
2605 <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</div>
2606</th>
2607</tr>
2608<tr id="i407" class="rowColor">
2609<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmUtil.html" title="class in com.google.android.exoplayer2.drm">DrmUtil</a></td>
2610<th class="colLast" scope="row">
2611<div class="block">DRM-related utility methods.</div>
2612</th>
2613</tr>
2614<tr id="i408" class="altColor">
2615<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DrmUtil.ErrorSource.html" title="annotation in com.google.android.exoplayer2.drm">DrmUtil.ErrorSource</a></td>
2616<th class="colLast" scope="row">
2617<div class="block">Identifies the operation which caused a DRM-related error.</div>
2618</th>
2619</tr>
2620<tr id="i409" class="rowColor">
2621<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/DtsReader.html" title="class in com.google.android.exoplayer2.extractor.ts">DtsReader</a></td>
2622<th class="colLast" scope="row">
2623<div class="block">Parses a continuous DTS byte stream and extracts individual samples.</div>
2624</th>
2625</tr>
2626<tr id="i410" class="altColor">
2627<td class="colFirst"><a href="com/google/android/exoplayer2/audio/DtsUtil.html" title="class in com.google.android.exoplayer2.audio">DtsUtil</a></td>
2628<th class="colLast" scope="row">
2629<div class="block">Utility methods for parsing DTS frames.</div>
2630</th>
2631</tr>
2632<tr id="i411" class="rowColor">
2633<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/DummyDataSource.html" title="class in com.google.android.exoplayer2.upstream">DummyDataSource</a></td>
2634<th class="colLast" scope="row">
2635<div class="block">A DataSource which provides no data.</div>
2636</th>
2637</tr>
2638<tr id="i412" class="altColor">
2639<td class="colFirst"><a href="com/google/android/exoplayer2/drm/DummyExoMediaDrm.html" title="class in com.google.android.exoplayer2.drm">DummyExoMediaDrm</a></td>
2640<th class="colLast" scope="row">
2641<div class="block">An <a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm"><code>ExoMediaDrm</code></a> that does not support any protection schemes.</div>
2642</th>
2643</tr>
2644<tr id="i413" class="rowColor">
2645<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/DummyExtractorOutput.html" title="class in com.google.android.exoplayer2.extractor">DummyExtractorOutput</a></td>
2646<th class="colLast" scope="row">
2647<div class="block">A fake <a href="com/google/android/exoplayer2/extractor/ExtractorOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>ExtractorOutput</code></a> implementation.</div>
2648</th>
2649</tr>
2650<tr id="i414" class="altColor">
2651<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DummyMainThread.html" title="class in com.google.android.exoplayer2.testutil">DummyMainThread</a></td>
2652<th class="colLast" scope="row">
2653<div class="block">Helper class to simulate main/UI thread in tests.</div>
2654</th>
2655</tr>
2656<tr id="i415" class="rowColor">
2657<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DummyMainThread.TestRunnable.html" title="interface in com.google.android.exoplayer2.testutil">DummyMainThread.TestRunnable</a></td>
2658<th class="colLast" scope="row">
2659<div class="block"><a href="https://developer.android.com/reference/java/lang/Runnable.html" title="class or interface in java.lang" class="externalLink" target="_top"><code>Runnable</code></a> variant which can throw a checked exception.</div>
2660</th>
2661</tr>
2662<tr id="i416" class="altColor">
2663<td class="colFirst"><a href="com/google/android/exoplayer2/video/DummySurface.html" title="class in com.google.android.exoplayer2.video">DummySurface</a></td>
2664<th class="colLast" scope="row">
2665<div class="block">A dummy <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>.</div>
2666</th>
2667</tr>
2668<tr id="i417" class="rowColor">
2669<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/DummyTrackOutput.html" title="class in com.google.android.exoplayer2.extractor">DummyTrackOutput</a></td>
2670<th class="colLast" scope="row">
2671<div class="block">A fake <a href="com/google/android/exoplayer2/extractor/TrackOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>TrackOutput</code></a> implementation.</div>
2672</th>
2673</tr>
2674<tr id="i418" class="altColor">
2675<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DumpableFormat.html" title="class in com.google.android.exoplayer2.testutil">DumpableFormat</a></td>
2676<th class="colLast" scope="row">
2677<div class="block">Wraps a <a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2"><code>Format</code></a> to allow dumping it.</div>
2678</th>
2679</tr>
2680<tr id="i419" class="rowColor">
2681<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Dumper.html" title="class in com.google.android.exoplayer2.testutil">Dumper</a></td>
2682<th class="colLast" scope="row">
2683<div class="block">Helper utility to dump field values.</div>
2684</th>
2685</tr>
2686<tr id="i420" class="altColor">
2687<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/Dumper.Dumpable.html" title="interface in com.google.android.exoplayer2.testutil">Dumper.Dumpable</a></td>
2688<th class="colLast" scope="row">
2689<div class="block">Provides custom dump method.</div>
2690</th>
2691</tr>
2692<tr id="i421" class="rowColor">
2693<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/DumpFileAsserts.html" title="class in com.google.android.exoplayer2.testutil">DumpFileAsserts</a></td>
2694<th class="colLast" scope="row">
2695<div class="block">Helper class to enable assertions based on golden-data dump files.</div>
2696</th>
2697</tr>
2698<tr id="i422" class="altColor">
2699<td class="colFirst"><a href="com/google/android/exoplayer2/text/dvb/DvbDecoder.html" title="class in com.google.android.exoplayer2.text.dvb">DvbDecoder</a></td>
2700<th class="colLast" scope="row">
2701<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for DVB subtitles.</div>
2702</th>
2703</tr>
2704<tr id="i423" class="rowColor">
2705<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/DvbSubtitleReader.html" title="class in com.google.android.exoplayer2.extractor.ts">DvbSubtitleReader</a></td>
2706<th class="colLast" scope="row">
2707<div class="block">Parses DVB subtitle data and extracts individual frames.</div>
2708</th>
2709</tr>
2710<tr id="i424" class="altColor">
2711<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mkv/EbmlProcessor.html" title="interface in com.google.android.exoplayer2.extractor.mkv">EbmlProcessor</a></td>
2712<th class="colLast" scope="row">
2713<div class="block">Defines EBML element IDs/types and processes events.</div>
2714</th>
2715</tr>
2716<tr id="i425" class="rowColor">
2717<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mkv/EbmlProcessor.ElementType.html" title="annotation in com.google.android.exoplayer2.extractor.mkv">EbmlProcessor.ElementType</a></td>
2718<th class="colLast" scope="row">
2719<div class="block">EBML element types.</div>
2720</th>
2721</tr>
2722<tr id="i426" class="altColor">
2723<td class="colFirst"><a href="com/google/android/exoplayer2/util/EGLSurfaceTexture.html" title="class in com.google.android.exoplayer2.util">EGLSurfaceTexture</a></td>
2724<th class="colLast" scope="row">
2725<div class="block">Generates a <a href="https://developer.android.com/reference/android/graphics/SurfaceTexture.html" title="class or interface in android.graphics" class="externalLink" target="_top"><code>SurfaceTexture</code></a> using EGL/GLES functions.</div>
2726</th>
2727</tr>
2728<tr id="i427" class="rowColor">
2729<td class="colFirst"><a href="com/google/android/exoplayer2/util/EGLSurfaceTexture.GlException.html" title="class in com.google.android.exoplayer2.util">EGLSurfaceTexture.GlException</a></td>
2730<th class="colLast" scope="row">
2731<div class="block">A runtime exception to be thrown if some EGL operations failed.</div>
2732</th>
2733</tr>
2734<tr id="i428" class="altColor">
2735<td class="colFirst"><a href="com/google/android/exoplayer2/util/EGLSurfaceTexture.SecureMode.html" title="annotation in com.google.android.exoplayer2.util">EGLSurfaceTexture.SecureMode</a></td>
2736<th class="colLast" scope="row">
2737<div class="block">Secure mode to be used by the EGL surface and context.</div>
2738</th>
2739</tr>
2740<tr id="i429" class="rowColor">
2741<td class="colFirst"><a href="com/google/android/exoplayer2/util/EGLSurfaceTexture.TextureImageListener.html" title="interface in com.google.android.exoplayer2.util">EGLSurfaceTexture.TextureImageListener</a></td>
2742<th class="colLast" scope="row">
2743<div class="block">Listener to be called when the texture image on <a href="https://developer.android.com/reference/android/graphics/SurfaceTexture.html" title="class or interface in android.graphics" class="externalLink" target="_top"><code>SurfaceTexture</code></a> has been updated.</div>
2744</th>
2745</tr>
2746<tr id="i430" class="altColor">
2747<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/ElementaryStreamReader.html" title="interface in com.google.android.exoplayer2.extractor.ts">ElementaryStreamReader</a></td>
2748<th class="colLast" scope="row">
2749<div class="block">Extracts individual samples from an elementary media stream, preserving original order.</div>
2750</th>
2751</tr>
2752<tr id="i431" class="rowColor">
2753<td class="colFirst"><a href="com/google/android/exoplayer2/source/EmptySampleStream.html" title="class in com.google.android.exoplayer2.source">EmptySampleStream</a></td>
2754<th class="colLast" scope="row">
2755<div class="block">An empty <a href="com/google/android/exoplayer2/source/SampleStream.html" title="interface in com.google.android.exoplayer2.source"><code>SampleStream</code></a>.</div>
2756</th>
2757</tr>
2758<tr id="i432" class="altColor">
2759<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/EncoderUtil.html" title="class in com.google.android.exoplayer2.transformer">EncoderUtil</a></td>
2760<th class="colLast" scope="row">
2761<div class="block">Utility methods for <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> encoders.</div>
2762</th>
2763</tr>
2764<tr id="i433" class="rowColor">
2765<td class="colFirst"><a href="com/google/android/exoplayer2/util/ErrorMessageProvider.html" title="interface in com.google.android.exoplayer2.util">ErrorMessageProvider</a>&lt;<a href="com/google/android/exoplayer2/util/ErrorMessageProvider.html" title="type parameter in ErrorMessageProvider">T</a> extends <a href="https://developer.android.com/reference/java/lang/Throwable.html" title="class or interface in java.lang" class="externalLink" target="_top">Throwable</a>&gt;</td>
2766<th class="colLast" scope="row">
2767<div class="block">Converts throwables into error codes and user readable error messages.</div>
2768</th>
2769</tr>
2770<tr id="i434" class="altColor">
2771<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ErrorStateDrmSession.html" title="class in com.google.android.exoplayer2.drm">ErrorStateDrmSession</a></td>
2772<th class="colLast" scope="row">
2773<div class="block">A <a href="com/google/android/exoplayer2/drm/DrmSession.html" title="interface in com.google.android.exoplayer2.drm"><code>DrmSession</code></a> that's in a terminal error state.</div>
2774</th>
2775</tr>
2776<tr id="i435" class="rowColor">
2777<td class="colFirst"><a href="com/google/android/exoplayer2/util/EventLogger.html" title="class in com.google.android.exoplayer2.util">EventLogger</a></td>
2778<th class="colLast" scope="row">
2779<div class="block">Logs events from <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> and other core components using <a href="com/google/android/exoplayer2/util/Log.html" title="class in com.google.android.exoplayer2.util"><code>Log</code></a>.</div>
2780</th>
2781</tr>
2782<tr id="i436" class="altColor">
2783<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/emsg/EventMessage.html" title="class in com.google.android.exoplayer2.metadata.emsg">EventMessage</a></td>
2784<th class="colLast" scope="row">
2785<div class="block">An Event Message (emsg) as defined in ISO 23009-1.</div>
2786</th>
2787</tr>
2788<tr id="i437" class="rowColor">
2789<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/emsg/EventMessageDecoder.html" title="class in com.google.android.exoplayer2.metadata.emsg">EventMessageDecoder</a></td>
2790<th class="colLast" scope="row">
2791<div class="block">Decodes data encoded by <a href="com/google/android/exoplayer2/metadata/emsg/EventMessageEncoder.html" title="class in com.google.android.exoplayer2.metadata.emsg"><code>EventMessageEncoder</code></a>.</div>
2792</th>
2793</tr>
2794<tr id="i438" class="altColor">
2795<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/emsg/EventMessageEncoder.html" title="class in com.google.android.exoplayer2.metadata.emsg">EventMessageEncoder</a></td>
2796<th class="colLast" scope="row">
2797<div class="block">Encodes data that can be decoded by <a href="com/google/android/exoplayer2/metadata/emsg/EventMessageDecoder.html" title="class in com.google.android.exoplayer2.metadata.emsg"><code>EventMessageDecoder</code></a>.</div>
2798</th>
2799</tr>
2800<tr id="i439" class="rowColor">
2801<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/EventStream.html" title="class in com.google.android.exoplayer2.source.dash.manifest">EventStream</a></td>
2802<th class="colLast" scope="row">
2803<div class="block">A DASH in-MPD EventStream element, as defined by ISO/IEC 23009-1, 2nd edition, section 5.10.</div>
2804</th>
2805</tr>
2806<tr id="i440" class="altColor">
2807<td class="colFirst"><a href="com/google/android/exoplayer2/database/ExoDatabaseProvider.html" title="class in com.google.android.exoplayer2.database">ExoDatabaseProvider</a></td>
2808<th class="colLast" scope="row">Deprecated.
2809<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/database/StandaloneDatabaseProvider.html" title="class in com.google.android.exoplayer2.database"><code>StandaloneDatabaseProvider</code></a>.</div>
2810</th>
2811</tr>
2812<tr id="i441" class="rowColor">
2813<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExoHostedTest.html" title="class in com.google.android.exoplayer2.testutil">ExoHostedTest</a></td>
2814<th class="colLast" scope="row">
2815<div class="block">A <a href="com/google/android/exoplayer2/testutil/HostActivity.HostedTest.html" title="interface in com.google.android.exoplayer2.testutil"><code>HostActivity.HostedTest</code></a> for <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> playback tests.</div>
2816</th>
2817</tr>
2818<tr id="i442" class="altColor">
2819<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm">ExoMediaDrm</a></td>
2820<th class="colLast" scope="row">
2821<div class="block">Used to obtain keys for decrypting protected media streams.</div>
2822</th>
2823</tr>
2824<tr id="i443" class="rowColor">
2825<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.AppManagedProvider.html" title="class in com.google.android.exoplayer2.drm">ExoMediaDrm.AppManagedProvider</a></td>
2826<th class="colLast" scope="row">
2827<div class="block">Provides an <a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm"><code>ExoMediaDrm</code></a> instance owned by the app.</div>
2828</th>
2829</tr>
2830<tr id="i444" class="altColor">
2831<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.KeyRequest.html" title="class in com.google.android.exoplayer2.drm">ExoMediaDrm.KeyRequest</a></td>
2832<th class="colLast" scope="row">
2833<div class="block">Contains data used to request keys from a license server.</div>
2834</th>
2835</tr>
2836<tr id="i445" class="rowColor">
2837<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.KeyRequest.RequestType.html" title="annotation in com.google.android.exoplayer2.drm">ExoMediaDrm.KeyRequest.RequestType</a></td>
2838<th class="colLast" scope="row">
2839<div class="block">Key request types.</div>
2840</th>
2841</tr>
2842<tr id="i446" class="altColor">
2843<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.KeyStatus.html" title="class in com.google.android.exoplayer2.drm">ExoMediaDrm.KeyStatus</a></td>
2844<th class="colLast" scope="row">
2845<div class="block">Defines the status of a key.</div>
2846</th>
2847</tr>
2848<tr id="i447" class="rowColor">
2849<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.OnEventListener.html" title="interface in com.google.android.exoplayer2.drm">ExoMediaDrm.OnEventListener</a></td>
2850<th class="colLast" scope="row">
2851<div class="block">Called when a DRM event occurs.</div>
2852</th>
2853</tr>
2854<tr id="i448" class="altColor">
2855<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.OnExpirationUpdateListener.html" title="interface in com.google.android.exoplayer2.drm">ExoMediaDrm.OnExpirationUpdateListener</a></td>
2856<th class="colLast" scope="row">
2857<div class="block">Called when a session expiration update occurs.</div>
2858</th>
2859</tr>
2860<tr id="i449" class="rowColor">
2861<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.OnKeyStatusChangeListener.html" title="interface in com.google.android.exoplayer2.drm">ExoMediaDrm.OnKeyStatusChangeListener</a></td>
2862<th class="colLast" scope="row">
2863<div class="block">Called when the keys in a DRM session change state.</div>
2864</th>
2865</tr>
2866<tr id="i450" class="altColor">
2867<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.Provider.html" title="interface in com.google.android.exoplayer2.drm">ExoMediaDrm.Provider</a></td>
2868<th class="colLast" scope="row">
2869<div class="block">Provider for <a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm"><code>ExoMediaDrm</code></a> instances.</div>
2870</th>
2871</tr>
2872<tr id="i451" class="rowColor">
2873<td class="colFirst"><a href="com/google/android/exoplayer2/drm/ExoMediaDrm.ProvisionRequest.html" title="class in com.google.android.exoplayer2.drm">ExoMediaDrm.ProvisionRequest</a></td>
2874<th class="colLast" scope="row">
2875<div class="block">Contains data to request a certificate from a provisioning server.</div>
2876</th>
2877</tr>
2878<tr id="i452" class="altColor">
2879<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlaybackException.html" title="class in com.google.android.exoplayer2">ExoPlaybackException</a></td>
2880<th class="colLast" scope="row">
2881<div class="block">Thrown when a non locally recoverable playback failure occurs.</div>
2882</th>
2883</tr>
2884<tr id="i453" class="rowColor">
2885<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlaybackException.Type.html" title="annotation in com.google.android.exoplayer2">ExoPlaybackException.Type</a></td>
2886<th class="colLast" scope="row">
2887<div class="block">The type of source that produced the error.</div>
2888</th>
2889</tr>
2890<tr id="i454" class="altColor">
2891<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></td>
2892<th class="colLast" scope="row">
2893<div class="block">An extensible media player that plays <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>s.</div>
2894</th>
2895</tr>
2896<tr id="i455" class="rowColor">
2897<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayer.AudioComponent.html" title="interface in com.google.android.exoplayer2">ExoPlayer.AudioComponent</a></td>
2898<th class="colLast" scope="row">Deprecated.
2899<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a>, as the <a href="com/google/android/exoplayer2/ExoPlayer.AudioComponent.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer.AudioComponent</code></a> methods are defined by that
2900     interface.</div>
2901</th>
2902</tr>
2903<tr id="i456" class="altColor">
2904<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayer.AudioOffloadListener.html" title="interface in com.google.android.exoplayer2">ExoPlayer.AudioOffloadListener</a></td>
2905<th class="colLast" scope="row">
2906<div class="block">A listener for audio offload events.</div>
2907</th>
2908</tr>
2909<tr id="i457" class="rowColor">
2910<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayer.Builder.html" title="class in com.google.android.exoplayer2">ExoPlayer.Builder</a></td>
2911<th class="colLast" scope="row">
2912<div class="block">A builder for <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> instances.</div>
2913</th>
2914</tr>
2915<tr id="i458" class="altColor">
2916<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayer.DeviceComponent.html" title="interface in com.google.android.exoplayer2">ExoPlayer.DeviceComponent</a></td>
2917<th class="colLast" scope="row">Deprecated.
2918<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>, as the <a href="com/google/android/exoplayer2/ExoPlayer.DeviceComponent.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer.DeviceComponent</code></a> methods are defined by that
2919     interface.</div>
2920</th>
2921</tr>
2922<tr id="i459" class="rowColor">
2923<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayer.TextComponent.html" title="interface in com.google.android.exoplayer2">ExoPlayer.TextComponent</a></td>
2924<th class="colLast" scope="row">Deprecated.
2925<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>, as the <a href="com/google/android/exoplayer2/ExoPlayer.TextComponent.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer.TextComponent</code></a> methods are defined by that
2926     interface.</div>
2927</th>
2928</tr>
2929<tr id="i460" class="altColor">
2930<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayer.VideoComponent.html" title="interface in com.google.android.exoplayer2">ExoPlayer.VideoComponent</a></td>
2931<th class="colLast" scope="row">Deprecated.
2932<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a>, as the <a href="com/google/android/exoplayer2/ExoPlayer.VideoComponent.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer.VideoComponent</code></a> methods are defined by that
2933     interface.</div>
2934</th>
2935</tr>
2936<tr id="i461" class="rowColor">
2937<td class="colFirst"><a href="com/google/android/exoplayer2/text/ExoplayerCuesDecoder.html" title="class in com.google.android.exoplayer2.text">ExoplayerCuesDecoder</a></td>
2938<th class="colLast" scope="row">
2939<div class="block">A <a href="com/google/android/exoplayer2/text/SubtitleDecoder.html" title="interface in com.google.android.exoplayer2.text"><code>SubtitleDecoder</code></a> that decodes subtitle samples of type <a href="com/google/android/exoplayer2/util/MimeTypes.html#TEXT_EXOPLAYER_CUES"><code>MimeTypes.TEXT_EXOPLAYER_CUES</code></a></div>
2940</th>
2941</tr>
2942<tr id="i462" class="altColor">
2943<td class="colFirst"><a href="com/google/android/exoplayer2/ExoPlayerLibraryInfo.html" title="class in com.google.android.exoplayer2">ExoPlayerLibraryInfo</a></td>
2944<th class="colLast" scope="row">
2945<div class="block">Information about the media libraries.</div>
2946</th>
2947</tr>
2948<tr id="i463" class="rowColor">
2949<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExoPlayerTestRunner.html" title="class in com.google.android.exoplayer2.testutil">ExoPlayerTestRunner</a></td>
2950<th class="colLast" scope="row">
2951<div class="block">Helper class to run an ExoPlayer test.</div>
2952</th>
2953</tr>
2954<tr id="i464" class="altColor">
2955<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExoPlayerTestRunner.Builder.html" title="class in com.google.android.exoplayer2.testutil">ExoPlayerTestRunner.Builder</a></td>
2956<th class="colLast" scope="row">
2957<div class="block">Builder to set-up an <a href="com/google/android/exoplayer2/testutil/ExoPlayerTestRunner.html" title="class in com.google.android.exoplayer2.testutil"><code>ExoPlayerTestRunner</code></a>.</div>
2958</th>
2959</tr>
2960<tr id="i465" class="rowColor">
2961<td class="colFirst"><a href="com/google/android/exoplayer2/ExoTimeoutException.html" title="class in com.google.android.exoplayer2">ExoTimeoutException</a></td>
2962<th class="colLast" scope="row">
2963<div class="block">A timeout of an operation on the ExoPlayer playback thread.</div>
2964</th>
2965</tr>
2966<tr id="i466" class="altColor">
2967<td class="colFirst"><a href="com/google/android/exoplayer2/ExoTimeoutException.TimeoutOperation.html" title="annotation in com.google.android.exoplayer2">ExoTimeoutException.TimeoutOperation</a></td>
2968<th class="colLast" scope="row">
2969<div class="block">The operation which produced the timeout error.</div>
2970</th>
2971</tr>
2972<tr id="i467" class="rowColor">
2973<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection">ExoTrackSelection</a></td>
2974<th class="colLast" scope="row">
2975<div class="block">A <a href="com/google/android/exoplayer2/trackselection/TrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>TrackSelection</code></a> that can change the individually selected track as a result of calling
2976 <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html#updateSelectedTrack(long,long,long,java.util.List,com.google.android.exoplayer2.source.chunk.MediaChunkIterator%5B%5D)"><code>ExoTrackSelection.updateSelectedTrack(long, long, long, List, MediaChunkIterator[])</code></a> or <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html#evaluateQueueSize(long,java.util.List)"><code>ExoTrackSelection.evaluateQueueSize(long, List)</code></a>.</div>
2977</th>
2978</tr>
2979<tr id="i468" class="altColor">
2980<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.Definition.html" title="class in com.google.android.exoplayer2.trackselection">ExoTrackSelection.Definition</a></td>
2981<th class="colLast" scope="row">
2982<div class="block">Contains of a subset of selected tracks belonging to a <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroup</code></a>.</div>
2983</th>
2984</tr>
2985<tr id="i469" class="rowColor">
2986<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.Factory.html" title="interface in com.google.android.exoplayer2.trackselection">ExoTrackSelection.Factory</a></td>
2987<th class="colLast" scope="row">
2988<div class="block">Factory for <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>ExoTrackSelection</code></a> instances.</div>
2989</th>
2990</tr>
2991<tr id="i470" class="altColor">
2992<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor">Extractor</a></td>
2993<th class="colLast" scope="row">
2994<div class="block">Extracts media data from a container format.</div>
2995</th>
2996</tr>
2997<tr id="i471" class="rowColor">
2998<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/Extractor.ReadResult.html" title="annotation in com.google.android.exoplayer2.extractor">Extractor.ReadResult</a></td>
2999<th class="colLast" scope="row">
3000<div class="block">Result values that can be returned by <a href="com/google/android/exoplayer2/extractor/Extractor.html#read(com.google.android.exoplayer2.extractor.ExtractorInput,com.google.android.exoplayer2.extractor.PositionHolder)"><code>Extractor.read(ExtractorInput, PositionHolder)</code></a>.</div>
3001</th>
3002</tr>
3003<tr id="i472" class="altColor">
3004<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExtractorAsserts.html" title="class in com.google.android.exoplayer2.testutil">ExtractorAsserts</a></td>
3005<th class="colLast" scope="row">
3006<div class="block">Assertion methods for <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a>.</div>
3007</th>
3008</tr>
3009<tr id="i473" class="rowColor">
3010<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExtractorAsserts.AssertionConfig.html" title="class in com.google.android.exoplayer2.testutil">ExtractorAsserts.AssertionConfig</a></td>
3011<th class="colLast" scope="row">
3012<div class="block">A config for the assertions made (e.g.</div>
3013</th>
3014</tr>
3015<tr id="i474" class="altColor">
3016<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExtractorAsserts.AssertionConfig.Builder.html" title="class in com.google.android.exoplayer2.testutil">ExtractorAsserts.AssertionConfig.Builder</a></td>
3017<th class="colLast" scope="row">
3018<div class="block">Builder for <a href="com/google/android/exoplayer2/testutil/ExtractorAsserts.AssertionConfig.html" title="class in com.google.android.exoplayer2.testutil"><code>ExtractorAsserts.AssertionConfig</code></a> instances.</div>
3019</th>
3020</tr>
3021<tr id="i475" class="rowColor">
3022<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExtractorAsserts.ExtractorFactory.html" title="interface in com.google.android.exoplayer2.testutil">ExtractorAsserts.ExtractorFactory</a></td>
3023<th class="colLast" scope="row">
3024<div class="block">A factory for <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a> instances.</div>
3025</th>
3026</tr>
3027<tr id="i476" class="altColor">
3028<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/ExtractorAsserts.SimulationConfig.html" title="class in com.google.android.exoplayer2.testutil">ExtractorAsserts.SimulationConfig</a></td>
3029<th class="colLast" scope="row">
3030<div class="block">A config of different environments to simulate and extractor behaviours to test.</div>
3031</th>
3032</tr>
3033<tr id="i477" class="rowColor">
3034<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ExtractorInput.html" title="interface in com.google.android.exoplayer2.extractor">ExtractorInput</a></td>
3035<th class="colLast" scope="row">
3036<div class="block">Provides data to be consumed by an <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a>.</div>
3037</th>
3038</tr>
3039<tr id="i478" class="altColor">
3040<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ExtractorOutput.html" title="interface in com.google.android.exoplayer2.extractor">ExtractorOutput</a></td>
3041<th class="colLast" scope="row">
3042<div class="block">Receives stream level data extracted by an <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a>.</div>
3043</th>
3044</tr>
3045<tr id="i479" class="rowColor">
3046<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ExtractorsFactory.html" title="interface in com.google.android.exoplayer2.extractor">ExtractorsFactory</a></td>
3047<th class="colLast" scope="row">
3048<div class="block">Factory for arrays of <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a> instances.</div>
3049</th>
3050</tr>
3051<tr id="i480" class="altColor">
3052<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ExtractorUtil.html" title="class in com.google.android.exoplayer2.extractor">ExtractorUtil</a></td>
3053<th class="colLast" scope="row">
3054<div class="block">Extractor related utility methods.</div>
3055</th>
3056</tr>
3057<tr id="i481" class="rowColor">
3058<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FailOnCloseDataSink.html" title="class in com.google.android.exoplayer2.testutil">FailOnCloseDataSink</a></td>
3059<th class="colLast" scope="row">
3060<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSink.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSink</code></a> that can simulate caching the bytes being written to it, and then failing to
3061 persist them when <a href="com/google/android/exoplayer2/testutil/FailOnCloseDataSink.html#close()"><code>FailOnCloseDataSink.close()</code></a> is called.</div>
3062</th>
3063</tr>
3064<tr id="i482" class="altColor">
3065<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FailOnCloseDataSink.Factory.html" title="class in com.google.android.exoplayer2.testutil">FailOnCloseDataSink.Factory</a></td>
3066<th class="colLast" scope="row">
3067<div class="block">Factory to create a <a href="com/google/android/exoplayer2/testutil/FailOnCloseDataSink.html" title="class in com.google.android.exoplayer2.testutil"><code>FailOnCloseDataSink</code></a>.</div>
3068</th>
3069</tr>
3070<tr id="i483" class="rowColor">
3071<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeAdaptiveDataSet.html" title="class in com.google.android.exoplayer2.testutil">FakeAdaptiveDataSet</a></td>
3072<th class="colLast" scope="row">
3073<div class="block">Fake data set emulating the data of an adaptive media source.</div>
3074</th>
3075</tr>
3076<tr id="i484" class="altColor">
3077<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeAdaptiveDataSet.Factory.html" title="class in com.google.android.exoplayer2.testutil">FakeAdaptiveDataSet.Factory</a></td>
3078<th class="colLast" scope="row">
3079<div class="block">Factory for <a href="com/google/android/exoplayer2/testutil/FakeAdaptiveDataSet.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeAdaptiveDataSet</code></a>s.</div>
3080</th>
3081</tr>
3082<tr id="i485" class="rowColor">
3083<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeAdaptiveDataSet.Iterator.html" title="class in com.google.android.exoplayer2.testutil">FakeAdaptiveDataSet.Iterator</a></td>
3084<th class="colLast" scope="row">
3085<div class="block"><a href="com/google/android/exoplayer2/source/chunk/MediaChunkIterator.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>MediaChunkIterator</code></a> for the chunks defined by a fake adaptive data set.</div>
3086</th>
3087</tr>
3088<tr id="i486" class="altColor">
3089<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeAdaptiveMediaPeriod.html" title="class in com.google.android.exoplayer2.testutil">FakeAdaptiveMediaPeriod</a></td>
3090<th class="colLast" scope="row">
3091<div class="block">Fake <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source"><code>MediaPeriod</code></a> that provides tracks from the given <a href="com/google/android/exoplayer2/source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</div>
3092</th>
3093</tr>
3094<tr id="i487" class="rowColor">
3095<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeAdaptiveMediaSource.html" title="class in com.google.android.exoplayer2.testutil">FakeAdaptiveMediaSource</a></td>
3096<th class="colLast" scope="row">
3097<div class="block">Fake <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> that provides a given timeline.</div>
3098</th>
3099</tr>
3100<tr id="i488" class="altColor">
3101<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeAudioRenderer.html" title="class in com.google.android.exoplayer2.testutil">FakeAudioRenderer</a></td>
3102<th class="colLast" scope="row">
3103<div class="block">A <a href="com/google/android/exoplayer2/testutil/FakeRenderer.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeRenderer</code></a> that supports <a href="com/google/android/exoplayer2/C.html#TRACK_TYPE_AUDIO"><code>C.TRACK_TYPE_AUDIO</code></a>.</div>
3104</th>
3105</tr>
3106<tr id="i489" class="rowColor">
3107<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeChunkSource.html" title="class in com.google.android.exoplayer2.testutil">FakeChunkSource</a></td>
3108<th class="colLast" scope="row">
3109<div class="block">Fake <a href="com/google/android/exoplayer2/source/chunk/ChunkSource.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkSource</code></a> with adaptive media chunks of a given duration.</div>
3110</th>
3111</tr>
3112<tr id="i490" class="altColor">
3113<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeChunkSource.Factory.html" title="class in com.google.android.exoplayer2.testutil">FakeChunkSource.Factory</a></td>
3114<th class="colLast" scope="row">
3115<div class="block">Factory for a <a href="com/google/android/exoplayer2/testutil/FakeChunkSource.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeChunkSource</code></a>.</div>
3116</th>
3117</tr>
3118<tr id="i491" class="rowColor">
3119<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeClock.html" title="class in com.google.android.exoplayer2.testutil">FakeClock</a></td>
3120<th class="colLast" scope="row">
3121<div class="block">Fake <a href="com/google/android/exoplayer2/util/Clock.html" title="interface in com.google.android.exoplayer2.util"><code>Clock</code></a> implementation that allows to <a href="com/google/android/exoplayer2/testutil/FakeClock.html#advanceTime(long)"><code>advance the time</code></a>
3122 manually to trigger pending timed messages.</div>
3123</th>
3124</tr>
3125<tr id="i492" class="altColor">
3126<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeCryptoConfig.html" title="class in com.google.android.exoplayer2.testutil">FakeCryptoConfig</a></td>
3127<th class="colLast" scope="row">
3128<div class="block">Fake <a href="com/google/android/exoplayer2/decoder/CryptoConfig.html" title="interface in com.google.android.exoplayer2.decoder"><code>CryptoConfig</code></a>.</div>
3129</th>
3130</tr>
3131<tr id="i493" class="rowColor">
3132<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeDataSet.html" title="class in com.google.android.exoplayer2.testutil">FakeDataSet</a></td>
3133<th class="colLast" scope="row">
3134<div class="block">Collection of <a href="com/google/android/exoplayer2/testutil/FakeDataSet.FakeData.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeDataSet.FakeData</code></a> to be served by a <a href="com/google/android/exoplayer2/testutil/FakeDataSource.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeDataSource</code></a>.</div>
3135</th>
3136</tr>
3137<tr id="i494" class="altColor">
3138<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeDataSet.FakeData.html" title="class in com.google.android.exoplayer2.testutil">FakeDataSet.FakeData</a></td>
3139<th class="colLast" scope="row">
3140<div class="block">Container of fake data to be served by a <a href="com/google/android/exoplayer2/testutil/FakeDataSource.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeDataSource</code></a>.</div>
3141</th>
3142</tr>
3143<tr id="i495" class="rowColor">
3144<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeDataSet.FakeData.Segment.html" title="class in com.google.android.exoplayer2.testutil">FakeDataSet.FakeData.Segment</a></td>
3145<th class="colLast" scope="row">
3146<div class="block">A segment of <a href="com/google/android/exoplayer2/testutil/FakeDataSet.FakeData.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeDataSet.FakeData</code></a>.</div>
3147</th>
3148</tr>
3149<tr id="i496" class="altColor">
3150<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeDataSource.html" title="class in com.google.android.exoplayer2.testutil">FakeDataSource</a></td>
3151<th class="colLast" scope="row">
3152<div class="block">A fake <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> capable of simulating various scenarios.</div>
3153</th>
3154</tr>
3155<tr id="i497" class="rowColor">
3156<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeDataSource.Factory.html" title="class in com.google.android.exoplayer2.testutil">FakeDataSource.Factory</a></td>
3157<th class="colLast" scope="row">
3158<div class="block">Factory to create a <a href="com/google/android/exoplayer2/testutil/FakeDataSource.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeDataSource</code></a>.</div>
3159</th>
3160</tr>
3161<tr id="i498" class="altColor">
3162<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeExoMediaDrm.html" title="class in com.google.android.exoplayer2.testutil">FakeExoMediaDrm</a></td>
3163<th class="colLast" scope="row">
3164<div class="block">A fake implementation of <a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm"><code>ExoMediaDrm</code></a> for use in tests.</div>
3165</th>
3166</tr>
3167<tr id="i499" class="rowColor">
3168<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeExoMediaDrm.Builder.html" title="class in com.google.android.exoplayer2.testutil">FakeExoMediaDrm.Builder</a></td>
3169<th class="colLast" scope="row">
3170<div class="block">Builder for <a href="com/google/android/exoplayer2/testutil/FakeExoMediaDrm.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeExoMediaDrm</code></a> instances.</div>
3171</th>
3172</tr>
3173<tr id="i500" class="altColor">
3174<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeExoMediaDrm.LicenseServer.html" title="class in com.google.android.exoplayer2.testutil">FakeExoMediaDrm.LicenseServer</a></td>
3175<th class="colLast" scope="row">
3176<div class="block">An license server implementation to interact with <a href="com/google/android/exoplayer2/testutil/FakeExoMediaDrm.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeExoMediaDrm</code></a>.</div>
3177</th>
3178</tr>
3179<tr id="i501" class="rowColor">
3180<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeExtractorInput.html" title="class in com.google.android.exoplayer2.testutil">FakeExtractorInput</a></td>
3181<th class="colLast" scope="row">
3182<div class="block">A fake <a href="com/google/android/exoplayer2/extractor/ExtractorInput.html" title="interface in com.google.android.exoplayer2.extractor"><code>ExtractorInput</code></a> capable of simulating various scenarios.</div>
3183</th>
3184</tr>
3185<tr id="i502" class="altColor">
3186<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeExtractorInput.Builder.html" title="class in com.google.android.exoplayer2.testutil">FakeExtractorInput.Builder</a></td>
3187<th class="colLast" scope="row">
3188<div class="block">Builder of <a href="com/google/android/exoplayer2/testutil/FakeExtractorInput.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeExtractorInput</code></a> instances.</div>
3189</th>
3190</tr>
3191<tr id="i503" class="rowColor">
3192<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeExtractorInput.SimulatedIOException.html" title="class in com.google.android.exoplayer2.testutil">FakeExtractorInput.SimulatedIOException</a></td>
3193<th class="colLast" scope="row">
3194<div class="block">Thrown when simulating an <a href="https://developer.android.com/reference/java/io/IOException.html" title="class or interface in java.io" class="externalLink" target="_top"><code>IOException</code></a>.</div>
3195</th>
3196</tr>
3197<tr id="i504" class="altColor">
3198<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeExtractorOutput.html" title="class in com.google.android.exoplayer2.testutil">FakeExtractorOutput</a></td>
3199<th class="colLast" scope="row">
3200<div class="block">A fake <a href="com/google/android/exoplayer2/extractor/ExtractorOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>ExtractorOutput</code></a>.</div>
3201</th>
3202</tr>
3203<tr id="i505" class="rowColor">
3204<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaChunk.html" title="class in com.google.android.exoplayer2.testutil">FakeMediaChunk</a></td>
3205<th class="colLast" scope="row">
3206<div class="block">Fake <a href="com/google/android/exoplayer2/source/chunk/MediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>MediaChunk</code></a>.</div>
3207</th>
3208</tr>
3209<tr id="i506" class="altColor">
3210<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaChunkIterator.html" title="class in com.google.android.exoplayer2.testutil">FakeMediaChunkIterator</a></td>
3211<th class="colLast" scope="row">
3212<div class="block">Fake <a href="com/google/android/exoplayer2/source/chunk/MediaChunkIterator.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>MediaChunkIterator</code></a>.</div>
3213</th>
3214</tr>
3215<tr id="i507" class="rowColor">
3216<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaClockRenderer.html" title="class in com.google.android.exoplayer2.testutil">FakeMediaClockRenderer</a></td>
3217<th class="colLast" scope="row">
3218<div class="block">Fake abstract <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> which is also a <a href="com/google/android/exoplayer2/util/MediaClock.html" title="interface in com.google.android.exoplayer2.util"><code>MediaClock</code></a>.</div>
3219</th>
3220</tr>
3221<tr id="i508" class="altColor">
3222<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaPeriod.html" title="class in com.google.android.exoplayer2.testutil">FakeMediaPeriod</a></td>
3223<th class="colLast" scope="row">
3224<div class="block">Fake <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source"><code>MediaPeriod</code></a> that provides tracks from the given <a href="com/google/android/exoplayer2/source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroupArray</code></a>.</div>
3225</th>
3226</tr>
3227<tr id="i509" class="rowColor">
3228<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaPeriod.TrackDataFactory.html" title="interface in com.google.android.exoplayer2.testutil">FakeMediaPeriod.TrackDataFactory</a></td>
3229<th class="colLast" scope="row">
3230<div class="block">A factory to create the test data for a particular track.</div>
3231</th>
3232</tr>
3233<tr id="i510" class="altColor">
3234<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaSource.html" title="class in com.google.android.exoplayer2.testutil">FakeMediaSource</a></td>
3235<th class="colLast" scope="row">
3236<div class="block">Fake <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> that provides a given timeline.</div>
3237</th>
3238</tr>
3239<tr id="i511" class="rowColor">
3240<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaSource.InitialTimeline.html" title="class in com.google.android.exoplayer2.testutil">FakeMediaSource.InitialTimeline</a></td>
3241<th class="colLast" scope="row">
3242<div class="block">A forwarding timeline to provide an initial timeline for fake multi window sources.</div>
3243</th>
3244</tr>
3245<tr id="i512" class="altColor">
3246<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMediaSourceFactory.html" title="class in com.google.android.exoplayer2.testutil">FakeMediaSourceFactory</a></td>
3247<th class="colLast" scope="row">
3248<div class="block">Fake <a href="com/google/android/exoplayer2/source/MediaSourceFactory.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSourceFactory</code></a> that creates a <a href="com/google/android/exoplayer2/testutil/FakeMediaSource.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeMediaSource</code></a>.</div>
3249</th>
3250</tr>
3251<tr id="i513" class="rowColor">
3252<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeMetadataEntry.html" title="class in com.google.android.exoplayer2.testutil">FakeMetadataEntry</a></td>
3253<th class="colLast" scope="row">
3254<div class="block">A fake <a href="com/google/android/exoplayer2/metadata/Metadata.Entry.html" title="interface in com.google.android.exoplayer2.metadata"><code>Metadata.Entry</code></a>.</div>
3255</th>
3256</tr>
3257<tr id="i514" class="altColor">
3258<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeRenderer.html" title="class in com.google.android.exoplayer2.testutil">FakeRenderer</a></td>
3259<th class="colLast" scope="row">
3260<div class="block">Fake <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> that supports any format with the matching track type.</div>
3261</th>
3262</tr>
3263<tr id="i515" class="rowColor">
3264<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeSampleStream.html" title="class in com.google.android.exoplayer2.testutil">FakeSampleStream</a></td>
3265<th class="colLast" scope="row">
3266<div class="block">Fake <a href="com/google/android/exoplayer2/source/SampleStream.html" title="interface in com.google.android.exoplayer2.source"><code>SampleStream</code></a> that outputs a given <a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2"><code>Format</code></a> and any amount of <a href="com/google/android/exoplayer2/testutil/FakeSampleStream.FakeSampleStreamItem.html" title="class in com.google.android.exoplayer2.testutil"><code>items</code></a>.</div>
3267</th>
3268</tr>
3269<tr id="i516" class="altColor">
3270<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeSampleStream.FakeSampleStreamItem.html" title="class in com.google.android.exoplayer2.testutil">FakeSampleStream.FakeSampleStreamItem</a></td>
3271<th class="colLast" scope="row">
3272<div class="block">Item to customize a return value of <a href="com/google/android/exoplayer2/source/SampleStream.html#readData(com.google.android.exoplayer2.FormatHolder,com.google.android.exoplayer2.decoder.DecoderInputBuffer,@com.google.android.exoplayer2.source.SampleStream.ReadFlagsint)"><code>SampleStream.readData(com.google.android.exoplayer2.FormatHolder, com.google.android.exoplayer2.decoder.DecoderInputBuffer, @com.google.android.exoplayer2.source.SampleStream.ReadFlags int)</code></a>.</div>
3273</th>
3274</tr>
3275<tr id="i517" class="rowColor">
3276<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeShuffleOrder.html" title="class in com.google.android.exoplayer2.testutil">FakeShuffleOrder</a></td>
3277<th class="colLast" scope="row">
3278<div class="block">Fake <a href="com/google/android/exoplayer2/source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source"><code>ShuffleOrder</code></a> which returns a reverse order.</div>
3279</th>
3280</tr>
3281<tr id="i518" class="altColor">
3282<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeTimeline.html" title="class in com.google.android.exoplayer2.testutil">FakeTimeline</a></td>
3283<th class="colLast" scope="row">
3284<div class="block">Fake <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> which can be setup to return custom <a href="com/google/android/exoplayer2/testutil/FakeTimeline.TimelineWindowDefinition.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeTimeline.TimelineWindowDefinition</code></a>s.</div>
3285</th>
3286</tr>
3287<tr id="i519" class="rowColor">
3288<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeTimeline.TimelineWindowDefinition.html" title="class in com.google.android.exoplayer2.testutil">FakeTimeline.TimelineWindowDefinition</a></td>
3289<th class="colLast" scope="row">
3290<div class="block">Definition used to define a <a href="com/google/android/exoplayer2/testutil/FakeTimeline.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeTimeline</code></a>.</div>
3291</th>
3292</tr>
3293<tr id="i520" class="altColor">
3294<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeTrackOutput.html" title="class in com.google.android.exoplayer2.testutil">FakeTrackOutput</a></td>
3295<th class="colLast" scope="row">
3296<div class="block">A fake <a href="com/google/android/exoplayer2/extractor/TrackOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>TrackOutput</code></a>.</div>
3297</th>
3298</tr>
3299<tr id="i521" class="rowColor">
3300<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeTrackOutput.Factory.html" title="interface in com.google.android.exoplayer2.testutil">FakeTrackOutput.Factory</a></td>
3301<th class="colLast" scope="row">
3302<div class="block">Factory for <a href="com/google/android/exoplayer2/testutil/FakeTrackOutput.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeTrackOutput</code></a> instances.</div>
3303</th>
3304</tr>
3305<tr id="i522" class="altColor">
3306<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeTrackSelection.html" title="class in com.google.android.exoplayer2.testutil">FakeTrackSelection</a></td>
3307<th class="colLast" scope="row">
3308<div class="block">A fake <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>ExoTrackSelection</code></a> that only returns 1 fixed track, and allows querying the number
3309 of calls to its methods.</div>
3310</th>
3311</tr>
3312<tr id="i523" class="rowColor">
3313<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeTrackSelector.html" title="class in com.google.android.exoplayer2.testutil">FakeTrackSelector</a></td>
3314<th class="colLast" scope="row">
3315<div class="block">A fake <a href="com/google/android/exoplayer2/trackselection/MappingTrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>MappingTrackSelector</code></a> that returns <a href="com/google/android/exoplayer2/testutil/FakeTrackSelection.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeTrackSelection</code></a>s.</div>
3316</th>
3317</tr>
3318<tr id="i524" class="altColor">
3319<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/FakeVideoRenderer.html" title="class in com.google.android.exoplayer2.testutil">FakeVideoRenderer</a></td>
3320<th class="colLast" scope="row">
3321<div class="block">A <a href="com/google/android/exoplayer2/testutil/FakeRenderer.html" title="class in com.google.android.exoplayer2.testutil"><code>FakeRenderer</code></a> that supports <a href="com/google/android/exoplayer2/C.html#TRACK_TYPE_VIDEO"><code>C.TRACK_TYPE_VIDEO</code></a>.</div>
3322</th>
3323</tr>
3324<tr id="i525" class="rowColor">
3325<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ffmpeg/FfmpegAudioRenderer.html" title="class in com.google.android.exoplayer2.ext.ffmpeg">FfmpegAudioRenderer</a></td>
3326<th class="colLast" scope="row">
3327<div class="block">Decodes and renders audio using FFmpeg.</div>
3328</th>
3329</tr>
3330<tr id="i526" class="altColor">
3331<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ffmpeg/FfmpegDecoderException.html" title="class in com.google.android.exoplayer2.ext.ffmpeg">FfmpegDecoderException</a></td>
3332<th class="colLast" scope="row">
3333<div class="block">Thrown when an FFmpeg decoder error occurs.</div>
3334</th>
3335</tr>
3336<tr id="i527" class="rowColor">
3337<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ffmpeg/FfmpegLibrary.html" title="class in com.google.android.exoplayer2.ext.ffmpeg">FfmpegLibrary</a></td>
3338<th class="colLast" scope="row">
3339<div class="block">Configures and queries the underlying native library.</div>
3340</th>
3341</tr>
3342<tr id="i528" class="altColor">
3343<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/FileDataSource.html" title="class in com.google.android.exoplayer2.upstream">FileDataSource</a></td>
3344<th class="colLast" scope="row">
3345<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> for reading local files.</div>
3346</th>
3347</tr>
3348<tr id="i529" class="rowColor">
3349<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/FileDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream">FileDataSource.Factory</a></td>
3350<th class="colLast" scope="row">
3351<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/upstream/FileDataSource.html" title="class in com.google.android.exoplayer2.upstream"><code>FileDataSource</code></a> instances.</div>
3352</th>
3353</tr>
3354<tr id="i530" class="altColor">
3355<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/FileDataSource.FileDataSourceException.html" title="class in com.google.android.exoplayer2.upstream">FileDataSource.FileDataSourceException</a></td>
3356<th class="colLast" scope="row">
3357<div class="block">Thrown when a <a href="com/google/android/exoplayer2/upstream/FileDataSource.html" title="class in com.google.android.exoplayer2.upstream"><code>FileDataSource</code></a> encounters an error reading a file.</div>
3358</th>
3359</tr>
3360<tr id="i531" class="rowColor">
3361<td class="colFirst"><a href="com/google/android/exoplayer2/util/FileTypes.html" title="class in com.google.android.exoplayer2.util">FileTypes</a></td>
3362<th class="colLast" scope="row">
3363<div class="block">Defines common file type constants and helper methods.</div>
3364</th>
3365</tr>
3366<tr id="i532" class="altColor">
3367<td class="colFirst"><a href="com/google/android/exoplayer2/util/FileTypes.Type.html" title="annotation in com.google.android.exoplayer2.util">FileTypes.Type</a></td>
3368<th class="colLast" scope="row">
3369<div class="block">File types.</div>
3370</th>
3371</tr>
3372<tr id="i533" class="rowColor">
3373<td class="colFirst"><a href="com/google/android/exoplayer2/offline/FilterableManifest.html" title="interface in com.google.android.exoplayer2.offline">FilterableManifest</a>&lt;<a href="com/google/android/exoplayer2/offline/FilterableManifest.html" title="type parameter in FilterableManifest">T</a>&gt;</td>
3374<th class="colLast" scope="row">
3375<div class="block">A manifest that can generate copies of itself including only the streams specified by the given
3376 keys.</div>
3377</th>
3378</tr>
3379<tr id="i534" class="altColor">
3380<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/FilteringHlsPlaylistParserFactory.html" title="class in com.google.android.exoplayer2.source.hls.playlist">FilteringHlsPlaylistParserFactory</a></td>
3381<th class="colLast" scope="row">
3382<div class="block">A <a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParserFactory.html" title="interface in com.google.android.exoplayer2.source.hls.playlist"><code>HlsPlaylistParserFactory</code></a> that includes only the streams identified by the given stream
3383 keys.</div>
3384</th>
3385</tr>
3386<tr id="i535" class="rowColor">
3387<td class="colFirst"><a href="com/google/android/exoplayer2/offline/FilteringManifestParser.html" title="class in com.google.android.exoplayer2.offline">FilteringManifestParser</a>&lt;<a href="com/google/android/exoplayer2/offline/FilteringManifestParser.html" title="type parameter in FilteringManifestParser">T</a> extends <a href="com/google/android/exoplayer2/offline/FilterableManifest.html" title="interface in com.google.android.exoplayer2.offline">FilterableManifest</a>&lt;<a href="com/google/android/exoplayer2/offline/FilteringManifestParser.html" title="type parameter in FilteringManifestParser">T</a>&gt;&gt;</td>
3388<th class="colLast" scope="row">
3389<div class="block">A manifest parser that includes only the streams identified by the given stream keys.</div>
3390</th>
3391</tr>
3392<tr id="i536" class="altColor">
3393<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/FixedTrackSelection.html" title="class in com.google.android.exoplayer2.trackselection">FixedTrackSelection</a></td>
3394<th class="colLast" scope="row">
3395<div class="block">A <a href="com/google/android/exoplayer2/trackselection/TrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>TrackSelection</code></a> consisting of a single track.</div>
3396</th>
3397</tr>
3398<tr id="i537" class="rowColor">
3399<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/flac/FlacConstants.html" title="class in com.google.android.exoplayer2.extractor.flac">FlacConstants</a></td>
3400<th class="colLast" scope="row">
3401<div class="block">Defines constants used by the FLAC extractor.</div>
3402</th>
3403</tr>
3404<tr id="i538" class="altColor">
3405<td class="colFirst"><a href="com/google/android/exoplayer2/ext/flac/FlacDecoder.html" title="class in com.google.android.exoplayer2.ext.flac">FlacDecoder</a></td>
3406<th class="colLast" scope="row">
3407<div class="block">Flac decoder.</div>
3408</th>
3409</tr>
3410<tr id="i539" class="rowColor">
3411<td class="colFirst"><a href="com/google/android/exoplayer2/ext/flac/FlacDecoderException.html" title="class in com.google.android.exoplayer2.ext.flac">FlacDecoderException</a></td>
3412<th class="colLast" scope="row">
3413<div class="block">Thrown when an Flac decoder error occurs.</div>
3414</th>
3415</tr>
3416<tr id="i540" class="altColor">
3417<td class="colFirst"><a href="com/google/android/exoplayer2/ext/flac/FlacExtractor.html" title="class in com.google.android.exoplayer2.ext.flac">FlacExtractor</a></td>
3418<th class="colLast" scope="row">
3419<div class="block">Facilitates the extraction of data from the FLAC container format.</div>
3420</th>
3421</tr>
3422<tr id="i541" class="rowColor">
3423<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/flac/FlacExtractor.html" title="class in com.google.android.exoplayer2.extractor.flac">FlacExtractor</a></td>
3424<th class="colLast" scope="row">
3425<div class="block">Extracts data from FLAC container format.</div>
3426</th>
3427</tr>
3428<tr id="i542" class="altColor">
3429<td class="colFirst"><a href="com/google/android/exoplayer2/ext/flac/FlacExtractor.Flags.html" title="annotation in com.google.android.exoplayer2.ext.flac">FlacExtractor.Flags</a></td>
3430<th class="colLast" scope="row">
3431<div class="block">Flags controlling the behavior of the extractor.</div>
3432</th>
3433</tr>
3434<tr id="i543" class="rowColor">
3435<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/flac/FlacExtractor.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.flac">FlacExtractor.Flags</a></td>
3436<th class="colLast" scope="row">
3437<div class="block">Flags controlling the behavior of the extractor.</div>
3438</th>
3439</tr>
3440<tr id="i544" class="altColor">
3441<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/FlacFrameReader.html" title="class in com.google.android.exoplayer2.extractor">FlacFrameReader</a></td>
3442<th class="colLast" scope="row">
3443<div class="block">Reads and peeks FLAC frame elements according to the <a href="https://xiph.org/flac/format.html">FLAC format specification</a>.</div>
3444</th>
3445</tr>
3446<tr id="i545" class="rowColor">
3447<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/FlacFrameReader.SampleNumberHolder.html" title="class in com.google.android.exoplayer2.extractor">FlacFrameReader.SampleNumberHolder</a></td>
3448<th class="colLast" scope="row">
3449<div class="block">Holds a sample number.</div>
3450</th>
3451</tr>
3452<tr id="i546" class="altColor">
3453<td class="colFirst"><a href="com/google/android/exoplayer2/ext/flac/FlacLibrary.html" title="class in com.google.android.exoplayer2.ext.flac">FlacLibrary</a></td>
3454<th class="colLast" scope="row">
3455<div class="block">Configures and queries the underlying native library.</div>
3456</th>
3457</tr>
3458<tr id="i547" class="rowColor">
3459<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/FlacMetadataReader.html" title="class in com.google.android.exoplayer2.extractor">FlacMetadataReader</a></td>
3460<th class="colLast" scope="row">
3461<div class="block">Reads and peeks FLAC stream metadata elements according to the <a href="https://xiph.org/flac/format.html">FLAC format specification</a>.</div>
3462</th>
3463</tr>
3464<tr id="i548" class="altColor">
3465<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/FlacMetadataReader.FlacStreamMetadataHolder.html" title="class in com.google.android.exoplayer2.extractor">FlacMetadataReader.FlacStreamMetadataHolder</a></td>
3466<th class="colLast" scope="row">
3467<div class="block">Holds a <a href="com/google/android/exoplayer2/extractor/FlacStreamMetadata.html" title="class in com.google.android.exoplayer2.extractor"><code>FlacStreamMetadata</code></a>.</div>
3468</th>
3469</tr>
3470<tr id="i549" class="rowColor">
3471<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/FlacSeekTableSeekMap.html" title="class in com.google.android.exoplayer2.extractor">FlacSeekTableSeekMap</a></td>
3472<th class="colLast" scope="row">
3473<div class="block">A <a href="com/google/android/exoplayer2/extractor/SeekMap.html" title="interface in com.google.android.exoplayer2.extractor"><code>SeekMap</code></a> implementation for FLAC streams that contain a <a href="https://xiph.org/flac/format.html#metadata_block_seektable">seek table</a>.</div>
3474</th>
3475</tr>
3476<tr id="i550" class="altColor">
3477<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/FlacStreamMetadata.html" title="class in com.google.android.exoplayer2.extractor">FlacStreamMetadata</a></td>
3478<th class="colLast" scope="row">
3479<div class="block">Holder for FLAC metadata.</div>
3480</th>
3481</tr>
3482<tr id="i551" class="rowColor">
3483<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/FlacStreamMetadata.SeekTable.html" title="class in com.google.android.exoplayer2.extractor">FlacStreamMetadata.SeekTable</a></td>
3484<th class="colLast" scope="row">
3485<div class="block">A FLAC seek table.</div>
3486</th>
3487</tr>
3488<tr id="i552" class="altColor">
3489<td class="colFirst"><a href="com/google/android/exoplayer2/util/FlagSet.html" title="class in com.google.android.exoplayer2.util">FlagSet</a></td>
3490<th class="colLast" scope="row">
3491<div class="block">A set of integer flags.</div>
3492</th>
3493</tr>
3494<tr id="i553" class="rowColor">
3495<td class="colFirst"><a href="com/google/android/exoplayer2/util/FlagSet.Builder.html" title="class in com.google.android.exoplayer2.util">FlagSet.Builder</a></td>
3496<th class="colLast" scope="row">
3497<div class="block">A builder for <a href="com/google/android/exoplayer2/util/FlagSet.html" title="class in com.google.android.exoplayer2.util"><code>FlagSet</code></a> instances.</div>
3498</th>
3499</tr>
3500<tr id="i554" class="altColor">
3501<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/flv/FlvExtractor.html" title="class in com.google.android.exoplayer2.extractor.flv">FlvExtractor</a></td>
3502<th class="colLast" scope="row">
3503<div class="block">Extracts data from the FLV container format.</div>
3504</th>
3505</tr>
3506<tr id="i555" class="rowColor">
3507<td class="colFirst"><a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2">Format</a></td>
3508<th class="colLast" scope="row">
3509<div class="block">Represents a media format.</div>
3510</th>
3511</tr>
3512<tr id="i556" class="altColor">
3513<td class="colFirst"><a href="com/google/android/exoplayer2/Format.Builder.html" title="class in com.google.android.exoplayer2">Format.Builder</a></td>
3514<th class="colLast" scope="row">
3515<div class="block">Builds <a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2"><code>Format</code></a> instances.</div>
3516</th>
3517</tr>
3518<tr id="i557" class="rowColor">
3519<td class="colFirst"><a href="com/google/android/exoplayer2/FormatHolder.html" title="class in com.google.android.exoplayer2">FormatHolder</a></td>
3520<th class="colLast" scope="row">
3521<div class="block">Holds a <a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2"><code>Format</code></a>.</div>
3522</th>
3523</tr>
3524<tr id="i558" class="altColor">
3525<td class="colFirst"><a href="com/google/android/exoplayer2/audio/ForwardingAudioSink.html" title="class in com.google.android.exoplayer2.audio">ForwardingAudioSink</a></td>
3526<th class="colLast" scope="row">
3527<div class="block">An overridable <a href="com/google/android/exoplayer2/audio/AudioSink.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioSink</code></a> implementation forwarding all methods to another sink.</div>
3528</th>
3529</tr>
3530<tr id="i559" class="rowColor">
3531<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ForwardingExtractorInput.html" title="class in com.google.android.exoplayer2.extractor">ForwardingExtractorInput</a></td>
3532<th class="colLast" scope="row">
3533<div class="block">An overridable <a href="com/google/android/exoplayer2/extractor/ExtractorInput.html" title="interface in com.google.android.exoplayer2.extractor"><code>ExtractorInput</code></a> implementation forwarding all methods to another input.</div>
3534</th>
3535</tr>
3536<tr id="i560" class="altColor">
3537<td class="colFirst"><a href="com/google/android/exoplayer2/ForwardingPlayer.html" title="class in com.google.android.exoplayer2">ForwardingPlayer</a></td>
3538<th class="colLast" scope="row">
3539<div class="block">A <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> that forwards operations to another <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>.</div>
3540</th>
3541</tr>
3542<tr id="i561" class="rowColor">
3543<td class="colFirst"><a href="com/google/android/exoplayer2/source/ForwardingTimeline.html" title="class in com.google.android.exoplayer2.source">ForwardingTimeline</a></td>
3544<th class="colLast" scope="row">
3545<div class="block">An overridable <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> implementation forwarding all methods to another timeline.</div>
3546</th>
3547</tr>
3548<tr id="i562" class="altColor">
3549<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/FragmentedMp4Extractor.html" title="class in com.google.android.exoplayer2.extractor.mp4">FragmentedMp4Extractor</a></td>
3550<th class="colLast" scope="row">
3551<div class="block">Extracts data from the FMP4 container format.</div>
3552</th>
3553</tr>
3554<tr id="i563" class="rowColor">
3555<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/FragmentedMp4Extractor.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.mp4">FragmentedMp4Extractor.Flags</a></td>
3556<th class="colLast" scope="row">
3557<div class="block">Flags controlling the behavior of the extractor.</div>
3558</th>
3559</tr>
3560<tr id="i564" class="altColor">
3561<td class="colFirst"><a href="com/google/android/exoplayer2/drm/FrameworkCryptoConfig.html" title="class in com.google.android.exoplayer2.drm">FrameworkCryptoConfig</a></td>
3562<th class="colLast" scope="row">
3563<div class="block">A <a href="com/google/android/exoplayer2/decoder/CryptoConfig.html" title="interface in com.google.android.exoplayer2.decoder"><code>CryptoConfig</code></a> for <a href="com/google/android/exoplayer2/C.html#CRYPTO_TYPE_FRAMEWORK"><code>C.CRYPTO_TYPE_FRAMEWORK</code></a>.</div>
3564</th>
3565</tr>
3566<tr id="i565" class="rowColor">
3567<td class="colFirst"><a href="com/google/android/exoplayer2/drm/FrameworkMediaDrm.html" title="class in com.google.android.exoplayer2.drm">FrameworkMediaDrm</a></td>
3568<th class="colLast" scope="row">
3569<div class="block">An <a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm"><code>ExoMediaDrm</code></a> implementation that wraps the framework <a href="https://developer.android.com/reference/android/media/MediaDrm.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaDrm</code></a>.</div>
3570</th>
3571</tr>
3572<tr id="i566" class="altColor">
3573<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/GaplessInfoHolder.html" title="class in com.google.android.exoplayer2.extractor">GaplessInfoHolder</a></td>
3574<th class="colLast" scope="row">
3575<div class="block">Holder for gapless playback information.</div>
3576</th>
3577</tr>
3578<tr id="i567" class="rowColor">
3579<td class="colFirst"><a href="com/google/android/exoplayer2/ext/av1/Gav1Decoder.html" title="class in com.google.android.exoplayer2.ext.av1">Gav1Decoder</a></td>
3580<th class="colLast" scope="row">
3581<div class="block">Gav1 decoder.</div>
3582</th>
3583</tr>
3584<tr id="i568" class="altColor">
3585<td class="colFirst"><a href="com/google/android/exoplayer2/ext/av1/Gav1DecoderException.html" title="class in com.google.android.exoplayer2.ext.av1">Gav1DecoderException</a></td>
3586<th class="colLast" scope="row">
3587<div class="block">Thrown when a libgav1 decoder error occurs.</div>
3588</th>
3589</tr>
3590<tr id="i569" class="rowColor">
3591<td class="colFirst"><a href="com/google/android/exoplayer2/ext/av1/Gav1Library.html" title="class in com.google.android.exoplayer2.ext.av1">Gav1Library</a></td>
3592<th class="colLast" scope="row">
3593<div class="block">Configures and queries the underlying native library.</div>
3594</th>
3595</tr>
3596<tr id="i570" class="altColor">
3597<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/GeobFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">GeobFrame</a></td>
3598<th class="colLast" scope="row">
3599<div class="block">GEOB (General Encapsulated Object) ID3 frame.</div>
3600</th>
3601</tr>
3602<tr id="i571" class="rowColor">
3603<td class="colFirst"><a href="com/google/android/exoplayer2/util/GlUtil.html" title="class in com.google.android.exoplayer2.util">GlUtil</a></td>
3604<th class="colLast" scope="row">
3605<div class="block">OpenGL ES utilities.</div>
3606</th>
3607</tr>
3608<tr id="i572" class="altColor">
3609<td class="colFirst"><a href="com/google/android/exoplayer2/util/GlUtil.GlException.html" title="class in com.google.android.exoplayer2.util">GlUtil.GlException</a></td>
3610<th class="colLast" scope="row">
3611<div class="block">Thrown when an OpenGL error occurs and <a href="com/google/android/exoplayer2/util/GlUtil.html#glAssertionsEnabled"><code>GlUtil.glAssertionsEnabled</code></a> is <code>true</code>.</div>
3612</th>
3613</tr>
3614<tr id="i573" class="rowColor">
3615<td class="colFirst"><a href="com/google/android/exoplayer2/util/GlUtil.Program.html" title="class in com.google.android.exoplayer2.util">GlUtil.Program</a></td>
3616<th class="colLast" scope="row">
3617<div class="block">Represents a GLSL shader program.</div>
3618</th>
3619</tr>
3620<tr id="i574" class="altColor">
3621<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/H262Reader.html" title="class in com.google.android.exoplayer2.extractor.ts">H262Reader</a></td>
3622<th class="colLast" scope="row">
3623<div class="block">Parses a continuous H262 byte stream and extracts individual frames.</div>
3624</th>
3625</tr>
3626<tr id="i575" class="rowColor">
3627<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/H263Reader.html" title="class in com.google.android.exoplayer2.extractor.ts">H263Reader</a></td>
3628<th class="colLast" scope="row">
3629<div class="block">Parses an ISO/IEC 14496-2 (MPEG-4 Part 2) or ITU-T Recommendation H.263 byte stream and extracts
3630 individual frames.</div>
3631</th>
3632</tr>
3633<tr id="i576" class="altColor">
3634<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/H264Reader.html" title="class in com.google.android.exoplayer2.extractor.ts">H264Reader</a></td>
3635<th class="colLast" scope="row">
3636<div class="block">Parses a continuous H264 byte stream and extracts individual frames.</div>
3637</th>
3638</tr>
3639<tr id="i577" class="rowColor">
3640<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/H265Reader.html" title="class in com.google.android.exoplayer2.extractor.ts">H265Reader</a></td>
3641<th class="colLast" scope="row">
3642<div class="block">Parses a continuous H.265 byte stream and extracts individual frames.</div>
3643</th>
3644</tr>
3645<tr id="i578" class="altColor">
3646<td class="colFirst"><a href="com/google/android/exoplayer2/util/HandlerWrapper.html" title="interface in com.google.android.exoplayer2.util">HandlerWrapper</a></td>
3647<th class="colLast" scope="row">
3648<div class="block">An interface to call through to a <a href="https://developer.android.com/reference/android/os/Handler.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Handler</code></a>.</div>
3649</th>
3650</tr>
3651<tr id="i579" class="rowColor">
3652<td class="colFirst"><a href="com/google/android/exoplayer2/util/HandlerWrapper.Message.html" title="interface in com.google.android.exoplayer2.util">HandlerWrapper.Message</a></td>
3653<th class="colLast" scope="row">
3654<div class="block">A message obtained from the handler.</div>
3655</th>
3656</tr>
3657<tr id="i580" class="altColor">
3658<td class="colFirst"><a href="com/google/android/exoplayer2/HeartRating.html" title="class in com.google.android.exoplayer2">HeartRating</a></td>
3659<th class="colLast" scope="row">
3660<div class="block">A rating expressed as "heart" or "no heart".</div>
3661</th>
3662</tr>
3663<tr id="i581" class="rowColor">
3664<td class="colFirst"><a href="com/google/android/exoplayer2/video/HevcConfig.html" title="class in com.google.android.exoplayer2.video">HevcConfig</a></td>
3665<th class="colLast" scope="row">
3666<div class="block">HEVC configuration data.</div>
3667</th>
3668</tr>
3669<tr id="i582" class="altColor">
3670<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsDataSourceFactory.html" title="interface in com.google.android.exoplayer2.source.hls">HlsDataSourceFactory</a></td>
3671<th class="colLast" scope="row">
3672<div class="block">Creates <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a>s for HLS playlists, encryption and media chunks.</div>
3673</th>
3674</tr>
3675<tr id="i583" class="rowColor">
3676<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/offline/HlsDownloader.html" title="class in com.google.android.exoplayer2.source.hls.offline">HlsDownloader</a></td>
3677<th class="colLast" scope="row">
3678<div class="block">A downloader for HLS streams.</div>
3679</th>
3680</tr>
3681<tr id="i584" class="altColor">
3682<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsExtractorFactory.html" title="interface in com.google.android.exoplayer2.source.hls">HlsExtractorFactory</a></td>
3683<th class="colLast" scope="row">
3684<div class="block">Factory for HLS media chunk extractors.</div>
3685</th>
3686</tr>
3687<tr id="i585" class="rowColor">
3688<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsManifest.html" title="class in com.google.android.exoplayer2.source.hls">HlsManifest</a></td>
3689<th class="colLast" scope="row">
3690<div class="block">Holds a multivariant playlist along with a snapshot of one of its media playlists.</div>
3691</th>
3692</tr>
3693<tr id="i586" class="altColor">
3694<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMasterPlaylist.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMasterPlaylist</a></td>
3695<th class="colLast" scope="row">Deprecated.
3696<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/source/hls/playlist/HlsMultivariantPlaylist.html" title="class in com.google.android.exoplayer2.source.hls.playlist"><code>HlsMultivariantPlaylist</code></a> instead.</div>
3697</th>
3698</tr>
3699<tr id="i587" class="rowColor">
3700<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsMediaChunkExtractor.html" title="interface in com.google.android.exoplayer2.source.hls">HlsMediaChunkExtractor</a></td>
3701<th class="colLast" scope="row">
3702<div class="block">Extracts samples and track <a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2"><code>Formats</code></a> from <code>HlsMediaChunks</code>.</div>
3703</th>
3704</tr>
3705<tr id="i588" class="altColor">
3706<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsMediaPeriod.html" title="class in com.google.android.exoplayer2.source.hls">HlsMediaPeriod</a></td>
3707<th class="colLast" scope="row">
3708<div class="block">A <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source"><code>MediaPeriod</code></a> that loads an HLS stream.</div>
3709</th>
3710</tr>
3711<tr id="i589" class="rowColor">
3712<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMediaPlaylist</a></td>
3713<th class="colLast" scope="row">
3714<div class="block">Represents an HLS media playlist.</div>
3715</th>
3716</tr>
3717<tr id="i590" class="altColor">
3718<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.Part.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMediaPlaylist.Part</a></td>
3719<th class="colLast" scope="row">
3720<div class="block">A media part.</div>
3721</th>
3722</tr>
3723<tr id="i591" class="rowColor">
3724<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.PlaylistType.html" title="annotation in com.google.android.exoplayer2.source.hls.playlist">HlsMediaPlaylist.PlaylistType</a></td>
3725<th class="colLast" scope="row">
3726<div class="block">Type of the playlist, as defined by #EXT-X-PLAYLIST-TYPE.</div>
3727</th>
3728</tr>
3729<tr id="i592" class="altColor">
3730<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.RenditionReport.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMediaPlaylist.RenditionReport</a></td>
3731<th class="colLast" scope="row">
3732<div class="block">A rendition report for an alternative rendition defined in another media playlist.</div>
3733</th>
3734</tr>
3735<tr id="i593" class="rowColor">
3736<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.Segment.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMediaPlaylist.Segment</a></td>
3737<th class="colLast" scope="row">
3738<div class="block">Media segment reference.</div>
3739</th>
3740</tr>
3741<tr id="i594" class="altColor">
3742<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.SegmentBase.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMediaPlaylist.SegmentBase</a></td>
3743<th class="colLast" scope="row">
3744<div class="block">The base for a <a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.Segment.html" title="class in com.google.android.exoplayer2.source.hls.playlist"><code>HlsMediaPlaylist.Segment</code></a> or a <a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.Part.html" title="class in com.google.android.exoplayer2.source.hls.playlist"><code>HlsMediaPlaylist.Part</code></a> required for playback.</div>
3745</th>
3746</tr>
3747<tr id="i595" class="rowColor">
3748<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMediaPlaylist.ServerControl.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMediaPlaylist.ServerControl</a></td>
3749<th class="colLast" scope="row">
3750<div class="block">Server control attributes.</div>
3751</th>
3752</tr>
3753<tr id="i596" class="altColor">
3754<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsMediaSource.html" title="class in com.google.android.exoplayer2.source.hls">HlsMediaSource</a></td>
3755<th class="colLast" scope="row">
3756<div class="block">An HLS <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
3757</th>
3758</tr>
3759<tr id="i597" class="rowColor">
3760<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsMediaSource.Factory.html" title="class in com.google.android.exoplayer2.source.hls">HlsMediaSource.Factory</a></td>
3761<th class="colLast" scope="row">
3762<div class="block">Factory for <a href="com/google/android/exoplayer2/source/hls/HlsMediaSource.html" title="class in com.google.android.exoplayer2.source.hls"><code>HlsMediaSource</code></a>s.</div>
3763</th>
3764</tr>
3765<tr id="i598" class="altColor">
3766<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsMediaSource.MetadataType.html" title="annotation in com.google.android.exoplayer2.source.hls">HlsMediaSource.MetadataType</a></td>
3767<th class="colLast" scope="row">
3768<div class="block">The types of metadata that can be extracted from HLS streams.</div>
3769</th>
3770</tr>
3771<tr id="i599" class="rowColor">
3772<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMultivariantPlaylist.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMultivariantPlaylist</a></td>
3773<th class="colLast" scope="row">
3774<div class="block">Represents an HLS multivariant playlist.</div>
3775</th>
3776</tr>
3777<tr id="i600" class="altColor">
3778<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMultivariantPlaylist.Rendition.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMultivariantPlaylist.Rendition</a></td>
3779<th class="colLast" scope="row">
3780<div class="block">A rendition (i.e.</div>
3781</th>
3782</tr>
3783<tr id="i601" class="rowColor">
3784<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsMultivariantPlaylist.Variant.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsMultivariantPlaylist.Variant</a></td>
3785<th class="colLast" scope="row">
3786<div class="block">A variant (i.e.</div>
3787</th>
3788</tr>
3789<tr id="i602" class="altColor">
3790<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylist.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylist</a></td>
3791<th class="colLast" scope="row">
3792<div class="block">Represents an HLS playlist.</div>
3793</th>
3794</tr>
3795<tr id="i603" class="rowColor">
3796<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistParser</a></td>
3797<th class="colLast" scope="row">
3798<div class="block">HLS playlists parsing logic.</div>
3799</th>
3800</tr>
3801<tr id="i604" class="altColor">
3802<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParser.DeltaUpdateException.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistParser.DeltaUpdateException</a></td>
3803<th class="colLast" scope="row">
3804<div class="block">Exception thrown when merging a delta update fails.</div>
3805</th>
3806</tr>
3807<tr id="i605" class="rowColor">
3808<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistParserFactory.html" title="interface in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistParserFactory</a></td>
3809<th class="colLast" scope="row">
3810<div class="block">Factory for <a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylist.html" title="class in com.google.android.exoplayer2.source.hls.playlist"><code>HlsPlaylist</code></a> parsers.</div>
3811</th>
3812</tr>
3813<tr id="i606" class="altColor">
3814<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.html" title="interface in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistTracker</a></td>
3815<th class="colLast" scope="row">
3816<div class="block">Tracks playlists associated to an HLS stream and provides snapshots.</div>
3817</th>
3818</tr>
3819<tr id="i607" class="rowColor">
3820<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.Factory.html" title="interface in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistTracker.Factory</a></td>
3821<th class="colLast" scope="row">
3822<div class="block">Factory for <a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.html" title="interface in com.google.android.exoplayer2.source.hls.playlist"><code>HlsPlaylistTracker</code></a> instances.</div>
3823</th>
3824</tr>
3825<tr id="i608" class="altColor">
3826<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.PlaylistEventListener.html" title="interface in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistTracker.PlaylistEventListener</a></td>
3827<th class="colLast" scope="row">
3828<div class="block">Called on playlist loading events.</div>
3829</th>
3830</tr>
3831<tr id="i609" class="rowColor">
3832<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.PlaylistResetException.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistTracker.PlaylistResetException</a></td>
3833<th class="colLast" scope="row">
3834<div class="block">Thrown when the media sequence of a new snapshot indicates the server has reset.</div>
3835</th>
3836</tr>
3837<tr id="i610" class="altColor">
3838<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.PlaylistStuckException.html" title="class in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistTracker.PlaylistStuckException</a></td>
3839<th class="colLast" scope="row">
3840<div class="block">Thrown when a playlist is considered to be stuck due to a server side error.</div>
3841</th>
3842</tr>
3843<tr id="i611" class="rowColor">
3844<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/playlist/HlsPlaylistTracker.PrimaryPlaylistListener.html" title="interface in com.google.android.exoplayer2.source.hls.playlist">HlsPlaylistTracker.PrimaryPlaylistListener</a></td>
3845<th class="colLast" scope="row">
3846<div class="block">Listener for primary playlist changes.</div>
3847</th>
3848</tr>
3849<tr id="i612" class="altColor">
3850<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsTrackMetadataEntry.html" title="class in com.google.android.exoplayer2.source.hls">HlsTrackMetadataEntry</a></td>
3851<th class="colLast" scope="row">
3852<div class="block">Holds metadata associated to an HLS media track.</div>
3853</th>
3854</tr>
3855<tr id="i613" class="rowColor">
3856<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/HlsTrackMetadataEntry.VariantInfo.html" title="class in com.google.android.exoplayer2.source.hls">HlsTrackMetadataEntry.VariantInfo</a></td>
3857<th class="colLast" scope="row">
3858<div class="block">Holds attributes defined in an EXT-X-STREAM-INF tag.</div>
3859</th>
3860</tr>
3861<tr id="i614" class="altColor">
3862<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/HorizontalTextInVerticalContextSpan.html" title="class in com.google.android.exoplayer2.text.span">HorizontalTextInVerticalContextSpan</a></td>
3863<th class="colLast" scope="row">
3864<div class="block">A styling span for horizontal text in a vertical context.</div>
3865</th>
3866</tr>
3867<tr id="i615" class="rowColor">
3868<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/HostActivity.html" title="class in com.google.android.exoplayer2.testutil">HostActivity</a></td>
3869<th class="colLast" scope="row">
3870<div class="block">A host activity for performing playback tests.</div>
3871</th>
3872</tr>
3873<tr id="i616" class="altColor">
3874<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/HostActivity.HostedTest.html" title="interface in com.google.android.exoplayer2.testutil">HostActivity.HostedTest</a></td>
3875<th class="colLast" scope="row">
3876<div class="block">Interface for tests that run inside of a <a href="com/google/android/exoplayer2/testutil/HostActivity.html" title="class in com.google.android.exoplayer2.testutil"><code>HostActivity</code></a>.</div>
3877</th>
3878</tr>
3879<tr id="i617" class="rowColor">
3880<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream">HttpDataSource</a></td>
3881<th class="colLast" scope="row">
3882<div class="block">An HTTP <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a>.</div>
3883</th>
3884</tr>
3885<tr id="i618" class="altColor">
3886<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.BaseFactory.html" title="class in com.google.android.exoplayer2.upstream">HttpDataSource.BaseFactory</a></td>
3887<th class="colLast" scope="row">
3888<div class="block">Base implementation of <a href="com/google/android/exoplayer2/upstream/HttpDataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource.Factory</code></a> that sets default request properties.</div>
3889</th>
3890</tr>
3891<tr id="i619" class="rowColor">
3892<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.CleartextNotPermittedException.html" title="class in com.google.android.exoplayer2.upstream">HttpDataSource.CleartextNotPermittedException</a></td>
3893<th class="colLast" scope="row">
3894<div class="block">Thrown when cleartext HTTP traffic is not permitted.</div>
3895</th>
3896</tr>
3897<tr id="i620" class="altColor">
3898<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream">HttpDataSource.Factory</a></td>
3899<th class="colLast" scope="row">
3900<div class="block">A factory for <a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource</code></a> instances.</div>
3901</th>
3902</tr>
3903<tr id="i621" class="rowColor">
3904<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.HttpDataSourceException.html" title="class in com.google.android.exoplayer2.upstream">HttpDataSource.HttpDataSourceException</a></td>
3905<th class="colLast" scope="row">
3906<div class="block">Thrown when an error is encountered when trying to read from a <a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource</code></a>.</div>
3907</th>
3908</tr>
3909<tr id="i622" class="altColor">
3910<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.HttpDataSourceException.Type.html" title="annotation in com.google.android.exoplayer2.upstream">HttpDataSource.HttpDataSourceException.Type</a></td>
3911<th class="colLast" scope="row">
3912<div class="block">The type of operation that produced the error.</div>
3913</th>
3914</tr>
3915<tr id="i623" class="rowColor">
3916<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.InvalidContentTypeException.html" title="class in com.google.android.exoplayer2.upstream">HttpDataSource.InvalidContentTypeException</a></td>
3917<th class="colLast" scope="row">
3918<div class="block">Thrown when the content type is invalid.</div>
3919</th>
3920</tr>
3921<tr id="i624" class="altColor">
3922<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.InvalidResponseCodeException.html" title="class in com.google.android.exoplayer2.upstream">HttpDataSource.InvalidResponseCodeException</a></td>
3923<th class="colLast" scope="row">
3924<div class="block">Thrown when an attempt to open a connection results in a response code not in the 2xx range.</div>
3925</th>
3926</tr>
3927<tr id="i625" class="rowColor">
3928<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpDataSource.RequestProperties.html" title="class in com.google.android.exoplayer2.upstream">HttpDataSource.RequestProperties</a></td>
3929<th class="colLast" scope="row">
3930<div class="block">Stores HTTP request properties (aka HTTP headers) and provides methods to modify the headers in
3931 a thread safe way to avoid the potential of creating snapshots of an inconsistent or unintended
3932 state.</div>
3933</th>
3934</tr>
3935<tr id="i626" class="altColor">
3936<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/HttpDataSourceTestEnv.html" title="class in com.google.android.exoplayer2.testutil">HttpDataSourceTestEnv</a></td>
3937<th class="colLast" scope="row">
3938<div class="block">A JUnit <code>Rule</code> that creates test resources for <a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource</code></a> contract tests.</div>
3939</th>
3940</tr>
3941<tr id="i627" class="rowColor">
3942<td class="colFirst"><a href="com/google/android/exoplayer2/drm/HttpMediaDrmCallback.html" title="class in com.google.android.exoplayer2.drm">HttpMediaDrmCallback</a></td>
3943<th class="colLast" scope="row">
3944<div class="block">A <a href="com/google/android/exoplayer2/drm/MediaDrmCallback.html" title="interface in com.google.android.exoplayer2.drm"><code>MediaDrmCallback</code></a> that makes requests using <a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource</code></a> instances.</div>
3945</th>
3946</tr>
3947<tr id="i628" class="altColor">
3948<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/HttpUtil.html" title="class in com.google.android.exoplayer2.upstream">HttpUtil</a></td>
3949<th class="colLast" scope="row">
3950<div class="block">Utility methods for HTTP.</div>
3951</th>
3952</tr>
3953<tr id="i629" class="rowColor">
3954<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/icy/IcyDecoder.html" title="class in com.google.android.exoplayer2.metadata.icy">IcyDecoder</a></td>
3955<th class="colLast" scope="row">
3956<div class="block">Decodes ICY stream information.</div>
3957</th>
3958</tr>
3959<tr id="i630" class="altColor">
3960<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/icy/IcyHeaders.html" title="class in com.google.android.exoplayer2.metadata.icy">IcyHeaders</a></td>
3961<th class="colLast" scope="row">
3962<div class="block">ICY headers.</div>
3963</th>
3964</tr>
3965<tr id="i631" class="rowColor">
3966<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/icy/IcyInfo.html" title="class in com.google.android.exoplayer2.metadata.icy">IcyInfo</a></td>
3967<th class="colLast" scope="row">
3968<div class="block">ICY in-stream information.</div>
3969</th>
3970</tr>
3971<tr id="i632" class="altColor">
3972<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/Id3Decoder.html" title="class in com.google.android.exoplayer2.metadata.id3">Id3Decoder</a></td>
3973<th class="colLast" scope="row">
3974<div class="block">Decodes ID3 tags.</div>
3975</th>
3976</tr>
3977<tr id="i633" class="rowColor">
3978<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/Id3Decoder.FramePredicate.html" title="interface in com.google.android.exoplayer2.metadata.id3">Id3Decoder.FramePredicate</a></td>
3979<th class="colLast" scope="row">
3980<div class="block">A predicate for determining whether individual frames should be decoded.</div>
3981</th>
3982</tr>
3983<tr id="i634" class="altColor">
3984<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/Id3Frame.html" title="class in com.google.android.exoplayer2.metadata.id3">Id3Frame</a></td>
3985<th class="colLast" scope="row">
3986<div class="block">Base class for ID3 frames.</div>
3987</th>
3988</tr>
3989<tr id="i635" class="rowColor">
3990<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/Id3Peeker.html" title="class in com.google.android.exoplayer2.extractor">Id3Peeker</a></td>
3991<th class="colLast" scope="row">
3992<div class="block">Peeks data from the beginning of an <a href="com/google/android/exoplayer2/extractor/ExtractorInput.html" title="interface in com.google.android.exoplayer2.extractor"><code>ExtractorInput</code></a> to determine if there is any ID3 tag.</div>
3993</th>
3994</tr>
3995<tr id="i636" class="altColor">
3996<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/Id3Reader.html" title="class in com.google.android.exoplayer2.extractor.ts">Id3Reader</a></td>
3997<th class="colLast" scope="row">
3998<div class="block">Parses ID3 data and extracts individual text information frames.</div>
3999</th>
4000</tr>
4001<tr id="i637" class="rowColor">
4002<td class="colFirst"><a href="com/google/android/exoplayer2/IllegalSeekPositionException.html" title="class in com.google.android.exoplayer2">IllegalSeekPositionException</a></td>
4003<th class="colLast" scope="row">
4004<div class="block">Thrown when an attempt is made to seek to a position that does not exist in the player's <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a>.</div>
4005</th>
4006</tr>
4007<tr id="i638" class="altColor">
4008<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaAdsLoader.html" title="class in com.google.android.exoplayer2.ext.ima">ImaAdsLoader</a></td>
4009<th class="colLast" scope="row">
4010<div class="block"><a href="com/google/android/exoplayer2/source/ads/AdsLoader.html" title="interface in com.google.android.exoplayer2.source.ads"><code>AdsLoader</code></a> using the IMA SDK.</div>
4011</th>
4012</tr>
4013<tr id="i639" class="rowColor">
4014<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaAdsLoader.Builder.html" title="class in com.google.android.exoplayer2.ext.ima">ImaAdsLoader.Builder</a></td>
4015<th class="colLast" scope="row">
4016<div class="block">Builder for <a href="com/google/android/exoplayer2/ext/ima/ImaAdsLoader.html" title="class in com.google.android.exoplayer2.ext.ima"><code>ImaAdsLoader</code></a>.</div>
4017</th>
4018</tr>
4019<tr id="i640" class="altColor">
4020<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.html" title="class in com.google.android.exoplayer2.ext.ima">ImaServerSideAdInsertionMediaSource</a></td>
4021<th class="colLast" scope="row">
4022<div class="block">MediaSource for IMA server side inserted ad streams.</div>
4023</th>
4024</tr>
4025<tr id="i641" class="rowColor">
4026<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.AdsLoader.html" title="class in com.google.android.exoplayer2.ext.ima">ImaServerSideAdInsertionMediaSource.AdsLoader</a></td>
4027<th class="colLast" scope="row">
4028<div class="block">An ads loader for IMA server side ad insertion streams.</div>
4029</th>
4030</tr>
4031<tr id="i642" class="altColor">
4032<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.AdsLoader.Builder.html" title="class in com.google.android.exoplayer2.ext.ima">ImaServerSideAdInsertionMediaSource.AdsLoader.Builder</a></td>
4033<th class="colLast" scope="row">
4034<div class="block">Builder for building an <a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.AdsLoader.html" title="class in com.google.android.exoplayer2.ext.ima"><code>ImaServerSideAdInsertionMediaSource.AdsLoader</code></a>.</div>
4035</th>
4036</tr>
4037<tr id="i643" class="rowColor">
4038<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.AdsLoader.State.html" title="class in com.google.android.exoplayer2.ext.ima">ImaServerSideAdInsertionMediaSource.AdsLoader.State</a></td>
4039<th class="colLast" scope="row">
4040<div class="block">The state of the <a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.AdsLoader.html" title="class in com.google.android.exoplayer2.ext.ima"><code>ImaServerSideAdInsertionMediaSource.AdsLoader</code></a> that can be used when resuming from the background.</div>
4041</th>
4042</tr>
4043<tr id="i644" class="altColor">
4044<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.Factory.html" title="class in com.google.android.exoplayer2.ext.ima">ImaServerSideAdInsertionMediaSource.Factory</a></td>
4045<th class="colLast" scope="row">
4046<div class="block">Factory for creating <a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionMediaSource.html" title="class in com.google.android.exoplayer2.ext.ima"><code>ImaServerSideAdInsertionMediaSources</code></a>.</div>
4047</th>
4048</tr>
4049<tr id="i645" class="rowColor">
4050<td class="colFirst"><a href="com/google/android/exoplayer2/ext/ima/ImaServerSideAdInsertionUriBuilder.html" title="class in com.google.android.exoplayer2.ext.ima">ImaServerSideAdInsertionUriBuilder</a></td>
4051<th class="colLast" scope="row">
4052<div class="block">Builder for URI for IMA DAI streams.</div>
4053</th>
4054</tr>
4055<tr id="i646" class="altColor">
4056<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/IndexSeekMap.html" title="class in com.google.android.exoplayer2.extractor">IndexSeekMap</a></td>
4057<th class="colLast" scope="row">
4058<div class="block">A <a href="com/google/android/exoplayer2/extractor/SeekMap.html" title="interface in com.google.android.exoplayer2.extractor"><code>SeekMap</code></a> implementation based on a mapping between times and positions in the input
4059 stream.</div>
4060</th>
4061</tr>
4062<tr id="i647" class="rowColor">
4063<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/InitializationChunk.html" title="class in com.google.android.exoplayer2.source.chunk">InitializationChunk</a></td>
4064<th class="colLast" scope="row">
4065<div class="block">A <a href="com/google/android/exoplayer2/source/chunk/Chunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>Chunk</code></a> that uses an <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a> to decode initialization data for single track.</div>
4066</th>
4067</tr>
4068<tr id="i648" class="altColor">
4069<td class="colFirst"><a href="com/google/android/exoplayer2/source/mediaparser/InputReaderAdapterV30.html" title="class in com.google.android.exoplayer2.source.mediaparser">InputReaderAdapterV30</a></td>
4070<th class="colLast" scope="row">
4071<div class="block"><a href="https://developer.android.com/reference/android/media/MediaParser.SeekableInputReader.html" title="class or interface in android.media" class="externalLink"><code>MediaParser.SeekableInputReader</code></a> implementation wrapping a <a href="com/google/android/exoplayer2/upstream/DataReader.html" title="interface in com.google.android.exoplayer2.upstream" target="_top"><code>DataReader</code></a>.</div>
4072</th>
4073</tr>
4074<tr id="i649" class="rowColor">
4075<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/InternalFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">InternalFrame</a></td>
4076<th class="colLast" scope="row">
4077<div class="block">Internal ID3 frame that is intended for use by the player.</div>
4078</th>
4079</tr>
4080<tr id="i650" class="altColor">
4081<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/jpeg/JpegExtractor.html" title="class in com.google.android.exoplayer2.extractor.jpeg">JpegExtractor</a></td>
4082<th class="colLast" scope="row">
4083<div class="block">Extracts JPEG image using the Exif format.</div>
4084</th>
4085</tr>
4086<tr id="i651" class="rowColor">
4087<td class="colFirst"><a href="com/google/android/exoplayer2/drm/KeysExpiredException.html" title="class in com.google.android.exoplayer2.drm">KeysExpiredException</a></td>
4088<th class="colLast" scope="row">
4089<div class="block">Thrown when the drm keys loaded into an open session expire.</div>
4090</th>
4091</tr>
4092<tr id="i652" class="altColor">
4093<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/LanguageFeatureSpan.html" title="interface in com.google.android.exoplayer2.text.span">LanguageFeatureSpan</a></td>
4094<th class="colLast" scope="row">
4095<div class="block">Marker interface for span classes that carry language features rather than style information.</div>
4096</th>
4097</tr>
4098<tr id="i653" class="rowColor">
4099<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/LatmReader.html" title="class in com.google.android.exoplayer2.extractor.ts">LatmReader</a></td>
4100<th class="colLast" scope="row">
4101<div class="block">Parses and extracts samples from an AAC/LATM elementary stream.</div>
4102</th>
4103</tr>
4104<tr id="i654" class="altColor">
4105<td class="colFirst"><a href="com/google/android/exoplayer2/ext/leanback/LeanbackPlayerAdapter.html" title="class in com.google.android.exoplayer2.ext.leanback">LeanbackPlayerAdapter</a></td>
4106<th class="colLast" scope="row">
4107<div class="block">Leanback <code>PlayerAdapter</code> implementation for <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>.</div>
4108</th>
4109</tr>
4110<tr id="i655" class="rowColor">
4111<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/LeastRecentlyUsedCacheEvictor.html" title="class in com.google.android.exoplayer2.upstream.cache">LeastRecentlyUsedCacheEvictor</a></td>
4112<th class="colLast" scope="row">
4113<div class="block">Evicts least recently used cache files first.</div>
4114</th>
4115</tr>
4116<tr id="i656" class="altColor">
4117<td class="colFirst"><a href="com/google/android/exoplayer2/ext/flac/LibflacAudioRenderer.html" title="class in com.google.android.exoplayer2.ext.flac">LibflacAudioRenderer</a></td>
4118<th class="colLast" scope="row">
4119<div class="block">Decodes and renders audio using the native Flac decoder.</div>
4120</th>
4121</tr>
4122<tr id="i657" class="rowColor">
4123<td class="colFirst"><a href="com/google/android/exoplayer2/ext/av1/Libgav1VideoRenderer.html" title="class in com.google.android.exoplayer2.ext.av1">Libgav1VideoRenderer</a></td>
4124<th class="colLast" scope="row">
4125<div class="block">Decodes and renders video using libgav1 decoder.</div>
4126</th>
4127</tr>
4128<tr id="i658" class="altColor">
4129<td class="colFirst"><a href="com/google/android/exoplayer2/ext/opus/LibopusAudioRenderer.html" title="class in com.google.android.exoplayer2.ext.opus">LibopusAudioRenderer</a></td>
4130<th class="colLast" scope="row">
4131<div class="block">Decodes and renders audio using the native Opus decoder.</div>
4132</th>
4133</tr>
4134<tr id="i659" class="rowColor">
4135<td class="colFirst"><a href="com/google/android/exoplayer2/util/LibraryLoader.html" title="class in com.google.android.exoplayer2.util">LibraryLoader</a></td>
4136<th class="colLast" scope="row">
4137<div class="block">Configurable loader for native libraries.</div>
4138</th>
4139</tr>
4140<tr id="i660" class="altColor">
4141<td class="colFirst"><a href="com/google/android/exoplayer2/ext/vp9/LibvpxVideoRenderer.html" title="class in com.google.android.exoplayer2.ext.vp9">LibvpxVideoRenderer</a></td>
4142<th class="colLast" scope="row">
4143<div class="block">Decodes and renders video using the native VP9 decoder.</div>
4144</th>
4145</tr>
4146<tr id="i661" class="rowColor">
4147<td class="colFirst"><a href="com/google/android/exoplayer2/util/ListenerSet.html" title="class in com.google.android.exoplayer2.util">ListenerSet</a>&lt;<a href="com/google/android/exoplayer2/util/ListenerSet.html" title="type parameter in ListenerSet">T</a> extends @NonNull <a href="https://developer.android.com/reference/java/lang/Object.html" title="class or interface in java.lang" class="externalLink" target="_top">Object</a>&gt;</td>
4148<th class="colLast" scope="row">
4149<div class="block">A set of listeners.</div>
4150</th>
4151</tr>
4152<tr id="i662" class="altColor">
4153<td class="colFirst"><a href="com/google/android/exoplayer2/util/ListenerSet.Event.html" title="interface in com.google.android.exoplayer2.util">ListenerSet.Event</a>&lt;<a href="com/google/android/exoplayer2/util/ListenerSet.Event.html" title="type parameter in ListenerSet.Event">T</a>&gt;</td>
4154<th class="colLast" scope="row">
4155<div class="block">An event sent to a listener.</div>
4156</th>
4157</tr>
4158<tr id="i663" class="rowColor">
4159<td class="colFirst"><a href="com/google/android/exoplayer2/util/ListenerSet.IterationFinishedEvent.html" title="interface in com.google.android.exoplayer2.util">ListenerSet.IterationFinishedEvent</a>&lt;<a href="com/google/android/exoplayer2/util/ListenerSet.IterationFinishedEvent.html" title="type parameter in ListenerSet.IterationFinishedEvent">T</a>&gt;</td>
4160<th class="colLast" scope="row">
4161<div class="block">An event sent to a listener when all other events sent during one <a href="https://developer.android.com/reference/android/os/Looper.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Looper</code></a> message queue
4162 iteration were handled by the listener.</div>
4163</th>
4164</tr>
4165<tr id="i664" class="altColor">
4166<td class="colFirst"><a href="com/google/android/exoplayer2/LivePlaybackSpeedControl.html" title="interface in com.google.android.exoplayer2">LivePlaybackSpeedControl</a></td>
4167<th class="colLast" scope="row">
4168<div class="block">Controls the playback speed while playing live content in order to maintain a steady target live
4169 offset.</div>
4170</th>
4171</tr>
4172<tr id="i665" class="rowColor">
4173<td class="colFirst"><a href="com/google/android/exoplayer2/LoadControl.html" title="interface in com.google.android.exoplayer2">LoadControl</a></td>
4174<th class="colLast" scope="row">
4175<div class="block">Controls buffering of media.</div>
4176</th>
4177</tr>
4178<tr id="i666" class="altColor">
4179<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Loader.html" title="class in com.google.android.exoplayer2.upstream">Loader</a></td>
4180<th class="colLast" scope="row">
4181<div class="block">Manages the background loading of <a href="com/google/android/exoplayer2/upstream/Loader.Loadable.html" title="interface in com.google.android.exoplayer2.upstream"><code>Loader.Loadable</code></a>s.</div>
4182</th>
4183</tr>
4184<tr id="i667" class="rowColor">
4185<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Loader.Callback.html" title="interface in com.google.android.exoplayer2.upstream">Loader.Callback</a>&lt;<a href="com/google/android/exoplayer2/upstream/Loader.Callback.html" title="type parameter in Loader.Callback">T</a> extends <a href="com/google/android/exoplayer2/upstream/Loader.Loadable.html" title="interface in com.google.android.exoplayer2.upstream">Loader.Loadable</a>&gt;</td>
4186<th class="colLast" scope="row">
4187<div class="block">A callback to be notified of <a href="com/google/android/exoplayer2/upstream/Loader.html" title="class in com.google.android.exoplayer2.upstream"><code>Loader</code></a> events.</div>
4188</th>
4189</tr>
4190<tr id="i668" class="altColor">
4191<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Loader.Loadable.html" title="interface in com.google.android.exoplayer2.upstream">Loader.Loadable</a></td>
4192<th class="colLast" scope="row">
4193<div class="block">An object that can be loaded using a <a href="com/google/android/exoplayer2/upstream/Loader.html" title="class in com.google.android.exoplayer2.upstream"><code>Loader</code></a>.</div>
4194</th>
4195</tr>
4196<tr id="i669" class="rowColor">
4197<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Loader.LoadErrorAction.html" title="class in com.google.android.exoplayer2.upstream">Loader.LoadErrorAction</a></td>
4198<th class="colLast" scope="row">
4199<div class="block">Action that can be taken in response to <a href="com/google/android/exoplayer2/upstream/Loader.Callback.html#onLoadError(T,long,long,java.io.IOException,int)"><code>Loader.Callback.onLoadError(Loadable, long, long,
4200 IOException, int)</code></a>.</div>
4201</th>
4202</tr>
4203<tr id="i670" class="altColor">
4204<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Loader.ReleaseCallback.html" title="interface in com.google.android.exoplayer2.upstream">Loader.ReleaseCallback</a></td>
4205<th class="colLast" scope="row">
4206<div class="block">A callback to be notified when a <a href="com/google/android/exoplayer2/upstream/Loader.html" title="class in com.google.android.exoplayer2.upstream"><code>Loader</code></a> has finished being released.</div>
4207</th>
4208</tr>
4209<tr id="i671" class="rowColor">
4210<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/Loader.UnexpectedLoaderException.html" title="class in com.google.android.exoplayer2.upstream">Loader.UnexpectedLoaderException</a></td>
4211<th class="colLast" scope="row">
4212<div class="block">Thrown when an unexpected exception or error is encountered during loading.</div>
4213</th>
4214</tr>
4215<tr id="i672" class="altColor">
4216<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/LoaderErrorThrower.html" title="interface in com.google.android.exoplayer2.upstream">LoaderErrorThrower</a></td>
4217<th class="colLast" scope="row">
4218<div class="block">Conditionally throws errors affecting a <a href="com/google/android/exoplayer2/upstream/Loader.html" title="class in com.google.android.exoplayer2.upstream"><code>Loader</code></a>.</div>
4219</th>
4220</tr>
4221<tr id="i673" class="rowColor">
4222<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/LoaderErrorThrower.Dummy.html" title="class in com.google.android.exoplayer2.upstream">LoaderErrorThrower.Dummy</a></td>
4223<th class="colLast" scope="row">
4224<div class="block">A <a href="com/google/android/exoplayer2/upstream/LoaderErrorThrower.html" title="interface in com.google.android.exoplayer2.upstream"><code>LoaderErrorThrower</code></a> that never throws.</div>
4225</th>
4226</tr>
4227<tr id="i674" class="altColor">
4228<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.html" title="interface in com.google.android.exoplayer2.upstream">LoadErrorHandlingPolicy</a></td>
4229<th class="colLast" scope="row">
4230<div class="block">A policy that defines how load errors are handled.</div>
4231</th>
4232</tr>
4233<tr id="i675" class="rowColor">
4234<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.FallbackOptions.html" title="class in com.google.android.exoplayer2.upstream">LoadErrorHandlingPolicy.FallbackOptions</a></td>
4235<th class="colLast" scope="row">
4236<div class="block">Holds information about the available fallback options.</div>
4237</th>
4238</tr>
4239<tr id="i676" class="altColor">
4240<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.FallbackSelection.html" title="class in com.google.android.exoplayer2.upstream">LoadErrorHandlingPolicy.FallbackSelection</a></td>
4241<th class="colLast" scope="row">
4242<div class="block">A selected fallback option.</div>
4243</th>
4244</tr>
4245<tr id="i677" class="rowColor">
4246<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.FallbackType.html" title="annotation in com.google.android.exoplayer2.upstream">LoadErrorHandlingPolicy.FallbackType</a></td>
4247<th class="colLast" scope="row">
4248<div class="block">Fallback type.</div>
4249</th>
4250</tr>
4251<tr id="i678" class="altColor">
4252<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.LoadErrorInfo.html" title="class in com.google.android.exoplayer2.upstream">LoadErrorHandlingPolicy.LoadErrorInfo</a></td>
4253<th class="colLast" scope="row">
4254<div class="block">Holds information about a load task error.</div>
4255</th>
4256</tr>
4257<tr id="i679" class="rowColor">
4258<td class="colFirst"><a href="com/google/android/exoplayer2/source/LoadEventInfo.html" title="class in com.google.android.exoplayer2.source">LoadEventInfo</a></td>
4259<th class="colLast" scope="row">
4260<div class="block"><a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> load event information.</div>
4261</th>
4262</tr>
4263<tr id="i680" class="altColor">
4264<td class="colFirst"><a href="com/google/android/exoplayer2/drm/LocalMediaDrmCallback.html" title="class in com.google.android.exoplayer2.drm">LocalMediaDrmCallback</a></td>
4265<th class="colLast" scope="row">
4266<div class="block">A <a href="com/google/android/exoplayer2/drm/MediaDrmCallback.html" title="interface in com.google.android.exoplayer2.drm"><code>MediaDrmCallback</code></a> that provides a fixed response to key requests.</div>
4267</th>
4268</tr>
4269<tr id="i681" class="rowColor">
4270<td class="colFirst"><a href="com/google/android/exoplayer2/util/Log.html" title="class in com.google.android.exoplayer2.util">Log</a></td>
4271<th class="colLast" scope="row">
4272<div class="block">Wrapper around <a href="https://developer.android.com/reference/android/util/Log.html" title="class or interface in android.util" class="externalLink" target="_top"><code>Log</code></a> which allows to set the log level.</div>
4273</th>
4274</tr>
4275<tr id="i682" class="altColor">
4276<td class="colFirst"><a href="com/google/android/exoplayer2/util/Log.LogLevel.html" title="annotation in com.google.android.exoplayer2.util">Log.LogLevel</a></td>
4277<th class="colLast" scope="row">
4278<div class="block">Log level for ExoPlayer logcat logging.</div>
4279</th>
4280</tr>
4281<tr id="i683" class="rowColor">
4282<td class="colFirst"><a href="com/google/android/exoplayer2/util/LongArray.html" title="class in com.google.android.exoplayer2.util">LongArray</a></td>
4283<th class="colLast" scope="row">
4284<div class="block">An append-only, auto-growing <code>long[]</code>.</div>
4285</th>
4286</tr>
4287<tr id="i684" class="altColor">
4288<td class="colFirst"><a href="com/google/android/exoplayer2/source/LoopingMediaSource.html" title="class in com.google.android.exoplayer2.source">LoopingMediaSource</a></td>
4289<th class="colLast" scope="row">Deprecated.
4290<div class="deprecationComment">To loop a <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> indefinitely, use <a href="com/google/android/exoplayer2/Player.html#setRepeatMode(@com.google.android.exoplayer2.Player.RepeatModeint)"><code>Player.setRepeatMode(int)</code></a>
4291     instead of this class.</div>
4292</th>
4293</tr>
4294<tr id="i685" class="rowColor">
4295<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/MappingTrackSelector.html" title="class in com.google.android.exoplayer2.trackselection">MappingTrackSelector</a></td>
4296<th class="colLast" scope="row">
4297<div class="block">Base class for <a href="com/google/android/exoplayer2/trackselection/TrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>TrackSelector</code></a>s that first establish a mapping between <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroup</code></a>s
4298 and <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a>s, and then from that mapping create a <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>ExoTrackSelection</code></a> for each
4299 renderer.</div>
4300</th>
4301</tr>
4302<tr id="i686" class="altColor">
4303<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/MappingTrackSelector.MappedTrackInfo.html" title="class in com.google.android.exoplayer2.trackselection">MappingTrackSelector.MappedTrackInfo</a></td>
4304<th class="colLast" scope="row">
4305<div class="block">Provides mapped track information for each renderer.</div>
4306</th>
4307</tr>
4308<tr id="i687" class="rowColor">
4309<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/MappingTrackSelector.MappedTrackInfo.RendererSupport.html" title="annotation in com.google.android.exoplayer2.trackselection">MappingTrackSelector.MappedTrackInfo.RendererSupport</a></td>
4310<th class="colLast" scope="row">
4311<div class="block">Levels of renderer support.</div>
4312</th>
4313</tr>
4314<tr id="i688" class="altColor">
4315<td class="colFirst"><a href="com/google/android/exoplayer2/source/MaskingMediaPeriod.html" title="class in com.google.android.exoplayer2.source">MaskingMediaPeriod</a></td>
4316<th class="colLast" scope="row">
4317<div class="block">Media period that defers calling <a href="com/google/android/exoplayer2/source/MediaSource.html#createPeriod(com.google.android.exoplayer2.source.MediaSource.MediaPeriodId,com.google.android.exoplayer2.upstream.Allocator,long)"><code>MediaSource.createPeriod(MediaPeriodId, Allocator, long)</code></a>
4318 on a given source until <a href="com/google/android/exoplayer2/source/MaskingMediaPeriod.html#createPeriod(com.google.android.exoplayer2.source.MediaSource.MediaPeriodId)"><code>MaskingMediaPeriod.createPeriod(MediaPeriodId)</code></a> has been called.</div>
4319</th>
4320</tr>
4321<tr id="i689" class="rowColor">
4322<td class="colFirst"><a href="com/google/android/exoplayer2/source/MaskingMediaPeriod.PrepareListener.html" title="interface in com.google.android.exoplayer2.source">MaskingMediaPeriod.PrepareListener</a></td>
4323<th class="colLast" scope="row">
4324<div class="block">Listener for preparation events.</div>
4325</th>
4326</tr>
4327<tr id="i690" class="altColor">
4328<td class="colFirst"><a href="com/google/android/exoplayer2/source/MaskingMediaSource.html" title="class in com.google.android.exoplayer2.source">MaskingMediaSource</a></td>
4329<th class="colLast" scope="row">
4330<div class="block">A <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> that masks the <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> with a placeholder until the actual media
4331 structure is known.</div>
4332</th>
4333</tr>
4334<tr id="i691" class="rowColor">
4335<td class="colFirst"><a href="com/google/android/exoplayer2/source/MaskingMediaSource.PlaceholderTimeline.html" title="class in com.google.android.exoplayer2.source">MaskingMediaSource.PlaceholderTimeline</a></td>
4336<th class="colLast" scope="row">
4337<div class="block">A timeline with one dynamic window with a period of indeterminate duration.</div>
4338</th>
4339</tr>
4340<tr id="i692" class="altColor">
4341<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.html" title="class in com.google.android.exoplayer2.extractor.mkv">MatroskaExtractor</a></td>
4342<th class="colLast" scope="row">
4343<div class="block">Extracts data from the Matroska and WebM container formats.</div>
4344</th>
4345</tr>
4346<tr id="i693" class="rowColor">
4347<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.mkv">MatroskaExtractor.Flags</a></td>
4348<th class="colLast" scope="row">
4349<div class="block">Flags controlling the behavior of the extractor.</div>
4350</th>
4351</tr>
4352<tr id="i694" class="altColor">
4353<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mkv/MatroskaExtractor.Track.html" title="class in com.google.android.exoplayer2.extractor.mkv">MatroskaExtractor.Track</a></td>
4354<th class="colLast" scope="row">
4355<div class="block">Holds data corresponding to a single track.</div>
4356</th>
4357</tr>
4358<tr id="i695" class="rowColor">
4359<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/mp4/MdtaMetadataEntry.html" title="class in com.google.android.exoplayer2.metadata.mp4">MdtaMetadataEntry</a></td>
4360<th class="colLast" scope="row">
4361<div class="block">Stores extensible metadata with handler type 'mdta'.</div>
4362</th>
4363</tr>
4364<tr id="i696" class="altColor">
4365<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/MediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk">MediaChunk</a></td>
4366<th class="colLast" scope="row">
4367<div class="block">An abstract base class for <a href="com/google/android/exoplayer2/source/chunk/Chunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>Chunk</code></a>s that contain media samples.</div>
4368</th>
4369</tr>
4370<tr id="i697" class="rowColor">
4371<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/MediaChunkIterator.html" title="interface in com.google.android.exoplayer2.source.chunk">MediaChunkIterator</a></td>
4372<th class="colLast" scope="row">
4373<div class="block">Iterator for media chunk sequences.</div>
4374</th>
4375</tr>
4376<tr id="i698" class="altColor">
4377<td class="colFirst"><a href="com/google/android/exoplayer2/util/MediaClock.html" title="interface in com.google.android.exoplayer2.util">MediaClock</a></td>
4378<th class="colLast" scope="row">
4379<div class="block">Tracks the progression of media time.</div>
4380</th>
4381</tr>
4382<tr id="i699" class="rowColor">
4383<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.html" title="interface in com.google.android.exoplayer2.mediacodec">MediaCodecAdapter</a></td>
4384<th class="colLast" scope="row">
4385<div class="block">Abstracts <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> operations.</div>
4386</th>
4387</tr>
4388<tr id="i700" class="altColor">
4389<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.Configuration.html" title="class in com.google.android.exoplayer2.mediacodec">MediaCodecAdapter.Configuration</a></td>
4390<th class="colLast" scope="row">
4391<div class="block">Configuration parameters for a <a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.html" title="interface in com.google.android.exoplayer2.mediacodec"><code>MediaCodecAdapter</code></a>.</div>
4392</th>
4393</tr>
4394<tr id="i701" class="rowColor">
4395<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.Factory.html" title="interface in com.google.android.exoplayer2.mediacodec">MediaCodecAdapter.Factory</a></td>
4396<th class="colLast" scope="row">
4397<div class="block">A factory for <a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.html" title="interface in com.google.android.exoplayer2.mediacodec"><code>MediaCodecAdapter</code></a> instances.</div>
4398</th>
4399</tr>
4400<tr id="i702" class="altColor">
4401<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.OnFrameRenderedListener.html" title="interface in com.google.android.exoplayer2.mediacodec">MediaCodecAdapter.OnFrameRenderedListener</a></td>
4402<th class="colLast" scope="row">
4403<div class="block">Listener to be called when an output frame has rendered on the output surface.</div>
4404</th>
4405</tr>
4406<tr id="i703" class="rowColor">
4407<td class="colFirst"><a href="com/google/android/exoplayer2/audio/MediaCodecAudioRenderer.html" title="class in com.google.android.exoplayer2.audio">MediaCodecAudioRenderer</a></td>
4408<th class="colLast" scope="row">
4409<div class="block">Decodes and renders audio using <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink"><code>MediaCodec</code></a> and an <a href="com/google/android/exoplayer2/audio/AudioSink.html" title="interface in com.google.android.exoplayer2.audio" target="_top"><code>AudioSink</code></a>.</div>
4410</th>
4411</tr>
4412<tr id="i704" class="altColor">
4413<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecDecoderException.html" title="class in com.google.android.exoplayer2.mediacodec">MediaCodecDecoderException</a></td>
4414<th class="colLast" scope="row">
4415<div class="block">Thrown when a failure occurs in a <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> decoder.</div>
4416</th>
4417</tr>
4418<tr id="i705" class="rowColor">
4419<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecInfo.html" title="class in com.google.android.exoplayer2.mediacodec">MediaCodecInfo</a></td>
4420<th class="colLast" scope="row">
4421<div class="block">Information about a <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> for a given mime type.</div>
4422</th>
4423</tr>
4424<tr id="i706" class="altColor">
4425<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecRenderer.html" title="class in com.google.android.exoplayer2.mediacodec">MediaCodecRenderer</a></td>
4426<th class="colLast" scope="row">
4427<div class="block">An abstract renderer that uses <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> to decode samples for rendering.</div>
4428</th>
4429</tr>
4430<tr id="i707" class="rowColor">
4431<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecRenderer.DecoderInitializationException.html" title="class in com.google.android.exoplayer2.mediacodec">MediaCodecRenderer.DecoderInitializationException</a></td>
4432<th class="colLast" scope="row">
4433<div class="block">Thrown when a failure occurs instantiating a decoder.</div>
4434</th>
4435</tr>
4436<tr id="i708" class="altColor">
4437<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecSelector.html" title="interface in com.google.android.exoplayer2.mediacodec">MediaCodecSelector</a></td>
4438<th class="colLast" scope="row">
4439<div class="block">Selector of <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> instances.</div>
4440</th>
4441</tr>
4442<tr id="i709" class="rowColor">
4443<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecUtil.html" title="class in com.google.android.exoplayer2.mediacodec">MediaCodecUtil</a></td>
4444<th class="colLast" scope="row">
4445<div class="block">A utility class for querying the available codecs.</div>
4446</th>
4447</tr>
4448<tr id="i710" class="altColor">
4449<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/MediaCodecUtil.DecoderQueryException.html" title="class in com.google.android.exoplayer2.mediacodec">MediaCodecUtil.DecoderQueryException</a></td>
4450<th class="colLast" scope="row">
4451<div class="block">Thrown when an error occurs querying the device for its underlying media capabilities.</div>
4452</th>
4453</tr>
4454<tr id="i711" class="rowColor">
4455<td class="colFirst"><a href="com/google/android/exoplayer2/video/MediaCodecVideoDecoderException.html" title="class in com.google.android.exoplayer2.video">MediaCodecVideoDecoderException</a></td>
4456<th class="colLast" scope="row">
4457<div class="block">Thrown when a failure occurs in a <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> video decoder.</div>
4458</th>
4459</tr>
4460<tr id="i712" class="altColor">
4461<td class="colFirst"><a href="com/google/android/exoplayer2/video/MediaCodecVideoRenderer.html" title="class in com.google.android.exoplayer2.video">MediaCodecVideoRenderer</a></td>
4462<th class="colLast" scope="row">
4463<div class="block">Decodes and renders video using <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a>.</div>
4464</th>
4465</tr>
4466<tr id="i713" class="rowColor">
4467<td class="colFirst"><a href="com/google/android/exoplayer2/video/MediaCodecVideoRenderer.CodecMaxValues.html" title="class in com.google.android.exoplayer2.video">MediaCodecVideoRenderer.CodecMaxValues</a></td>
4468<th class="colLast" scope="row">&nbsp;</th>
4469</tr>
4470<tr id="i714" class="altColor">
4471<td class="colFirst"><a href="com/google/android/exoplayer2/drm/MediaDrmCallback.html" title="interface in com.google.android.exoplayer2.drm">MediaDrmCallback</a></td>
4472<th class="colLast" scope="row">
4473<div class="block">Performs <a href="com/google/android/exoplayer2/drm/ExoMediaDrm.html" title="interface in com.google.android.exoplayer2.drm"><code>ExoMediaDrm</code></a> key and provisioning requests.</div>
4474</th>
4475</tr>
4476<tr id="i715" class="rowColor">
4477<td class="colFirst"><a href="com/google/android/exoplayer2/drm/MediaDrmCallbackException.html" title="class in com.google.android.exoplayer2.drm">MediaDrmCallbackException</a></td>
4478<th class="colLast" scope="row">
4479<div class="block">Thrown when an error occurs while executing a DRM <a href="com/google/android/exoplayer2/drm/MediaDrmCallback.html#executeKeyRequest(java.util.UUID,com.google.android.exoplayer2.drm.ExoMediaDrm.KeyRequest)"><code>key</code></a>
4480 or <a href="com/google/android/exoplayer2/drm/MediaDrmCallback.html#executeProvisionRequest(java.util.UUID,com.google.android.exoplayer2.drm.ExoMediaDrm.ProvisionRequest)"><code>provisioning</code></a> request.</div>
4481</th>
4482</tr>
4483<tr id="i716" class="altColor">
4484<td class="colFirst"><a href="com/google/android/exoplayer2/util/MediaFormatUtil.html" title="class in com.google.android.exoplayer2.util">MediaFormatUtil</a></td>
4485<th class="colLast" scope="row">
4486<div class="block">Helper class containing utility methods for managing <a href="https://developer.android.com/reference/android/media/MediaFormat.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaFormat</code></a> instances.</div>
4487</th>
4488</tr>
4489<tr id="i717" class="rowColor">
4490<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2">MediaItem</a></td>
4491<th class="colLast" scope="row">
4492<div class="block">Representation of a media item.</div>
4493</th>
4494</tr>
4495<tr id="i718" class="altColor">
4496<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.AdsConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.AdsConfiguration</a></td>
4497<th class="colLast" scope="row">
4498<div class="block">Configuration for playing back linear ads with a media item.</div>
4499</th>
4500</tr>
4501<tr id="i719" class="rowColor">
4502<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.AdsConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.AdsConfiguration.Builder</a></td>
4503<th class="colLast" scope="row">
4504<div class="block">Builder for <a href="com/google/android/exoplayer2/MediaItem.AdsConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.AdsConfiguration</code></a> instances.</div>
4505</th>
4506</tr>
4507<tr id="i720" class="altColor">
4508<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.Builder</a></td>
4509<th class="colLast" scope="row">
4510<div class="block">A builder for <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> instances.</div>
4511</th>
4512</tr>
4513<tr id="i721" class="rowColor">
4514<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.ClippingConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.ClippingConfiguration</a></td>
4515<th class="colLast" scope="row">
4516<div class="block">Optionally clips the media item to a custom start and end position.</div>
4517</th>
4518</tr>
4519<tr id="i722" class="altColor">
4520<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.ClippingConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.ClippingConfiguration.Builder</a></td>
4521<th class="colLast" scope="row">
4522<div class="block">Builder for <a href="com/google/android/exoplayer2/MediaItem.ClippingConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.ClippingConfiguration</code></a> instances.</div>
4523</th>
4524</tr>
4525<tr id="i723" class="rowColor">
4526<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.ClippingProperties.html" title="class in com.google.android.exoplayer2">MediaItem.ClippingProperties</a></td>
4527<th class="colLast" scope="row">Deprecated.
4528<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/MediaItem.ClippingConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.ClippingConfiguration</code></a> instead.</div>
4529</th>
4530</tr>
4531<tr id="i724" class="altColor">
4532<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.DrmConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.DrmConfiguration</a></td>
4533<th class="colLast" scope="row">
4534<div class="block">DRM configuration for a media item.</div>
4535</th>
4536</tr>
4537<tr id="i725" class="rowColor">
4538<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.DrmConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.DrmConfiguration.Builder</a></td>
4539<th class="colLast" scope="row">
4540<div class="block">Builder for <a href="com/google/android/exoplayer2/MediaItem.DrmConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.DrmConfiguration</code></a>.</div>
4541</th>
4542</tr>
4543<tr id="i726" class="altColor">
4544<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.LiveConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.LiveConfiguration</a></td>
4545<th class="colLast" scope="row">
4546<div class="block">Live playback configuration.</div>
4547</th>
4548</tr>
4549<tr id="i727" class="rowColor">
4550<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.LiveConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.LiveConfiguration.Builder</a></td>
4551<th class="colLast" scope="row">
4552<div class="block">Builder for <a href="com/google/android/exoplayer2/MediaItem.LiveConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.LiveConfiguration</code></a> instances.</div>
4553</th>
4554</tr>
4555<tr id="i728" class="altColor">
4556<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.LocalConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.LocalConfiguration</a></td>
4557<th class="colLast" scope="row">
4558<div class="block">Properties for local playback.</div>
4559</th>
4560</tr>
4561<tr id="i729" class="rowColor">
4562<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.PlaybackProperties.html" title="class in com.google.android.exoplayer2">MediaItem.PlaybackProperties</a></td>
4563<th class="colLast" scope="row">Deprecated.
4564<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/MediaItem.LocalConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.LocalConfiguration</code></a>.</div>
4565</th>
4566</tr>
4567<tr id="i730" class="altColor">
4568<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.Subtitle.html" title="class in com.google.android.exoplayer2">MediaItem.Subtitle</a></td>
4569<th class="colLast" scope="row">Deprecated.
4570<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.SubtitleConfiguration</code></a> instead</div>
4571</th>
4572</tr>
4573<tr id="i731" class="rowColor">
4574<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration</a></td>
4575<th class="colLast" scope="row">
4576<div class="block">Properties for a text track.</div>
4577</th>
4578</tr>
4579<tr id="i732" class="altColor">
4580<td class="colFirst"><a href="com/google/android/exoplayer2/MediaItem.SubtitleConfiguration.Builder.html" title="class in com.google.android.exoplayer2">MediaItem.SubtitleConfiguration.Builder</a></td>
4581<th class="colLast" scope="row">
4582<div class="block">Builder for <a href="com/google/android/exoplayer2/MediaItem.SubtitleConfiguration.html" title="class in com.google.android.exoplayer2"><code>MediaItem.SubtitleConfiguration</code></a> instances.</div>
4583</th>
4584</tr>
4585<tr id="i733" class="rowColor">
4586<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cast/MediaItemConverter.html" title="interface in com.google.android.exoplayer2.ext.cast">MediaItemConverter</a></td>
4587<th class="colLast" scope="row">
4588<div class="block">Converts between <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a> and the Cast SDK's <code>MediaQueueItem</code>.</div>
4589</th>
4590</tr>
4591<tr id="i734" class="altColor">
4592<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/MediaItemConverter.html" title="interface in com.google.android.exoplayer2.ext.media2">MediaItemConverter</a></td>
4593<th class="colLast" scope="row">
4594<div class="block">Converts between <code>Media2 MediaItem</code> and <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>ExoPlayer MediaItem</code></a>.</div>
4595</th>
4596</tr>
4597<tr id="i735" class="rowColor">
4598<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaLoadData.html" title="class in com.google.android.exoplayer2.source">MediaLoadData</a></td>
4599<th class="colLast" scope="row">
4600<div class="block">Descriptor for data being loaded or selected by a <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
4601</th>
4602</tr>
4603<tr id="i736" class="altColor">
4604<td class="colFirst"><a href="com/google/android/exoplayer2/MediaMetadata.html" title="class in com.google.android.exoplayer2">MediaMetadata</a></td>
4605<th class="colLast" scope="row">
4606<div class="block">Metadata of a <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>, playlist, or a combination of multiple sources of <a href="com/google/android/exoplayer2/metadata/Metadata.html" title="class in com.google.android.exoplayer2.metadata"><code>Metadata</code></a>.</div>
4607</th>
4608</tr>
4609<tr id="i737" class="rowColor">
4610<td class="colFirst"><a href="com/google/android/exoplayer2/MediaMetadata.Builder.html" title="class in com.google.android.exoplayer2">MediaMetadata.Builder</a></td>
4611<th class="colLast" scope="row">
4612<div class="block">A builder for <a href="com/google/android/exoplayer2/MediaMetadata.html" title="class in com.google.android.exoplayer2"><code>MediaMetadata</code></a> instances.</div>
4613</th>
4614</tr>
4615<tr id="i738" class="altColor">
4616<td class="colFirst"><a href="com/google/android/exoplayer2/MediaMetadata.FolderType.html" title="annotation in com.google.android.exoplayer2">MediaMetadata.FolderType</a></td>
4617<th class="colLast" scope="row">
4618<div class="block">The folder type of the media item.</div>
4619</th>
4620</tr>
4621<tr id="i739" class="rowColor">
4622<td class="colFirst"><a href="com/google/android/exoplayer2/MediaMetadata.PictureType.html" title="annotation in com.google.android.exoplayer2">MediaMetadata.PictureType</a></td>
4623<th class="colLast" scope="row">
4624<div class="block">The picture type of the artwork.</div>
4625</th>
4626</tr>
4627<tr id="i740" class="altColor">
4628<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/MediaMetricsListener.html" title="class in com.google.android.exoplayer2.analytics">MediaMetricsListener</a></td>
4629<th class="colLast" scope="row">
4630<div class="block">An <a href="com/google/android/exoplayer2/analytics/AnalyticsListener.html" title="interface in com.google.android.exoplayer2.analytics"><code>AnalyticsListener</code></a> that interacts with the Android <a href="https://developer.android.com/reference/android/media/metrics/MediaMetricsManager.html" title="class or interface in android.media.metrics" class="externalLink" target="_top"><code>MediaMetricsManager</code></a>.</div>
4631</th>
4632</tr>
4633<tr id="i741" class="rowColor">
4634<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/MediaParserChunkExtractor.html" title="class in com.google.android.exoplayer2.source.chunk">MediaParserChunkExtractor</a></td>
4635<th class="colLast" scope="row">
4636<div class="block"><a href="com/google/android/exoplayer2/source/chunk/ChunkExtractor.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkExtractor</code></a> implemented on top of the platform's <a href="https://developer.android.com/reference/android/media/MediaParser.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaParser</code></a>.</div>
4637</th>
4638</tr>
4639<tr id="i742" class="altColor">
4640<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaParserExtractorAdapter.html" title="class in com.google.android.exoplayer2.source">MediaParserExtractorAdapter</a></td>
4641<th class="colLast" scope="row">
4642<div class="block"><a href="com/google/android/exoplayer2/source/ProgressiveMediaExtractor.html" title="interface in com.google.android.exoplayer2.source"><code>ProgressiveMediaExtractor</code></a> implemented on top of the platform's <a href="https://developer.android.com/reference/android/media/MediaParser.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaParser</code></a>.</div>
4643</th>
4644</tr>
4645<tr id="i743" class="rowColor">
4646<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/MediaParserHlsMediaChunkExtractor.html" title="class in com.google.android.exoplayer2.source.hls">MediaParserHlsMediaChunkExtractor</a></td>
4647<th class="colLast" scope="row">
4648<div class="block"><a href="com/google/android/exoplayer2/source/hls/HlsMediaChunkExtractor.html" title="interface in com.google.android.exoplayer2.source.hls"><code>HlsMediaChunkExtractor</code></a> implemented on top of the platform's <a href="https://developer.android.com/reference/android/media/MediaParser.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaParser</code></a>.</div>
4649</th>
4650</tr>
4651<tr id="i744" class="altColor">
4652<td class="colFirst"><a href="com/google/android/exoplayer2/source/mediaparser/MediaParserUtil.html" title="class in com.google.android.exoplayer2.source.mediaparser">MediaParserUtil</a></td>
4653<th class="colLast" scope="row">
4654<div class="block">Miscellaneous constants and utility methods related to the <a href="https://developer.android.com/reference/android/media/MediaParser.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaParser</code></a> integration.</div>
4655</th>
4656</tr>
4657<tr id="i745" class="rowColor">
4658<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source">MediaPeriod</a></td>
4659<th class="colLast" scope="row">
4660<div class="block">Loads media corresponding to a <a href="com/google/android/exoplayer2/Timeline.Period.html" title="class in com.google.android.exoplayer2"><code>Timeline.Period</code></a>, and allows that media to be read.</div>
4661</th>
4662</tr>
4663<tr id="i746" class="altColor">
4664<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaPeriod.Callback.html" title="interface in com.google.android.exoplayer2.source">MediaPeriod.Callback</a></td>
4665<th class="colLast" scope="row">
4666<div class="block">A callback to be notified of <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source"><code>MediaPeriod</code></a> events.</div>
4667</th>
4668</tr>
4669<tr id="i747" class="rowColor">
4670<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/MediaPeriodAsserts.html" title="class in com.google.android.exoplayer2.testutil">MediaPeriodAsserts</a></td>
4671<th class="colLast" scope="row">
4672<div class="block">Assertion methods for <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source"><code>MediaPeriod</code></a>.</div>
4673</th>
4674</tr>
4675<tr id="i748" class="altColor">
4676<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/MediaPeriodAsserts.FilterableManifestMediaPeriodFactory.html" title="interface in com.google.android.exoplayer2.testutil">MediaPeriodAsserts.FilterableManifestMediaPeriodFactory</a>&lt;<a href="com/google/android/exoplayer2/testutil/MediaPeriodAsserts.FilterableManifestMediaPeriodFactory.html" title="type parameter in MediaPeriodAsserts.FilterableManifestMediaPeriodFactory">T</a> extends <a href="com/google/android/exoplayer2/offline/FilterableManifest.html" title="interface in com.google.android.exoplayer2.offline">FilterableManifest</a>&lt;<a href="com/google/android/exoplayer2/testutil/MediaPeriodAsserts.FilterableManifestMediaPeriodFactory.html" title="type parameter in MediaPeriodAsserts.FilterableManifestMediaPeriodFactory">T</a>&gt;&gt;</td>
4677<th class="colLast" scope="row">
4678<div class="block">Interface to create media periods for testing based on a <a href="com/google/android/exoplayer2/offline/FilterableManifest.html" title="interface in com.google.android.exoplayer2.offline"><code>FilterableManifest</code></a>.</div>
4679</th>
4680</tr>
4681<tr id="i749" class="rowColor">
4682<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaPeriodId.html" title="class in com.google.android.exoplayer2.source">MediaPeriodId</a></td>
4683<th class="colLast" scope="row">
4684<div class="block">Identifies a specific playback of a <a href="com/google/android/exoplayer2/Timeline.Period.html" title="class in com.google.android.exoplayer2"><code>Timeline.Period</code></a>.</div>
4685</th>
4686</tr>
4687<tr id="i750" class="altColor">
4688<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.html" title="class in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector</a></td>
4689<th class="colLast" scope="row">
4690<div class="block">Connects a <code>MediaSessionCompat</code> to a <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>.</div>
4691</th>
4692</tr>
4693<tr id="i751" class="rowColor">
4694<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.CaptionCallback.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.CaptionCallback</a></td>
4695<th class="colLast" scope="row">
4696<div class="block">Handles requests for enabling or disabling captions.</div>
4697</th>
4698</tr>
4699<tr id="i752" class="altColor">
4700<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.CommandReceiver.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.CommandReceiver</a></td>
4701<th class="colLast" scope="row">
4702<div class="block">Receiver of media commands sent by a media controller.</div>
4703</th>
4704</tr>
4705<tr id="i753" class="rowColor">
4706<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.CustomActionProvider.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.CustomActionProvider</a></td>
4707<th class="colLast" scope="row">
4708<div class="block">Provides a <code>PlaybackStateCompat.CustomAction</code> to be published and handles the action when
4709 sent by a media controller.</div>
4710</th>
4711</tr>
4712<tr id="i754" class="altColor">
4713<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.DefaultMediaMetadataProvider.html" title="class in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.DefaultMediaMetadataProvider</a></td>
4714<th class="colLast" scope="row">
4715<div class="block">Provides a default <code>MediaMetadataCompat</code> with properties and extras taken from the <code>MediaDescriptionCompat</code> of the <code>MediaSessionCompat.QueueItem</code> of the active queue item.</div>
4716</th>
4717</tr>
4718<tr id="i755" class="rowColor">
4719<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.MediaButtonEventHandler.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.MediaButtonEventHandler</a></td>
4720<th class="colLast" scope="row">
4721<div class="block">Handles a media button event.</div>
4722</th>
4723</tr>
4724<tr id="i756" class="altColor">
4725<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.MediaMetadataProvider.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.MediaMetadataProvider</a></td>
4726<th class="colLast" scope="row">
4727<div class="block">Provides a <code>MediaMetadataCompat</code> for a given player state.</div>
4728</th>
4729</tr>
4730<tr id="i757" class="rowColor">
4731<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.PlaybackActions.html" title="annotation in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.PlaybackActions</a></td>
4732<th class="colLast" scope="row">
4733<div class="block">Playback actions supported by the connector.</div>
4734</th>
4735</tr>
4736<tr id="i758" class="altColor">
4737<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.PlaybackPreparer.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.PlaybackPreparer</a></td>
4738<th class="colLast" scope="row">
4739<div class="block">Interface to which playback preparation and play actions are delegated.</div>
4740</th>
4741</tr>
4742<tr id="i759" class="rowColor">
4743<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.QueueEditor.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.QueueEditor</a></td>
4744<th class="colLast" scope="row">
4745<div class="block">Handles media session queue edits.</div>
4746</th>
4747</tr>
4748<tr id="i760" class="altColor">
4749<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.QueueNavigator.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.QueueNavigator</a></td>
4750<th class="colLast" scope="row">
4751<div class="block">Handles queue navigation actions, and updates the media session queue by calling <code>
4752 MediaSessionCompat.setQueue()</code>.</div>
4753</th>
4754</tr>
4755<tr id="i761" class="rowColor">
4756<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.RatingCallback.html" title="interface in com.google.android.exoplayer2.ext.mediasession">MediaSessionConnector.RatingCallback</a></td>
4757<th class="colLast" scope="row">
4758<div class="block">Callback receiving a user rating for the active media item.</div>
4759</th>
4760</tr>
4761<tr id="i762" class="altColor">
4762<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source">MediaSource</a></td>
4763<th class="colLast" scope="row">
4764<div class="block">Defines and provides media to be played by an <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a>.</div>
4765</th>
4766</tr>
4767<tr id="i763" class="rowColor">
4768<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaSource.Factory.html" title="interface in com.google.android.exoplayer2.source">MediaSource.Factory</a></td>
4769<th class="colLast" scope="row">
4770<div class="block">Factory for creating <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSources</code></a> from <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</div>
4771</th>
4772</tr>
4773<tr id="i764" class="altColor">
4774<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaSource.MediaPeriodId.html" title="class in com.google.android.exoplayer2.source">MediaSource.MediaPeriodId</a></td>
4775<th class="colLast" scope="row">
4776<div class="block">Identifier for a <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source"><code>MediaPeriod</code></a>.</div>
4777</th>
4778</tr>
4779<tr id="i765" class="rowColor">
4780<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaSource.MediaSourceCaller.html" title="interface in com.google.android.exoplayer2.source">MediaSource.MediaSourceCaller</a></td>
4781<th class="colLast" scope="row">
4782<div class="block">A caller of media sources, which will be notified of source events.</div>
4783</th>
4784</tr>
4785<tr id="i766" class="altColor">
4786<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaSourceEventListener.html" title="interface in com.google.android.exoplayer2.source">MediaSourceEventListener</a></td>
4787<th class="colLast" scope="row">
4788<div class="block">Interface for callbacks to be notified of <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> events.</div>
4789</th>
4790</tr>
4791<tr id="i767" class="rowColor">
4792<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaSourceEventListener.EventDispatcher.html" title="class in com.google.android.exoplayer2.source">MediaSourceEventListener.EventDispatcher</a></td>
4793<th class="colLast" scope="row">
4794<div class="block">Dispatches events to <a href="com/google/android/exoplayer2/source/MediaSourceEventListener.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSourceEventListeners</code></a>.</div>
4795</th>
4796</tr>
4797<tr id="i768" class="altColor">
4798<td class="colFirst"><a href="com/google/android/exoplayer2/source/MediaSourceFactory.html" title="interface in com.google.android.exoplayer2.source">MediaSourceFactory</a></td>
4799<th class="colLast" scope="row">Deprecated.
4800<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/source/MediaSource.Factory.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource.Factory</code></a>.</div>
4801</th>
4802</tr>
4803<tr id="i769" class="rowColor">
4804<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/MediaSourceTestRunner.html" title="class in com.google.android.exoplayer2.testutil">MediaSourceTestRunner</a></td>
4805<th class="colLast" scope="row">
4806<div class="block">A runner for <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> tests.</div>
4807</th>
4808</tr>
4809<tr id="i770" class="altColor">
4810<td class="colFirst"><a href="com/google/android/exoplayer2/source/MergingMediaSource.html" title="class in com.google.android.exoplayer2.source">MergingMediaSource</a></td>
4811<th class="colLast" scope="row">
4812<div class="block">Merges multiple <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>s.</div>
4813</th>
4814</tr>
4815<tr id="i771" class="rowColor">
4816<td class="colFirst"><a href="com/google/android/exoplayer2/source/MergingMediaSource.IllegalMergeException.html" title="class in com.google.android.exoplayer2.source">MergingMediaSource.IllegalMergeException</a></td>
4817<th class="colLast" scope="row">
4818<div class="block">Thrown when a <a href="com/google/android/exoplayer2/source/MergingMediaSource.html" title="class in com.google.android.exoplayer2.source"><code>MergingMediaSource</code></a> cannot merge its sources.</div>
4819</th>
4820</tr>
4821<tr id="i772" class="altColor">
4822<td class="colFirst"><a href="com/google/android/exoplayer2/source/MergingMediaSource.IllegalMergeException.Reason.html" title="annotation in com.google.android.exoplayer2.source">MergingMediaSource.IllegalMergeException.Reason</a></td>
4823<th class="colLast" scope="row">
4824<div class="block">The reason the merge failed.</div>
4825</th>
4826</tr>
4827<tr id="i773" class="rowColor">
4828<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/Metadata.html" title="class in com.google.android.exoplayer2.metadata">Metadata</a></td>
4829<th class="colLast" scope="row">
4830<div class="block">A collection of metadata entries.</div>
4831</th>
4832</tr>
4833<tr id="i774" class="altColor">
4834<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/Metadata.Entry.html" title="interface in com.google.android.exoplayer2.metadata">Metadata.Entry</a></td>
4835<th class="colLast" scope="row">
4836<div class="block">A metadata entry.</div>
4837</th>
4838</tr>
4839<tr id="i775" class="rowColor">
4840<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/MetadataDecoder.html" title="interface in com.google.android.exoplayer2.metadata">MetadataDecoder</a></td>
4841<th class="colLast" scope="row">
4842<div class="block">Decodes metadata from binary data.</div>
4843</th>
4844</tr>
4845<tr id="i776" class="altColor">
4846<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/MetadataDecoderFactory.html" title="interface in com.google.android.exoplayer2.metadata">MetadataDecoderFactory</a></td>
4847<th class="colLast" scope="row">
4848<div class="block">A factory for <a href="com/google/android/exoplayer2/metadata/MetadataDecoder.html" title="interface in com.google.android.exoplayer2.metadata"><code>MetadataDecoder</code></a> instances.</div>
4849</th>
4850</tr>
4851<tr id="i777" class="rowColor">
4852<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/MetadataInputBuffer.html" title="class in com.google.android.exoplayer2.metadata">MetadataInputBuffer</a></td>
4853<th class="colLast" scope="row">
4854<div class="block">A <a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html" title="class in com.google.android.exoplayer2.decoder"><code>DecoderInputBuffer</code></a> for a <a href="com/google/android/exoplayer2/metadata/MetadataDecoder.html" title="interface in com.google.android.exoplayer2.metadata"><code>MetadataDecoder</code></a>.</div>
4855</th>
4856</tr>
4857<tr id="i778" class="altColor">
4858<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/MetadataOutput.html" title="interface in com.google.android.exoplayer2.metadata">MetadataOutput</a></td>
4859<th class="colLast" scope="row">
4860<div class="block">Receives metadata output.</div>
4861</th>
4862</tr>
4863<tr id="i779" class="rowColor">
4864<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/MetadataRenderer.html" title="class in com.google.android.exoplayer2.metadata">MetadataRenderer</a></td>
4865<th class="colLast" scope="row">
4866<div class="block">A renderer for metadata.</div>
4867</th>
4868</tr>
4869<tr id="i780" class="altColor">
4870<td class="colFirst"><a href="com/google/android/exoplayer2/MetadataRetriever.html" title="class in com.google.android.exoplayer2">MetadataRetriever</a></td>
4871<th class="colLast" scope="row">
4872<div class="block">Retrieves the static metadata of <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItems</code></a>.</div>
4873</th>
4874</tr>
4875<tr id="i781" class="rowColor">
4876<td class="colFirst"><a href="com/google/android/exoplayer2/util/MimeTypes.html" title="class in com.google.android.exoplayer2.util">MimeTypes</a></td>
4877<th class="colLast" scope="row">
4878<div class="block">Defines common MIME types and helper methods.</div>
4879</th>
4880</tr>
4881<tr id="i782" class="altColor">
4882<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/MlltFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">MlltFrame</a></td>
4883<th class="colLast" scope="row">
4884<div class="block">MPEG location lookup table frame.</div>
4885</th>
4886</tr>
4887<tr id="i783" class="rowColor">
4888<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/mp4/MotionPhotoMetadata.html" title="class in com.google.android.exoplayer2.metadata.mp4">MotionPhotoMetadata</a></td>
4889<th class="colLast" scope="row">
4890<div class="block">Metadata of a motion photo file.</div>
4891</th>
4892</tr>
4893<tr id="i784" class="altColor">
4894<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.html" title="class in com.google.android.exoplayer2.extractor.mp3">Mp3Extractor</a></td>
4895<th class="colLast" scope="row">
4896<div class="block">Extracts data from the MP3 container format.</div>
4897</th>
4898</tr>
4899<tr id="i785" class="rowColor">
4900<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp3/Mp3Extractor.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.mp3">Mp3Extractor.Flags</a></td>
4901<th class="colLast" scope="row">
4902<div class="block">Flags controlling the behavior of the extractor.</div>
4903</th>
4904</tr>
4905<tr id="i786" class="altColor">
4906<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/Mp4Extractor.html" title="class in com.google.android.exoplayer2.extractor.mp4">Mp4Extractor</a></td>
4907<th class="colLast" scope="row">
4908<div class="block">Extracts data from the MP4 container format.</div>
4909</th>
4910</tr>
4911<tr id="i787" class="rowColor">
4912<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/Mp4Extractor.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.mp4">Mp4Extractor.Flags</a></td>
4913<th class="colLast" scope="row">
4914<div class="block">Flags controlling the behavior of the extractor.</div>
4915</th>
4916</tr>
4917<tr id="i788" class="altColor">
4918<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/Mp4WebvttDecoder.html" title="class in com.google.android.exoplayer2.text.webvtt">Mp4WebvttDecoder</a></td>
4919<th class="colLast" scope="row">
4920<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for Webvtt embedded in a Mp4 container file.</div>
4921</th>
4922</tr>
4923<tr id="i789" class="rowColor">
4924<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/MpegAudioReader.html" title="class in com.google.android.exoplayer2.extractor.ts">MpegAudioReader</a></td>
4925<th class="colLast" scope="row">
4926<div class="block">Parses a continuous MPEG Audio byte stream and extracts individual frames.</div>
4927</th>
4928</tr>
4929<tr id="i790" class="altColor">
4930<td class="colFirst"><a href="com/google/android/exoplayer2/audio/MpegAudioUtil.html" title="class in com.google.android.exoplayer2.audio">MpegAudioUtil</a></td>
4931<th class="colLast" scope="row">
4932<div class="block">Utility methods for handling MPEG audio streams.</div>
4933</th>
4934</tr>
4935<tr id="i791" class="rowColor">
4936<td class="colFirst"><a href="com/google/android/exoplayer2/audio/MpegAudioUtil.Header.html" title="class in com.google.android.exoplayer2.audio">MpegAudioUtil.Header</a></td>
4937<th class="colLast" scope="row">
4938<div class="block">Stores the metadata for an MPEG audio frame.</div>
4939</th>
4940</tr>
4941<tr id="i792" class="altColor">
4942<td class="colFirst"><a href="com/google/android/exoplayer2/util/NalUnitUtil.html" title="class in com.google.android.exoplayer2.util">NalUnitUtil</a></td>
4943<th class="colLast" scope="row">
4944<div class="block">Utility methods for handling H.264/AVC and H.265/HEVC NAL units.</div>
4945</th>
4946</tr>
4947<tr id="i793" class="rowColor">
4948<td class="colFirst"><a href="com/google/android/exoplayer2/util/NalUnitUtil.H265SpsData.html" title="class in com.google.android.exoplayer2.util">NalUnitUtil.H265SpsData</a></td>
4949<th class="colLast" scope="row">
4950<div class="block">Holds data parsed from a H.265 sequence parameter set NAL unit.</div>
4951</th>
4952</tr>
4953<tr id="i794" class="altColor">
4954<td class="colFirst"><a href="com/google/android/exoplayer2/util/NalUnitUtil.PpsData.html" title="class in com.google.android.exoplayer2.util">NalUnitUtil.PpsData</a></td>
4955<th class="colLast" scope="row">
4956<div class="block">Holds data parsed from a picture parameter set NAL unit.</div>
4957</th>
4958</tr>
4959<tr id="i795" class="rowColor">
4960<td class="colFirst"><a href="com/google/android/exoplayer2/util/NalUnitUtil.SpsData.html" title="class in com.google.android.exoplayer2.util">NalUnitUtil.SpsData</a></td>
4961<th class="colLast" scope="row">
4962<div class="block">Holds data parsed from a H.264 sequence parameter set NAL unit.</div>
4963</th>
4964</tr>
4965<tr id="i796" class="altColor">
4966<td class="colFirst"><a href="com/google/android/exoplayer2/util/NetworkTypeObserver.html" title="class in com.google.android.exoplayer2.util">NetworkTypeObserver</a></td>
4967<th class="colLast" scope="row">
4968<div class="block">Observer for network type changes.</div>
4969</th>
4970</tr>
4971<tr id="i797" class="rowColor">
4972<td class="colFirst"><a href="com/google/android/exoplayer2/util/NetworkTypeObserver.Config.html" title="class in com.google.android.exoplayer2.util">NetworkTypeObserver.Config</a></td>
4973<th class="colLast" scope="row">
4974<div class="block">Configuration for <a href="com/google/android/exoplayer2/util/NetworkTypeObserver.html" title="class in com.google.android.exoplayer2.util"><code>NetworkTypeObserver</code></a>.</div>
4975</th>
4976</tr>
4977<tr id="i798" class="altColor">
4978<td class="colFirst"><a href="com/google/android/exoplayer2/util/NetworkTypeObserver.Listener.html" title="interface in com.google.android.exoplayer2.util">NetworkTypeObserver.Listener</a></td>
4979<th class="colLast" scope="row">
4980<div class="block">A listener for network type changes.</div>
4981</th>
4982</tr>
4983<tr id="i799" class="rowColor">
4984<td class="colFirst"><a href="com/google/android/exoplayer2/util/NonNullApi.html" title="annotation in com.google.android.exoplayer2.util">NonNullApi</a></td>
4985<th class="colLast" scope="row">
4986<div class="block">Annotation to declare all type usages in the annotated instance as <code>Nonnull</code>, unless
4987 explicitly marked with a nullable annotation.</div>
4988</th>
4989</tr>
4990<tr id="i800" class="altColor">
4991<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/NoOpCacheEvictor.html" title="class in com.google.android.exoplayer2.upstream.cache">NoOpCacheEvictor</a></td>
4992<th class="colLast" scope="row">
4993<div class="block">Evictor that doesn't ever evict cache files.</div>
4994</th>
4995</tr>
4996<tr id="i801" class="rowColor">
4997<td class="colFirst"><a href="com/google/android/exoplayer2/NoSampleRenderer.html" title="class in com.google.android.exoplayer2">NoSampleRenderer</a></td>
4998<th class="colLast" scope="row">
4999<div class="block">A <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> implementation whose track type is <a href="com/google/android/exoplayer2/C.html#TRACK_TYPE_NONE"><code>C.TRACK_TYPE_NONE</code></a> and does not
5000 consume data from its <a href="com/google/android/exoplayer2/source/SampleStream.html" title="interface in com.google.android.exoplayer2.source"><code>SampleStream</code></a>.</div>
5001</th>
5002</tr>
5003<tr id="i802" class="altColor">
5004<td class="colFirst"><a href="com/google/android/exoplayer2/util/NotificationUtil.html" title="class in com.google.android.exoplayer2.util">NotificationUtil</a></td>
5005<th class="colLast" scope="row">
5006<div class="block">Utility methods for displaying <a href="https://developer.android.com/reference/android/app/Notification.html" title="class or interface in android.app" class="externalLink" target="_top"><code>Notifications</code></a>.</div>
5007</th>
5008</tr>
5009<tr id="i803" class="rowColor">
5010<td class="colFirst"><a href="com/google/android/exoplayer2/util/NotificationUtil.Importance.html" title="annotation in com.google.android.exoplayer2.util">NotificationUtil.Importance</a></td>
5011<th class="colLast" scope="row">
5012<div class="block">Notification channel importance levels.</div>
5013</th>
5014</tr>
5015<tr id="i804" class="altColor">
5016<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/NoUidTimeline.html" title="class in com.google.android.exoplayer2.testutil">NoUidTimeline</a></td>
5017<th class="colLast" scope="row">
5018<div class="block">A timeline which wraps another timeline and overrides all window and period uids to 0.</div>
5019</th>
5020</tr>
5021<tr id="i805" class="rowColor">
5022<td class="colFirst"><a href="com/google/android/exoplayer2/drm/OfflineLicenseHelper.html" title="class in com.google.android.exoplayer2.drm">OfflineLicenseHelper</a></td>
5023<th class="colLast" scope="row">
5024<div class="block">Helper class to download, renew and release offline licenses.</div>
5025</th>
5026</tr>
5027<tr id="i806" class="altColor">
5028<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ogg/OggExtractor.html" title="class in com.google.android.exoplayer2.extractor.ogg">OggExtractor</a></td>
5029<th class="colLast" scope="row">
5030<div class="block">Extracts data from the Ogg container format.</div>
5031</th>
5032</tr>
5033<tr id="i807" class="rowColor">
5034<td class="colFirst"><a href="com/google/android/exoplayer2/ext/okhttp/OkHttpDataSource.html" title="class in com.google.android.exoplayer2.ext.okhttp">OkHttpDataSource</a></td>
5035<th class="colLast" scope="row">
5036<div class="block">An <a href="com/google/android/exoplayer2/upstream/HttpDataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>HttpDataSource</code></a> that delegates to Square's <code>Call.Factory</code>.</div>
5037</th>
5038</tr>
5039<tr id="i808" class="altColor">
5040<td class="colFirst"><a href="com/google/android/exoplayer2/ext/okhttp/OkHttpDataSource.Factory.html" title="class in com.google.android.exoplayer2.ext.okhttp">OkHttpDataSource.Factory</a></td>
5041<th class="colLast" scope="row">
5042<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/ext/okhttp/OkHttpDataSource.html" title="class in com.google.android.exoplayer2.ext.okhttp"><code>OkHttpDataSource</code></a> instances.</div>
5043</th>
5044</tr>
5045<tr id="i809" class="rowColor">
5046<td class="colFirst"><a href="com/google/android/exoplayer2/ext/okhttp/OkHttpDataSourceFactory.html" title="class in com.google.android.exoplayer2.ext.okhttp">OkHttpDataSourceFactory</a></td>
5047<th class="colLast" scope="row">Deprecated.
5048<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ext/okhttp/OkHttpDataSource.Factory.html" title="class in com.google.android.exoplayer2.ext.okhttp"><code>OkHttpDataSource.Factory</code></a> instead.</div>
5049</th>
5050</tr>
5051<tr id="i810" class="altColor">
5052<td class="colFirst"><a href="com/google/android/exoplayer2/ext/opus/OpusDecoder.html" title="class in com.google.android.exoplayer2.ext.opus">OpusDecoder</a></td>
5053<th class="colLast" scope="row">
5054<div class="block">Opus decoder.</div>
5055</th>
5056</tr>
5057<tr id="i811" class="rowColor">
5058<td class="colFirst"><a href="com/google/android/exoplayer2/ext/opus/OpusDecoderException.html" title="class in com.google.android.exoplayer2.ext.opus">OpusDecoderException</a></td>
5059<th class="colLast" scope="row">
5060<div class="block">Thrown when an Opus decoder error occurs.</div>
5061</th>
5062</tr>
5063<tr id="i812" class="altColor">
5064<td class="colFirst"><a href="com/google/android/exoplayer2/ext/opus/OpusLibrary.html" title="class in com.google.android.exoplayer2.ext.opus">OpusLibrary</a></td>
5065<th class="colLast" scope="row">
5066<div class="block">Configures and queries the underlying native library.</div>
5067</th>
5068</tr>
5069<tr id="i813" class="rowColor">
5070<td class="colFirst"><a href="com/google/android/exoplayer2/audio/OpusUtil.html" title="class in com.google.android.exoplayer2.audio">OpusUtil</a></td>
5071<th class="colLast" scope="row">
5072<div class="block">Utility methods for handling Opus audio streams.</div>
5073</th>
5074</tr>
5075<tr id="i814" class="altColor">
5076<td class="colFirst"><a href="com/google/android/exoplayer2/source/mediaparser/OutputConsumerAdapterV30.html" title="class in com.google.android.exoplayer2.source.mediaparser">OutputConsumerAdapterV30</a></td>
5077<th class="colLast" scope="row">
5078<div class="block"><a href="https://developer.android.com/reference/android/media/MediaParser.OutputConsumer.html" title="class or interface in android.media" class="externalLink"><code>MediaParser.OutputConsumer</code></a> implementation that redirects output to an <a href="com/google/android/exoplayer2/extractor/ExtractorOutput.html" title="interface in com.google.android.exoplayer2.extractor" target="_top"><code>ExtractorOutput</code></a>.</div>
5079</th>
5080</tr>
5081<tr id="i815" class="rowColor">
5082<td class="colFirst"><a href="com/google/android/exoplayer2/util/ParsableBitArray.html" title="class in com.google.android.exoplayer2.util">ParsableBitArray</a></td>
5083<th class="colLast" scope="row">
5084<div class="block">Wraps a byte array, providing methods that allow it to be read as a bitstream.</div>
5085</th>
5086</tr>
5087<tr id="i816" class="altColor">
5088<td class="colFirst"><a href="com/google/android/exoplayer2/util/ParsableByteArray.html" title="class in com.google.android.exoplayer2.util">ParsableByteArray</a></td>
5089<th class="colLast" scope="row">
5090<div class="block">Wraps a byte array, providing a set of methods for parsing data from it.</div>
5091</th>
5092</tr>
5093<tr id="i817" class="rowColor">
5094<td class="colFirst"><a href="com/google/android/exoplayer2/util/ParsableNalUnitBitArray.html" title="class in com.google.android.exoplayer2.util">ParsableNalUnitBitArray</a></td>
5095<th class="colLast" scope="row">
5096<div class="block">Wraps a byte array, providing methods that allow it to be read as a NAL unit bitstream.</div>
5097</th>
5098</tr>
5099<tr id="i818" class="altColor">
5100<td class="colFirst"><a href="com/google/android/exoplayer2/ParserException.html" title="class in com.google.android.exoplayer2">ParserException</a></td>
5101<th class="colLast" scope="row">
5102<div class="block">Thrown when an error occurs parsing media data and metadata.</div>
5103</th>
5104</tr>
5105<tr id="i819" class="rowColor">
5106<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ParsingLoadable.html" title="class in com.google.android.exoplayer2.upstream">ParsingLoadable</a>&lt;<a href="com/google/android/exoplayer2/upstream/ParsingLoadable.html" title="type parameter in ParsingLoadable">T</a>&gt;</td>
5107<th class="colLast" scope="row">
5108<div class="block">A <a href="com/google/android/exoplayer2/upstream/Loader.Loadable.html" title="interface in com.google.android.exoplayer2.upstream"><code>Loader.Loadable</code></a> for objects that can be parsed from binary data using a <a href="com/google/android/exoplayer2/upstream/ParsingLoadable.Parser.html" title="interface in com.google.android.exoplayer2.upstream"><code>ParsingLoadable.Parser</code></a>.</div>
5109</th>
5110</tr>
5111<tr id="i820" class="altColor">
5112<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ParsingLoadable.Parser.html" title="interface in com.google.android.exoplayer2.upstream">ParsingLoadable.Parser</a>&lt;<a href="com/google/android/exoplayer2/upstream/ParsingLoadable.Parser.html" title="type parameter in ParsingLoadable.Parser">T</a>&gt;</td>
5113<th class="colLast" scope="row">
5114<div class="block">Parses an object from loaded data.</div>
5115</th>
5116</tr>
5117<tr id="i821" class="rowColor">
5118<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/PassthroughSectionPayloadReader.html" title="class in com.google.android.exoplayer2.extractor.ts">PassthroughSectionPayloadReader</a></td>
5119<th class="colLast" scope="row">
5120<div class="block">A <a href="com/google/android/exoplayer2/extractor/ts/SectionPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>SectionPayloadReader</code></a> that directly outputs the section bytes as sample data.</div>
5121</th>
5122</tr>
5123<tr id="i822" class="altColor">
5124<td class="colFirst"><a href="com/google/android/exoplayer2/PercentageRating.html" title="class in com.google.android.exoplayer2">PercentageRating</a></td>
5125<th class="colLast" scope="row">
5126<div class="block">A rating expressed as a percentage.</div>
5127</th>
5128</tr>
5129<tr id="i823" class="rowColor">
5130<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/Period.html" title="class in com.google.android.exoplayer2.source.dash.manifest">Period</a></td>
5131<th class="colLast" scope="row">
5132<div class="block">Encapsulates media content components over a contiguous period of time.</div>
5133</th>
5134</tr>
5135<tr id="i824" class="altColor">
5136<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/PesReader.html" title="class in com.google.android.exoplayer2.extractor.ts">PesReader</a></td>
5137<th class="colLast" scope="row">
5138<div class="block">Parses PES packet data and extracts samples.</div>
5139</th>
5140</tr>
5141<tr id="i825" class="rowColor">
5142<td class="colFirst"><a href="com/google/android/exoplayer2/text/pgs/PgsDecoder.html" title="class in com.google.android.exoplayer2.text.pgs">PgsDecoder</a></td>
5143<th class="colLast" scope="row">
5144<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for PGS subtitles.</div>
5145</th>
5146</tr>
5147<tr id="i826" class="altColor">
5148<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/flac/PictureFrame.html" title="class in com.google.android.exoplayer2.metadata.flac">PictureFrame</a></td>
5149<th class="colLast" scope="row">
5150<div class="block">A picture parsed from a Vorbis Comment or a FLAC picture block.</div>
5151</th>
5152</tr>
5153<tr id="i827" class="rowColor">
5154<td class="colFirst"><a href="com/google/android/exoplayer2/scheduler/PlatformScheduler.html" title="class in com.google.android.exoplayer2.scheduler">PlatformScheduler</a></td>
5155<th class="colLast" scope="row">
5156<div class="block">A <a href="com/google/android/exoplayer2/scheduler/Scheduler.html" title="interface in com.google.android.exoplayer2.scheduler"><code>Scheduler</code></a> that uses <a href="https://developer.android.com/reference/android/app/job/JobScheduler.html" title="class or interface in android.app.job" class="externalLink" target="_top"><code>JobScheduler</code></a>.</div>
5157</th>
5158</tr>
5159<tr id="i828" class="altColor">
5160<td class="colFirst"><a href="com/google/android/exoplayer2/scheduler/PlatformScheduler.PlatformSchedulerService.html" title="class in com.google.android.exoplayer2.scheduler">PlatformScheduler.PlatformSchedulerService</a></td>
5161<th class="colLast" scope="row">
5162<div class="block">A <a href="https://developer.android.com/reference/android/app/job/JobService.html" title="class or interface in android.app.job" class="externalLink" target="_top"><code>JobService</code></a> that starts the target service if the requirements are met.</div>
5163</th>
5164</tr>
5165<tr id="i829" class="rowColor">
5166<td class="colFirst"><a href="com/google/android/exoplayer2/PlaybackException.html" title="class in com.google.android.exoplayer2">PlaybackException</a></td>
5167<th class="colLast" scope="row">
5168<div class="block">Thrown when a non locally recoverable playback failure occurs.</div>
5169</th>
5170</tr>
5171<tr id="i830" class="altColor">
5172<td class="colFirst"><a href="com/google/android/exoplayer2/PlaybackException.ErrorCode.html" title="annotation in com.google.android.exoplayer2">PlaybackException.ErrorCode</a></td>
5173<th class="colLast" scope="row">
5174<div class="block">Codes that identify causes of player errors.</div>
5175</th>
5176</tr>
5177<tr id="i831" class="rowColor">
5178<td class="colFirst"><a href="com/google/android/exoplayer2/PlaybackException.FieldNumber.html" title="annotation in com.google.android.exoplayer2">PlaybackException.FieldNumber</a></td>
5179<th class="colLast" scope="row">
5180<div class="block">Identifiers for fields in a <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Bundle</code></a> which represents a playback exception.</div>
5181</th>
5182</tr>
5183<tr id="i832" class="altColor">
5184<td class="colFirst"><a href="com/google/android/exoplayer2/robolectric/PlaybackOutput.html" title="class in com.google.android.exoplayer2.robolectric">PlaybackOutput</a></td>
5185<th class="colLast" scope="row">
5186<div class="block">Class to capture output from a playback test.</div>
5187</th>
5188</tr>
5189<tr id="i833" class="rowColor">
5190<td class="colFirst"><a href="com/google/android/exoplayer2/PlaybackParameters.html" title="class in com.google.android.exoplayer2">PlaybackParameters</a></td>
5191<th class="colLast" scope="row">
5192<div class="block">Parameters that apply to playback, including speed setting.</div>
5193</th>
5194</tr>
5195<tr id="i834" class="altColor">
5196<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackSessionManager.html" title="interface in com.google.android.exoplayer2.analytics">PlaybackSessionManager</a></td>
5197<th class="colLast" scope="row">
5198<div class="block">Manager for active playback sessions.</div>
5199</th>
5200</tr>
5201<tr id="i835" class="rowColor">
5202<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackSessionManager.Listener.html" title="interface in com.google.android.exoplayer2.analytics">PlaybackSessionManager.Listener</a></td>
5203<th class="colLast" scope="row">
5204<div class="block">A listener for session updates.</div>
5205</th>
5206</tr>
5207<tr id="i836" class="altColor">
5208<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackStats.html" title="class in com.google.android.exoplayer2.analytics">PlaybackStats</a></td>
5209<th class="colLast" scope="row">
5210<div class="block">Statistics about playbacks.</div>
5211</th>
5212</tr>
5213<tr id="i837" class="rowColor">
5214<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackStats.EventTimeAndException.html" title="class in com.google.android.exoplayer2.analytics">PlaybackStats.EventTimeAndException</a></td>
5215<th class="colLast" scope="row">
5216<div class="block">Stores an exception with the event time at which it occurred.</div>
5217</th>
5218</tr>
5219<tr id="i838" class="altColor">
5220<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackStats.EventTimeAndFormat.html" title="class in com.google.android.exoplayer2.analytics">PlaybackStats.EventTimeAndFormat</a></td>
5221<th class="colLast" scope="row">
5222<div class="block">Stores a format with the event time at which it started being used, or <code>null</code> to indicate
5223 that no format was used.</div>
5224</th>
5225</tr>
5226<tr id="i839" class="rowColor">
5227<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackStats.EventTimeAndPlaybackState.html" title="class in com.google.android.exoplayer2.analytics">PlaybackStats.EventTimeAndPlaybackState</a></td>
5228<th class="colLast" scope="row">
5229<div class="block">Stores a playback state with the event time at which it became active.</div>
5230</th>
5231</tr>
5232<tr id="i840" class="altColor">
5233<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackStatsListener.html" title="class in com.google.android.exoplayer2.analytics">PlaybackStatsListener</a></td>
5234<th class="colLast" scope="row">
5235<div class="block"><a href="com/google/android/exoplayer2/analytics/AnalyticsListener.html" title="interface in com.google.android.exoplayer2.analytics"><code>AnalyticsListener</code></a> to gather <a href="com/google/android/exoplayer2/analytics/PlaybackStats.html" title="class in com.google.android.exoplayer2.analytics"><code>PlaybackStats</code></a> from the player.</div>
5236</th>
5237</tr>
5238<tr id="i841" class="rowColor">
5239<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlaybackStatsListener.Callback.html" title="interface in com.google.android.exoplayer2.analytics">PlaybackStatsListener.Callback</a></td>
5240<th class="colLast" scope="row">
5241<div class="block">A listener for <a href="com/google/android/exoplayer2/analytics/PlaybackStats.html" title="class in com.google.android.exoplayer2.analytics"><code>PlaybackStats</code></a> updates.</div>
5242</th>
5243</tr>
5244<tr id="i842" class="altColor">
5245<td class="colFirst"><a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2">Player</a></td>
5246<th class="colLast" scope="row">
5247<div class="block">A media player interface defining traditional high-level functionality, such as the ability to
5248 play, pause, seek and query properties of the currently playing media.</div>
5249</th>
5250</tr>
5251<tr id="i843" class="rowColor">
5252<td class="colFirst"><a href="com/google/android/exoplayer2/Player.Command.html" title="annotation in com.google.android.exoplayer2">Player.Command</a></td>
5253<th class="colLast" scope="row">
5254<div class="block">Commands that can be executed on a <code>Player</code>.</div>
5255</th>
5256</tr>
5257<tr id="i844" class="altColor">
5258<td class="colFirst"><a href="com/google/android/exoplayer2/Player.Commands.html" title="class in com.google.android.exoplayer2">Player.Commands</a></td>
5259<th class="colLast" scope="row">
5260<div class="block">A set of <a href="com/google/android/exoplayer2/Player.Command.html" title="annotation in com.google.android.exoplayer2"><code>commands</code></a>.</div>
5261</th>
5262</tr>
5263<tr id="i845" class="rowColor">
5264<td class="colFirst"><a href="com/google/android/exoplayer2/Player.Commands.Builder.html" title="class in com.google.android.exoplayer2">Player.Commands.Builder</a></td>
5265<th class="colLast" scope="row">
5266<div class="block">A builder for <a href="com/google/android/exoplayer2/Player.Commands.html" title="class in com.google.android.exoplayer2"><code>Player.Commands</code></a> instances.</div>
5267</th>
5268</tr>
5269<tr id="i846" class="altColor">
5270<td class="colFirst"><a href="com/google/android/exoplayer2/Player.DiscontinuityReason.html" title="annotation in com.google.android.exoplayer2">Player.DiscontinuityReason</a></td>
5271<th class="colLast" scope="row">
5272<div class="block">Reasons for position discontinuities.</div>
5273</th>
5274</tr>
5275<tr id="i847" class="rowColor">
5276<td class="colFirst"><a href="com/google/android/exoplayer2/Player.Event.html" title="annotation in com.google.android.exoplayer2">Player.Event</a></td>
5277<th class="colLast" scope="row">
5278<div class="block">Events that can be reported via <a href="com/google/android/exoplayer2/Player.Listener.html#onEvents(com.google.android.exoplayer2.Player,com.google.android.exoplayer2.Player.Events)"><code>Player.Listener.onEvents(Player, Events)</code></a>.</div>
5279</th>
5280</tr>
5281<tr id="i848" class="altColor">
5282<td class="colFirst"><a href="com/google/android/exoplayer2/Player.Events.html" title="class in com.google.android.exoplayer2">Player.Events</a></td>
5283<th class="colLast" scope="row">
5284<div class="block">A set of <a href="com/google/android/exoplayer2/Player.Event.html" title="annotation in com.google.android.exoplayer2"><code>events</code></a>.</div>
5285</th>
5286</tr>
5287<tr id="i849" class="rowColor">
5288<td class="colFirst"><a href="com/google/android/exoplayer2/Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a></td>
5289<th class="colLast" scope="row">
5290<div class="block">Listener of all changes in the Player.</div>
5291</th>
5292</tr>
5293<tr id="i850" class="altColor">
5294<td class="colFirst"><a href="com/google/android/exoplayer2/Player.MediaItemTransitionReason.html" title="annotation in com.google.android.exoplayer2">Player.MediaItemTransitionReason</a></td>
5295<th class="colLast" scope="row">
5296<div class="block">Reasons for media item transitions.</div>
5297</th>
5298</tr>
5299<tr id="i851" class="rowColor">
5300<td class="colFirst"><a href="com/google/android/exoplayer2/Player.PlaybackSuppressionReason.html" title="annotation in com.google.android.exoplayer2">Player.PlaybackSuppressionReason</a></td>
5301<th class="colLast" scope="row">
5302<div class="block">Reason why playback is suppressed even though <a href="com/google/android/exoplayer2/Player.html#getPlayWhenReady()"><code>Player.getPlayWhenReady()</code></a> is <code>true</code>.</div>
5303</th>
5304</tr>
5305<tr id="i852" class="altColor">
5306<td class="colFirst"><a href="com/google/android/exoplayer2/Player.PlayWhenReadyChangeReason.html" title="annotation in com.google.android.exoplayer2">Player.PlayWhenReadyChangeReason</a></td>
5307<th class="colLast" scope="row">
5308<div class="block">Reasons for <a href="com/google/android/exoplayer2/Player.html#getPlayWhenReady()"><code>playWhenReady</code></a> changes.</div>
5309</th>
5310</tr>
5311<tr id="i853" class="rowColor">
5312<td class="colFirst"><a href="com/google/android/exoplayer2/Player.PositionInfo.html" title="class in com.google.android.exoplayer2">Player.PositionInfo</a></td>
5313<th class="colLast" scope="row">
5314<div class="block">Position info describing a playback position involved in a discontinuity.</div>
5315</th>
5316</tr>
5317<tr id="i854" class="altColor">
5318<td class="colFirst"><a href="com/google/android/exoplayer2/Player.RepeatMode.html" title="annotation in com.google.android.exoplayer2">Player.RepeatMode</a></td>
5319<th class="colLast" scope="row">
5320<div class="block">Repeat modes for playback.</div>
5321</th>
5322</tr>
5323<tr id="i855" class="rowColor">
5324<td class="colFirst"><a href="com/google/android/exoplayer2/Player.State.html" title="annotation in com.google.android.exoplayer2">Player.State</a></td>
5325<th class="colLast" scope="row">
5326<div class="block">Playback state.</div>
5327</th>
5328</tr>
5329<tr id="i856" class="altColor">
5330<td class="colFirst"><a href="com/google/android/exoplayer2/Player.TimelineChangeReason.html" title="annotation in com.google.android.exoplayer2">Player.TimelineChangeReason</a></td>
5331<th class="colLast" scope="row">
5332<div class="block">Reasons for timeline changes.</div>
5333</th>
5334</tr>
5335<tr id="i857" class="rowColor">
5336<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerControlView.html" title="class in com.google.android.exoplayer2.ui">PlayerControlView</a></td>
5337<th class="colLast" scope="row">
5338<div class="block">A view for controlling <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> instances.</div>
5339</th>
5340</tr>
5341<tr id="i858" class="altColor">
5342<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerControlView.ProgressUpdateListener.html" title="interface in com.google.android.exoplayer2.ui">PlayerControlView.ProgressUpdateListener</a></td>
5343<th class="colLast" scope="row">
5344<div class="block">Listener to be notified when progress has been updated.</div>
5345</th>
5346</tr>
5347<tr id="i859" class="rowColor">
5348<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerControlView.VisibilityListener.html" title="interface in com.google.android.exoplayer2.ui">PlayerControlView.VisibilityListener</a></td>
5349<th class="colLast" scope="row">
5350<div class="block">Listener to be notified about changes of the visibility of the UI control.</div>
5351</th>
5352</tr>
5353<tr id="i860" class="altColor">
5354<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/PlayerEmsgHandler.html" title="class in com.google.android.exoplayer2.source.dash">PlayerEmsgHandler</a></td>
5355<th class="colLast" scope="row">
5356<div class="block">Handles all emsg messages from all media tracks for the player.</div>
5357</th>
5358</tr>
5359<tr id="i861" class="rowColor">
5360<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/PlayerEmsgHandler.PlayerEmsgCallback.html" title="interface in com.google.android.exoplayer2.source.dash">PlayerEmsgHandler.PlayerEmsgCallback</a></td>
5361<th class="colLast" scope="row">
5362<div class="block">Callbacks for player emsg events encountered during DASH live stream.</div>
5363</th>
5364</tr>
5365<tr id="i862" class="altColor">
5366<td class="colFirst"><a href="com/google/android/exoplayer2/analytics/PlayerId.html" title="class in com.google.android.exoplayer2.analytics">PlayerId</a></td>
5367<th class="colLast" scope="row">
5368<div class="block">Identifier for a player instance.</div>
5369</th>
5370</tr>
5371<tr id="i863" class="rowColor">
5372<td class="colFirst"><a href="com/google/android/exoplayer2/PlayerMessage.html" title="class in com.google.android.exoplayer2">PlayerMessage</a></td>
5373<th class="colLast" scope="row">
5374<div class="block">Defines a player message which can be sent with a <a href="com/google/android/exoplayer2/PlayerMessage.Sender.html" title="interface in com.google.android.exoplayer2"><code>PlayerMessage.Sender</code></a> and received by a <a href="com/google/android/exoplayer2/PlayerMessage.Target.html" title="interface in com.google.android.exoplayer2"><code>PlayerMessage.Target</code></a>.</div>
5375</th>
5376</tr>
5377<tr id="i864" class="altColor">
5378<td class="colFirst"><a href="com/google/android/exoplayer2/PlayerMessage.Sender.html" title="interface in com.google.android.exoplayer2">PlayerMessage.Sender</a></td>
5379<th class="colLast" scope="row">
5380<div class="block">A sender for messages.</div>
5381</th>
5382</tr>
5383<tr id="i865" class="rowColor">
5384<td class="colFirst"><a href="com/google/android/exoplayer2/PlayerMessage.Target.html" title="interface in com.google.android.exoplayer2">PlayerMessage.Target</a></td>
5385<th class="colLast" scope="row">
5386<div class="block">A target for messages.</div>
5387</th>
5388</tr>
5389<tr id="i866" class="altColor">
5390<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.html" title="class in com.google.android.exoplayer2.ui">PlayerNotificationManager</a></td>
5391<th class="colLast" scope="row">
5392<div class="block">Starts, updates and cancels a media style notification reflecting the player state.</div>
5393</th>
5394</tr>
5395<tr id="i867" class="rowColor">
5396<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.Builder.html" title="class in com.google.android.exoplayer2.ui">PlayerNotificationManager.Builder</a></td>
5397<th class="colLast" scope="row">
5398<div class="block">A builder for <a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.html" title="class in com.google.android.exoplayer2.ui"><code>PlayerNotificationManager</code></a> instances.</div>
5399</th>
5400</tr>
5401<tr id="i868" class="altColor">
5402<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.CustomActionReceiver.html" title="interface in com.google.android.exoplayer2.ui">PlayerNotificationManager.CustomActionReceiver</a></td>
5403<th class="colLast" scope="row">
5404<div class="block">Defines and handles custom actions.</div>
5405</th>
5406</tr>
5407<tr id="i869" class="rowColor">
5408<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.MediaDescriptionAdapter.html" title="interface in com.google.android.exoplayer2.ui">PlayerNotificationManager.MediaDescriptionAdapter</a></td>
5409<th class="colLast" scope="row">
5410<div class="block">An adapter to provide content assets of the media currently playing.</div>
5411</th>
5412</tr>
5413<tr id="i870" class="altColor">
5414<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.NotificationListener.html" title="interface in com.google.android.exoplayer2.ui">PlayerNotificationManager.NotificationListener</a></td>
5415<th class="colLast" scope="row">
5416<div class="block">A listener for changes to the notification.</div>
5417</th>
5418</tr>
5419<tr id="i871" class="rowColor">
5420<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.Priority.html" title="annotation in com.google.android.exoplayer2.ui">PlayerNotificationManager.Priority</a></td>
5421<th class="colLast" scope="row">
5422<div class="block">Priority of the notification (required for API 25 and lower).</div>
5423</th>
5424</tr>
5425<tr id="i872" class="altColor">
5426<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerNotificationManager.Visibility.html" title="annotation in com.google.android.exoplayer2.ui">PlayerNotificationManager.Visibility</a></td>
5427<th class="colLast" scope="row">
5428<div class="block">Visibility of notification on the lock screen.</div>
5429</th>
5430</tr>
5431<tr id="i873" class="rowColor">
5432<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerView.html" title="class in com.google.android.exoplayer2.ui">PlayerView</a></td>
5433<th class="colLast" scope="row">Deprecated.
5434<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ui/StyledPlayerView.html" title="class in com.google.android.exoplayer2.ui"><code>StyledPlayerView</code></a> instead.</div>
5435</th>
5436</tr>
5437<tr id="i874" class="altColor">
5438<td class="colFirst"><a href="com/google/android/exoplayer2/ui/PlayerView.ShowBuffering.html" title="annotation in com.google.android.exoplayer2.ui">PlayerView.ShowBuffering</a></td>
5439<th class="colLast" scope="row">
5440<div class="block">Determines when the buffering view is shown.</div>
5441</th>
5442</tr>
5443<tr id="i875" class="rowColor">
5444<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/PositionHolder.html" title="class in com.google.android.exoplayer2.extractor">PositionHolder</a></td>
5445<th class="colLast" scope="row">
5446<div class="block">Holds a position in the stream.</div>
5447</th>
5448</tr>
5449<tr id="i876" class="altColor">
5450<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/PriorityDataSource.html" title="class in com.google.android.exoplayer2.upstream">PriorityDataSource</a></td>
5451<th class="colLast" scope="row">
5452<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> that can be used as part of a task registered with a <a href="com/google/android/exoplayer2/util/PriorityTaskManager.html" title="class in com.google.android.exoplayer2.util"><code>PriorityTaskManager</code></a>.</div>
5453</th>
5454</tr>
5455<tr id="i877" class="rowColor">
5456<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/PriorityDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream">PriorityDataSource.Factory</a></td>
5457<th class="colLast" scope="row">
5458<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/upstream/PriorityDataSource.html" title="class in com.google.android.exoplayer2.upstream"><code>PriorityDataSource</code></a> instances.</div>
5459</th>
5460</tr>
5461<tr id="i878" class="altColor">
5462<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/PriorityDataSourceFactory.html" title="class in com.google.android.exoplayer2.upstream">PriorityDataSourceFactory</a></td>
5463<th class="colLast" scope="row">Deprecated.
5464<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/upstream/PriorityDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream"><code>PriorityDataSource.Factory</code></a>.</div>
5465</th>
5466</tr>
5467<tr id="i879" class="rowColor">
5468<td class="colFirst"><a href="com/google/android/exoplayer2/util/PriorityTaskManager.html" title="class in com.google.android.exoplayer2.util">PriorityTaskManager</a></td>
5469<th class="colLast" scope="row">
5470<div class="block">Allows tasks with associated priorities to control how they proceed relative to one another.</div>
5471</th>
5472</tr>
5473<tr id="i880" class="altColor">
5474<td class="colFirst"><a href="com/google/android/exoplayer2/util/PriorityTaskManager.PriorityTooLowException.html" title="class in com.google.android.exoplayer2.util">PriorityTaskManager.PriorityTooLowException</a></td>
5475<th class="colLast" scope="row">
5476<div class="block">Thrown when task attempts to proceed when another registered task has a higher priority.</div>
5477</th>
5478</tr>
5479<tr id="i881" class="rowColor">
5480<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/PrivateCommand.html" title="class in com.google.android.exoplayer2.metadata.scte35">PrivateCommand</a></td>
5481<th class="colLast" scope="row">
5482<div class="block">Represents a private command as defined in SCTE35, Section 9.3.6.</div>
5483</th>
5484</tr>
5485<tr id="i882" class="altColor">
5486<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/PrivFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">PrivFrame</a></td>
5487<th class="colLast" scope="row">
5488<div class="block">PRIV (Private) ID3 frame.</div>
5489</th>
5490</tr>
5491<tr id="i883" class="rowColor">
5492<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/ProgramInformation.html" title="class in com.google.android.exoplayer2.source.dash.manifest">ProgramInformation</a></td>
5493<th class="colLast" scope="row">
5494<div class="block">A parsed program information element.</div>
5495</th>
5496</tr>
5497<tr id="i884" class="altColor">
5498<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/ProgressHolder.html" title="class in com.google.android.exoplayer2.transformer">ProgressHolder</a></td>
5499<th class="colLast" scope="row">
5500<div class="block">Holds a progress percentage.</div>
5501</th>
5502</tr>
5503<tr id="i885" class="rowColor">
5504<td class="colFirst"><a href="com/google/android/exoplayer2/offline/ProgressiveDownloader.html" title="class in com.google.android.exoplayer2.offline">ProgressiveDownloader</a></td>
5505<th class="colLast" scope="row">
5506<div class="block">A downloader for progressive media streams.</div>
5507</th>
5508</tr>
5509<tr id="i886" class="altColor">
5510<td class="colFirst"><a href="com/google/android/exoplayer2/source/ProgressiveMediaExtractor.html" title="interface in com.google.android.exoplayer2.source">ProgressiveMediaExtractor</a></td>
5511<th class="colLast" scope="row">
5512<div class="block">Extracts the contents of a container file from a progressive media stream.</div>
5513</th>
5514</tr>
5515<tr id="i887" class="rowColor">
5516<td class="colFirst"><a href="com/google/android/exoplayer2/source/ProgressiveMediaExtractor.Factory.html" title="interface in com.google.android.exoplayer2.source">ProgressiveMediaExtractor.Factory</a></td>
5517<th class="colLast" scope="row">
5518<div class="block">Creates <a href="com/google/android/exoplayer2/source/ProgressiveMediaExtractor.html" title="interface in com.google.android.exoplayer2.source"><code>ProgressiveMediaExtractor</code></a> instances.</div>
5519</th>
5520</tr>
5521<tr id="i888" class="altColor">
5522<td class="colFirst"><a href="com/google/android/exoplayer2/source/ProgressiveMediaSource.html" title="class in com.google.android.exoplayer2.source">ProgressiveMediaSource</a></td>
5523<th class="colLast" scope="row">
5524<div class="block">Provides one period that loads data from a <a href="https://developer.android.com/reference/android/net/Uri.html" title="class or interface in android.net" class="externalLink"><code>Uri</code></a> and extracted using an <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor" target="_top"><code>Extractor</code></a>.</div>
5525</th>
5526</tr>
5527<tr id="i889" class="rowColor">
5528<td class="colFirst"><a href="com/google/android/exoplayer2/source/ProgressiveMediaSource.Factory.html" title="class in com.google.android.exoplayer2.source">ProgressiveMediaSource.Factory</a></td>
5529<th class="colLast" scope="row">
5530<div class="block">Factory for <a href="com/google/android/exoplayer2/source/ProgressiveMediaSource.html" title="class in com.google.android.exoplayer2.source"><code>ProgressiveMediaSource</code></a>s.</div>
5531</th>
5532</tr>
5533<tr id="i890" class="altColor">
5534<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/PsExtractor.html" title="class in com.google.android.exoplayer2.extractor.ts">PsExtractor</a></td>
5535<th class="colLast" scope="row">
5536<div class="block">Extracts data from the MPEG-2 PS container format.</div>
5537</th>
5538</tr>
5539<tr id="i891" class="rowColor">
5540<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/PsshAtomUtil.html" title="class in com.google.android.exoplayer2.extractor.mp4">PsshAtomUtil</a></td>
5541<th class="colLast" scope="row">
5542<div class="block">Utility methods for handling PSSH atoms.</div>
5543</th>
5544</tr>
5545<tr id="i892" class="altColor">
5546<td class="colFirst"><a href="com/google/android/exoplayer2/robolectric/RandomizedMp3Decoder.html" title="class in com.google.android.exoplayer2.robolectric">RandomizedMp3Decoder</a></td>
5547<th class="colLast" scope="row">
5548<div class="block">Generates randomized, but correct amount of data on MP3 audio input.</div>
5549</th>
5550</tr>
5551<tr id="i893" class="rowColor">
5552<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/RandomTrackSelection.html" title="class in com.google.android.exoplayer2.trackselection">RandomTrackSelection</a></td>
5553<th class="colLast" scope="row">
5554<div class="block">An <a href="com/google/android/exoplayer2/trackselection/ExoTrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>ExoTrackSelection</code></a> whose selected track is updated randomly.</div>
5555</th>
5556</tr>
5557<tr id="i894" class="altColor">
5558<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/RandomTrackSelection.Factory.html" title="class in com.google.android.exoplayer2.trackselection">RandomTrackSelection.Factory</a></td>
5559<th class="colLast" scope="row">
5560<div class="block">Factory for <a href="com/google/android/exoplayer2/trackselection/RandomTrackSelection.html" title="class in com.google.android.exoplayer2.trackselection"><code>RandomTrackSelection</code></a> instances.</div>
5561</th>
5562</tr>
5563<tr id="i895" class="rowColor">
5564<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/RangedUri.html" title="class in com.google.android.exoplayer2.source.dash.manifest">RangedUri</a></td>
5565<th class="colLast" scope="row">
5566<div class="block">Defines a range of data located at a reference uri.</div>
5567</th>
5568</tr>
5569<tr id="i896" class="altColor">
5570<td class="colFirst"><a href="com/google/android/exoplayer2/Rating.html" title="class in com.google.android.exoplayer2">Rating</a></td>
5571<th class="colLast" scope="row">
5572<div class="block">A rating for media content.</div>
5573</th>
5574</tr>
5575<tr id="i897" class="rowColor">
5576<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/rawcc/RawCcExtractor.html" title="class in com.google.android.exoplayer2.extractor.rawcc">RawCcExtractor</a></td>
5577<th class="colLast" scope="row">
5578<div class="block">Extracts data from the RawCC container format.</div>
5579</th>
5580</tr>
5581<tr id="i898" class="altColor">
5582<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/RawResourceDataSource.html" title="class in com.google.android.exoplayer2.upstream">RawResourceDataSource</a></td>
5583<th class="colLast" scope="row">
5584<div class="block">A <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> for reading a raw resource inside the APK.</div>
5585</th>
5586</tr>
5587<tr id="i899" class="rowColor">
5588<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/RawResourceDataSource.RawResourceDataSourceException.html" title="class in com.google.android.exoplayer2.upstream">RawResourceDataSource.RawResourceDataSourceException</a></td>
5589<th class="colLast" scope="row">
5590<div class="block">Thrown when an <a href="https://developer.android.com/reference/java/io/IOException.html" title="class or interface in java.io" class="externalLink" target="_top"><code>IOException</code></a> is encountered reading from a raw resource.</div>
5591</th>
5592</tr>
5593<tr id="i900" class="altColor">
5594<td class="colFirst"><a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2">Renderer</a></td>
5595<th class="colLast" scope="row">
5596<div class="block">Renders media read from a <a href="com/google/android/exoplayer2/source/SampleStream.html" title="interface in com.google.android.exoplayer2.source"><code>SampleStream</code></a>.</div>
5597</th>
5598</tr>
5599<tr id="i901" class="rowColor">
5600<td class="colFirst"><a href="com/google/android/exoplayer2/Renderer.MessageType.html" title="annotation in com.google.android.exoplayer2">Renderer.MessageType</a></td>
5601<th class="colLast" scope="row">
5602<div class="block">Represents a type of message that can be passed to a renderer.</div>
5603</th>
5604</tr>
5605<tr id="i902" class="altColor">
5606<td class="colFirst"><a href="com/google/android/exoplayer2/Renderer.State.html" title="annotation in com.google.android.exoplayer2">Renderer.State</a></td>
5607<th class="colLast" scope="row">
5608<div class="block">The renderer states.</div>
5609</th>
5610</tr>
5611<tr id="i903" class="rowColor">
5612<td class="colFirst"><a href="com/google/android/exoplayer2/Renderer.WakeupListener.html" title="interface in com.google.android.exoplayer2">Renderer.WakeupListener</a></td>
5613<th class="colLast" scope="row">
5614<div class="block">Some renderers can signal when <a href="com/google/android/exoplayer2/Renderer.html#render(long,long)"><code>Renderer.render(long, long)</code></a> should be called.</div>
5615</th>
5616</tr>
5617<tr id="i904" class="altColor">
5618<td class="colFirst"><a href="com/google/android/exoplayer2/RendererCapabilities.html" title="interface in com.google.android.exoplayer2">RendererCapabilities</a></td>
5619<th class="colLast" scope="row">
5620<div class="block">Defines the capabilities of a <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a>.</div>
5621</th>
5622</tr>
5623<tr id="i905" class="rowColor">
5624<td class="colFirst"><a href="com/google/android/exoplayer2/RendererCapabilities.AdaptiveSupport.html" title="annotation in com.google.android.exoplayer2">RendererCapabilities.AdaptiveSupport</a></td>
5625<th class="colLast" scope="row">
5626<div class="block">Level of renderer support for adaptive format switches.</div>
5627</th>
5628</tr>
5629<tr id="i906" class="altColor">
5630<td class="colFirst"><a href="com/google/android/exoplayer2/RendererCapabilities.Capabilities.html" title="annotation in com.google.android.exoplayer2">RendererCapabilities.Capabilities</a></td>
5631<th class="colLast" scope="row">
5632<div class="block">Combined renderer capabilities.</div>
5633</th>
5634</tr>
5635<tr id="i907" class="rowColor">
5636<td class="colFirst"><a href="com/google/android/exoplayer2/RendererCapabilities.DecoderSupport.html" title="annotation in com.google.android.exoplayer2">RendererCapabilities.DecoderSupport</a></td>
5637<th class="colLast" scope="row">
5638<div class="block">Level of decoder support.</div>
5639</th>
5640</tr>
5641<tr id="i908" class="altColor">
5642<td class="colFirst"><a href="com/google/android/exoplayer2/RendererCapabilities.FormatSupport.html" title="annotation in com.google.android.exoplayer2">RendererCapabilities.FormatSupport</a></td>
5643<th class="colLast" scope="row">Deprecated.
5644<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/C.FormatSupport.html" title="annotation in com.google.android.exoplayer2"><code>C.FormatSupport</code></a> instead.</div>
5645</th>
5646</tr>
5647<tr id="i909" class="rowColor">
5648<td class="colFirst"><a href="com/google/android/exoplayer2/RendererCapabilities.HardwareAccelerationSupport.html" title="annotation in com.google.android.exoplayer2">RendererCapabilities.HardwareAccelerationSupport</a></td>
5649<th class="colLast" scope="row">
5650<div class="block">Level of renderer support for hardware acceleration.</div>
5651</th>
5652</tr>
5653<tr id="i910" class="altColor">
5654<td class="colFirst"><a href="com/google/android/exoplayer2/RendererCapabilities.TunnelingSupport.html" title="annotation in com.google.android.exoplayer2">RendererCapabilities.TunnelingSupport</a></td>
5655<th class="colLast" scope="row">
5656<div class="block">Level of renderer support for tunneling.</div>
5657</th>
5658</tr>
5659<tr id="i911" class="rowColor">
5660<td class="colFirst"><a href="com/google/android/exoplayer2/RendererConfiguration.html" title="class in com.google.android.exoplayer2">RendererConfiguration</a></td>
5661<th class="colLast" scope="row">
5662<div class="block">The configuration of a <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a>.</div>
5663</th>
5664</tr>
5665<tr id="i912" class="altColor">
5666<td class="colFirst"><a href="com/google/android/exoplayer2/RenderersFactory.html" title="interface in com.google.android.exoplayer2">RenderersFactory</a></td>
5667<th class="colLast" scope="row">
5668<div class="block">Builds <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> instances for use by an <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a>.</div>
5669</th>
5670</tr>
5671<tr id="i913" class="rowColor">
5672<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/RepeatModeActionProvider.html" title="class in com.google.android.exoplayer2.ext.mediasession">RepeatModeActionProvider</a></td>
5673<th class="colLast" scope="row">
5674<div class="block">Provides a custom action for toggling repeat modes.</div>
5675</th>
5676</tr>
5677<tr id="i914" class="altColor">
5678<td class="colFirst"><a href="com/google/android/exoplayer2/util/RepeatModeUtil.html" title="class in com.google.android.exoplayer2.util">RepeatModeUtil</a></td>
5679<th class="colLast" scope="row">
5680<div class="block">Util class for repeat mode handling.</div>
5681</th>
5682</tr>
5683<tr id="i915" class="rowColor">
5684<td class="colFirst"><a href="com/google/android/exoplayer2/util/RepeatModeUtil.RepeatToggleModes.html" title="annotation in com.google.android.exoplayer2.util">RepeatModeUtil.RepeatToggleModes</a></td>
5685<th class="colLast" scope="row">
5686<div class="block">Set of repeat toggle modes.</div>
5687</th>
5688</tr>
5689<tr id="i916" class="altColor">
5690<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/Representation.html" title="class in com.google.android.exoplayer2.source.dash.manifest">Representation</a></td>
5691<th class="colLast" scope="row">
5692<div class="block">A DASH representation.</div>
5693</th>
5694</tr>
5695<tr id="i917" class="rowColor">
5696<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/Representation.MultiSegmentRepresentation.html" title="class in com.google.android.exoplayer2.source.dash.manifest">Representation.MultiSegmentRepresentation</a></td>
5697<th class="colLast" scope="row">
5698<div class="block">A DASH representation consisting of multiple segments.</div>
5699</th>
5700</tr>
5701<tr id="i918" class="altColor">
5702<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/Representation.SingleSegmentRepresentation.html" title="class in com.google.android.exoplayer2.source.dash.manifest">Representation.SingleSegmentRepresentation</a></td>
5703<th class="colLast" scope="row">
5704<div class="block">A DASH representation consisting of a single segment.</div>
5705</th>
5706</tr>
5707<tr id="i919" class="rowColor">
5708<td class="colFirst"><a href="com/google/android/exoplayer2/scheduler/Requirements.html" title="class in com.google.android.exoplayer2.scheduler">Requirements</a></td>
5709<th class="colLast" scope="row">
5710<div class="block">Defines a set of device state requirements.</div>
5711</th>
5712</tr>
5713<tr id="i920" class="altColor">
5714<td class="colFirst"><a href="com/google/android/exoplayer2/scheduler/Requirements.RequirementFlags.html" title="annotation in com.google.android.exoplayer2.scheduler">Requirements.RequirementFlags</a></td>
5715<th class="colLast" scope="row">
5716<div class="block">Requirement flags.</div>
5717</th>
5718</tr>
5719<tr id="i921" class="rowColor">
5720<td class="colFirst"><a href="com/google/android/exoplayer2/scheduler/RequirementsWatcher.html" title="class in com.google.android.exoplayer2.scheduler">RequirementsWatcher</a></td>
5721<th class="colLast" scope="row">
5722<div class="block">Watches whether the <a href="com/google/android/exoplayer2/scheduler/Requirements.html" title="class in com.google.android.exoplayer2.scheduler"><code>Requirements</code></a> are met and notifies the <a href="com/google/android/exoplayer2/scheduler/RequirementsWatcher.Listener.html" title="interface in com.google.android.exoplayer2.scheduler"><code>RequirementsWatcher.Listener</code></a> on changes.</div>
5723</th>
5724</tr>
5725<tr id="i922" class="altColor">
5726<td class="colFirst"><a href="com/google/android/exoplayer2/scheduler/RequirementsWatcher.Listener.html" title="interface in com.google.android.exoplayer2.scheduler">RequirementsWatcher.Listener</a></td>
5727<th class="colLast" scope="row">
5728<div class="block">Notified when RequirementsWatcher instance first created and on changes whether the <a href="com/google/android/exoplayer2/scheduler/Requirements.html" title="class in com.google.android.exoplayer2.scheduler"><code>Requirements</code></a> are met.</div>
5729</th>
5730</tr>
5731<tr id="i923" class="rowColor">
5732<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ResolvingDataSource.html" title="class in com.google.android.exoplayer2.upstream">ResolvingDataSource</a></td>
5733<th class="colLast" scope="row">
5734<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> wrapper allowing just-in-time resolution of <a href="com/google/android/exoplayer2/upstream/DataSpec.html" title="class in com.google.android.exoplayer2.upstream"><code>DataSpecs</code></a>.</div>
5735</th>
5736</tr>
5737<tr id="i924" class="altColor">
5738<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ResolvingDataSource.Factory.html" title="class in com.google.android.exoplayer2.upstream">ResolvingDataSource.Factory</a></td>
5739<th class="colLast" scope="row">
5740<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/upstream/ResolvingDataSource.html" title="class in com.google.android.exoplayer2.upstream"><code>ResolvingDataSource</code></a> instances.</div>
5741</th>
5742</tr>
5743<tr id="i925" class="rowColor">
5744<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/ResolvingDataSource.Resolver.html" title="interface in com.google.android.exoplayer2.upstream">ResolvingDataSource.Resolver</a></td>
5745<th class="colLast" scope="row">
5746<div class="block">Resolves <a href="com/google/android/exoplayer2/upstream/DataSpec.html" title="class in com.google.android.exoplayer2.upstream"><code>DataSpecs</code></a>.</div>
5747</th>
5748</tr>
5749<tr id="i926" class="altColor">
5750<td class="colFirst"><a href="com/google/android/exoplayer2/robolectric/RobolectricUtil.html" title="class in com.google.android.exoplayer2.robolectric">RobolectricUtil</a></td>
5751<th class="colLast" scope="row">
5752<div class="block">Utility methods for Robolectric-based tests.</div>
5753</th>
5754</tr>
5755<tr id="i927" class="rowColor">
5756<td class="colFirst"><a href="com/google/android/exoplayer2/ext/rtmp/RtmpDataSource.html" title="class in com.google.android.exoplayer2.ext.rtmp">RtmpDataSource</a></td>
5757<th class="colLast" scope="row">
5758<div class="block">A Real-Time Messaging Protocol (RTMP) <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a>.</div>
5759</th>
5760</tr>
5761<tr id="i928" class="altColor">
5762<td class="colFirst"><a href="com/google/android/exoplayer2/ext/rtmp/RtmpDataSource.Factory.html" title="class in com.google.android.exoplayer2.ext.rtmp">RtmpDataSource.Factory</a></td>
5763<th class="colLast" scope="row">
5764<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource.Factory</code></a> for <a href="com/google/android/exoplayer2/ext/rtmp/RtmpDataSource.html" title="class in com.google.android.exoplayer2.ext.rtmp"><code>RtmpDataSource</code></a> instances.</div>
5765</th>
5766</tr>
5767<tr id="i929" class="rowColor">
5768<td class="colFirst"><a href="com/google/android/exoplayer2/ext/rtmp/RtmpDataSourceFactory.html" title="class in com.google.android.exoplayer2.ext.rtmp">RtmpDataSourceFactory</a></td>
5769<th class="colLast" scope="row">Deprecated.
5770<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ext/rtmp/RtmpDataSource.Factory.html" title="class in com.google.android.exoplayer2.ext.rtmp"><code>RtmpDataSource.Factory</code></a> instead.</div>
5771</th>
5772</tr>
5773<tr id="i930" class="altColor">
5774<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/reader/RtpAc3Reader.html" title="class in com.google.android.exoplayer2.source.rtsp.reader">RtpAc3Reader</a></td>
5775<th class="colLast" scope="row">
5776<div class="block">Parses an AC3 byte stream carried on RTP packets, and extracts AC3 frames.</div>
5777</th>
5778</tr>
5779<tr id="i931" class="rowColor">
5780<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/RtpPacket.html" title="class in com.google.android.exoplayer2.source.rtsp">RtpPacket</a></td>
5781<th class="colLast" scope="row">
5782<div class="block">Represents the header and the payload of an RTP packet.</div>
5783</th>
5784</tr>
5785<tr id="i932" class="altColor">
5786<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/RtpPacket.Builder.html" title="class in com.google.android.exoplayer2.source.rtsp">RtpPacket.Builder</a></td>
5787<th class="colLast" scope="row">
5788<div class="block">Builder class for an <a href="com/google/android/exoplayer2/source/rtsp/RtpPacket.html" title="class in com.google.android.exoplayer2.source.rtsp"><code>RtpPacket</code></a></div>
5789</th>
5790</tr>
5791<tr id="i933" class="rowColor">
5792<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/RtpPayloadFormat.html" title="class in com.google.android.exoplayer2.source.rtsp">RtpPayloadFormat</a></td>
5793<th class="colLast" scope="row">
5794<div class="block">Represents the payload format used in RTP.</div>
5795</th>
5796</tr>
5797<tr id="i934" class="altColor">
5798<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/reader/RtpPayloadReader.html" title="interface in com.google.android.exoplayer2.source.rtsp.reader">RtpPayloadReader</a></td>
5799<th class="colLast" scope="row">
5800<div class="block">Extracts media samples from the payload of received RTP packets.</div>
5801</th>
5802</tr>
5803<tr id="i935" class="rowColor">
5804<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/reader/RtpPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.source.rtsp.reader">RtpPayloadReader.Factory</a></td>
5805<th class="colLast" scope="row">
5806<div class="block">Factory of <a href="com/google/android/exoplayer2/source/rtsp/reader/RtpPayloadReader.html" title="interface in com.google.android.exoplayer2.source.rtsp.reader"><code>RtpPayloadReader</code></a> instances.</div>
5807</th>
5808</tr>
5809<tr id="i936" class="altColor">
5810<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/RtpUtils.html" title="class in com.google.android.exoplayer2.source.rtsp">RtpUtils</a></td>
5811<th class="colLast" scope="row">
5812<div class="block">Utility methods for RTP.</div>
5813</th>
5814</tr>
5815<tr id="i937" class="rowColor">
5816<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/RtspMediaSource.html" title="class in com.google.android.exoplayer2.source.rtsp">RtspMediaSource</a></td>
5817<th class="colLast" scope="row">
5818<div class="block">An Rtsp <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a></div>
5819</th>
5820</tr>
5821<tr id="i938" class="altColor">
5822<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/RtspMediaSource.Factory.html" title="class in com.google.android.exoplayer2.source.rtsp">RtspMediaSource.Factory</a></td>
5823<th class="colLast" scope="row">
5824<div class="block">Factory for <a href="com/google/android/exoplayer2/source/rtsp/RtspMediaSource.html" title="class in com.google.android.exoplayer2.source.rtsp"><code>RtspMediaSource</code></a></div>
5825</th>
5826</tr>
5827<tr id="i939" class="rowColor">
5828<td class="colFirst"><a href="com/google/android/exoplayer2/source/rtsp/RtspMediaSource.RtspPlaybackException.html" title="class in com.google.android.exoplayer2.source.rtsp">RtspMediaSource.RtspPlaybackException</a></td>
5829<th class="colLast" scope="row">
5830<div class="block">Thrown when an exception or error is encountered during loading an RTSP stream.</div>
5831</th>
5832</tr>
5833<tr id="i940" class="altColor">
5834<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/RubySpan.html" title="class in com.google.android.exoplayer2.text.span">RubySpan</a></td>
5835<th class="colLast" scope="row">
5836<div class="block">A styling span for ruby text.</div>
5837</th>
5838</tr>
5839<tr id="i941" class="rowColor">
5840<td class="colFirst"><a href="com/google/android/exoplayer2/util/RunnableFutureTask.html" title="class in com.google.android.exoplayer2.util">RunnableFutureTask</a>&lt;<a href="com/google/android/exoplayer2/util/RunnableFutureTask.html" title="type parameter in RunnableFutureTask">R</a>,&#8203;<a href="com/google/android/exoplayer2/util/RunnableFutureTask.html" title="type parameter in RunnableFutureTask">E</a> extends <a href="https://developer.android.com/reference/java/lang/Exception.html" title="class or interface in java.lang" class="externalLink" target="_top">Exception</a>&gt;</td>
5841<th class="colLast" scope="row">
5842<div class="block">A <a href="https://developer.android.com/reference/java/util/concurrent/RunnableFuture.html" title="class or interface in java.util.concurrent" class="externalLink" target="_top"><code>RunnableFuture</code></a> that supports additional uninterruptible operations to query whether
5843 execution has started and finished.</div>
5844</th>
5845</tr>
5846<tr id="i942" class="altColor">
5847<td class="colFirst"><a href="com/google/android/exoplayer2/source/SampleQueue.html" title="class in com.google.android.exoplayer2.source">SampleQueue</a></td>
5848<th class="colLast" scope="row">
5849<div class="block">A queue of media samples.</div>
5850</th>
5851</tr>
5852<tr id="i943" class="rowColor">
5853<td class="colFirst"><a href="com/google/android/exoplayer2/source/SampleQueue.UpstreamFormatChangedListener.html" title="interface in com.google.android.exoplayer2.source">SampleQueue.UpstreamFormatChangedListener</a></td>
5854<th class="colLast" scope="row">
5855<div class="block">A listener for changes to the upstream format.</div>
5856</th>
5857</tr>
5858<tr id="i944" class="altColor">
5859<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/SampleQueueMappingException.html" title="class in com.google.android.exoplayer2.source.hls">SampleQueueMappingException</a></td>
5860<th class="colLast" scope="row">
5861<div class="block">Thrown when it is not possible to map a <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroup</code></a> to a <a href="com/google/android/exoplayer2/source/SampleQueue.html" title="class in com.google.android.exoplayer2.source"><code>SampleQueue</code></a>.</div>
5862</th>
5863</tr>
5864<tr id="i945" class="rowColor">
5865<td class="colFirst"><a href="com/google/android/exoplayer2/source/SampleStream.html" title="interface in com.google.android.exoplayer2.source">SampleStream</a></td>
5866<th class="colLast" scope="row">
5867<div class="block">A stream of media samples (and associated format information).</div>
5868</th>
5869</tr>
5870<tr id="i946" class="altColor">
5871<td class="colFirst"><a href="com/google/android/exoplayer2/source/SampleStream.ReadDataResult.html" title="annotation in com.google.android.exoplayer2.source">SampleStream.ReadDataResult</a></td>
5872<th class="colLast" scope="row">
5873<div class="block">Return values of <a href="com/google/android/exoplayer2/source/SampleStream.html#readData(com.google.android.exoplayer2.FormatHolder,com.google.android.exoplayer2.decoder.DecoderInputBuffer,@com.google.android.exoplayer2.source.SampleStream.ReadFlagsint)"><code>SampleStream.readData(com.google.android.exoplayer2.FormatHolder, com.google.android.exoplayer2.decoder.DecoderInputBuffer, @com.google.android.exoplayer2.source.SampleStream.ReadFlags int)</code></a>.</div>
5874</th>
5875</tr>
5876<tr id="i947" class="rowColor">
5877<td class="colFirst"><a href="com/google/android/exoplayer2/source/SampleStream.ReadFlags.html" title="annotation in com.google.android.exoplayer2.source">SampleStream.ReadFlags</a></td>
5878<th class="colLast" scope="row">
5879<div class="block">Flags that can be specified when calling <a href="com/google/android/exoplayer2/source/SampleStream.html#readData(com.google.android.exoplayer2.FormatHolder,com.google.android.exoplayer2.decoder.DecoderInputBuffer,@com.google.android.exoplayer2.source.SampleStream.ReadFlagsint)"><code>SampleStream.readData(com.google.android.exoplayer2.FormatHolder, com.google.android.exoplayer2.decoder.DecoderInputBuffer, @com.google.android.exoplayer2.source.SampleStream.ReadFlags int)</code></a>.</div>
5880</th>
5881</tr>
5882<tr id="i948" class="altColor">
5883<td class="colFirst"><a href="com/google/android/exoplayer2/scheduler/Scheduler.html" title="interface in com.google.android.exoplayer2.scheduler">Scheduler</a></td>
5884<th class="colLast" scope="row">
5885<div class="block">Schedules a service to be started in the foreground when some <a href="com/google/android/exoplayer2/scheduler/Requirements.html" title="class in com.google.android.exoplayer2.scheduler"><code>Requirements</code></a> are met.</div>
5886</th>
5887</tr>
5888<tr id="i949" class="rowColor">
5889<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/SectionPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts">SectionPayloadReader</a></td>
5890<th class="colLast" scope="row">
5891<div class="block">Reads section data.</div>
5892</th>
5893</tr>
5894<tr id="i950" class="altColor">
5895<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/SectionReader.html" title="class in com.google.android.exoplayer2.extractor.ts">SectionReader</a></td>
5896<th class="colLast" scope="row">
5897<div class="block">Reads section data packets and feeds the whole sections to a given <a href="com/google/android/exoplayer2/extractor/ts/SectionPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>SectionPayloadReader</code></a>.</div>
5898</th>
5899</tr>
5900<tr id="i951" class="rowColor">
5901<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/SeekMap.html" title="interface in com.google.android.exoplayer2.extractor">SeekMap</a></td>
5902<th class="colLast" scope="row">
5903<div class="block">Maps seek positions (in microseconds) to corresponding positions (byte offsets) in the stream.</div>
5904</th>
5905</tr>
5906<tr id="i952" class="altColor">
5907<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/SeekMap.SeekPoints.html" title="class in com.google.android.exoplayer2.extractor">SeekMap.SeekPoints</a></td>
5908<th class="colLast" scope="row">
5909<div class="block">Contains one or two <a href="com/google/android/exoplayer2/extractor/SeekPoint.html" title="class in com.google.android.exoplayer2.extractor"><code>SeekPoint</code></a>s.</div>
5910</th>
5911</tr>
5912<tr id="i953" class="rowColor">
5913<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/SeekMap.Unseekable.html" title="class in com.google.android.exoplayer2.extractor">SeekMap.Unseekable</a></td>
5914<th class="colLast" scope="row">
5915<div class="block">A <a href="com/google/android/exoplayer2/extractor/SeekMap.html" title="interface in com.google.android.exoplayer2.extractor"><code>SeekMap</code></a> that does not support seeking.</div>
5916</th>
5917</tr>
5918<tr id="i954" class="altColor">
5919<td class="colFirst"><a href="com/google/android/exoplayer2/SeekParameters.html" title="class in com.google.android.exoplayer2">SeekParameters</a></td>
5920<th class="colLast" scope="row">
5921<div class="block">Parameters that apply to seeking.</div>
5922</th>
5923</tr>
5924<tr id="i955" class="rowColor">
5925<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/SeekPoint.html" title="class in com.google.android.exoplayer2.extractor">SeekPoint</a></td>
5926<th class="colLast" scope="row">
5927<div class="block">Defines a seek point in a media stream.</div>
5928</th>
5929</tr>
5930<tr id="i956" class="altColor">
5931<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.html" title="class in com.google.android.exoplayer2.source.dash.manifest">SegmentBase</a></td>
5932<th class="colLast" scope="row">
5933<div class="block">An approximate representation of a SegmentBase manifest element.</div>
5934</th>
5935</tr>
5936<tr id="i957" class="rowColor">
5937<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.MultiSegmentBase.html" title="class in com.google.android.exoplayer2.source.dash.manifest">SegmentBase.MultiSegmentBase</a></td>
5938<th class="colLast" scope="row">
5939<div class="block">A <a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.html" title="class in com.google.android.exoplayer2.source.dash.manifest"><code>SegmentBase</code></a> that consists of multiple segments.</div>
5940</th>
5941</tr>
5942<tr id="i958" class="altColor">
5943<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.SegmentList.html" title="class in com.google.android.exoplayer2.source.dash.manifest">SegmentBase.SegmentList</a></td>
5944<th class="colLast" scope="row">
5945<div class="block">A <a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.MultiSegmentBase.html" title="class in com.google.android.exoplayer2.source.dash.manifest"><code>SegmentBase.MultiSegmentBase</code></a> that uses a SegmentList to define its segments.</div>
5946</th>
5947</tr>
5948<tr id="i959" class="rowColor">
5949<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.SegmentTemplate.html" title="class in com.google.android.exoplayer2.source.dash.manifest">SegmentBase.SegmentTemplate</a></td>
5950<th class="colLast" scope="row">
5951<div class="block">A <a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.MultiSegmentBase.html" title="class in com.google.android.exoplayer2.source.dash.manifest"><code>SegmentBase.MultiSegmentBase</code></a> that uses a SegmentTemplate to define its segments.</div>
5952</th>
5953</tr>
5954<tr id="i960" class="altColor">
5955<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.SegmentTimelineElement.html" title="class in com.google.android.exoplayer2.source.dash.manifest">SegmentBase.SegmentTimelineElement</a></td>
5956<th class="colLast" scope="row">
5957<div class="block">Represents a timeline segment from the MPD's SegmentTimeline list.</div>
5958</th>
5959</tr>
5960<tr id="i961" class="rowColor">
5961<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.SingleSegmentBase.html" title="class in com.google.android.exoplayer2.source.dash.manifest">SegmentBase.SingleSegmentBase</a></td>
5962<th class="colLast" scope="row">
5963<div class="block">A <a href="com/google/android/exoplayer2/source/dash/manifest/SegmentBase.html" title="class in com.google.android.exoplayer2.source.dash.manifest"><code>SegmentBase</code></a> that defines a single segment.</div>
5964</th>
5965</tr>
5966<tr id="i962" class="altColor">
5967<td class="colFirst"><a href="com/google/android/exoplayer2/offline/SegmentDownloader.html" title="class in com.google.android.exoplayer2.offline">SegmentDownloader</a>&lt;<a href="com/google/android/exoplayer2/offline/SegmentDownloader.html" title="type parameter in SegmentDownloader">M</a> extends <a href="com/google/android/exoplayer2/offline/FilterableManifest.html" title="interface in com.google.android.exoplayer2.offline">FilterableManifest</a>&lt;<a href="com/google/android/exoplayer2/offline/SegmentDownloader.html" title="type parameter in SegmentDownloader">M</a>&gt;&gt;</td>
5968<th class="colLast" scope="row">
5969<div class="block">Base class for multi segment stream downloaders.</div>
5970</th>
5971</tr>
5972<tr id="i963" class="rowColor">
5973<td class="colFirst"><a href="com/google/android/exoplayer2/offline/SegmentDownloader.Segment.html" title="class in com.google.android.exoplayer2.offline">SegmentDownloader.Segment</a></td>
5974<th class="colLast" scope="row">
5975<div class="block">Smallest unit of content to be downloaded.</div>
5976</th>
5977</tr>
5978<tr id="i964" class="altColor">
5979<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/SeiReader.html" title="class in com.google.android.exoplayer2.extractor.ts">SeiReader</a></td>
5980<th class="colLast" scope="row">
5981<div class="block">Consumes SEI buffers, outputting contained CEA-608/708 messages to a <a href="com/google/android/exoplayer2/extractor/TrackOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>TrackOutput</code></a>.</div>
5982</th>
5983</tr>
5984<tr id="i965" class="rowColor">
5985<td class="colFirst"><a href="com/google/android/exoplayer2/source/SequenceableLoader.html" title="interface in com.google.android.exoplayer2.source">SequenceableLoader</a></td>
5986<th class="colLast" scope="row">
5987<div class="block">A loader that can proceed in approximate synchronization with other loaders.</div>
5988</th>
5989</tr>
5990<tr id="i966" class="altColor">
5991<td class="colFirst"><a href="com/google/android/exoplayer2/source/SequenceableLoader.Callback.html" title="interface in com.google.android.exoplayer2.source">SequenceableLoader.Callback</a>&lt;<a href="com/google/android/exoplayer2/source/SequenceableLoader.Callback.html" title="type parameter in SequenceableLoader.Callback">T</a> extends <a href="com/google/android/exoplayer2/source/SequenceableLoader.html" title="interface in com.google.android.exoplayer2.source">SequenceableLoader</a>&gt;</td>
5992<th class="colLast" scope="row">
5993<div class="block">A callback to be notified of <a href="com/google/android/exoplayer2/source/SequenceableLoader.html" title="interface in com.google.android.exoplayer2.source"><code>SequenceableLoader</code></a> events.</div>
5994</th>
5995</tr>
5996<tr id="i967" class="rowColor">
5997<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/ServerSideAdInsertionMediaSource.html" title="class in com.google.android.exoplayer2.source.ads">ServerSideAdInsertionMediaSource</a></td>
5998<th class="colLast" scope="row">
5999<div class="block">A <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a> for server-side inserted ad breaks.</div>
6000</th>
6001</tr>
6002<tr id="i968" class="altColor">
6003<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/ServerSideAdInsertionMediaSource.AdPlaybackStateUpdater.html" title="interface in com.google.android.exoplayer2.source.ads">ServerSideAdInsertionMediaSource.AdPlaybackStateUpdater</a></td>
6004<th class="colLast" scope="row">
6005<div class="block">Receives ad playback state update requests when the <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> of the content media
6006 source has changed.</div>
6007</th>
6008</tr>
6009<tr id="i969" class="rowColor">
6010<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/ServerSideAdInsertionUtil.html" title="class in com.google.android.exoplayer2.source.ads">ServerSideAdInsertionUtil</a></td>
6011<th class="colLast" scope="row">
6012<div class="block">A static utility class with methods to work with server-side inserted ads.</div>
6013</th>
6014</tr>
6015<tr id="i970" class="altColor">
6016<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/ServiceDescriptionElement.html" title="class in com.google.android.exoplayer2.source.dash.manifest">ServiceDescriptionElement</a></td>
6017<th class="colLast" scope="row">
6018<div class="block">Represents a service description element.</div>
6019</th>
6020</tr>
6021<tr id="i971" class="rowColor">
6022<td class="colFirst"><a href="com/google/android/exoplayer2/ext/cast/SessionAvailabilityListener.html" title="interface in com.google.android.exoplayer2.ext.cast">SessionAvailabilityListener</a></td>
6023<th class="colLast" scope="row">
6024<div class="block">Listener of changes in the cast session availability.</div>
6025</th>
6026</tr>
6027<tr id="i972" class="altColor">
6028<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.html" title="class in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder</a></td>
6029<th class="colLast" scope="row">
6030<div class="block">Builds a <code>MediaSession.SessionCallback</code> with various collaborators.</div>
6031</th>
6032</tr>
6033<tr id="i973" class="rowColor">
6034<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.AllowedCommandProvider.html" title="interface in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.AllowedCommandProvider</a></td>
6035<th class="colLast" scope="row">
6036<div class="block">Provides allowed commands for <code>MediaController</code>.</div>
6037</th>
6038</tr>
6039<tr id="i974" class="altColor">
6040<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.CustomCommandProvider.html" title="interface in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.CustomCommandProvider</a></td>
6041<th class="colLast" scope="row">
6042<div class="block">Callbacks for querying what custom commands are supported, and for handling a custom command
6043 when a controller sends it.</div>
6044</th>
6045</tr>
6046<tr id="i975" class="rowColor">
6047<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.DefaultAllowedCommandProvider.html" title="class in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.DefaultAllowedCommandProvider</a></td>
6048<th class="colLast" scope="row">
6049<div class="block">Default implementation of <a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.AllowedCommandProvider.html" title="interface in com.google.android.exoplayer2.ext.media2"><code>SessionCallbackBuilder.AllowedCommandProvider</code></a> that behaves as follows:
6050
6051
6052   Accepts connection requests from controller if any of the following conditions are met:
6053
6054         Controller is in the same package as the session.</div>
6055</th>
6056</tr>
6057<tr id="i976" class="altColor">
6058<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.DisconnectedCallback.html" title="interface in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.DisconnectedCallback</a></td>
6059<th class="colLast" scope="row">
6060<div class="block">Callback for handling controller disconnection.</div>
6061</th>
6062</tr>
6063<tr id="i977" class="rowColor">
6064<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.MediaIdMediaItemProvider.html" title="class in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.MediaIdMediaItemProvider</a></td>
6065<th class="colLast" scope="row">
6066<div class="block">A <a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.MediaItemProvider.html" title="interface in com.google.android.exoplayer2.ext.media2"><code>SessionCallbackBuilder.MediaItemProvider</code></a> that creates media items containing only a media ID.</div>
6067</th>
6068</tr>
6069<tr id="i978" class="altColor">
6070<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.MediaItemProvider.html" title="interface in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.MediaItemProvider</a></td>
6071<th class="colLast" scope="row">
6072<div class="block">Provides the <code>MediaItem</code>.</div>
6073</th>
6074</tr>
6075<tr id="i979" class="rowColor">
6076<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.PostConnectCallback.html" title="interface in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.PostConnectCallback</a></td>
6077<th class="colLast" scope="row">
6078<div class="block">Callback for handling extra initialization after the connection.</div>
6079</th>
6080</tr>
6081<tr id="i980" class="altColor">
6082<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.RatingCallback.html" title="interface in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.RatingCallback</a></td>
6083<th class="colLast" scope="row">
6084<div class="block">Callback receiving a user rating for a specified media id.</div>
6085</th>
6086</tr>
6087<tr id="i981" class="rowColor">
6088<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionCallbackBuilder.SkipCallback.html" title="interface in com.google.android.exoplayer2.ext.media2">SessionCallbackBuilder.SkipCallback</a></td>
6089<th class="colLast" scope="row">
6090<div class="block">Callback receiving skip backward and skip forward.</div>
6091</th>
6092</tr>
6093<tr id="i982" class="altColor">
6094<td class="colFirst"><a href="com/google/android/exoplayer2/ext/media2/SessionPlayerConnector.html" title="class in com.google.android.exoplayer2.ext.media2">SessionPlayerConnector</a></td>
6095<th class="colLast" scope="row">
6096<div class="block">An implementation of <code>SessionPlayer</code> that wraps a given ExoPlayer <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> instance.</div>
6097</th>
6098</tr>
6099<tr id="i983" class="rowColor">
6100<td class="colFirst"><a href="com/google/android/exoplayer2/robolectric/ShadowMediaCodecConfig.html" title="class in com.google.android.exoplayer2.robolectric">ShadowMediaCodecConfig</a></td>
6101<th class="colLast" scope="row">
6102<div class="block">A JUnit @Rule to configure Roboelectric's <code>ShadowMediaCodec</code>.</div>
6103</th>
6104</tr>
6105<tr id="i984" class="altColor">
6106<td class="colFirst"><a href="com/google/android/exoplayer2/source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source">ShuffleOrder</a></td>
6107<th class="colLast" scope="row">
6108<div class="block">Shuffled order of indices.</div>
6109</th>
6110</tr>
6111<tr id="i985" class="rowColor">
6112<td class="colFirst"><a href="com/google/android/exoplayer2/source/ShuffleOrder.DefaultShuffleOrder.html" title="class in com.google.android.exoplayer2.source">ShuffleOrder.DefaultShuffleOrder</a></td>
6113<th class="colLast" scope="row">
6114<div class="block">The default <a href="com/google/android/exoplayer2/source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source"><code>ShuffleOrder</code></a> implementation for random shuffle order.</div>
6115</th>
6116</tr>
6117<tr id="i986" class="altColor">
6118<td class="colFirst"><a href="com/google/android/exoplayer2/source/ShuffleOrder.UnshuffledShuffleOrder.html" title="class in com.google.android.exoplayer2.source">ShuffleOrder.UnshuffledShuffleOrder</a></td>
6119<th class="colLast" scope="row">
6120<div class="block">A <a href="com/google/android/exoplayer2/source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source"><code>ShuffleOrder</code></a> implementation which does not shuffle.</div>
6121</th>
6122</tr>
6123<tr id="i987" class="rowColor">
6124<td class="colFirst"><a href="com/google/android/exoplayer2/source/SilenceMediaSource.html" title="class in com.google.android.exoplayer2.source">SilenceMediaSource</a></td>
6125<th class="colLast" scope="row">
6126<div class="block">Media source with a single period consisting of silent raw audio of a given duration.</div>
6127</th>
6128</tr>
6129<tr id="i988" class="altColor">
6130<td class="colFirst"><a href="com/google/android/exoplayer2/source/SilenceMediaSource.Factory.html" title="class in com.google.android.exoplayer2.source">SilenceMediaSource.Factory</a></td>
6131<th class="colLast" scope="row">
6132<div class="block">Factory for <a href="com/google/android/exoplayer2/source/SilenceMediaSource.html" title="class in com.google.android.exoplayer2.source"><code>SilenceMediaSources</code></a>.</div>
6133</th>
6134</tr>
6135<tr id="i989" class="rowColor">
6136<td class="colFirst"><a href="com/google/android/exoplayer2/audio/SilenceSkippingAudioProcessor.html" title="class in com.google.android.exoplayer2.audio">SilenceSkippingAudioProcessor</a></td>
6137<th class="colLast" scope="row">
6138<div class="block">An <a href="com/google/android/exoplayer2/audio/AudioProcessor.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioProcessor</code></a> that skips silence in the input stream.</div>
6139</th>
6140</tr>
6141<tr id="i990" class="altColor">
6142<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/cache/SimpleCache.html" title="class in com.google.android.exoplayer2.upstream.cache">SimpleCache</a></td>
6143<th class="colLast" scope="row">
6144<div class="block">A <a href="com/google/android/exoplayer2/upstream/cache/Cache.html" title="interface in com.google.android.exoplayer2.upstream.cache"><code>Cache</code></a> implementation that maintains an in-memory representation.</div>
6145</th>
6146</tr>
6147<tr id="i991" class="rowColor">
6148<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/SimpleDecoder.html" title="class in com.google.android.exoplayer2.decoder">SimpleDecoder</a>&lt;<a href="com/google/android/exoplayer2/decoder/SimpleDecoder.html" title="type parameter in SimpleDecoder">I</a> extends <a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html" title="class in com.google.android.exoplayer2.decoder">DecoderInputBuffer</a>,&#8203;<a href="com/google/android/exoplayer2/decoder/SimpleDecoder.html" title="type parameter in SimpleDecoder">O</a> extends <a href="com/google/android/exoplayer2/decoder/DecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder">DecoderOutputBuffer</a>,&#8203;<a href="com/google/android/exoplayer2/decoder/SimpleDecoder.html" title="type parameter in SimpleDecoder">E</a> extends <a href="com/google/android/exoplayer2/decoder/DecoderException.html" title="class in com.google.android.exoplayer2.decoder">DecoderException</a>&gt;</td>
6149<th class="colLast" scope="row">
6150<div class="block">Base class for <a href="com/google/android/exoplayer2/decoder/Decoder.html" title="interface in com.google.android.exoplayer2.decoder"><code>Decoder</code></a>s that use their own decode thread and decode each input buffer
6151 immediately into a corresponding output buffer.</div>
6152</th>
6153</tr>
6154<tr id="i992" class="altColor">
6155<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/SimpleDecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder">SimpleDecoderOutputBuffer</a></td>
6156<th class="colLast" scope="row">
6157<div class="block">Buffer for <a href="com/google/android/exoplayer2/decoder/SimpleDecoder.html" title="class in com.google.android.exoplayer2.decoder"><code>SimpleDecoder</code></a> output.</div>
6158</th>
6159</tr>
6160<tr id="i993" class="rowColor">
6161<td class="colFirst"><a href="com/google/android/exoplayer2/SimpleExoPlayer.html" title="class in com.google.android.exoplayer2">SimpleExoPlayer</a></td>
6162<th class="colLast" scope="row">Deprecated.
6163<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> instead.</div>
6164</th>
6165</tr>
6166<tr id="i994" class="altColor">
6167<td class="colFirst"><a href="com/google/android/exoplayer2/SimpleExoPlayer.Builder.html" title="class in com.google.android.exoplayer2">SimpleExoPlayer.Builder</a></td>
6168<th class="colLast" scope="row">Deprecated.
6169<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/ExoPlayer.Builder.html" title="class in com.google.android.exoplayer2"><code>ExoPlayer.Builder</code></a> instead.</div>
6170</th>
6171</tr>
6172<tr id="i995" class="rowColor">
6173<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/SimpleMetadataDecoder.html" title="class in com.google.android.exoplayer2.metadata">SimpleMetadataDecoder</a></td>
6174<th class="colLast" scope="row">
6175<div class="block">A <a href="com/google/android/exoplayer2/metadata/MetadataDecoder.html" title="interface in com.google.android.exoplayer2.metadata"><code>MetadataDecoder</code></a> base class that validates input buffers and discards any for which
6176 <a href="com/google/android/exoplayer2/decoder/Buffer.html#isDecodeOnly()"><code>Buffer.isDecodeOnly()</code></a> is <code>true</code>.</div>
6177</th>
6178</tr>
6179<tr id="i996" class="altColor">
6180<td class="colFirst"><a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text">SimpleSubtitleDecoder</a></td>
6181<th class="colLast" scope="row">
6182<div class="block">Base class for subtitle parsers that use their own decode thread.</div>
6183</th>
6184</tr>
6185<tr id="i997" class="rowColor">
6186<td class="colFirst"><a href="com/google/android/exoplayer2/source/ads/SinglePeriodAdTimeline.html" title="class in com.google.android.exoplayer2.source.ads">SinglePeriodAdTimeline</a></td>
6187<th class="colLast" scope="row">
6188<div class="block">A <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> for sources that have ads.</div>
6189</th>
6190</tr>
6191<tr id="i998" class="altColor">
6192<td class="colFirst"><a href="com/google/android/exoplayer2/source/SinglePeriodTimeline.html" title="class in com.google.android.exoplayer2.source">SinglePeriodTimeline</a></td>
6193<th class="colLast" scope="row">
6194<div class="block">A <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> consisting of a single period and static window.</div>
6195</th>
6196</tr>
6197<tr id="i999" class="rowColor">
6198<td class="colFirst"><a href="com/google/android/exoplayer2/source/chunk/SingleSampleMediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk">SingleSampleMediaChunk</a></td>
6199<th class="colLast" scope="row">
6200<div class="block">A <a href="com/google/android/exoplayer2/source/chunk/BaseMediaChunk.html" title="class in com.google.android.exoplayer2.source.chunk"><code>BaseMediaChunk</code></a> for chunks consisting of a single raw sample.</div>
6201</th>
6202</tr>
6203<tr id="i1000" class="altColor">
6204<td class="colFirst"><a href="com/google/android/exoplayer2/source/SingleSampleMediaSource.html" title="class in com.google.android.exoplayer2.source">SingleSampleMediaSource</a></td>
6205<th class="colLast" scope="row">
6206<div class="block">Loads data at a given <a href="https://developer.android.com/reference/android/net/Uri.html" title="class or interface in android.net" class="externalLink"><code>Uri</code></a> as a single sample belonging to a single <a href="com/google/android/exoplayer2/source/MediaPeriod.html" title="interface in com.google.android.exoplayer2.source" target="_top"><code>MediaPeriod</code></a>.</div>
6207</th>
6208</tr>
6209<tr id="i1001" class="rowColor">
6210<td class="colFirst"><a href="com/google/android/exoplayer2/source/SingleSampleMediaSource.Factory.html" title="class in com.google.android.exoplayer2.source">SingleSampleMediaSource.Factory</a></td>
6211<th class="colLast" scope="row">
6212<div class="block">Factory for <a href="com/google/android/exoplayer2/source/SingleSampleMediaSource.html" title="class in com.google.android.exoplayer2.source"><code>SingleSampleMediaSource</code></a>.</div>
6213</th>
6214</tr>
6215<tr id="i1002" class="altColor">
6216<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/SlidingPercentile.html" title="class in com.google.android.exoplayer2.upstream">SlidingPercentile</a></td>
6217<th class="colLast" scope="row">
6218<div class="block">Calculate any percentile over a sliding window of weighted values.</div>
6219</th>
6220</tr>
6221<tr id="i1003" class="rowColor">
6222<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/mp4/SlowMotionData.html" title="class in com.google.android.exoplayer2.metadata.mp4">SlowMotionData</a></td>
6223<th class="colLast" scope="row">
6224<div class="block">Holds information about the segments of slow motion playback within a track.</div>
6225</th>
6226</tr>
6227<tr id="i1004" class="altColor">
6228<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/mp4/SlowMotionData.Segment.html" title="class in com.google.android.exoplayer2.metadata.mp4">SlowMotionData.Segment</a></td>
6229<th class="colLast" scope="row">
6230<div class="block">Holds information about a single segment of slow motion playback within a track.</div>
6231</th>
6232</tr>
6233<tr id="i1005" class="rowColor">
6234<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/mp4/SmtaMetadataEntry.html" title="class in com.google.android.exoplayer2.metadata.mp4">SmtaMetadataEntry</a></td>
6235<th class="colLast" scope="row">
6236<div class="block">Stores metadata from the Samsung smta box.</div>
6237</th>
6238</tr>
6239<tr id="i1006" class="altColor">
6240<td class="colFirst"><a href="com/google/android/exoplayer2/util/SntpClient.html" title="class in com.google.android.exoplayer2.util">SntpClient</a></td>
6241<th class="colLast" scope="row">
6242<div class="block">Static utility to retrieve the device time offset using SNTP.</div>
6243</th>
6244</tr>
6245<tr id="i1007" class="rowColor">
6246<td class="colFirst"><a href="com/google/android/exoplayer2/util/SntpClient.InitializationCallback.html" title="interface in com.google.android.exoplayer2.util">SntpClient.InitializationCallback</a></td>
6247<th class="colLast" scope="row">
6248<div class="block">Callback for calls to <a href="com/google/android/exoplayer2/util/SntpClient.html#initialize(com.google.android.exoplayer2.upstream.Loader,com.google.android.exoplayer2.util.SntpClient.InitializationCallback)"><code>SntpClient.initialize(Loader, InitializationCallback)</code></a>.</div>
6249</th>
6250</tr>
6251<tr id="i1008" class="altColor">
6252<td class="colFirst"><a href="com/google/android/exoplayer2/audio/SonicAudioProcessor.html" title="class in com.google.android.exoplayer2.audio">SonicAudioProcessor</a></td>
6253<th class="colLast" scope="row">
6254<div class="block">An <a href="com/google/android/exoplayer2/audio/AudioProcessor.html" title="interface in com.google.android.exoplayer2.audio"><code>AudioProcessor</code></a> that uses the Sonic library to modify audio speed/pitch/sample rate.</div>
6255</th>
6256</tr>
6257<tr id="i1009" class="rowColor">
6258<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.html" title="class in com.google.android.exoplayer2.testutil.truth">SpannedSubject</a></td>
6259<th class="colLast" scope="row">
6260<div class="block">A Truth <code>Subject</code> for assertions on <a href="https://developer.android.com/reference/android/text/Spanned.html" title="class or interface in android.text" class="externalLink" target="_top"><code>Spanned</code></a> instances containing text styling.</div>
6261</th>
6262</tr>
6263<tr id="i1010" class="altColor">
6264<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.AbsoluteSized.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.AbsoluteSized</a></td>
6265<th class="colLast" scope="row">
6266<div class="block">Allows assertions about the absolute size of a span.</div>
6267</th>
6268</tr>
6269<tr id="i1011" class="rowColor">
6270<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.Aligned.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.Aligned</a></td>
6271<th class="colLast" scope="row">
6272<div class="block">Allows assertions about the alignment of a span.</div>
6273</th>
6274</tr>
6275<tr id="i1012" class="altColor">
6276<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.AndSpanFlags.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.AndSpanFlags</a></td>
6277<th class="colLast" scope="row">
6278<div class="block">Allows additional assertions to be made on the flags of matching spans.</div>
6279</th>
6280</tr>
6281<tr id="i1013" class="rowColor">
6282<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.Colored.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.Colored</a></td>
6283<th class="colLast" scope="row">
6284<div class="block">Allows assertions about the color of a span.</div>
6285</th>
6286</tr>
6287<tr id="i1014" class="altColor">
6288<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.EmphasizedText.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.EmphasizedText</a></td>
6289<th class="colLast" scope="row">
6290<div class="block">Allows assertions about a span's text emphasis mark and its position.</div>
6291</th>
6292</tr>
6293<tr id="i1015" class="rowColor">
6294<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.RelativeSized.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.RelativeSized</a></td>
6295<th class="colLast" scope="row">
6296<div class="block">Allows assertions about the relative size of a span.</div>
6297</th>
6298</tr>
6299<tr id="i1016" class="altColor">
6300<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.RubyText.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.RubyText</a></td>
6301<th class="colLast" scope="row">
6302<div class="block">Allows assertions about a span's ruby text and its position.</div>
6303</th>
6304</tr>
6305<tr id="i1017" class="rowColor">
6306<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.Typefaced.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.Typefaced</a></td>
6307<th class="colLast" scope="row">
6308<div class="block">Allows assertions about the typeface of a span.</div>
6309</th>
6310</tr>
6311<tr id="i1018" class="altColor">
6312<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/truth/SpannedSubject.WithSpanFlags.html" title="interface in com.google.android.exoplayer2.testutil.truth">SpannedSubject.WithSpanFlags</a></td>
6313<th class="colLast" scope="row">
6314<div class="block">Allows additional assertions to be made on the flags of matching spans.</div>
6315</th>
6316</tr>
6317<tr id="i1019" class="rowColor">
6318<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/SpanUtil.html" title="class in com.google.android.exoplayer2.text.span">SpanUtil</a></td>
6319<th class="colLast" scope="row">
6320<div class="block">Utility methods for Android <a href="https://developer.android.com/guide/topics/text/spans">span
6321 styling</a>.</div>
6322</th>
6323</tr>
6324<tr id="i1020" class="altColor">
6325<td class="colFirst"><a href="com/google/android/exoplayer2/video/spherical/SphericalGLSurfaceView.html" title="class in com.google.android.exoplayer2.video.spherical">SphericalGLSurfaceView</a></td>
6326<th class="colLast" scope="row">
6327<div class="block">Renders a GL scene in a non-VR Activity that is affected by phone orientation and touch input.</div>
6328</th>
6329</tr>
6330<tr id="i1021" class="rowColor">
6331<td class="colFirst"><a href="com/google/android/exoplayer2/video/spherical/SphericalGLSurfaceView.VideoSurfaceListener.html" title="interface in com.google.android.exoplayer2.video.spherical">SphericalGLSurfaceView.VideoSurfaceListener</a></td>
6332<th class="colLast" scope="row">
6333<div class="block">Listener for 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> to which video frames should be rendered.</div>
6334</th>
6335</tr>
6336<tr id="i1022" class="altColor">
6337<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceCommand.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceCommand</a></td>
6338<th class="colLast" scope="row">
6339<div class="block">Superclass for SCTE35 splice commands.</div>
6340</th>
6341</tr>
6342<tr id="i1023" class="rowColor">
6343<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceInfoDecoder.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceInfoDecoder</a></td>
6344<th class="colLast" scope="row">
6345<div class="block">Decodes splice info sections and produces splice commands.</div>
6346</th>
6347</tr>
6348<tr id="i1024" class="altColor">
6349<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceInsertCommand.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceInsertCommand</a></td>
6350<th class="colLast" scope="row">
6351<div class="block">Represents a splice insert command defined in SCTE35, Section 9.3.3.</div>
6352</th>
6353</tr>
6354<tr id="i1025" class="rowColor">
6355<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceInsertCommand.ComponentSplice.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceInsertCommand.ComponentSplice</a></td>
6356<th class="colLast" scope="row">
6357<div class="block">Holds splicing information for specific splice insert command components.</div>
6358</th>
6359</tr>
6360<tr id="i1026" class="altColor">
6361<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceNullCommand.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceNullCommand</a></td>
6362<th class="colLast" scope="row">
6363<div class="block">Represents a splice null command as defined in SCTE35, Section 9.3.1.</div>
6364</th>
6365</tr>
6366<tr id="i1027" class="rowColor">
6367<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceScheduleCommand.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceScheduleCommand</a></td>
6368<th class="colLast" scope="row">
6369<div class="block">Represents a splice schedule command as defined in SCTE35, Section 9.3.2.</div>
6370</th>
6371</tr>
6372<tr id="i1028" class="altColor">
6373<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceScheduleCommand.ComponentSplice.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceScheduleCommand.ComponentSplice</a></td>
6374<th class="colLast" scope="row">
6375<div class="block">Holds splicing information for specific splice schedule command components.</div>
6376</th>
6377</tr>
6378<tr id="i1029" class="rowColor">
6379<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/SpliceScheduleCommand.Event.html" title="class in com.google.android.exoplayer2.metadata.scte35">SpliceScheduleCommand.Event</a></td>
6380<th class="colLast" scope="row">
6381<div class="block">Represents a splice event as contained in a <a href="com/google/android/exoplayer2/metadata/scte35/SpliceScheduleCommand.html" title="class in com.google.android.exoplayer2.metadata.scte35"><code>SpliceScheduleCommand</code></a>.</div>
6382</th>
6383</tr>
6384<tr id="i1030" class="altColor">
6385<td class="colFirst"><a href="com/google/android/exoplayer2/text/ssa/SsaDecoder.html" title="class in com.google.android.exoplayer2.text.ssa">SsaDecoder</a></td>
6386<th class="colLast" scope="row">
6387<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for SSA/ASS.</div>
6388</th>
6389</tr>
6390<tr id="i1031" class="rowColor">
6391<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/SsChunkSource.html" title="interface in com.google.android.exoplayer2.source.smoothstreaming">SsChunkSource</a></td>
6392<th class="colLast" scope="row">
6393<div class="block">A <a href="com/google/android/exoplayer2/source/chunk/ChunkSource.html" title="interface in com.google.android.exoplayer2.source.chunk"><code>ChunkSource</code></a> for SmoothStreaming.</div>
6394</th>
6395</tr>
6396<tr id="i1032" class="altColor">
6397<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/SsChunkSource.Factory.html" title="interface in com.google.android.exoplayer2.source.smoothstreaming">SsChunkSource.Factory</a></td>
6398<th class="colLast" scope="row">
6399<div class="block">Factory for <a href="com/google/android/exoplayer2/source/smoothstreaming/SsChunkSource.html" title="interface in com.google.android.exoplayer2.source.smoothstreaming"><code>SsChunkSource</code></a>s.</div>
6400</th>
6401</tr>
6402<tr id="i1033" class="rowColor">
6403<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/offline/SsDownloader.html" title="class in com.google.android.exoplayer2.source.smoothstreaming.offline">SsDownloader</a></td>
6404<th class="colLast" scope="row">
6405<div class="block">A downloader for SmoothStreaming streams.</div>
6406</th>
6407</tr>
6408<tr id="i1034" class="altColor">
6409<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest.html" title="class in com.google.android.exoplayer2.source.smoothstreaming.manifest">SsManifest</a></td>
6410<th class="colLast" scope="row">
6411<div class="block">Represents a SmoothStreaming manifest.</div>
6412</th>
6413</tr>
6414<tr id="i1035" class="rowColor">
6415<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest.ProtectionElement.html" title="class in com.google.android.exoplayer2.source.smoothstreaming.manifest">SsManifest.ProtectionElement</a></td>
6416<th class="colLast" scope="row">
6417<div class="block">Represents a protection element containing a single header.</div>
6418</th>
6419</tr>
6420<tr id="i1036" class="altColor">
6421<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifest.StreamElement.html" title="class in com.google.android.exoplayer2.source.smoothstreaming.manifest">SsManifest.StreamElement</a></td>
6422<th class="colLast" scope="row">
6423<div class="block">Represents a StreamIndex element.</div>
6424</th>
6425</tr>
6426<tr id="i1037" class="rowColor">
6427<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifestParser.html" title="class in com.google.android.exoplayer2.source.smoothstreaming.manifest">SsManifestParser</a></td>
6428<th class="colLast" scope="row">
6429<div class="block">Parses SmoothStreaming client manifests.</div>
6430</th>
6431</tr>
6432<tr id="i1038" class="altColor">
6433<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/manifest/SsManifestParser.MissingFieldException.html" title="class in com.google.android.exoplayer2.source.smoothstreaming.manifest">SsManifestParser.MissingFieldException</a></td>
6434<th class="colLast" scope="row">
6435<div class="block">Thrown if a required field is missing.</div>
6436</th>
6437</tr>
6438<tr id="i1039" class="rowColor">
6439<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/SsMediaSource.html" title="class in com.google.android.exoplayer2.source.smoothstreaming">SsMediaSource</a></td>
6440<th class="colLast" scope="row">
6441<div class="block">A SmoothStreaming <a href="com/google/android/exoplayer2/source/MediaSource.html" title="interface in com.google.android.exoplayer2.source"><code>MediaSource</code></a>.</div>
6442</th>
6443</tr>
6444<tr id="i1040" class="altColor">
6445<td class="colFirst"><a href="com/google/android/exoplayer2/source/smoothstreaming/SsMediaSource.Factory.html" title="class in com.google.android.exoplayer2.source.smoothstreaming">SsMediaSource.Factory</a></td>
6446<th class="colLast" scope="row">
6447<div class="block">Factory for <a href="com/google/android/exoplayer2/source/smoothstreaming/SsMediaSource.html" title="class in com.google.android.exoplayer2.source.smoothstreaming"><code>SsMediaSource</code></a>.</div>
6448</th>
6449</tr>
6450<tr id="i1041" class="rowColor">
6451<td class="colFirst"><a href="com/google/android/exoplayer2/database/StandaloneDatabaseProvider.html" title="class in com.google.android.exoplayer2.database">StandaloneDatabaseProvider</a></td>
6452<th class="colLast" scope="row">
6453<div class="block">An <a href="https://developer.android.com/reference/android/database/sqlite/SQLiteOpenHelper.html" title="class or interface in android.database.sqlite" class="externalLink" target="_top"><code>SQLiteOpenHelper</code></a> that provides instances of a standalone database.</div>
6454</th>
6455</tr>
6456<tr id="i1042" class="altColor">
6457<td class="colFirst"><a href="com/google/android/exoplayer2/util/StandaloneMediaClock.html" title="class in com.google.android.exoplayer2.util">StandaloneMediaClock</a></td>
6458<th class="colLast" scope="row">
6459<div class="block">A <a href="com/google/android/exoplayer2/util/MediaClock.html" title="interface in com.google.android.exoplayer2.util"><code>MediaClock</code></a> whose position advances with real time based on the playback parameters when
6460 started.</div>
6461</th>
6462</tr>
6463<tr id="i1043" class="rowColor">
6464<td class="colFirst"><a href="com/google/android/exoplayer2/StarRating.html" title="class in com.google.android.exoplayer2">StarRating</a></td>
6465<th class="colLast" scope="row">
6466<div class="block">A rating expressed as a fractional number of stars.</div>
6467</th>
6468</tr>
6469<tr id="i1044" class="altColor">
6470<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/jpeg/StartOffsetExtractorOutput.html" title="class in com.google.android.exoplayer2.extractor.jpeg">StartOffsetExtractorOutput</a></td>
6471<th class="colLast" scope="row">
6472<div class="block">An extractor output that wraps another extractor output and applies a give start byte offset to
6473 seek positions.</div>
6474</th>
6475</tr>
6476<tr id="i1045" class="rowColor">
6477<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/StatsDataSource.html" title="class in com.google.android.exoplayer2.upstream">StatsDataSource</a></td>
6478<th class="colLast" scope="row">
6479<div class="block"><a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a> wrapper which keeps track of bytes transferred, redirected uris, and response
6480 headers.</div>
6481</th>
6482</tr>
6483<tr id="i1046" class="altColor">
6484<td class="colFirst"><a href="com/google/android/exoplayer2/offline/StreamKey.html" title="class in com.google.android.exoplayer2.offline">StreamKey</a></td>
6485<th class="colLast" scope="row">
6486<div class="block">A key for a subset of media that can be separately loaded (a "stream").</div>
6487</th>
6488</tr>
6489<tr id="i1047" class="rowColor">
6490<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/StubExoPlayer.html" title="class in com.google.android.exoplayer2.testutil">StubExoPlayer</a></td>
6491<th class="colLast" scope="row">
6492<div class="block">An abstract <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> implementation that throws <a href="https://developer.android.com/reference/java/lang/UnsupportedOperationException.html" title="class or interface in java.lang" class="externalLink" target="_top"><code>UnsupportedOperationException</code></a>
6493 from every method.</div>
6494</th>
6495</tr>
6496<tr id="i1048" class="altColor">
6497<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/StubPlayer.html" title="class in com.google.android.exoplayer2.testutil">StubPlayer</a></td>
6498<th class="colLast" scope="row">
6499<div class="block">An abstract <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> implementation that throws <a href="https://developer.android.com/reference/java/lang/UnsupportedOperationException.html" title="class or interface in java.lang" class="externalLink" target="_top"><code>UnsupportedOperationException</code></a> from
6500 every method.</div>
6501</th>
6502</tr>
6503<tr id="i1049" class="rowColor">
6504<td class="colFirst"><a href="com/google/android/exoplayer2/ui/StyledPlayerControlView.html" title="class in com.google.android.exoplayer2.ui">StyledPlayerControlView</a></td>
6505<th class="colLast" scope="row">
6506<div class="block">A view for controlling <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> instances.</div>
6507</th>
6508</tr>
6509<tr id="i1050" class="altColor">
6510<td class="colFirst"><a href="com/google/android/exoplayer2/ui/StyledPlayerControlView.OnFullScreenModeChangedListener.html" title="interface in com.google.android.exoplayer2.ui">StyledPlayerControlView.OnFullScreenModeChangedListener</a></td>
6511<th class="colLast" scope="row">
6512<div class="block">Listener to be invoked to inform the fullscreen mode is changed.</div>
6513</th>
6514</tr>
6515<tr id="i1051" class="rowColor">
6516<td class="colFirst"><a href="com/google/android/exoplayer2/ui/StyledPlayerControlView.ProgressUpdateListener.html" title="interface in com.google.android.exoplayer2.ui">StyledPlayerControlView.ProgressUpdateListener</a></td>
6517<th class="colLast" scope="row">
6518<div class="block">Listener to be notified when progress has been updated.</div>
6519</th>
6520</tr>
6521<tr id="i1052" class="altColor">
6522<td class="colFirst"><a href="com/google/android/exoplayer2/ui/StyledPlayerControlView.VisibilityListener.html" title="interface in com.google.android.exoplayer2.ui">StyledPlayerControlView.VisibilityListener</a></td>
6523<th class="colLast" scope="row">
6524<div class="block">Listener to be notified about changes of the visibility of the UI control.</div>
6525</th>
6526</tr>
6527<tr id="i1053" class="rowColor">
6528<td class="colFirst"><a href="com/google/android/exoplayer2/ui/StyledPlayerView.html" title="class in com.google.android.exoplayer2.ui">StyledPlayerView</a></td>
6529<th class="colLast" scope="row">
6530<div class="block">A high level view for <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> media playbacks.</div>
6531</th>
6532</tr>
6533<tr id="i1054" class="altColor">
6534<td class="colFirst"><a href="com/google/android/exoplayer2/ui/StyledPlayerView.ShowBuffering.html" title="annotation in com.google.android.exoplayer2.ui">StyledPlayerView.ShowBuffering</a></td>
6535<th class="colLast" scope="row">
6536<div class="block">Determines when the buffering view is shown.</div>
6537</th>
6538</tr>
6539<tr id="i1055" class="rowColor">
6540<td class="colFirst"><a href="com/google/android/exoplayer2/text/subrip/SubripDecoder.html" title="class in com.google.android.exoplayer2.text.subrip">SubripDecoder</a></td>
6541<th class="colLast" scope="row">
6542<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for SubRip.</div>
6543</th>
6544</tr>
6545<tr id="i1056" class="altColor">
6546<td class="colFirst"><a href="com/google/android/exoplayer2/text/Subtitle.html" title="interface in com.google.android.exoplayer2.text">Subtitle</a></td>
6547<th class="colLast" scope="row">
6548<div class="block">A subtitle consisting of timed <a href="com/google/android/exoplayer2/text/Cue.html" title="class in com.google.android.exoplayer2.text"><code>Cue</code></a>s.</div>
6549</th>
6550</tr>
6551<tr id="i1057" class="rowColor">
6552<td class="colFirst"><a href="com/google/android/exoplayer2/text/SubtitleDecoder.html" title="interface in com.google.android.exoplayer2.text">SubtitleDecoder</a></td>
6553<th class="colLast" scope="row">
6554<div class="block">Decodes <a href="com/google/android/exoplayer2/text/Subtitle.html" title="interface in com.google.android.exoplayer2.text"><code>Subtitle</code></a>s from <a href="com/google/android/exoplayer2/text/SubtitleInputBuffer.html" title="class in com.google.android.exoplayer2.text"><code>SubtitleInputBuffer</code></a>s.</div>
6555</th>
6556</tr>
6557<tr id="i1058" class="altColor">
6558<td class="colFirst"><a href="com/google/android/exoplayer2/text/SubtitleDecoderException.html" title="class in com.google.android.exoplayer2.text">SubtitleDecoderException</a></td>
6559<th class="colLast" scope="row">
6560<div class="block">Thrown when an error occurs decoding subtitle data.</div>
6561</th>
6562</tr>
6563<tr id="i1059" class="rowColor">
6564<td class="colFirst"><a href="com/google/android/exoplayer2/text/SubtitleDecoderFactory.html" title="interface in com.google.android.exoplayer2.text">SubtitleDecoderFactory</a></td>
6565<th class="colLast" scope="row">
6566<div class="block">A factory for <a href="com/google/android/exoplayer2/text/SubtitleDecoder.html" title="interface in com.google.android.exoplayer2.text"><code>SubtitleDecoder</code></a> instances.</div>
6567</th>
6568</tr>
6569<tr id="i1060" class="altColor">
6570<td class="colFirst"><a href="com/google/android/exoplayer2/text/SubtitleExtractor.html" title="class in com.google.android.exoplayer2.text">SubtitleExtractor</a></td>
6571<th class="colLast" scope="row">
6572<div class="block">Generic extractor for extracting subtitles from various subtitle formats.</div>
6573</th>
6574</tr>
6575<tr id="i1061" class="rowColor">
6576<td class="colFirst"><a href="com/google/android/exoplayer2/text/SubtitleInputBuffer.html" title="class in com.google.android.exoplayer2.text">SubtitleInputBuffer</a></td>
6577<th class="colLast" scope="row">
6578<div class="block">A <a href="com/google/android/exoplayer2/decoder/DecoderInputBuffer.html" title="class in com.google.android.exoplayer2.decoder"><code>DecoderInputBuffer</code></a> for a <a href="com/google/android/exoplayer2/text/SubtitleDecoder.html" title="interface in com.google.android.exoplayer2.text"><code>SubtitleDecoder</code></a>.</div>
6579</th>
6580</tr>
6581<tr id="i1062" class="altColor">
6582<td class="colFirst"><a href="com/google/android/exoplayer2/text/SubtitleOutputBuffer.html" title="class in com.google.android.exoplayer2.text">SubtitleOutputBuffer</a></td>
6583<th class="colLast" scope="row">
6584<div class="block">Base class for <a href="com/google/android/exoplayer2/text/SubtitleDecoder.html" title="interface in com.google.android.exoplayer2.text"><code>SubtitleDecoder</code></a> output buffers.</div>
6585</th>
6586</tr>
6587<tr id="i1063" class="rowColor">
6588<td class="colFirst"><a href="com/google/android/exoplayer2/ui/SubtitleView.html" title="class in com.google.android.exoplayer2.ui">SubtitleView</a></td>
6589<th class="colLast" scope="row">
6590<div class="block">A view for displaying subtitle <a href="com/google/android/exoplayer2/text/Cue.html" title="class in com.google.android.exoplayer2.text"><code>Cue</code></a>s.</div>
6591</th>
6592</tr>
6593<tr id="i1064" class="altColor">
6594<td class="colFirst"><a href="com/google/android/exoplayer2/ui/SubtitleView.ViewType.html" title="annotation in com.google.android.exoplayer2.ui">SubtitleView.ViewType</a></td>
6595<th class="colLast" scope="row">
6596<div class="block">The type of <a href="https://developer.android.com/reference/android/view/View.html" title="class or interface in android.view" class="externalLink" target="_top"><code>View</code></a> to use to display subtitles.</div>
6597</th>
6598</tr>
6599<tr id="i1065" class="rowColor">
6600<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/SynchronousMediaCodecAdapter.html" title="class in com.google.android.exoplayer2.mediacodec">SynchronousMediaCodecAdapter</a></td>
6601<th class="colLast" scope="row">
6602<div class="block">A <a href="com/google/android/exoplayer2/mediacodec/MediaCodecAdapter.html" title="interface in com.google.android.exoplayer2.mediacodec"><code>MediaCodecAdapter</code></a> that operates the underlying <a href="https://developer.android.com/reference/android/media/MediaCodec.html" title="class or interface in android.media" class="externalLink" target="_top"><code>MediaCodec</code></a> in synchronous mode.</div>
6603</th>
6604</tr>
6605<tr id="i1066" class="altColor">
6606<td class="colFirst"><a href="com/google/android/exoplayer2/mediacodec/SynchronousMediaCodecAdapter.Factory.html" title="class in com.google.android.exoplayer2.mediacodec">SynchronousMediaCodecAdapter.Factory</a></td>
6607<th class="colLast" scope="row">
6608<div class="block">A factory for <a href="com/google/android/exoplayer2/mediacodec/SynchronousMediaCodecAdapter.html" title="class in com.google.android.exoplayer2.mediacodec"><code>SynchronousMediaCodecAdapter</code></a> instances.</div>
6609</th>
6610</tr>
6611<tr id="i1067" class="rowColor">
6612<td class="colFirst"><a href="com/google/android/exoplayer2/util/SystemClock.html" title="class in com.google.android.exoplayer2.util">SystemClock</a></td>
6613<th class="colLast" scope="row">
6614<div class="block">The standard implementation of <a href="com/google/android/exoplayer2/util/Clock.html" title="interface in com.google.android.exoplayer2.util"><code>Clock</code></a>, an instance of which is available via <a href="com/google/android/exoplayer2/util/Clock.html#DEFAULT"><code>Clock.DEFAULT</code></a>.</div>
6615</th>
6616</tr>
6617<tr id="i1068" class="altColor">
6618<td class="colFirst"><a href="com/google/android/exoplayer2/audio/TeeAudioProcessor.html" title="class in com.google.android.exoplayer2.audio">TeeAudioProcessor</a></td>
6619<th class="colLast" scope="row">
6620<div class="block">Audio processor that outputs its input unmodified and also outputs its input to a given sink.</div>
6621</th>
6622</tr>
6623<tr id="i1069" class="rowColor">
6624<td class="colFirst"><a href="com/google/android/exoplayer2/audio/TeeAudioProcessor.AudioBufferSink.html" title="interface in com.google.android.exoplayer2.audio">TeeAudioProcessor.AudioBufferSink</a></td>
6625<th class="colLast" scope="row">
6626<div class="block">A sink for audio buffers handled by the audio processor.</div>
6627</th>
6628</tr>
6629<tr id="i1070" class="altColor">
6630<td class="colFirst"><a href="com/google/android/exoplayer2/audio/TeeAudioProcessor.WavFileAudioBufferSink.html" title="class in com.google.android.exoplayer2.audio">TeeAudioProcessor.WavFileAudioBufferSink</a></td>
6631<th class="colLast" scope="row">
6632<div class="block">A sink for audio buffers that writes output audio as .wav files with a given path prefix.</div>
6633</th>
6634</tr>
6635<tr id="i1071" class="rowColor">
6636<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/TeeDataSource.html" title="class in com.google.android.exoplayer2.upstream">TeeDataSource</a></td>
6637<th class="colLast" scope="row">
6638<div class="block">Tees data into a <a href="com/google/android/exoplayer2/upstream/DataSink.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSink</code></a> as the data is read.</div>
6639</th>
6640</tr>
6641<tr id="i1072" class="altColor">
6642<td class="colFirst"><a href="com/google/android/exoplayer2/robolectric/TestDownloadManagerListener.html" title="class in com.google.android.exoplayer2.robolectric">TestDownloadManagerListener</a></td>
6643<th class="colLast" scope="row">
6644<div class="block">Allows tests to block for, and assert properties of, calls from a <a href="com/google/android/exoplayer2/offline/DownloadManager.html" title="class in com.google.android.exoplayer2.offline"><code>DownloadManager</code></a> to its
6645 <a href="com/google/android/exoplayer2/offline/DownloadManager.Listener.html" title="interface in com.google.android.exoplayer2.offline"><code>DownloadManager.Listener</code></a>.</div>
6646</th>
6647</tr>
6648<tr id="i1073" class="rowColor">
6649<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/TestExoPlayerBuilder.html" title="class in com.google.android.exoplayer2.testutil">TestExoPlayerBuilder</a></td>
6650<th class="colLast" scope="row">
6651<div class="block">A builder of <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> instances for testing.</div>
6652</th>
6653</tr>
6654<tr id="i1074" class="altColor">
6655<td class="colFirst"><a href="com/google/android/exoplayer2/robolectric/TestPlayerRunHelper.html" title="class in com.google.android.exoplayer2.robolectric">TestPlayerRunHelper</a></td>
6656<th class="colLast" scope="row">
6657<div class="block">Helper methods to block the calling thread until the provided <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> instance reaches
6658 a particular state.</div>
6659</th>
6660</tr>
6661<tr id="i1075" class="rowColor">
6662<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/TestUtil.html" title="class in com.google.android.exoplayer2.testutil">TestUtil</a></td>
6663<th class="colLast" scope="row">
6664<div class="block">Utility methods for tests.</div>
6665</th>
6666</tr>
6667<tr id="i1076" class="altColor">
6668<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/TextAnnotation.html" title="class in com.google.android.exoplayer2.text.span">TextAnnotation</a></td>
6669<th class="colLast" scope="row">
6670<div class="block">Properties of a text annotation (i.e.</div>
6671</th>
6672</tr>
6673<tr id="i1077" class="rowColor">
6674<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/TextAnnotation.Position.html" title="annotation in com.google.android.exoplayer2.text.span">TextAnnotation.Position</a></td>
6675<th class="colLast" scope="row">
6676<div class="block">The possible positions of the annotation text relative to the base text.</div>
6677</th>
6678</tr>
6679<tr id="i1078" class="altColor">
6680<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/TextEmphasisSpan.html" title="class in com.google.android.exoplayer2.text.span">TextEmphasisSpan</a></td>
6681<th class="colLast" scope="row">
6682<div class="block">A styling span for text emphasis marks.</div>
6683</th>
6684</tr>
6685<tr id="i1079" class="rowColor">
6686<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/TextEmphasisSpan.MarkFill.html" title="annotation in com.google.android.exoplayer2.text.span">TextEmphasisSpan.MarkFill</a></td>
6687<th class="colLast" scope="row">
6688<div class="block">The possible mark fills that can be used.</div>
6689</th>
6690</tr>
6691<tr id="i1080" class="altColor">
6692<td class="colFirst"><a href="com/google/android/exoplayer2/text/span/TextEmphasisSpan.MarkShape.html" title="annotation in com.google.android.exoplayer2.text.span">TextEmphasisSpan.MarkShape</a></td>
6693<th class="colLast" scope="row">
6694<div class="block">The possible mark shapes that can be used.</div>
6695</th>
6696</tr>
6697<tr id="i1081" class="rowColor">
6698<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/TextInformationFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">TextInformationFrame</a></td>
6699<th class="colLast" scope="row">
6700<div class="block">Text information ID3 frame.</div>
6701</th>
6702</tr>
6703<tr id="i1082" class="altColor">
6704<td class="colFirst"><a href="com/google/android/exoplayer2/text/TextOutput.html" title="interface in com.google.android.exoplayer2.text">TextOutput</a></td>
6705<th class="colLast" scope="row">
6706<div class="block">Receives text output.</div>
6707</th>
6708</tr>
6709<tr id="i1083" class="rowColor">
6710<td class="colFirst"><a href="com/google/android/exoplayer2/text/TextRenderer.html" title="class in com.google.android.exoplayer2.text">TextRenderer</a></td>
6711<th class="colLast" scope="row">
6712<div class="block">A renderer for text.</div>
6713</th>
6714</tr>
6715<tr id="i1084" class="altColor">
6716<td class="colFirst"><a href="com/google/android/exoplayer2/ThumbRating.html" title="class in com.google.android.exoplayer2">ThumbRating</a></td>
6717<th class="colLast" scope="row">
6718<div class="block">A rating expressed as "thumbs up" or "thumbs down".</div>
6719</th>
6720</tr>
6721<tr id="i1085" class="rowColor">
6722<td class="colFirst"><a href="com/google/android/exoplayer2/ui/TimeBar.html" title="interface in com.google.android.exoplayer2.ui">TimeBar</a></td>
6723<th class="colLast" scope="row">
6724<div class="block">Interface for time bar views that can display a playback position, buffered position, duration
6725 and ad markers, and that have a listener for scrubbing (seeking) events.</div>
6726</th>
6727</tr>
6728<tr id="i1086" class="altColor">
6729<td class="colFirst"><a href="com/google/android/exoplayer2/ui/TimeBar.OnScrubListener.html" title="interface in com.google.android.exoplayer2.ui">TimeBar.OnScrubListener</a></td>
6730<th class="colLast" scope="row">
6731<div class="block">Listener for scrubbing events.</div>
6732</th>
6733</tr>
6734<tr id="i1087" class="rowColor">
6735<td class="colFirst"><a href="com/google/android/exoplayer2/util/TimedValueQueue.html" title="class in com.google.android.exoplayer2.util">TimedValueQueue</a>&lt;<a href="com/google/android/exoplayer2/util/TimedValueQueue.html" title="type parameter in TimedValueQueue">V</a>&gt;</td>
6736<th class="colLast" scope="row">
6737<div class="block">A utility class to keep a queue of values with timestamps.</div>
6738</th>
6739</tr>
6740<tr id="i1088" class="altColor">
6741<td class="colFirst"><a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2">Timeline</a></td>
6742<th class="colLast" scope="row">
6743<div class="block">A flexible representation of the structure of media.</div>
6744</th>
6745</tr>
6746<tr id="i1089" class="rowColor">
6747<td class="colFirst"><a href="com/google/android/exoplayer2/Timeline.Period.html" title="class in com.google.android.exoplayer2">Timeline.Period</a></td>
6748<th class="colLast" scope="row">
6749<div class="block">Holds information about a period in a <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a>.</div>
6750</th>
6751</tr>
6752<tr id="i1090" class="altColor">
6753<td class="colFirst"><a href="com/google/android/exoplayer2/Timeline.RemotableTimeline.html" title="class in com.google.android.exoplayer2">Timeline.RemotableTimeline</a></td>
6754<th class="colLast" scope="row">
6755<div class="block">A concrete class of <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> to restore a <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> instance from a <a href="https://developer.android.com/reference/android/os/Bundle.html" title="class or interface in android.os" class="externalLink"><code>Bundle</code></a> sent by another process via <a href="https://developer.android.com/reference/android/os/IBinder.html?is-external=true" title="class or interface in android.os" class="externalLink" target="_top"><code>IBinder</code></a>.</div>
6756</th>
6757</tr>
6758<tr id="i1091" class="rowColor">
6759<td class="colFirst"><a href="com/google/android/exoplayer2/Timeline.Window.html" title="class in com.google.android.exoplayer2">Timeline.Window</a></td>
6760<th class="colLast" scope="row">
6761<div class="block">Holds information about a window in a <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a>.</div>
6762</th>
6763</tr>
6764<tr id="i1092" class="altColor">
6765<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/TimelineAsserts.html" title="class in com.google.android.exoplayer2.testutil">TimelineAsserts</a></td>
6766<th class="colLast" scope="row">
6767<div class="block">Assertion methods for <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a>.</div>
6768</th>
6769</tr>
6770<tr id="i1093" class="rowColor">
6771<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/TimelineQueueEditor.html" title="class in com.google.android.exoplayer2.ext.mediasession">TimelineQueueEditor</a></td>
6772<th class="colLast" scope="row">
6773<div class="block">A <a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.QueueEditor.html" title="interface in com.google.android.exoplayer2.ext.mediasession"><code>MediaSessionConnector.QueueEditor</code></a> implementation.</div>
6774</th>
6775</tr>
6776<tr id="i1094" class="altColor">
6777<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/TimelineQueueEditor.MediaDescriptionConverter.html" title="interface in com.google.android.exoplayer2.ext.mediasession">TimelineQueueEditor.MediaDescriptionConverter</a></td>
6778<th class="colLast" scope="row">
6779<div class="block">Converts a <code>MediaDescriptionCompat</code> to a <a href="com/google/android/exoplayer2/MediaItem.html" title="class in com.google.android.exoplayer2"><code>MediaItem</code></a>.</div>
6780</th>
6781</tr>
6782<tr id="i1095" class="rowColor">
6783<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/TimelineQueueEditor.MediaIdEqualityChecker.html" title="class in com.google.android.exoplayer2.ext.mediasession">TimelineQueueEditor.MediaIdEqualityChecker</a></td>
6784<th class="colLast" scope="row">
6785<div class="block">Media description comparator comparing the media IDs.</div>
6786</th>
6787</tr>
6788<tr id="i1096" class="altColor">
6789<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/TimelineQueueEditor.QueueDataAdapter.html" title="interface in com.google.android.exoplayer2.ext.mediasession">TimelineQueueEditor.QueueDataAdapter</a></td>
6790<th class="colLast" scope="row">
6791<div class="block">Adapter to get <code>MediaDescriptionCompat</code> of items in the queue and to notify the
6792 application about changes in the queue to sync the data structure backing the <a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.html" title="class in com.google.android.exoplayer2.ext.mediasession"><code>MediaSessionConnector</code></a>.</div>
6793</th>
6794</tr>
6795<tr id="i1097" class="rowColor">
6796<td class="colFirst"><a href="com/google/android/exoplayer2/ext/mediasession/TimelineQueueNavigator.html" title="class in com.google.android.exoplayer2.ext.mediasession">TimelineQueueNavigator</a></td>
6797<th class="colLast" scope="row">
6798<div class="block">An abstract implementation of the <a href="com/google/android/exoplayer2/ext/mediasession/MediaSessionConnector.QueueNavigator.html" title="interface in com.google.android.exoplayer2.ext.mediasession"><code>MediaSessionConnector.QueueNavigator</code></a> that maps the
6799 windows of a <a href="com/google/android/exoplayer2/Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>'s <a href="com/google/android/exoplayer2/Timeline.html" title="class in com.google.android.exoplayer2"><code>Timeline</code></a> to the media session queue.</div>
6800</th>
6801</tr>
6802<tr id="i1098" class="altColor">
6803<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/scte35/TimeSignalCommand.html" title="class in com.google.android.exoplayer2.metadata.scte35">TimeSignalCommand</a></td>
6804<th class="colLast" scope="row">
6805<div class="block">Represents a time signal command as defined in SCTE35, Section 9.3.4.</div>
6806</th>
6807</tr>
6808<tr id="i1099" class="rowColor">
6809<td class="colFirst"><a href="com/google/android/exoplayer2/util/TimestampAdjuster.html" title="class in com.google.android.exoplayer2.util">TimestampAdjuster</a></td>
6810<th class="colLast" scope="row">
6811<div class="block">Adjusts and offsets sample timestamps.</div>
6812</th>
6813</tr>
6814<tr id="i1100" class="altColor">
6815<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/TimestampAdjusterProvider.html" title="class in com.google.android.exoplayer2.source.hls">TimestampAdjusterProvider</a></td>
6816<th class="colLast" scope="row">
6817<div class="block">Provides <a href="com/google/android/exoplayer2/util/TimestampAdjuster.html" title="class in com.google.android.exoplayer2.util"><code>TimestampAdjuster</code></a> instances for use during HLS playbacks.</div>
6818</th>
6819</tr>
6820<tr id="i1101" class="rowColor">
6821<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/TimeToFirstByteEstimator.html" title="interface in com.google.android.exoplayer2.upstream">TimeToFirstByteEstimator</a></td>
6822<th class="colLast" scope="row">
6823<div class="block">Provides an estimate of the time to first byte of a transfer.</div>
6824</th>
6825</tr>
6826<tr id="i1102" class="altColor">
6827<td class="colFirst"><a href="com/google/android/exoplayer2/util/TraceUtil.html" title="class in com.google.android.exoplayer2.util">TraceUtil</a></td>
6828<th class="colLast" scope="row">
6829<div class="block">Calls through to <a href="https://developer.android.com/reference/android/os/Trace.html" title="class or interface in android.os" class="externalLink" target="_top"><code>Trace</code></a> methods on supported API levels.</div>
6830</th>
6831</tr>
6832<tr id="i1103" class="rowColor">
6833<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/Track.html" title="class in com.google.android.exoplayer2.extractor.mp4">Track</a></td>
6834<th class="colLast" scope="row">
6835<div class="block">Encapsulates information describing an MP4 track.</div>
6836</th>
6837</tr>
6838<tr id="i1104" class="altColor">
6839<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/Track.Transformation.html" title="annotation in com.google.android.exoplayer2.extractor.mp4">Track.Transformation</a></td>
6840<th class="colLast" scope="row">
6841<div class="block">The transformation to apply to samples in the track, if any.</div>
6842</th>
6843</tr>
6844<tr id="i1105" class="rowColor">
6845<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/mp4/TrackEncryptionBox.html" title="class in com.google.android.exoplayer2.extractor.mp4">TrackEncryptionBox</a></td>
6846<th class="colLast" scope="row">
6847<div class="block">Encapsulates information parsed from a track encryption (tenc) box or sample group description
6848 (sgpd) box in an MP4 stream.</div>
6849</th>
6850</tr>
6851<tr id="i1106" class="altColor">
6852<td class="colFirst"><a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source">TrackGroup</a></td>
6853<th class="colLast" scope="row">
6854<div class="block">Defines an immutable group of tracks identified by their format identity.</div>
6855</th>
6856</tr>
6857<tr id="i1107" class="rowColor">
6858<td class="colFirst"><a href="com/google/android/exoplayer2/source/TrackGroupArray.html" title="class in com.google.android.exoplayer2.source">TrackGroupArray</a></td>
6859<th class="colLast" scope="row">
6860<div class="block">An immutable array of <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroup</code></a>s.</div>
6861</th>
6862</tr>
6863<tr id="i1108" class="altColor">
6864<td class="colFirst"><a href="com/google/android/exoplayer2/ui/TrackNameProvider.html" title="interface in com.google.android.exoplayer2.ui">TrackNameProvider</a></td>
6865<th class="colLast" scope="row">
6866<div class="block">Converts <a href="com/google/android/exoplayer2/Format.html" title="class in com.google.android.exoplayer2"><code>Format</code></a>s to user readable track names.</div>
6867</th>
6868</tr>
6869<tr id="i1109" class="rowColor">
6870<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/TrackOutput.html" title="interface in com.google.android.exoplayer2.extractor">TrackOutput</a></td>
6871<th class="colLast" scope="row">
6872<div class="block">Receives track level data extracted by an <a href="com/google/android/exoplayer2/extractor/Extractor.html" title="interface in com.google.android.exoplayer2.extractor"><code>Extractor</code></a>.</div>
6873</th>
6874</tr>
6875<tr id="i1110" class="altColor">
6876<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/TrackOutput.CryptoData.html" title="class in com.google.android.exoplayer2.extractor">TrackOutput.CryptoData</a></td>
6877<th class="colLast" scope="row">
6878<div class="block">Holds data required to decrypt a sample.</div>
6879</th>
6880</tr>
6881<tr id="i1111" class="rowColor">
6882<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/TrackOutput.SampleDataPart.html" title="annotation in com.google.android.exoplayer2.extractor">TrackOutput.SampleDataPart</a></td>
6883<th class="colLast" scope="row">
6884<div class="block">Defines the part of the sample data to which a call to <a href="com/google/android/exoplayer2/extractor/TrackOutput.html#sampleData(com.google.android.exoplayer2.upstream.DataReader,int,boolean)"><code>TrackOutput.sampleData(com.google.android.exoplayer2.upstream.DataReader, int, boolean)</code></a> corresponds.</div>
6885</th>
6886</tr>
6887<tr id="i1112" class="altColor">
6888<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection">TrackSelection</a></td>
6889<th class="colLast" scope="row">
6890<div class="block">A track selection consisting of a static subset of selected tracks belonging to a <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroup</code></a>.</div>
6891</th>
6892</tr>
6893<tr id="i1113" class="rowColor">
6894<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelection.Type.html" title="annotation in com.google.android.exoplayer2.trackselection">TrackSelection.Type</a></td>
6895<th class="colLast" scope="row">
6896<div class="block">Represents a type track selection.</div>
6897</th>
6898</tr>
6899<tr id="i1114" class="altColor">
6900<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionArray.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionArray</a></td>
6901<th class="colLast" scope="row">
6902<div class="block">An array of <a href="com/google/android/exoplayer2/trackselection/TrackSelection.html" title="interface in com.google.android.exoplayer2.trackselection"><code>TrackSelection</code></a>s.</div>
6903</th>
6904</tr>
6905<tr id="i1115" class="rowColor">
6906<td class="colFirst"><a href="com/google/android/exoplayer2/ui/TrackSelectionDialogBuilder.html" title="class in com.google.android.exoplayer2.ui">TrackSelectionDialogBuilder</a></td>
6907<th class="colLast" scope="row">
6908<div class="block">Builder for a dialog with a <a href="com/google/android/exoplayer2/ui/TrackSelectionView.html" title="class in com.google.android.exoplayer2.ui"><code>TrackSelectionView</code></a>.</div>
6909</th>
6910</tr>
6911<tr id="i1116" class="altColor">
6912<td class="colFirst"><a href="com/google/android/exoplayer2/ui/TrackSelectionDialogBuilder.DialogCallback.html" title="interface in com.google.android.exoplayer2.ui">TrackSelectionDialogBuilder.DialogCallback</a></td>
6913<th class="colLast" scope="row">
6914<div class="block">Callback which is invoked when a track selection has been made.</div>
6915</th>
6916</tr>
6917<tr id="i1117" class="rowColor">
6918<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionOverrides.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionOverrides</a></td>
6919<th class="colLast" scope="row">
6920<div class="block">Forces the selection of the specified tracks in <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroups</code></a>.</div>
6921</th>
6922</tr>
6923<tr id="i1118" class="altColor">
6924<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionOverrides.Builder.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionOverrides.Builder</a></td>
6925<th class="colLast" scope="row">
6926<div class="block">Builder for <a href="com/google/android/exoplayer2/trackselection/TrackSelectionOverrides.html" title="class in com.google.android.exoplayer2.trackselection"><code>TrackSelectionOverrides</code></a>.</div>
6927</th>
6928</tr>
6929<tr id="i1119" class="rowColor">
6930<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionOverrides.TrackSelectionOverride.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionOverrides.TrackSelectionOverride</a></td>
6931<th class="colLast" scope="row">
6932<div class="block">Forces the selection of <a href="com/google/android/exoplayer2/trackselection/TrackSelectionOverrides.TrackSelectionOverride.html#trackIndices"><code>TrackSelectionOverrides.TrackSelectionOverride.trackIndices</code></a> for a <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroup</code></a>.</div>
6933</th>
6934</tr>
6935<tr id="i1120" class="altColor">
6936<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters</a></td>
6937<th class="colLast" scope="row">
6938<div class="block">Constraint parameters for track selection.</div>
6939</th>
6940</tr>
6941<tr id="i1121" class="rowColor">
6942<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionParameters.Builder.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionParameters.Builder</a></td>
6943<th class="colLast" scope="row">
6944<div class="block">A builder for <a href="com/google/android/exoplayer2/trackselection/TrackSelectionParameters.html" title="class in com.google.android.exoplayer2.trackselection"><code>TrackSelectionParameters</code></a>.</div>
6945</th>
6946</tr>
6947<tr id="i1122" class="altColor">
6948<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionUtil.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectionUtil</a></td>
6949<th class="colLast" scope="row">
6950<div class="block">Track selection related utility methods.</div>
6951</th>
6952</tr>
6953<tr id="i1123" class="rowColor">
6954<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectionUtil.AdaptiveTrackSelectionFactory.html" title="interface in com.google.android.exoplayer2.trackselection">TrackSelectionUtil.AdaptiveTrackSelectionFactory</a></td>
6955<th class="colLast" scope="row">
6956<div class="block">Functional interface to create a single adaptive track selection.</div>
6957</th>
6958</tr>
6959<tr id="i1124" class="altColor">
6960<td class="colFirst"><a href="com/google/android/exoplayer2/ui/TrackSelectionView.html" title="class in com.google.android.exoplayer2.ui">TrackSelectionView</a></td>
6961<th class="colLast" scope="row">
6962<div class="block">A view for making track selections.</div>
6963</th>
6964</tr>
6965<tr id="i1125" class="rowColor">
6966<td class="colFirst"><a href="com/google/android/exoplayer2/ui/TrackSelectionView.TrackSelectionListener.html" title="interface in com.google.android.exoplayer2.ui">TrackSelectionView.TrackSelectionListener</a></td>
6967<th class="colLast" scope="row">
6968<div class="block">Listener for changes to the selected tracks.</div>
6969</th>
6970</tr>
6971<tr id="i1126" class="altColor">
6972<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelector.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelector</a></td>
6973<th class="colLast" scope="row">
6974<div class="block">The component of an <a href="com/google/android/exoplayer2/ExoPlayer.html" title="interface in com.google.android.exoplayer2"><code>ExoPlayer</code></a> responsible for selecting tracks to be consumed by each of
6975 the player's <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a>s.</div>
6976</th>
6977</tr>
6978<tr id="i1127" class="rowColor">
6979<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelector.InvalidationListener.html" title="interface in com.google.android.exoplayer2.trackselection">TrackSelector.InvalidationListener</a></td>
6980<th class="colLast" scope="row">
6981<div class="block">Notified when selections previously made by a <a href="com/google/android/exoplayer2/trackselection/TrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>TrackSelector</code></a> are no longer valid.</div>
6982</th>
6983</tr>
6984<tr id="i1128" class="altColor">
6985<td class="colFirst"><a href="com/google/android/exoplayer2/trackselection/TrackSelectorResult.html" title="class in com.google.android.exoplayer2.trackselection">TrackSelectorResult</a></td>
6986<th class="colLast" scope="row">
6987<div class="block">The result of a <a href="com/google/android/exoplayer2/trackselection/TrackSelector.html" title="class in com.google.android.exoplayer2.trackselection"><code>TrackSelector</code></a> operation.</div>
6988</th>
6989</tr>
6990<tr id="i1129" class="rowColor">
6991<td class="colFirst"><a href="com/google/android/exoplayer2/TracksInfo.html" title="class in com.google.android.exoplayer2">TracksInfo</a></td>
6992<th class="colLast" scope="row">
6993<div class="block">Information about groups of tracks.</div>
6994</th>
6995</tr>
6996<tr id="i1130" class="altColor">
6997<td class="colFirst"><a href="com/google/android/exoplayer2/TracksInfo.TrackGroupInfo.html" title="class in com.google.android.exoplayer2">TracksInfo.TrackGroupInfo</a></td>
6998<th class="colLast" scope="row">
6999<div class="block">Information about a single group of tracks, including the underlying <a href="com/google/android/exoplayer2/source/TrackGroup.html" title="class in com.google.android.exoplayer2.source"><code>TrackGroup</code></a>, the
7000 <a href="com/google/android/exoplayer2/C.TrackType.html" title="annotation in com.google.android.exoplayer2"><code>type</code></a> of tracks it contains, and the level to which each track is supported
7001 by the player.</div>
7002</th>
7003</tr>
7004<tr id="i1131" class="rowColor">
7005<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/TransferListener.html" title="interface in com.google.android.exoplayer2.upstream">TransferListener</a></td>
7006<th class="colLast" scope="row">
7007<div class="block">A listener of data transfer events.</div>
7008</th>
7009</tr>
7010<tr id="i1132" class="altColor">
7011<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/TransformationException.html" title="class in com.google.android.exoplayer2.transformer">TransformationException</a></td>
7012<th class="colLast" scope="row">
7013<div class="block">Thrown when a non-locally recoverable transformation failure occurs.</div>
7014</th>
7015</tr>
7016<tr id="i1133" class="rowColor">
7017<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/TransformationException.ErrorCode.html" title="annotation in com.google.android.exoplayer2.transformer">TransformationException.ErrorCode</a></td>
7018<th class="colLast" scope="row">
7019<div class="block">Codes that identify causes of <a href="com/google/android/exoplayer2/transformer/Transformer.html" title="class in com.google.android.exoplayer2.transformer"><code>Transformer</code></a> errors.</div>
7020</th>
7021</tr>
7022<tr id="i1134" class="altColor">
7023<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/TransformationRequest.html" title="class in com.google.android.exoplayer2.transformer">TransformationRequest</a></td>
7024<th class="colLast" scope="row">
7025<div class="block">A media transformation request.</div>
7026</th>
7027</tr>
7028<tr id="i1135" class="rowColor">
7029<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/TransformationRequest.Builder.html" title="class in com.google.android.exoplayer2.transformer">TransformationRequest.Builder</a></td>
7030<th class="colLast" scope="row">
7031<div class="block">A builder for <a href="com/google/android/exoplayer2/transformer/TransformationRequest.html" title="class in com.google.android.exoplayer2.transformer"><code>TransformationRequest</code></a> instances.</div>
7032</th>
7033</tr>
7034<tr id="i1136" class="altColor">
7035<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Transformer.html" title="class in com.google.android.exoplayer2.transformer">Transformer</a></td>
7036<th class="colLast" scope="row">
7037<div class="block">A transformer to transform media inputs.</div>
7038</th>
7039</tr>
7040<tr id="i1137" class="rowColor">
7041<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Transformer.Builder.html" title="class in com.google.android.exoplayer2.transformer">Transformer.Builder</a></td>
7042<th class="colLast" scope="row">
7043<div class="block">A builder for <a href="com/google/android/exoplayer2/transformer/Transformer.html" title="class in com.google.android.exoplayer2.transformer"><code>Transformer</code></a> instances.</div>
7044</th>
7045</tr>
7046<tr id="i1138" class="altColor">
7047<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Transformer.DebugViewProvider.html" title="interface in com.google.android.exoplayer2.transformer">Transformer.DebugViewProvider</a></td>
7048<th class="colLast" scope="row">
7049<div class="block">Provider for views to show diagnostic information during transformation, for debugging.</div>
7050</th>
7051</tr>
7052<tr id="i1139" class="rowColor">
7053<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Transformer.Listener.html" title="interface in com.google.android.exoplayer2.transformer">Transformer.Listener</a></td>
7054<th class="colLast" scope="row">
7055<div class="block">A listener for the transformation events.</div>
7056</th>
7057</tr>
7058<tr id="i1140" class="altColor">
7059<td class="colFirst"><a href="com/google/android/exoplayer2/transformer/Transformer.ProgressState.html" title="annotation in com.google.android.exoplayer2.transformer">Transformer.ProgressState</a></td>
7060<th class="colLast" scope="row">
7061<div class="block">Progress state.</div>
7062</th>
7063</tr>
7064<tr id="i1141" class="rowColor">
7065<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/TrueHdSampleRechunker.html" title="class in com.google.android.exoplayer2.extractor">TrueHdSampleRechunker</a></td>
7066<th class="colLast" scope="row">
7067<div class="block">Rechunks TrueHD sample data into groups of <a href="com/google/android/exoplayer2/audio/Ac3Util.html#TRUEHD_RECHUNK_SAMPLE_COUNT"><code>Ac3Util.TRUEHD_RECHUNK_SAMPLE_COUNT</code></a> samples.</div>
7068</th>
7069</tr>
7070<tr id="i1142" class="altColor">
7071<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsExtractor.html" title="class in com.google.android.exoplayer2.extractor.ts">TsExtractor</a></td>
7072<th class="colLast" scope="row">
7073<div class="block">Extracts data from the MPEG-2 TS container format.</div>
7074</th>
7075</tr>
7076<tr id="i1143" class="rowColor">
7077<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsExtractor.Mode.html" title="annotation in com.google.android.exoplayer2.extractor.ts">TsExtractor.Mode</a></td>
7078<th class="colLast" scope="row">
7079<div class="block">Modes for the extractor.</div>
7080</th>
7081</tr>
7082<tr id="i1144" class="altColor">
7083<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader</a></td>
7084<th class="colLast" scope="row">
7085<div class="block">Parses TS packet payload data.</div>
7086</th>
7087</tr>
7088<tr id="i1145" class="rowColor">
7089<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.DvbSubtitleInfo.html" title="class in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.DvbSubtitleInfo</a></td>
7090<th class="colLast" scope="row">
7091<div class="block">Holds information about a DVB subtitle, as defined in ETSI EN 300 468 V1.11.1 section 6.2.41.</div>
7092</th>
7093</tr>
7094<tr id="i1146" class="altColor">
7095<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.EsInfo.html" title="class in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.EsInfo</a></td>
7096<th class="colLast" scope="row">
7097<div class="block">Holds information associated with a PMT entry.</div>
7098</th>
7099</tr>
7100<tr id="i1147" class="rowColor">
7101<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.Factory.html" title="interface in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.Factory</a></td>
7102<th class="colLast" scope="row">
7103<div class="block">Factory of <a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>TsPayloadReader</code></a> instances.</div>
7104</th>
7105</tr>
7106<tr id="i1148" class="altColor">
7107<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.Flags.html" title="annotation in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.Flags</a></td>
7108<th class="colLast" scope="row">
7109<div class="block">Contextual flags indicating the presence of indicators in the TS packet or PES packet headers.</div>
7110</th>
7111</tr>
7112<tr id="i1149" class="rowColor">
7113<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.TrackIdGenerator.html" title="class in com.google.android.exoplayer2.extractor.ts">TsPayloadReader.TrackIdGenerator</a></td>
7114<th class="colLast" scope="row">
7115<div class="block">Generates track ids for initializing <a href="com/google/android/exoplayer2/extractor/ts/TsPayloadReader.html" title="interface in com.google.android.exoplayer2.extractor.ts"><code>TsPayloadReader</code></a>s' <a href="com/google/android/exoplayer2/extractor/TrackOutput.html" title="interface in com.google.android.exoplayer2.extractor"><code>TrackOutput</code></a>s.</div>
7116</th>
7117</tr>
7118<tr id="i1150" class="altColor">
7119<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/ts/TsUtil.html" title="class in com.google.android.exoplayer2.extractor.ts">TsUtil</a></td>
7120<th class="colLast" scope="row">
7121<div class="block">Utilities method for extracting MPEG-TS streams.</div>
7122</th>
7123</tr>
7124<tr id="i1151" class="rowColor">
7125<td class="colFirst"><a href="com/google/android/exoplayer2/text/ttml/TtmlDecoder.html" title="class in com.google.android.exoplayer2.text.ttml">TtmlDecoder</a></td>
7126<th class="colLast" scope="row">
7127<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for TTML supporting the DFXP presentation profile.</div>
7128</th>
7129</tr>
7130<tr id="i1152" class="altColor">
7131<td class="colFirst"><a href="com/google/android/exoplayer2/text/tx3g/Tx3gDecoder.html" title="class in com.google.android.exoplayer2.text.tx3g">Tx3gDecoder</a></td>
7132<th class="colLast" scope="row">
7133<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for tx3g.</div>
7134</th>
7135</tr>
7136<tr id="i1153" class="rowColor">
7137<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/UdpDataSource.html" title="class in com.google.android.exoplayer2.upstream">UdpDataSource</a></td>
7138<th class="colLast" scope="row">
7139<div class="block">A UDP <a href="com/google/android/exoplayer2/upstream/DataSource.html" title="interface in com.google.android.exoplayer2.upstream"><code>DataSource</code></a>.</div>
7140</th>
7141</tr>
7142<tr id="i1154" class="altColor">
7143<td class="colFirst"><a href="com/google/android/exoplayer2/upstream/UdpDataSource.UdpDataSourceException.html" title="class in com.google.android.exoplayer2.upstream">UdpDataSource.UdpDataSourceException</a></td>
7144<th class="colLast" scope="row">
7145<div class="block">Thrown when an error is encountered when trying to read from a <a href="com/google/android/exoplayer2/upstream/UdpDataSource.html" title="class in com.google.android.exoplayer2.upstream"><code>UdpDataSource</code></a>.</div>
7146</th>
7147</tr>
7148<tr id="i1155" class="rowColor">
7149<td class="colFirst"><a href="com/google/android/exoplayer2/util/UnknownNull.html" title="annotation in com.google.android.exoplayer2.util">UnknownNull</a></td>
7150<th class="colLast" scope="row">
7151<div class="block">Annotation for specifying unknown nullness.</div>
7152</th>
7153</tr>
7154<tr id="i1156" class="altColor">
7155<td class="colFirst"><a href="com/google/android/exoplayer2/source/UnrecognizedInputFormatException.html" title="class in com.google.android.exoplayer2.source">UnrecognizedInputFormatException</a></td>
7156<th class="colLast" scope="row">
7157<div class="block">Thrown if the input format was not recognized.</div>
7158</th>
7159</tr>
7160<tr id="i1157" class="rowColor">
7161<td class="colFirst"><a href="com/google/android/exoplayer2/drm/UnsupportedDrmException.html" title="class in com.google.android.exoplayer2.drm">UnsupportedDrmException</a></td>
7162<th class="colLast" scope="row">
7163<div class="block">Thrown when the requested DRM scheme is not supported.</div>
7164</th>
7165</tr>
7166<tr id="i1158" class="altColor">
7167<td class="colFirst"><a href="com/google/android/exoplayer2/drm/UnsupportedDrmException.Reason.html" title="annotation in com.google.android.exoplayer2.drm">UnsupportedDrmException.Reason</a></td>
7168<th class="colLast" scope="row">
7169<div class="block">The reason for the exception.</div>
7170</th>
7171</tr>
7172<tr id="i1159" class="rowColor">
7173<td class="colFirst"><a href="com/google/android/exoplayer2/util/UriUtil.html" title="class in com.google.android.exoplayer2.util">UriUtil</a></td>
7174<th class="colLast" scope="row">
7175<div class="block">Utility methods for manipulating URIs.</div>
7176</th>
7177</tr>
7178<tr id="i1160" class="altColor">
7179<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/id3/UrlLinkFrame.html" title="class in com.google.android.exoplayer2.metadata.id3">UrlLinkFrame</a></td>
7180<th class="colLast" scope="row">
7181<div class="block">Url link ID3 frame.</div>
7182</th>
7183</tr>
7184<tr id="i1161" class="rowColor">
7185<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/UrlTemplate.html" title="class in com.google.android.exoplayer2.source.dash.manifest">UrlTemplate</a></td>
7186<th class="colLast" scope="row">
7187<div class="block">A template from which URLs can be built.</div>
7188</th>
7189</tr>
7190<tr id="i1162" class="altColor">
7191<td class="colFirst"><a href="com/google/android/exoplayer2/source/dash/manifest/UtcTimingElement.html" title="class in com.google.android.exoplayer2.source.dash.manifest">UtcTimingElement</a></td>
7192<th class="colLast" scope="row">
7193<div class="block">Represents a UTCTiming element.</div>
7194</th>
7195</tr>
7196<tr id="i1163" class="rowColor">
7197<td class="colFirst"><a href="com/google/android/exoplayer2/util/Util.html" title="class in com.google.android.exoplayer2.util">Util</a></td>
7198<th class="colLast" scope="row">
7199<div class="block">Miscellaneous utility methods.</div>
7200</th>
7201</tr>
7202<tr id="i1164" class="altColor">
7203<td class="colFirst"><a href="com/google/android/exoplayer2/database/VersionTable.html" title="class in com.google.android.exoplayer2.database">VersionTable</a></td>
7204<th class="colLast" scope="row">
7205<div class="block">Utility methods for accessing versions of media library database components.</div>
7206</th>
7207</tr>
7208<tr id="i1165" class="rowColor">
7209<td class="colFirst"><a href="com/google/android/exoplayer2/video/VideoDecoderGLSurfaceView.html" title="class in com.google.android.exoplayer2.video">VideoDecoderGLSurfaceView</a></td>
7210<th class="colLast" scope="row">
7211<div class="block">GLSurfaceView implementing <a href="com/google/android/exoplayer2/video/VideoDecoderOutputBufferRenderer.html" title="interface in com.google.android.exoplayer2.video"><code>VideoDecoderOutputBufferRenderer</code></a> for rendering <a href="com/google/android/exoplayer2/decoder/VideoDecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder"><code>VideoDecoderOutputBuffers</code></a>.</div>
7212</th>
7213</tr>
7214<tr id="i1166" class="altColor">
7215<td class="colFirst"><a href="com/google/android/exoplayer2/decoder/VideoDecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder">VideoDecoderOutputBuffer</a></td>
7216<th class="colLast" scope="row">
7217<div class="block">Video decoder output buffer containing video frame data.</div>
7218</th>
7219</tr>
7220<tr id="i1167" class="rowColor">
7221<td class="colFirst"><a href="com/google/android/exoplayer2/video/VideoDecoderOutputBufferRenderer.html" title="interface in com.google.android.exoplayer2.video">VideoDecoderOutputBufferRenderer</a></td>
7222<th class="colLast" scope="row">
7223<div class="block">Renders the <a href="com/google/android/exoplayer2/decoder/VideoDecoderOutputBuffer.html" title="class in com.google.android.exoplayer2.decoder"><code>VideoDecoderOutputBuffer</code></a>.</div>
7224</th>
7225</tr>
7226<tr id="i1168" class="altColor">
7227<td class="colFirst"><a href="com/google/android/exoplayer2/video/VideoFrameMetadataListener.html" title="interface in com.google.android.exoplayer2.video">VideoFrameMetadataListener</a></td>
7228<th class="colLast" scope="row">
7229<div class="block">A listener for metadata corresponding to video frames being rendered.</div>
7230</th>
7231</tr>
7232<tr id="i1169" class="rowColor">
7233<td class="colFirst"><a href="com/google/android/exoplayer2/video/VideoFrameReleaseHelper.html" title="class in com.google.android.exoplayer2.video">VideoFrameReleaseHelper</a></td>
7234<th class="colLast" scope="row">
7235<div class="block">Helps a video <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> release frames to a <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>.</div>
7236</th>
7237</tr>
7238<tr id="i1170" class="altColor">
7239<td class="colFirst"><a href="com/google/android/exoplayer2/video/VideoRendererEventListener.html" title="interface in com.google.android.exoplayer2.video">VideoRendererEventListener</a></td>
7240<th class="colLast" scope="row">
7241<div class="block">Listener of video <a href="com/google/android/exoplayer2/Renderer.html" title="interface in com.google.android.exoplayer2"><code>Renderer</code></a> events.</div>
7242</th>
7243</tr>
7244<tr id="i1171" class="rowColor">
7245<td class="colFirst"><a href="com/google/android/exoplayer2/video/VideoRendererEventListener.EventDispatcher.html" title="class in com.google.android.exoplayer2.video">VideoRendererEventListener.EventDispatcher</a></td>
7246<th class="colLast" scope="row">
7247<div class="block">Dispatches events to a <a href="com/google/android/exoplayer2/video/VideoRendererEventListener.html" title="interface in com.google.android.exoplayer2.video"><code>VideoRendererEventListener</code></a>.</div>
7248</th>
7249</tr>
7250<tr id="i1172" class="altColor">
7251<td class="colFirst"><a href="com/google/android/exoplayer2/video/VideoSize.html" title="class in com.google.android.exoplayer2.video">VideoSize</a></td>
7252<th class="colLast" scope="row">
7253<div class="block">Represents the video size.</div>
7254</th>
7255</tr>
7256<tr id="i1173" class="rowColor">
7257<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/VorbisBitArray.html" title="class in com.google.android.exoplayer2.extractor">VorbisBitArray</a></td>
7258<th class="colLast" scope="row">
7259<div class="block">Wraps a byte array, providing methods that allow it to be read as a Vorbis bitstream.</div>
7260</th>
7261</tr>
7262<tr id="i1174" class="altColor">
7263<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/flac/VorbisComment.html" title="class in com.google.android.exoplayer2.metadata.flac">VorbisComment</a></td>
7264<th class="colLast" scope="row">Deprecated.
7265<div class="deprecationComment">Use <a href="com/google/android/exoplayer2/metadata/vorbis/VorbisComment.html" title="class in com.google.android.exoplayer2.metadata.vorbis"><code>VorbisComment</code></a> instead.</div>
7266</th>
7267</tr>
7268<tr id="i1175" class="rowColor">
7269<td class="colFirst"><a href="com/google/android/exoplayer2/metadata/vorbis/VorbisComment.html" title="class in com.google.android.exoplayer2.metadata.vorbis">VorbisComment</a></td>
7270<th class="colLast" scope="row">
7271<div class="block">A vorbis comment, extracted from a FLAC or Ogg file.</div>
7272</th>
7273</tr>
7274<tr id="i1176" class="altColor">
7275<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/VorbisUtil.html" title="class in com.google.android.exoplayer2.extractor">VorbisUtil</a></td>
7276<th class="colLast" scope="row">
7277<div class="block">Utility methods for parsing Vorbis streams.</div>
7278</th>
7279</tr>
7280<tr id="i1177" class="rowColor">
7281<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/VorbisUtil.CommentHeader.html" title="class in com.google.android.exoplayer2.extractor">VorbisUtil.CommentHeader</a></td>
7282<th class="colLast" scope="row">
7283<div class="block">Vorbis comment header.</div>
7284</th>
7285</tr>
7286<tr id="i1178" class="altColor">
7287<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/VorbisUtil.Mode.html" title="class in com.google.android.exoplayer2.extractor">VorbisUtil.Mode</a></td>
7288<th class="colLast" scope="row">
7289<div class="block">Vorbis setup header modes.</div>
7290</th>
7291</tr>
7292<tr id="i1179" class="rowColor">
7293<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/VorbisUtil.VorbisIdHeader.html" title="class in com.google.android.exoplayer2.extractor">VorbisUtil.VorbisIdHeader</a></td>
7294<th class="colLast" scope="row">
7295<div class="block">Vorbis identification header.</div>
7296</th>
7297</tr>
7298<tr id="i1180" class="altColor">
7299<td class="colFirst"><a href="com/google/android/exoplayer2/ext/vp9/VpxDecoder.html" title="class in com.google.android.exoplayer2.ext.vp9">VpxDecoder</a></td>
7300<th class="colLast" scope="row">
7301<div class="block">Vpx decoder.</div>
7302</th>
7303</tr>
7304<tr id="i1181" class="rowColor">
7305<td class="colFirst"><a href="com/google/android/exoplayer2/ext/vp9/VpxDecoderException.html" title="class in com.google.android.exoplayer2.ext.vp9">VpxDecoderException</a></td>
7306<th class="colLast" scope="row">
7307<div class="block">Thrown when a libvpx decoder error occurs.</div>
7308</th>
7309</tr>
7310<tr id="i1182" class="altColor">
7311<td class="colFirst"><a href="com/google/android/exoplayer2/ext/vp9/VpxLibrary.html" title="class in com.google.android.exoplayer2.ext.vp9">VpxLibrary</a></td>
7312<th class="colLast" scope="row">
7313<div class="block">Configures and queries the underlying native library.</div>
7314</th>
7315</tr>
7316<tr id="i1183" class="rowColor">
7317<td class="colFirst"><a href="com/google/android/exoplayer2/extractor/wav/WavExtractor.html" title="class in com.google.android.exoplayer2.extractor.wav">WavExtractor</a></td>
7318<th class="colLast" scope="row">
7319<div class="block">Extracts data from WAV byte streams.</div>
7320</th>
7321</tr>
7322<tr id="i1184" class="altColor">
7323<td class="colFirst"><a href="com/google/android/exoplayer2/audio/WavUtil.html" title="class in com.google.android.exoplayer2.audio">WavUtil</a></td>
7324<th class="colLast" scope="row">
7325<div class="block">Utilities for handling WAVE files.</div>
7326</th>
7327</tr>
7328<tr id="i1185" class="rowColor">
7329<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/WebServerDispatcher.html" title="class in com.google.android.exoplayer2.testutil">WebServerDispatcher</a></td>
7330<th class="colLast" scope="row">
7331<div class="block">A <code>Dispatcher</code> for <code>MockWebServer</code> that allows per-path
7332 customisation of the static data served.</div>
7333</th>
7334</tr>
7335<tr id="i1186" class="altColor">
7336<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/WebServerDispatcher.Resource.html" title="class in com.google.android.exoplayer2.testutil">WebServerDispatcher.Resource</a></td>
7337<th class="colLast" scope="row">
7338<div class="block">A resource served by <a href="com/google/android/exoplayer2/testutil/WebServerDispatcher.html" title="class in com.google.android.exoplayer2.testutil"><code>WebServerDispatcher</code></a>.</div>
7339</th>
7340</tr>
7341<tr id="i1187" class="rowColor">
7342<td class="colFirst"><a href="com/google/android/exoplayer2/testutil/WebServerDispatcher.Resource.Builder.html" title="class in com.google.android.exoplayer2.testutil">WebServerDispatcher.Resource.Builder</a></td>
7343<th class="colLast" scope="row">
7344<div class="block">Builder for <a href="com/google/android/exoplayer2/testutil/WebServerDispatcher.Resource.html" title="class in com.google.android.exoplayer2.testutil"><code>WebServerDispatcher.Resource</code></a>.</div>
7345</th>
7346</tr>
7347<tr id="i1188" class="altColor">
7348<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/WebvttCssStyle.html" title="class in com.google.android.exoplayer2.text.webvtt">WebvttCssStyle</a></td>
7349<th class="colLast" scope="row">
7350<div class="block">Style object of a Css style block in a Webvtt file.</div>
7351</th>
7352</tr>
7353<tr id="i1189" class="rowColor">
7354<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/WebvttCssStyle.FontSizeUnit.html" title="annotation in com.google.android.exoplayer2.text.webvtt">WebvttCssStyle.FontSizeUnit</a></td>
7355<th class="colLast" scope="row">
7356<div class="block">Font size unit enum.</div>
7357</th>
7358</tr>
7359<tr id="i1190" class="altColor">
7360<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/WebvttCssStyle.StyleFlags.html" title="annotation in com.google.android.exoplayer2.text.webvtt">WebvttCssStyle.StyleFlags</a></td>
7361<th class="colLast" scope="row">
7362<div class="block">Style flag enum.</div>
7363</th>
7364</tr>
7365<tr id="i1191" class="rowColor">
7366<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/WebvttCueInfo.html" title="class in com.google.android.exoplayer2.text.webvtt">WebvttCueInfo</a></td>
7367<th class="colLast" scope="row">
7368<div class="block">A representation of a WebVTT cue.</div>
7369</th>
7370</tr>
7371<tr id="i1192" class="altColor">
7372<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/WebvttCueParser.html" title="class in com.google.android.exoplayer2.text.webvtt">WebvttCueParser</a></td>
7373<th class="colLast" scope="row">
7374<div class="block">Parser for WebVTT cues.</div>
7375</th>
7376</tr>
7377<tr id="i1193" class="rowColor">
7378<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/WebvttDecoder.html" title="class in com.google.android.exoplayer2.text.webvtt">WebvttDecoder</a></td>
7379<th class="colLast" scope="row">
7380<div class="block">A <a href="com/google/android/exoplayer2/text/SimpleSubtitleDecoder.html" title="class in com.google.android.exoplayer2.text"><code>SimpleSubtitleDecoder</code></a> for WebVTT.</div>
7381</th>
7382</tr>
7383<tr id="i1194" class="altColor">
7384<td class="colFirst"><a href="com/google/android/exoplayer2/source/hls/WebvttExtractor.html" title="class in com.google.android.exoplayer2.source.hls">WebvttExtractor</a></td>
7385<th class="colLast" scope="row">
7386<div class="block">A special purpose extractor for WebVTT content in HLS.</div>
7387</th>
7388</tr>
7389<tr id="i1195" class="rowColor">
7390<td class="colFirst"><a href="com/google/android/exoplayer2/text/webvtt/WebvttParserUtil.html" title="class in com.google.android.exoplayer2.text.webvtt">WebvttParserUtil</a></td>
7391<th class="colLast" scope="row">
7392<div class="block">Utility methods for parsing WebVTT data.</div>
7393</th>
7394</tr>
7395<tr id="i1196" class="altColor">
7396<td class="colFirst"><a href="com/google/android/exoplayer2/drm/WidevineUtil.html" title="class in com.google.android.exoplayer2.drm">WidevineUtil</a></td>
7397<th class="colLast" scope="row">
7398<div class="block">Utility methods for Widevine.</div>
7399</th>
7400</tr>
7401<tr id="i1197" class="rowColor">
7402<td class="colFirst"><a href="com/google/android/exoplayer2/ext/workmanager/WorkManagerScheduler.html" title="class in com.google.android.exoplayer2.ext.workmanager">WorkManagerScheduler</a></td>
7403<th class="colLast" scope="row">
7404<div class="block">A <a href="com/google/android/exoplayer2/scheduler/Scheduler.html" title="interface in com.google.android.exoplayer2.scheduler"><code>Scheduler</code></a> that uses <code>WorkManager</code>.</div>
7405</th>
7406</tr>
7407<tr id="i1198" class="altColor">
7408<td class="colFirst"><a href="com/google/android/exoplayer2/ext/workmanager/WorkManagerScheduler.SchedulerWorker.html" title="class in com.google.android.exoplayer2.ext.workmanager">WorkManagerScheduler.SchedulerWorker</a></td>
7409<th class="colLast" scope="row">
7410<div class="block">A <code>Worker</code> that starts the target service if the requirements are met.</div>
7411</th>
7412</tr>
7413<tr id="i1199" class="rowColor">
7414<td class="colFirst"><a href="com/google/android/exoplayer2/offline/WritableDownloadIndex.html" title="interface in com.google.android.exoplayer2.offline">WritableDownloadIndex</a></td>
7415<th class="colLast" scope="row">
7416<div class="block">A writable index of <a href="com/google/android/exoplayer2/offline/Download.html" title="class in com.google.android.exoplayer2.offline"><code>Downloads</code></a>.</div>
7417</th>
7418</tr>
7419<tr id="i1200" class="altColor">
7420<td class="colFirst"><a href="com/google/android/exoplayer2/util/XmlPullParserUtil.html" title="class in com.google.android.exoplayer2.util">XmlPullParserUtil</a></td>
7421<th class="colLast" scope="row">
7422<div class="block"><a href="https://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html" title="class or interface in org.xmlpull.v1" class="externalLink" target="_top"><code>XmlPullParser</code></a> utility methods.</div>
7423</th>
7424</tr>
7425</table>
7426</li>
7427</ul>
7428</div>
7429</main>
7430<footer role="contentinfo">
7431<nav role="navigation">
7432<!-- ======= START OF BOTTOM NAVBAR ====== -->
7433<div class="bottomNav"><a id="navbar.bottom">
7434<!--   -->
7435</a>
7436<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
7437<a id="navbar.bottom.firstrow">
7438<!--   -->
7439</a>
7440<ul class="navList" title="Navigation">
7441<li><a href="index.html">Overview</a></li>
7442<li>Package</li>
7443<li>Class</li>
7444<li><a href="overview-tree.html">Tree</a></li>
7445<li><a href="deprecated-list.html">Deprecated</a></li>
7446<li><a href="index-all.html">Index</a></li>
7447<li><a href="help-doc.html">Help</a></li>
7448</ul>
7449</div>
7450<div class="subNav">
7451<ul class="navList" id="allclasses_navbar_bottom">
7452<li><a href="allclasses.html">All&nbsp;Classes</a></li>
7453</ul>
7454<div>
7455<script type="text/javascript"><!--
7456  allClassesLink = document.getElementById("allclasses_navbar_bottom");
7457  if(window==top) {
7458    allClassesLink.style.display = "block";
7459  }
7460  else {
7461    allClassesLink.style.display = "none";
7462  }
7463  //-->
7464</script>
7465<noscript>
7466<div>JavaScript is disabled on your browser.</div>
7467</noscript>
7468</div>
7469<a id="skip.navbar.bottom">
7470<!--   -->
7471</a></div>
7472<!-- ======== END OF BOTTOM NAVBAR ======= -->
7473</nav>
7474</footer>
7475</body>
7476</html>
7477