Skip to content

Commit 0106f02

Browse files
authored
Merge pull request #11062 from google/release-v2-r2.18.5
r2.18.5
2 parents 4aa5467 + 1bfde98 commit 0106f02

File tree

107 files changed

+377
-268
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

107 files changed

+377
-268
lines changed

.github/ISSUE_TEMPLATE/bug.yml

Lines changed: 13 additions & 107 deletions
Original file line numberDiff line numberDiff line change
@@ -2,112 +2,18 @@ name: Bug Report
22
description: Report a bug in the ExoPlayer library
33
labels: ["bug", "needs triage"]
44
body:
5-
- type: markdown
6-
attributes:
7-
value: |
8-
We can only process bug reports that are actionable. Unclear bug reports or reports with insufficient information may not get attention.
5+
- type: markdown
6+
attributes:
7+
value: |
8+
**Please do not file new issues in this repository.**
99
10-
Before filing a bug:
11-
-------------------------
10+
All new bugs should be filed in the
11+
[Media3 issue tracker](https://github.com/androidx/media/issues/new?template=bug.yml).
1212
13-
- Search existing issues, including issues that are closed: https://github.com/google/ExoPlayer/issues?q=is%3Aissue
14-
- Consult our developer website: https://exoplayer.dev/
15-
- Check the supported formats: https://exoplayer.dev/supported-formats.html
16-
- type: dropdown
17-
attributes:
18-
label: ExoPlayer Version
19-
description: What version of ExoPlayer are you using?
20-
options:
21-
- 2.18.4
22-
- 2.18.3
23-
- 2.18.2
24-
- 2.18.1
25-
- 2.18.0
26-
- 2.17.1
27-
- 2.17.0
28-
- 2.16.1
29-
- 2.16.0
30-
- 2.15.1
31-
- 2.15.0
32-
- 2.14.2
33-
- 2.14.1
34-
- 2.14.0
35-
- 2.13.3
36-
- Older (unsupported)
37-
validations:
38-
required: true
39-
- type: textarea
40-
attributes:
41-
label: Devices that reproduce the issue
42-
placeholder: |
43-
Example:
44-
* Pixel 4 running Android 12
45-
* Samsung S21 running Android 11
46-
validations:
47-
required: true
48-
- type: textarea
49-
attributes:
50-
label: Devices that do not reproduce the issue
51-
placeholder: |
52-
Example:
53-
* Pixel 3 running Android Pie
54-
- type: dropdown
55-
attributes:
56-
label: Reproducible in the demo app?
57-
description: Please try and reproduce the issue in the [ExoPlayer demo app](https://exoplayer.dev/demo-application.html).
58-
options:
59-
- "Yes"
60-
- "No"
61-
- Not tested
62-
validations:
63-
required: true
64-
- type: textarea
65-
attributes:
66-
label: Reproduction steps
67-
description: Clear and complete steps we can use to reproduce the problem
68-
placeholder: |
69-
Example:
70-
1. Play the attached media in the demo app
71-
2. Seek forward 10s
72-
validations:
73-
required: true
74-
- type: textarea
75-
attributes:
76-
label: Expected result
77-
placeholder: |
78-
Example:
79-
The media plays successfully
80-
validations:
81-
required: true
82-
- type: textarea
83-
attributes:
84-
label: Actual result
85-
placeholder: |
86-
Example:
87-
Playback crashes with the following stack trace:
88-
...
89-
validations:
90-
required: true
91-
- type: textarea
92-
attributes:
93-
label: Media
94-
description: |
95-
Media we can use to reproduce the problem. Either:
96-
* Attach a file here
97-
* Include a media URL
98-
* Refer to a piece of media from the demo app (e.g. `Misc > Dizzy (MP4)`)
99-
* If you don't want to post media publicly please email the info to [email protected] with subject 'Issue #\<issuenumber\>' after filing this issue, and note that you will do this here.
100-
* If you are certain the issue does not depend on the media being played, enter "Not applicable" here.
101-
102-
For DRM-protected media please also include the scheme and license server URL.
103-
validations:
104-
required: true
105-
- type: checkboxes
106-
attributes:
107-
label: Bug Report
108-
description: |
109-
After filing this issue please run `adb bugreport` shortly after reproducing the problem (ideally in the [demo app](https://exoplayer.dev/demo-application.html)) to capture a zip file, and email this to [email protected] with subject 'Issue #\<issuenumber\>'.
110-
111-
**Note:** Logcat output is **not** the same as a full bug report, and is often missing information that's useful for diagnosing issues. Please ensure you're sending a full bug report zip file.
112-
options:
113-
- label: You will email the zip file produced by `adb bugreport` to [email protected] after filing this issue.
13+
We will continue to update and reply to existing issues in this repository
14+
and will keep existing feature requests active.
15+
- type: textarea
16+
attributes:
17+
label: Bug
18+
validations:
19+
required: true

.github/ISSUE_TEMPLATE/feature_request.md

Lines changed: 5 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,10 @@ labels: enhancement, needs triage
66
assignees: ''
77
---
88

9-
Before filing a feature request:
10-
-----------------------
11-
- Search existing open issues, specifically with the label ‘enhancement’:
12-
https://github.com/google/ExoPlayer/labels/enhancement
13-
- Search existing pull requests: https://github.com/google/ExoPlayer/pulls
9+
**Please do not file new issues in this repository.**
1410

15-
When filing a feature request:
16-
-----------------------
17-
Replace the content in the sections below.
11+
All new feature requests should be filed in the
12+
[Media3 issue tracker](https://github.com/androidx/media/issues/new?template=feature_request.md).
1813

19-
### [REQUIRED] Use case description
20-
Describe the use case or problem you are trying to solve in detail. If there are
21-
any standards or specifications involved, please provide the relevant details.
22-
23-
### Proposed solution
24-
A clear and concise description of your proposed solution, if you have one.
25-
26-
### Alternatives considered
27-
A clear and concise description of any alternative solutions you considered,
28-
if applicable.
14+
We will continue to update and reply to existing issues in this repository and
15+
will keep existing feature requests active.

.github/ISSUE_TEMPLATE/question.md

Lines changed: 5 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -6,38 +6,10 @@ labels: question, needs triage
66
assignees: ''
77
---
88

9-
Unfortunately we can't answer all questions. Unclear questions or questions with
10-
insufficient information may not get attention.
9+
**Please do not file new issues in this repository.**
1110

12-
Before filing a question:
13-
-------------------------
11+
All new questions should be filed in the
12+
[Media3 issue tracker](https://github.com/androidx/media/issues/new?template=question.md).
1413

15-
- Ask general Android development questions on Stack Overflow
16-
- Search existing issues, including issues that are closed
17-
https://github.com/google/ExoPlayer/issues?q=is%3Aissue
18-
- Consult our developer website (https://exoplayer.dev/) and Javadoc
19-
(https://exoplayer.dev/doc/reference/)
20-
21-
When filing a question:
22-
-------------------------
23-
24-
Describe your question in detail.
25-
26-
In case your question refers to a problem you are seeing in your app:
27-
28-
- Output of running `$ adb bugreport` in the console
29-
30-
In case your question is related to a piece of media:
31-
32-
- URI to test content
33-
- For protected content:
34-
- DRM scheme and license server URL
35-
- Authentication HTTP headers
36-
37-
Don't forget to check supported formats and devices
38-
(https://exoplayer.dev/supported-formats.html).
39-
40-
If there's something you don't want to post publicly, please submit the issue,
41-
then email the link/bug report to [email protected] using a subject in the
42-
format "Issue #1234", where #1234 is your issue number (we don't reply to
43-
emails).
14+
We will continue to update and reply to existing issues in this repository and
15+
will keep existing feature requests active.

CONTRIBUTING.md

Lines changed: 4 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -2,40 +2,7 @@
22

33
## Reporting issues ##
44

5-
We use the [GitHub issue tracker](https://github.com/google/ExoPlayer/issues)
6-
to track bugs, feature requests and questions.
7-
8-
Before filing a new issue, please search the tracker to check if it's already
9-
covered by an existing report. Avoiding duplicates helps us maximize the time we
10-
can spend fixing bugs and adding new features.
11-
12-
When filing an issue, be sure to provide enough information for us to
13-
efficiently diagnose and reproduce the problem. In particular, please include
14-
all of the information requested in the issue template.
15-
16-
## Pull requests ##
17-
18-
We will also consider high quality pull requests. These should merge
19-
into the `dev-v2` branch. Before a pull request can be accepted you must submit
20-
a Contributor License Agreement, as described below.
21-
22-
## Contributor license agreement ##
23-
24-
Contributions to any Google project must be accompanied by a Contributor
25-
License Agreement. This is not a copyright **assignment**, it simply gives
26-
Google permission to use and redistribute your contributions as part of the
27-
project.
28-
29-
* If you are an individual writing original source code and you're sure you
30-
own the intellectual property, then you'll need to sign an [individual
31-
CLA][].
32-
33-
* If you work for a company that wants to allow you to contribute your work,
34-
then you'll need to sign a [corporate CLA][].
35-
36-
You generally only need to submit a CLA once, so if you've already submitted
37-
one (even if it was for a different project), you probably don't need to do it
38-
again.
39-
40-
[individual CLA]: https://developers.google.com/open-source/cla/individual
41-
[corporate CLA]: https://developers.google.com/open-source/cla/corporate
5+
The ExoPlayer project is now developed as part of the
6+
[AndroidX Media](https://github.com/androidx/media/blob/release/CONTRIBUTING.md)
7+
project. Please use that project to file bugs, feature requests, questions and
8+
pull requests.

README.md

Lines changed: 21 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,35 @@
11
# ExoPlayer <img src="https://img.shields.io/github/v/release/google/ExoPlayer.svg?label=latest"/>
22

3-
ExoPlayer is an application level media player for Android. It provides an
4-
alternative to Android’s MediaPlayer API for playing audio and video both
5-
locally and over the Internet. ExoPlayer supports features not currently
6-
supported by Android’s MediaPlayer API, including DASH and SmoothStreaming
7-
adaptive playbacks. Unlike the MediaPlayer API, ExoPlayer is easy to customize
8-
and extend, and can be updated through Play Store application updates.
3+
ExoPlayer is an application level media player for Android. The latest version
4+
is published as part of [AndroidX Media][] under a new package name and all
5+
future development will be in that project.
6+
7+
Please refer to our [migration guide and script][] to move your codebase to the
8+
Media3 package names.
9+
10+
[AndroidX Media]: https://github.com/androidx/media
11+
[migration guide and script]: https://developer.android.com/guide/topics/media/media3/getting-started/migration-guide
912

1013
## Documentation
1114

12-
* The [developer guide][] provides a wealth of information.
13-
* The [class reference][] documents ExoPlayer classes.
14-
* The [release notes][] document the major changes in each release.
15-
* Follow our [developer blog][] to keep up to date with the latest ExoPlayer
16-
developments!
15+
* The [developer guide][] provides a wealth of information.
16+
* The [class reference][] documents ExoPlayer classes. Note that the classes
17+
are documented with their Media3 package names.
18+
* The [release notes][] document the major changes in each release.
19+
* Follow our [developer blog][] to keep up to date with the latest ExoPlayer
20+
developments!
1721

18-
[developer guide]: https://exoplayer.dev/guide.html
19-
[class reference]: https://exoplayer.dev/doc/reference
22+
[developer guide]: https://developer.android.com/guide/topics/media/exoplayer
23+
[class reference]: https://developer.android.com/reference/androidx/media3/common/package-summary
2024
[release notes]: https://github.com/google/ExoPlayer/blob/release-v2/RELEASENOTES.md
2125
[developer blog]: https://medium.com/google-exoplayer
2226

2327
## Using ExoPlayer
2428

29+
Please refer to
30+
[AndroidX Media](https://github.com/androidx/media/blob/release/README.md) for
31+
the usage instructions of the latest release.
32+
2533
ExoPlayer modules can be obtained from [the Google Maven repository][]. It's
2634
also possible to clone the repository and depend on the modules locally.
2735

@@ -125,16 +133,3 @@ implementation project(':exoplayer-library-core')
125133
implementation project(':exoplayer-library-dash')
126134
implementation project(':exoplayer-library-ui')
127135
```
128-
129-
## Developing ExoPlayer
130-
131-
#### Project branches
132-
133-
* Development work happens on the `dev-v2` branch. Pull requests should
134-
normally be made to this branch.
135-
* The `release-v2` branch holds the most recent release.
136-
137-
#### Using Android Studio
138-
139-
To develop ExoPlayer using Android Studio, simply open the ExoPlayer project in
140-
the root directory of the repository.

RELEASENOTES.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# Release notes
22

3+
### 2.18.5 (2023-03-22)
4+
5+
This release corresponds to the
6+
[AndroidX Media3 1.0.0 release](https://github.com/androidx/media/releases/tag/1.0.0).
7+
8+
There are no changes since 2.18.4.
9+
310
### 2.18.4 (2023-03-02)
411

512
This release corresponds to the

constants.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313
// limitations under the License.
1414
project.ext {
1515
// ExoPlayer version and version code.
16-
releaseVersion = '2.18.4'
17-
releaseVersionCode = 2_018_004
16+
releaseVersion = '2.18.5'
17+
releaseVersionCode = 2_018_005
1818
minSdkVersion = 16
1919
appTargetSdkVersion = 33
2020
// API version before restricting local file access.

docs/ad-insertion.md

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
title: Ad insertion
33
---
44

5+
This documentation may be out-of-date. Please refer to the
6+
[documentation for the latest ExoPlayer release][] on developer.android.com.
7+
{:.info}
8+
59
ExoPlayer can be used for both client-side and server-side ad insertion.
610

711
## Client-side ad insertion ##
@@ -310,10 +314,11 @@ metadata.
310314

311315
Often, server-side inserted ad streams contain timed events to notify the player
312316
about ad metadata. Please see [supported formats][] for information on what
313-
timed metadata formats are supported by ExoPlayer. Custom ads SDK `MediaSource`s
314-
can listen for timed metadata events from the player, e.g., via
315-
`ExoPlayer.addMetadataOutput`.
317+
timed metadata formats are supported by ExoPlayer. Custom ads SDK `MediaSource`
318+
implementations can listen for timed metadata events from the player via
319+
`Player.Listener.onMetadata`.
316320

321+
[documentation for the latest ExoPlayer release]: https://developer.android.com/guide/topics/media/exoplayer/ad-insertion
317322
[VAST]: https://www.iab.com/wp-content/uploads/2015/06/VASTv3_0.pdf
318323
[VMAP]: https://www.iab.com/guidelines/digital-video-multiple-ad-playlist-vmap-1-0-1/
319324
[ExoPlayer UI components]: {{ site.baseurl }}/ui-components.html

docs/analytics.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
title: Analytics
33
---
44

5+
This documentation may be out-of-date. Please refer to the
6+
[documentation for the latest ExoPlayer release][] on developer.android.com.
7+
{:.info}
8+
59
ExoPlayer supports a wide range of playback analytics needs. Ultimately,
610
analytics is about collecting, interpreting, aggregating and summarizing data
711
from playbacks. This data can be used either on the device, for example for
@@ -260,5 +264,6 @@ player.addAnalyticsListener(new ExtendedListener() {
260264
~~~
261265
{: .language-java}
262266

267+
[documentation for the latest ExoPlayer release]: https://developer.android.com/guide/topics/media/exoplayer/analytics
263268
[`PlaybackStats` Javadoc]: {{ site.exo_sdk }}/analytics/PlaybackStats.html
264269
[aggregate the analytics data]: {{ site.baseurl }}/analytics.html#aggregate-analytics-data-of-multiple-playbacks

docs/battery-consumption.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
title: Battery consumption
33
---
44

5+
This documentation may be out-of-date. Please refer to the
6+
[documentation for the latest ExoPlayer release][] on developer.android.com.
7+
{:.info}
8+
59
## How important is battery consumption due to media playback? ##
610

711
Avoiding unnecessary battery consumption is an important aspect of developing a
@@ -73,4 +77,5 @@ the increased power consumption for audio only use cases on older devices is
7377
something an app developer must decide, taking their requirements and app usage
7478
patterns into account.
7579

80+
[documentation for the latest ExoPlayer release]: https://developer.android.com/guide/topics/media/exoplayer/battery-consumption
7681
[Monsoon power monitor]: https://www.msoon.com/battery-configuration

0 commit comments

Comments
 (0)