Skip to content

Commit

Permalink
Merge pull request #9462 from google/dev-v2-r2.15.1
Browse files Browse the repository at this point in the history
r2.15.1
  • Loading branch information
christosts authored Sep 22, 2021
2 parents 02f7aaf + 5588dca commit 2a88f0f
Show file tree
Hide file tree
Showing 107 changed files with 2,097 additions and 621 deletions.
3 changes: 1 addition & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -115,9 +115,8 @@ Next, add the following to your project's `settings.gradle` file, replacing
`path/to/exoplayer` with the path to your local copy:

```gradle
gradle.ext.exoplayerRoot = 'path/to/exoplayer'
gradle.ext.exoplayerModulePrefix = 'exoplayer-'
apply from: file("$gradle.ext.exoplayerRoot/core_settings.gradle")
apply from: file("path/to/exoplayer/core_settings.gradle")
```

You should now see the ExoPlayer modules appear as part of your project. You can
Expand Down
67 changes: 67 additions & 0 deletions RELEASENOTES.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,72 @@
# Release notes

### 2.15.1 (2021-09-20)

* Core Library:
* Fix track selection in `StyledPlayerControlView` when using
`ForwardingPlayer`.
* Fix `FlagSet#equals` on API levels below 24.
* Fix `NullPointerException` being thrown from `CacheDataSource` when
reading a fully cached resource with `DataSpec.position` equal to the
resource length.
* Fix a bug when [depending on ExoPlayer locally](README.md#locally) with
a relative path
([#9403](https://github.com/google/ExoPlayer/issues/9403)).
* Better handle invalid seek requests. Seeks to positions that are before
the start or after the end of the media are now handled as seeks to the
start and end respectively
([8906](https://github.com/google/ExoPlayer/issues/8906)).
* Rename `MimeTypes.AUDIO_DTS_UHD` to `MimeTypes.AUDIO_DTS_X` and add
required profile to its value
([#9429](https://github.com/google/ExoPlayer/issues/9429)).
* Extractors:
* Support TS packets without PTS flag
([#9294](https://github.com/google/ExoPlayer/issues/9294)).
* Fix issue decoding ID3 tags containing UTF-16 encoded strings
([#9087](https://github.com/google/ExoPlayer/issues/9087)).
* Video:
* Request smaller decoder input buffers for Dolby Vision. This fixes an
issue that could cause UHD Dolby Vision playbacks to fail on some
devices, including Amazon Fire TV 4K.
* DRM:
* Fix `DefaultDrmSessionManager` to correctly eagerly release preacquired
DRM sessions when there's a shortage of DRM resources on the device.
* Downloads and caching:
* Workaround platform issue that can cause a `SecurityException` to be
thrown from `Requirements.isInternetConnectivityValidated` on devices
running Android 11
([#9002](https://github.com/google/ExoPlayer/issues/9002)).
* DASH:
* Use identical cache keys for downloading and playing DASH segments
([#9370](https://github.com/google/ExoPlayer/issues/9370)).
* Fix base URL selection and load error handling when base URLs are shared
across adaptation sets.
* HLS:
* Fix bug where the player would get stuck if all download attempts fail
and would not raise an error to the application
([#9390](https://github.com/google/ExoPlayer/issues/9390)).
* RTSP:
* Handle when additional spaces are in SDP's RTPMAP atrribute
([#9379](https://github.com/google/ExoPlayer/issues/9379)).
* Handle partial URIs in RTP-Info headers
([#9346](https://github.com/google/ExoPlayer/issues/9346)).
* Fix RTSP Session header handling
([#9416](https://github.com/google/ExoPlayer/issues/9416)).
* Fix RTSP WWW-Authenticate header parsing
([#9428](https://github.com/google/ExoPlayer/issues/9428)).
* UI:
* Use `defStyleAttr` when obtaining styled attributes in
`StyledPlayerView`, `PlayerView` and `PlayerControlView`
([#9024](https://github.com/google/ExoPlayer/issues/9024)).
* Fix accessibility focus in `PlayerControlView`
([#9111](https://github.com/google/ExoPlayer/issues/9111)).
* Fix issue that `StyledPlayerView` and `PlayerView` don't update UI when
available player commands change.
* Cast extension:
* Implement `CastPlayer.setPlaybackParameters(PlaybackParameters)` to
support setting the playback speed
([#6784](https://github.com/google/ExoPlayer/issues/6784)).

### 2.15.0 (2021-08-10)

* Core Library:
Expand Down
4 changes: 2 additions & 2 deletions constants.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@
// limitations under the License.
project.ext {
// ExoPlayer version and version code.
releaseVersion = '2.15.0'
releaseVersionCode = 2015000
releaseVersion = '2.15.1'
releaseVersionCode = 2015001
minSdkVersion = 16
appTargetSdkVersion = 29
targetSdkVersion = 30
Expand Down
2 changes: 1 addition & 1 deletion core_settings.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
def rootDir = file(gradle.ext.exoplayerRoot)
def rootDir = file(".")
if (!gradle.ext.has('exoplayerSettingsDir')) {
gradle.ext.exoplayerSettingsDir = rootDir.getCanonicalPath()
}
Expand Down
13 changes: 13 additions & 0 deletions demos/main/src/main/assets/media.exolist.json
Original file line number Diff line number Diff line change
Expand Up @@ -212,6 +212,19 @@
}
]
},
{
"name": "DASH - Multiple base URLs",
"samples": [
{
"name": "DASH - Multiple base URLs",
"uri": "https://storage.googleapis.com/exoplayer-test-media-0/dash-multiple-base-urls/manifest.mpd"
},
{
"name": "DASH - Multiple base URLs (fail over)",
"uri": "https://storage.googleapis.com/exoplayer-test-media-0/dash-multiple-base-urls/manifest-failover.mpd"
}
]
},
{
"name": "HLS",
"samples": [
Expand Down
2 changes: 1 addition & 1 deletion docs/demo-application.md
Original file line number Diff line number Diff line change
Expand Up @@ -174,7 +174,7 @@ file at `https://yourdomain.com/samples.exolist.json`, you can open it in the
demo app using:

~~~
adb shell am start -a com.android.action.VIEW \
adb shell am start -a android.intent.action.VIEW \
-d https://yourdomain.com/samples.exolist.json
~~~
{: .language-shell}
Expand Down
4 changes: 2 additions & 2 deletions docs/doc/reference/allclasses-index.html
Original file line number Diff line number Diff line change
Expand Up @@ -879,7 +879,7 @@ <h1 title="All&amp;nbsp;Classes" class="title">All&nbsp;Classes</h1>
<tr id="i126" class="altColor">
<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>
<th class="colLast" scope="row">
<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 <a href="com/google/android/exoplayer2/source/dash/BaseUrlExclusionList.html#selectBaseUrl(java.util.List)"><code>to select</code></a> a base URL based on these exclusions.</div>
<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>
</th>
</tr>
<tr id="i127" class="rowColor">
Expand Down Expand Up @@ -6270,7 +6270,7 @@ <h1 title="All&amp;nbsp;Classes" class="title">All&nbsp;Classes</h1>
<tr id="i1011" class="rowColor">
<td class="colFirst"><a href="com/google/android/exoplayer2/offline/StreamKey.html" title="class in com.google.android.exoplayer2.offline">StreamKey</a></td>
<th class="colLast" scope="row">
<div class="block">A key for a subset of media which can be separately loaded (a "stream").</div>
<div class="block">A key for a subset of media that can be separately loaded (a "stream").</div>
</th>
</tr>
<tr id="i1012" class="altColor">
Expand Down
Loading

0 comments on commit 2a88f0f

Please sign in to comment.