Skip to content

Commit

Permalink
Merge branch 'release-v2-r2.19.1' into release-v2
Browse files Browse the repository at this point in the history
  • Loading branch information
tianyif committed Aug 21, 2023
2 parents c311970 + f523d6c commit 03cadd2
Show file tree
Hide file tree
Showing 67 changed files with 3,724 additions and 1,933 deletions.
2,260 changes: 1,139 additions & 1,121 deletions docs/doc/reference/allclasses-index.html

Large diffs are not rendered by default.

7 changes: 5 additions & 2 deletions docs/doc/reference/allclasses.html
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,10 @@ <h1 class="bar">All&nbsp;Classes</h1>
<li><a href="com/google/android/exoplayer2/upstream/CmcdConfiguration.Factory.html" title="interface in com.google.android.exoplayer2.upstream"><span class="interfaceName">CmcdConfiguration.Factory</span></a></li>
<li><a href="com/google/android/exoplayer2/upstream/CmcdConfiguration.HeaderKey.html" title="annotation in com.google.android.exoplayer2.upstream">CmcdConfiguration.HeaderKey</a></li>
<li><a href="com/google/android/exoplayer2/upstream/CmcdConfiguration.RequestConfig.html" title="interface in com.google.android.exoplayer2.upstream"><span class="interfaceName">CmcdConfiguration.RequestConfig</span></a></li>
<li><a href="com/google/android/exoplayer2/upstream/CmcdLog.html" title="class in com.google.android.exoplayer2.upstream">CmcdLog</a></li>
<li><a href="com/google/android/exoplayer2/upstream/CmcdHeadersFactory.html" title="class in com.google.android.exoplayer2.upstream">CmcdHeadersFactory</a></li>
<li><a href="com/google/android/exoplayer2/upstream/CmcdHeadersFactory.ObjectType.html" title="annotation in com.google.android.exoplayer2.upstream">CmcdHeadersFactory.ObjectType</a></li>
<li><a href="com/google/android/exoplayer2/upstream/CmcdHeadersFactory.StreamingFormat.html" title="annotation in com.google.android.exoplayer2.upstream">CmcdHeadersFactory.StreamingFormat</a></li>
<li><a href="com/google/android/exoplayer2/upstream/CmcdHeadersFactory.StreamType.html" title="annotation in com.google.android.exoplayer2.upstream">CmcdHeadersFactory.StreamType</a></li>
<li><a href="com/google/android/exoplayer2/transformer/Codec.html" title="interface in com.google.android.exoplayer2.transformer"><span class="interfaceName">Codec</span></a></li>
<li><a href="com/google/android/exoplayer2/transformer/Codec.DecoderFactory.html" title="interface in com.google.android.exoplayer2.transformer"><span class="interfaceName">Codec.DecoderFactory</span></a></li>
<li><a href="com/google/android/exoplayer2/transformer/Codec.EncoderFactory.html" title="interface in com.google.android.exoplayer2.transformer"><span class="interfaceName">Codec.EncoderFactory</span></a></li>
Expand Down Expand Up @@ -786,7 +789,7 @@ <h1 class="bar">All&nbsp;Classes</h1>
<li><a href="com/google/android/exoplayer2/upstream/Loader.ReleaseCallback.html" title="interface in com.google.android.exoplayer2.upstream"><span class="interfaceName">Loader.ReleaseCallback</span></a></li>
<li><a href="com/google/android/exoplayer2/upstream/Loader.UnexpectedLoaderException.html" title="class in com.google.android.exoplayer2.upstream">Loader.UnexpectedLoaderException</a></li>
<li><a href="com/google/android/exoplayer2/upstream/LoaderErrorThrower.html" title="interface in com.google.android.exoplayer2.upstream"><span class="interfaceName">LoaderErrorThrower</span></a></li>
<li><a href="com/google/android/exoplayer2/upstream/LoaderErrorThrower.Dummy.html" title="class in com.google.android.exoplayer2.upstream">LoaderErrorThrower.Dummy</a></li>
<li><a href="com/google/android/exoplayer2/upstream/LoaderErrorThrower.Placeholder.html" title="class in com.google.android.exoplayer2.upstream">LoaderErrorThrower.Placeholder</a></li>
<li><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.html" title="interface in com.google.android.exoplayer2.upstream"><span class="interfaceName">LoadErrorHandlingPolicy</span></a></li>
<li><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.FallbackOptions.html" title="class in com.google.android.exoplayer2.upstream">LoadErrorHandlingPolicy.FallbackOptions</a></li>
<li><a href="com/google/android/exoplayer2/upstream/LoadErrorHandlingPolicy.FallbackSelection.html" title="class in com.google.android.exoplayer2.upstream">LoadErrorHandlingPolicy.FallbackSelection</a></li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -183,7 +183,7 @@ <h2>Threading model</h2>

<p>The figure below shows ExoPlayer's threading model.

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/exoplayer-threading-model.svg" alt="ExoPlayer's threading model">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/com/google/android/exoplayer2/exoplayer-threading-model.svg" alt="ExoPlayer's threading model">

