media/docs/doc/reference-v1/com/google/android/exoplayer/FrameworkSampleSource.html
2021-04-20 17:32:19 +01:00

753 lines
48 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (1.8.0_101) on Wed Dec 14 17:18:31 GMT 2016 -->
<title>FrameworkSampleSource (ExoPlayer library)</title>
<meta name="date" content="2016-12-14">
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="FrameworkSampleSource (ExoPlayer library)";
}
}
catch(err) {
}
//-->
var methods = {"i0":42,"i1":42,"i2":42,"i3":42,"i4":42,"i5":42,"i6":42,"i7":42,"i8":42,"i9":42,"i10":42,"i11":42,"i12":42};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/google/android/exoplayer/ExoPlayerLibraryInfo.html" title="class in com.google.android.exoplayer"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/google/android/exoplayer/LoadControl.html" title="interface in com.google.android.exoplayer"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/google/android/exoplayer/FrameworkSampleSource.html" target="_top">Frames</a></li>
<li><a href="FrameworkSampleSource.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.google.android.exoplayer</div>
<h2 title="Class FrameworkSampleSource" class="title">Class FrameworkSampleSource</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>com.google.android.exoplayer.FrameworkSampleSource</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../com/google/android/exoplayer/SampleSource.html" title="interface in com.google.android.exoplayer">SampleSource</a>, <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></dd>
</dl>
<hr>
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
<br>
<pre><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a>
public final class <span class="typeNameLabel">FrameworkSampleSource</span>
extends <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../../com/google/android/exoplayer/SampleSource.html" title="interface in com.google.android.exoplayer">SampleSource</a>, <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></pre>
<div class="block">Extracts samples from a stream using Android's <a href="https://developer.android.com/reference/android/media/MediaExtractor.html?is-external=true" title="class or interface in android.media"><code>MediaExtractor</code></a>.
<p>
Warning - This class is marked as deprecated because there are known device specific issues
associated with its use, including playbacks not starting, playbacks stuttering and other
miscellaneous failures. For mp4, m4a, mp3, webm, mkv, mpeg-ts, ogg, wav and aac playbacks it is
strongly recommended to use <a href="../../../../com/google/android/exoplayer/extractor/ExtractorSampleSource.html" title="class in com.google.android.exoplayer.extractor"><code>ExtractorSampleSource</code></a> instead. Where this is not possible
this class can still be used, but please be aware of the associated risks. Playing container
formats for which an ExoPlayer extractor does not yet exist (e.g. avi) is a valid use case of
this class.
<p>
Over time we hope to enhance <a href="../../../../com/google/android/exoplayer/extractor/ExtractorSampleSource.html" title="class in com.google.android.exoplayer.extractor"><code>ExtractorSampleSource</code></a> to support more formats, and hence
make use of this class unnecessary.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.com.google.android.exoplayer.SampleSource">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from interface&nbsp;com.google.android.exoplayer.<a href="../../../../com/google/android/exoplayer/SampleSource.html" title="interface in com.google.android.exoplayer">SampleSource</a></h3>
<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.com.google.android.exoplayer.SampleSource">
<!-- -->
</a>
<h3>Fields inherited from interface&nbsp;com.google.android.exoplayer.<a href="../../../../com/google/android/exoplayer/SampleSource.html" title="interface in com.google.android.exoplayer">SampleSource</a></h3>
<code><a href="../../../../com/google/android/exoplayer/SampleSource.html#END_OF_STREAM">END_OF_STREAM</a>, <a href="../../../../com/google/android/exoplayer/SampleSource.html#FORMAT_READ">FORMAT_READ</a>, <a href="../../../../com/google/android/exoplayer/SampleSource.html#NO_DISCONTINUITY">NO_DISCONTINUITY</a>, <a href="../../../../com/google/android/exoplayer/SampleSource.html#NOTHING_READ">NOTHING_READ</a>, <a href="../../../../com/google/android/exoplayer/SampleSource.html#SAMPLE_READ">SAMPLE_READ</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#FrameworkSampleSource-android.content.Context-android.net.Uri-java.util.Map-">FrameworkSampleSource</a></span>(<a href="https://developer.android.com/reference/android/content/Context.html?is-external=true" title="class or interface in android.content">Context</a>&nbsp;context,
<a href="https://developer.android.com/reference/android/net/Uri.html?is-external=true" title="class or interface in android.net">Uri</a>&nbsp;uri,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;headers)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Instantiates a new sample extractor reading from the specified <code>uri</code>.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#FrameworkSampleSource-java.io.FileDescriptor-long-long-">FrameworkSampleSource</a></span>(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/FileDescriptor.html?is-external=true" title="class or interface in java.io">FileDescriptor</a>&nbsp;fileDescriptor,
long&nbsp;fileDescriptorOffset,
long&nbsp;fileDescriptorLength)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Instantiates a new sample extractor reading from the specified seekable <code>fileDescriptor</code>.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#continueBuffering-int-long-">continueBuffering</a></span>(int&nbsp;track,
long&nbsp;positionUs)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Indicates to the source that it should still be buffering data for the specified track.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#disable-int-">disable</a></span>(int&nbsp;track)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Disable the specified track.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#enable-int-long-">enable</a></span>(int&nbsp;track,
long&nbsp;positionUs)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Enable the specified track.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#getBufferedPositionUs--">getBufferedPositionUs</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Returns an estimate of the position up to which data is buffered.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code><a href="../../../../com/google/android/exoplayer/MediaFormat.html" title="class in com.google.android.exoplayer">MediaFormat</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#getFormat-int-">getFormat</a></span>(int&nbsp;track)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Returns the format of the specified track.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#getTrackCount--">getTrackCount</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Returns the number of tracks exposed by the source.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#maybeThrowError--">maybeThrowError</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">If the source is currently having difficulty preparing or loading samples, then this method
throws the underlying error.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#prepare-long-">prepare</a></span>(long&nbsp;positionUs)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Prepares the source.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#readData-int-long-com.google.android.exoplayer.MediaFormatHolder-com.google.android.exoplayer.SampleHolder-">readData</a></span>(int&nbsp;track,
long&nbsp;positionUs,
<a href="../../../../com/google/android/exoplayer/MediaFormatHolder.html" title="class in com.google.android.exoplayer">MediaFormatHolder</a>&nbsp;formatHolder,
<a href="../../../../com/google/android/exoplayer/SampleHolder.html" title="class in com.google.android.exoplayer">SampleHolder</a>&nbsp;sampleHolder)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Attempts to read a sample or a new format from the source.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#readDiscontinuity-int-">readDiscontinuity</a></span>(int&nbsp;track)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Attempts to read a pending discontinuity from the source.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#register--">register</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">A consumer of samples should call this method to register themselves and gain access to the
source through the returned <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer"><code>SampleSource.SampleSourceReader</code></a>.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#release--">release</a></span>()</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Releases the <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer"><code>SampleSource.SampleSourceReader</code></a>.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../com/google/android/exoplayer/FrameworkSampleSource.html#seekToUs-long-">seekToUs</a></span>(long&nbsp;positionUs)</code>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Seeks to the specified time in microseconds.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="FrameworkSampleSource-android.content.Context-android.net.Uri-java.util.Map-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>FrameworkSampleSource</h4>
<pre>public&nbsp;FrameworkSampleSource(<a href="https://developer.android.com/reference/android/content/Context.html?is-external=true" title="class or interface in android.content">Context</a>&nbsp;context,
<a href="https://developer.android.com/reference/android/net/Uri.html?is-external=true" title="class or interface in android.net">Uri</a>&nbsp;uri,
<a href="http://docs.oracle.com/javase/7/docs/api/java/util/Map.html?is-external=true" title="class or interface in java.util">Map</a>&lt;<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>,<a href="http://docs.oracle.com/javase/7/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;headers)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Instantiates a new sample extractor reading from the specified <code>uri</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>context</code> - Context for resolving <code>uri</code>.</dd>
<dd><code>uri</code> - The content URI from which to extract data.</dd>
<dd><code>headers</code> - Headers to send with requests for data.</dd>
</dl>
</li>
</ul>
<a name="FrameworkSampleSource-java.io.FileDescriptor-long-long-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>FrameworkSampleSource</h4>
<pre>public&nbsp;FrameworkSampleSource(<a href="http://docs.oracle.com/javase/7/docs/api/java/io/FileDescriptor.html?is-external=true" title="class or interface in java.io">FileDescriptor</a>&nbsp;fileDescriptor,
long&nbsp;fileDescriptorOffset,
long&nbsp;fileDescriptorLength)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block">Instantiates a new sample extractor reading from the specified seekable <code>fileDescriptor</code>.
The caller is responsible for releasing the file descriptor.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fileDescriptor</code> - File descriptor from which to read.</dd>
<dd><code>fileDescriptorOffset</code> - The offset in bytes where the data to be extracted starts.</dd>
<dd><code>fileDescriptorLength</code> - The length in bytes of the data to be extracted.</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="register--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>register</h4>
<pre>public&nbsp;<a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a>&nbsp;register()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.html#register--">SampleSource</a></code></span></div>
<div class="block">A consumer of samples should call this method to register themselves and gain access to the
source through the returned <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer"><code>SampleSource.SampleSourceReader</code></a>.
<p>
<a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#release--"><code>SampleSource.SampleSourceReader.release()</code></a> should be called on the returned object when access is no
longer required.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.html#register--">register</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.html" title="interface in com.google.android.exoplayer">SampleSource</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>A <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer"><code>SampleSource.SampleSourceReader</code></a> that provides access to the source.</dd>
</dl>
</li>
</ul>
<a name="prepare-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prepare</h4>
<pre>public&nbsp;boolean&nbsp;prepare(long&nbsp;positionUs)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#prepare-long-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Prepares the source.
<p>
Preparation may require reading from the data source (e.g. to determine the available tracks
and formats). If insufficient data is available then the call will return <code>false</code>
rather than block. The method can be called repeatedly until the return value indicates
success.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#prepare-long-">prepare</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>positionUs</code> - The player's current playback position.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if the source was prepared, false otherwise.</dd>
</dl>
</li>
</ul>
<a name="getTrackCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getTrackCount</h4>
<pre>public&nbsp;int&nbsp;getTrackCount()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#getTrackCount--">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Returns the number of tracks exposed by the source.
<p>
This method should only be called after the source has been prepared.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#getTrackCount--">getTrackCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The number of tracks.</dd>
</dl>
</li>
</ul>
<a name="getFormat-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getFormat</h4>
<pre>public&nbsp;<a href="../../../../com/google/android/exoplayer/MediaFormat.html" title="class in com.google.android.exoplayer">MediaFormat</a>&nbsp;getFormat(int&nbsp;track)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#getFormat-int-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Returns the format of the specified track.
<p>
Note that whilst the format of a track will remain constant, the format of the actual media
stream may change dynamically. An example of this is where the track is adaptive
(i.e. @link <a href="../../../../com/google/android/exoplayer/MediaFormat.html#adaptive"><code>MediaFormat.adaptive</code></a> is true). Hence the track formats returned through
this method should not be used to configure decoders. Decoder configuration should be
performed using the formats obtained when reading the media stream through calls to
<a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#readData-int-long-com.google.android.exoplayer.MediaFormatHolder-com.google.android.exoplayer.SampleHolder-"><code>SampleSource.SampleSourceReader.readData(int, long, MediaFormatHolder, SampleHolder)</code></a>.
<p>
This method should only be called after the source has been prepared.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#getFormat-int-">getFormat</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>track</code> - The track index.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The format of the specified track.</dd>
</dl>
</li>
</ul>
<a name="enable-int-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>enable</h4>
<pre>public&nbsp;void&nbsp;enable(int&nbsp;track,
long&nbsp;positionUs)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#enable-int-long-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Enable the specified track. This allows the track's format and samples to be read from
<a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#readData-int-long-com.google.android.exoplayer.MediaFormatHolder-com.google.android.exoplayer.SampleHolder-"><code>SampleSource.SampleSourceReader.readData(int, long, MediaFormatHolder, SampleHolder)</code></a>.
<p>
This method should only be called after the source has been prepared, and when the specified
track is disabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#enable-int-long-">enable</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>track</code> - The track to enable.</dd>
<dd><code>positionUs</code> - The player's current playback position.</dd>
</dl>
</li>
</ul>
<a name="continueBuffering-int-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>continueBuffering</h4>
<pre>public&nbsp;boolean&nbsp;continueBuffering(int&nbsp;track,
long&nbsp;positionUs)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#continueBuffering-int-long-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Indicates to the source that it should still be buffering data for the specified track.
<p>
This method should only be called when the specified track is enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#continueBuffering-int-long-">continueBuffering</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>track</code> - The track to continue buffering.</dd>
<dd><code>positionUs</code> - The current playback position.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>True if the track has available samples, or if the end of the stream has been
reached. False if more data needs to be buffered for samples to become available.</dd>
</dl>
</li>
</ul>
<a name="readDiscontinuity-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readDiscontinuity</h4>
<pre>public&nbsp;long&nbsp;readDiscontinuity(int&nbsp;track)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#readDiscontinuity-int-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Attempts to read a pending discontinuity from the source.
<p>
This method should only be called when the specified track is enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#readDiscontinuity-int-">readDiscontinuity</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>track</code> - The track from which to read.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>If a discontinuity was read then the playback position after the discontinuity. Else
<a href="../../../../com/google/android/exoplayer/SampleSource.html#NO_DISCONTINUITY"><code>SampleSource.NO_DISCONTINUITY</code></a>.</dd>
</dl>
</li>
</ul>
<a name="readData-int-long-com.google.android.exoplayer.MediaFormatHolder-com.google.android.exoplayer.SampleHolder-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>readData</h4>
<pre>public&nbsp;int&nbsp;readData(int&nbsp;track,
long&nbsp;positionUs,
<a href="../../../../com/google/android/exoplayer/MediaFormatHolder.html" title="class in com.google.android.exoplayer">MediaFormatHolder</a>&nbsp;formatHolder,
<a href="../../../../com/google/android/exoplayer/SampleHolder.html" title="class in com.google.android.exoplayer">SampleHolder</a>&nbsp;sampleHolder)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#readData-int-long-com.google.android.exoplayer.MediaFormatHolder-com.google.android.exoplayer.SampleHolder-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Attempts to read a sample or a new format from the source.
<p>
This method should only be called when the specified track is enabled.
<p>
Note that where multiple tracks are enabled, <a href="../../../../com/google/android/exoplayer/SampleSource.html#NOTHING_READ"><code>SampleSource.NOTHING_READ</code></a> may be returned if the
next piece of data to be read from the <a href="../../../../com/google/android/exoplayer/SampleSource.html" title="interface in com.google.android.exoplayer"><code>SampleSource</code></a> corresponds to a different track
than the one for which data was requested.
<p>
This method will always return <a href="../../../../com/google/android/exoplayer/SampleSource.html#NOTHING_READ"><code>SampleSource.NOTHING_READ</code></a> in the case that there's a pending
discontinuity to be read from <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#readDiscontinuity-int-"><code>SampleSource.SampleSourceReader.readDiscontinuity(int)</code></a> for the specified track.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#readData-int-long-com.google.android.exoplayer.MediaFormatHolder-com.google.android.exoplayer.SampleHolder-">readData</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>track</code> - The track from which to read.</dd>
<dd><code>positionUs</code> - The current playback position.</dd>
<dd><code>formatHolder</code> - A <a href="../../../../com/google/android/exoplayer/MediaFormatHolder.html" title="class in com.google.android.exoplayer"><code>MediaFormatHolder</code></a> object to populate in the case of a new
format.</dd>
<dd><code>sampleHolder</code> - A <a href="../../../../com/google/android/exoplayer/SampleHolder.html" title="class in com.google.android.exoplayer"><code>SampleHolder</code></a> object to populate in the case of a new sample.
If the caller requires the sample data then it must ensure that <a href="../../../../com/google/android/exoplayer/SampleHolder.html#data"><code>SampleHolder.data</code></a>
references a valid output buffer.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>The result, which can be <a href="../../../../com/google/android/exoplayer/SampleSource.html#SAMPLE_READ"><code>SampleSource.SAMPLE_READ</code></a>, <a href="../../../../com/google/android/exoplayer/SampleSource.html#FORMAT_READ"><code>SampleSource.FORMAT_READ</code></a>,
<a href="../../../../com/google/android/exoplayer/SampleSource.html#NOTHING_READ"><code>SampleSource.NOTHING_READ</code></a> or <a href="../../../../com/google/android/exoplayer/SampleSource.html#END_OF_STREAM"><code>SampleSource.END_OF_STREAM</code></a>.</dd>
</dl>
</li>
</ul>
<a name="disable-int-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disable</h4>
<pre>public&nbsp;void&nbsp;disable(int&nbsp;track)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#disable-int-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Disable the specified track.
<p>
This method should only be called when the specified track is enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#disable-int-">disable</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>track</code> - The track to disable.</dd>
</dl>
</li>
</ul>
<a name="maybeThrowError--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maybeThrowError</h4>
<pre>public&nbsp;void&nbsp;maybeThrowError()
throws <a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#maybeThrowError--">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">If the source is currently having difficulty preparing or loading samples, then this method
throws the underlying error. Otherwise does nothing.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#maybeThrowError--">maybeThrowError</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="http://docs.oracle.com/javase/7/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code> - The underlying error.</dd>
</dl>
</li>
</ul>
<a name="seekToUs-long-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>seekToUs</h4>
<pre>public&nbsp;void&nbsp;seekToUs(long&nbsp;positionUs)</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#seekToUs-long-">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Seeks to the specified time in microseconds.
<p>
This method should only be called when at least one track is enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#seekToUs-long-">seekToUs</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>positionUs</code> - The seek position in microseconds.</dd>
</dl>
</li>
</ul>
<a name="getBufferedPositionUs--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getBufferedPositionUs</h4>
<pre>public&nbsp;long&nbsp;getBufferedPositionUs()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#getBufferedPositionUs--">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Returns an estimate of the position up to which data is buffered.
<p>
This method should only be called when at least one track is enabled.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#getBufferedPositionUs--">getBufferedPositionUs</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>An estimate of the absolute position in microseconds up to which data is buffered,
or <a href="../../../../com/google/android/exoplayer/TrackRenderer.html#END_OF_TRACK_US"><code>TrackRenderer.END_OF_TRACK_US</code></a> if data is buffered to the end of the stream,
or <a href="../../../../com/google/android/exoplayer/TrackRenderer.html#UNKNOWN_TIME_US"><code>TrackRenderer.UNKNOWN_TIME_US</code></a> if no estimate is available.</dd>
</dl>
</li>
</ul>
<a name="release--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>release</h4>
<pre>public&nbsp;void&nbsp;release()</pre>
<div class="block"><span class="deprecatedLabel">Deprecated.</span>&nbsp;</div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#release--">SampleSource.SampleSourceReader</a></code></span></div>
<div class="block">Releases the <a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer"><code>SampleSource.SampleSourceReader</code></a>.
<p>
This method should be called when access to the <a href="../../../../com/google/android/exoplayer/SampleSource.html" title="interface in com.google.android.exoplayer"><code>SampleSource</code></a> is no longer required.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html#release--">release</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../com/google/android/exoplayer/SampleSource.SampleSourceReader.html" title="interface in com.google.android.exoplayer">SampleSource.SampleSourceReader</a></code></dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../com/google/android/exoplayer/ExoPlayerLibraryInfo.html" title="class in com.google.android.exoplayer"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../com/google/android/exoplayer/LoadControl.html" title="interface in com.google.android.exoplayer"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?com/google/android/exoplayer/FrameworkSampleSource.html" target="_top">Frames</a></li>
<li><a href="FrameworkSampleSource.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>