<ul>
<li>ExoPlayer instances must be accessed from a single application thread unless indicated
Expand Down Expand Up @@ -1447,7 +1447,9 @@ <h4>addMediaSources</h4>
<h4>setShuffleOrder</h4>
<pre class="methodSignature">void&nbsp;setShuffleOrder&#8203;(<a href="source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source">ShuffleOrder</a>&nbsp;shuffleOrder)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Sets the shuffle order.</div>
<div class="block">Sets the shuffle order.

<p>The <a href="source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source"><code>ShuffleOrder</code></a> passed must have the same length as the current playlist (<a href="Player.html#getMediaItemCount()"><code>Player.getMediaItemCount()</code></a>).</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>shuffleOrder</code> - The shuffle order.</dd>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1347,14 +1347,14 @@ <h4>getApplicationLooper</h4>
<ul class="blockList">
<li class="blockList">
<h4>addListener</h4>
<pre class="methodSignature">@CallSuper
public&nbsp;void&nbsp;addListener&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</pre>
<pre class="methodSignature">public&nbsp;void&nbsp;addListener&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Calls <a href="Player.html#addListener(com.google.android.exoplayer2.Player.Listener)"><code>Player.addListener(Listener)</code></a> on the delegate.

<p>Overrides of this method must delegate to <code>super.addListener</code> and not <code>
delegate.addListener</code>, in order to ensure the correct <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> instance is passed to
<a href="Player.Listener.html#onEvents(com.google.android.exoplayer2.Player,com.google.android.exoplayer2.Player.Events)"><code>Player.Listener.onEvents(Player, Events)</code></a> (i.e. this forwarding instance, and not the
<p>Overrides of this method must <strong>not</strong> directly call <code>
delegate.addListener</code>. If the override wants to pass the <a href="Player.Listener.html" title="interface in com.google.android.exoplayer2"><code>Player.Listener</code></a> instance to
the delegate <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>, it must do so by calling <code>super.addListener</code> instead. This
ensures the correct <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a> instance is passed to <a href="Player.Listener.html#onEvents(com.google.android.exoplayer2.Player,com.google.android.exoplayer2.Player.Events)"><code>Player.Listener.onEvents(Player, Events)</code></a> (i.e. this forwarding instance, and not the
underlying <code>delegate</code> instance).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
Expand All @@ -1370,14 +1370,13 @@ <h4>addListener</h4>
<ul class="blockList">
<li class="blockList">
<h4>removeListener</h4>
<pre class="methodSignature">@CallSuper
public&nbsp;void&nbsp;removeListener&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</pre>
<pre class="methodSignature">public&nbsp;void&nbsp;removeListener&#8203;(<a href="Player.Listener.html" title="interface in com.google.android.exoplayer2">Player.Listener</a>&nbsp;listener)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block">Calls <a href="Player.html#removeListener(com.google.android.exoplayer2.Player.Listener)"><code>Player.removeListener(Listener)</code></a> on the delegate.

<p>Overrides of this method must delegate to <code>super.removeListener</code> and not <code>
delegate.removeListener</code>, in order to ensure the listener 'matches' the listener added via
<a href="#addListener(com.google.android.exoplayer2.Player.Listener)"><code>addListener(com.google.android.exoplayer2.Player.Listener)</code></a> (otherwise the listener registered on the delegate won't be removed).</div>
<p>Overrides of this method must <strong>not</strong> directly call <code>
delegate.removeListener</code>. If the override wants to pass the <a href="Player.Listener.html" title="interface in com.google.android.exoplayer2"><code>Player.Listener</code></a> instance to
the delegate <a href="Player.html" title="interface in com.google.android.exoplayer2"><code>Player</code></a>, it must do so by calling <code>super.removeListener</code> instead.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Player.html#removeListener(com.google.android.exoplayer2.Player.Listener)">removeListener</a></code>&nbsp;in interface&nbsp;<code><a href="Player.html" title="interface in com.google.android.exoplayer2">Player</a></code></dd>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ <h2 title="Interface Renderer" class="title">Interface Renderer</h2>
valid state transitions are shown below, annotated with the methods that are called during each
transition.

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/renderer-states.svg" alt="Renderer state transitions"></div>
<p style="align:center"><img src="https://developer.android.com/static/images/reference/com/google/android/exoplayer2/renderer-states.svg" alt="Renderer state transitions"></div>
</li>
</ul>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3199,7 +3199,9 @@ <h4>setShuffleOrder</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setShuffleOrder&#8203;(<a href="source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source">ShuffleOrder</a>&nbsp;shuffleOrder)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="ExoPlayer.html#setShuffleOrder(com.google.android.exoplayer2.source.ShuffleOrder)">ExoPlayer</a></code></span></div>
<div class="block">Sets the shuffle order.</div>
<div class="block">Sets the shuffle order.

<p>The <a href="source/ShuffleOrder.html" title="interface in com.google.android.exoplayer2.source"><code>ShuffleOrder</code></a> passed must have the same length as the current playlist (<a href="Player.html#getMediaItemCount()"><code>Player.getMediaItemCount()</code></a>).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="ExoPlayer.html#setShuffleOrder(com.google.android.exoplayer2.source.ShuffleOrder)">setShuffleOrder</a></code>&nbsp;in interface&nbsp;<code><a href="ExoPlayer.html" title="interface in com.google.android.exoplayer2">ExoPlayer</a></code></dd>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ <h2 title="Class Timeline.Period" class="title">Class Timeline.Period</h2>
<p>The figure below shows some of the information defined by a period, as well as how this
information relates to a corresponding <a href="Timeline.Window.html" title="class in com.google.android.exoplayer2"><code>Timeline.Window</code></a> in the timeline.

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-period.svg" alt="Information defined by a period"></div>
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-period.svg" alt="Information defined by a period"></div>
</li>
</ul>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,7 @@ <h2 title="Class Timeline.Window" class="title">Class Timeline.Window</h2>
shows some of the information defined by a window, as well as how this information relates to
corresponding <a href="Timeline.Period.html" title="class in com.google.android.exoplayer2"><code>Periods</code></a> in the timeline.

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-window.svg" alt="Information defined by a timeline window"></div>
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-window.svg" alt="Information defined by a timeline window"></div>
</li>
</ul>
</div>
Expand Down
14 changes: 7 additions & 7 deletions docs/doc/reference/com/google/android/exoplayer2/Timeline.html
Original file line number Diff line number Diff line change
Expand Up @@ -169,7 +169,7 @@ <h2 title="Class Timeline" class="title">Class Timeline</h2>

<h2 id="single-file">Single media file or on-demand stream</h2>

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-single-file.svg" alt="Example timeline for a single file">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-single-file.svg" alt="Example timeline for a single file">

<p>A timeline for a single media file or on-demand stream consists of a single period and window.
The window spans the whole period, indicating that all parts of the media are available for
Expand All @@ -178,7 +178,7 @@ <h2 id="single-file">Single media file or on-demand stream</h2>

<h2>Playlist of media files or on-demand streams</h2>

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-playlist.svg" alt="Example timeline for a playlist of files">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-playlist.svg" alt="Example timeline for a playlist of files">

<p>A timeline for a playlist of media files or on-demand streams consists of multiple periods,
each with its own window. Each window spans the whole of the corresponding period, and typically
Expand All @@ -188,7 +188,7 @@ <h2>Playlist of media files or on-demand streams</h2>

<h2 id="live-limited">Live stream with limited availability</h2>

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-live-limited.svg" alt="Example timeline for a live stream with limited availability">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-live-limited.svg" alt="Example timeline for a live stream with limited availability">

<p>A timeline for a live stream consists of a period whose duration is unknown, since it's
continually extending as more content is broadcast. If content only remains available for a
Expand All @@ -200,15 +200,15 @@ <h2 id="live-limited">Live stream with limited availability</h2>

<h2>Live stream with indefinite availability</h2>

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-live-indefinite.svg" alt="Example timeline for a live stream with indefinite availability">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-live-indefinite.svg" alt="Example timeline for a live stream with indefinite availability">

<p>A timeline for a live stream with indefinite availability is similar to the <a href="#live-limited">Live stream with limited availability</a> case, except that the window
starts at the beginning of the period to indicate that all of the previously broadcast content
can still be played.

<h2 id="live-multi-period">Live stream with multiple periods</h2>

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-live-multi-period.svg" alt="Example timeline for a live stream with multiple periods">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-live-multi-period.svg" alt="Example timeline for a live stream with multiple periods">

<p>This case arises when a live stream is explicitly divided into separate periods, for example
at content boundaries. This case is similar to the <a href="#live-limited">Live stream with
Expand All @@ -217,7 +217,7 @@ <h2 id="live-multi-period">Live stream with multiple periods</h2>

<h2>On-demand stream followed by live stream</h2>

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-advanced.svg" alt="Example timeline for an on-demand stream followed by a live stream">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-advanced.svg" alt="Example timeline for an on-demand stream followed by a live stream">

<p>This case is the concatenation of the <a href="#single-file">Single media file or on-demand
stream</a> and <a href="#multi-period">Live stream with multiple periods</a> cases. When playback
Expand All @@ -226,7 +226,7 @@ <h2>On-demand stream followed by live stream</h2>

<h2 id="single-file-midrolls">On-demand stream with mid-roll ads</h2>

<p style="align:center"><img src="https://exoplayer.dev/doc/reference/com/google/android/exoplayer2/doc-files/timeline-single-file-midrolls.svg" alt="Example timeline for an on-demand stream with mid-roll ad groups">
<p style="align:center"><img src="https://developer.android.com/static/images/reference/androidx/media3/common/timeline-single-file-midrolls.svg" alt="Example timeline for an on-demand stream with mid-roll ad groups">

<p>This case includes mid-roll ad groups, which are defined as part of the timeline's single
period. The period can be queried for information about the ad groups and the ads they contain.</div>
Expand Down
Loading

0 comments on commit 03cadd2

Please sign in to comment.