From ca190c084bd9ef8c281fac7655344d48f265042c Mon Sep 17 00:00:00 2001 From: michaelkatz Date: Mon, 21 Nov 2022 14:01:17 +0000 Subject: [PATCH] Version bump to exoplayer:2.18.2 and media3:1.0.0-beta03 #minor-release PiperOrigin-RevId: 489959918 --- .github/ISSUE_TEMPLATE/bug.yml | 1 + RELEASENOTES.md | 109 ++++++++++++++++++ constants.gradle | 4 +- .../exoplayer2/ExoPlayerLibraryInfo.java | 6 +- 4 files changed, 115 insertions(+), 5 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml index 97e431f75b1..62889430ef2 100644 --- a/.github/ISSUE_TEMPLATE/bug.yml +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -18,6 +18,7 @@ body: label: ExoPlayer Version description: What version of ExoPlayer are you using? options: + - 2.18.2 - 2.18.1 - 2.18.0 - 2.17.1 diff --git a/RELEASENOTES.md b/RELEASENOTES.md index d8194abf8f4..05230f75297 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -1,5 +1,114 @@ # Release notes +### 2.18.2 (2022-11-22) + +This release corresponds to the +[AndroidX Media3 1.0.0-beta03 release](https://github.com/androidx/media/releases/tag/1.0.0-beta03). + +* Core library: + * Add `ExoPlayer.isTunnelingEnabled` to check if tunneling is enabled for + the currently selected tracks + ([#2518](https://github.com/google/ExoPlayer/issues/2518)). + * Use `SingleThreadExecutor` for releasing `AudioTrack` instances to avoid + OutOfMemory errors when releasing multiple players at the same time + ([#10057](https://github.com/google/ExoPlayer/issues/10057)). + * Limit parallel download removals to 1 to avoid excessive thread creation + ([#10458](https://github.com/google/ExoPlayer/issues/10458)). + * Discard back buffer before playback gets stuck due to insufficient + available memory. + * Close the Tracing "doSomeWork" block when offload is enabled. + * Try alternative decoder for Dolby Vision if display does not support it. + ([#9794](https://github.com/google/ExoPlayer/issues/9794)). + * Prefer other tracks to Dolby Vision if display does not support it. + ([#8944](https://github.com/google/ExoPlayer/issues/8944)). + * Fix session tracking problem with fast seeks in `PlaybackStatsListener` + ([#180](https://github.com/androidx/media/issues/180)). + * Send missing `onMediaItemTransition` callback when calling `seekToNext` + or `seekToPrevious` in a single-item playlist + ([#10667](https://github.com/google/ExoPlayer/issues/10667)). + * Enforce minimum `compileSdkVersion` to avoid compilation errors + ([#10684](https://github.com/google/ExoPlayer/issues/10684)). + * Add `Player.getSurfaceSize` that returns the size of the surface on + which the video is rendered. + * Fix bug where removing listeners during the player release can cause an + `IllegalStateException` + ([#10758](https://github.com/google/ExoPlayer/issues/10758)). +* Build: + * Avoid publishing block when included in another gradle build. +* Downloads: + * Fix potential infinite loop in `ProgressiveDownloader` caused by + simultaneous download and playback with the same `PriorityTaskManager` + ([#10570](https://github.com/google/ExoPlayer/pull/10570)). + * Make download notification appear immediately + ([#183](https://github.com/androidx/media/pull/183)) +* Audio: + * Adds `AudioOffloadListener.onExperimentalOffloadedPlayback` for the + AudioTrack offload state. + ([#134](https://github.com/androidx/media/issues/134)). + * Make `AudioTrackBufferSizeProvider` a public interface. + * Add `WrappingMediaSource` to simplify wrapping a single `MediaSource` + ([#7279](https://github.com/google/ExoPlayer/issues/7279)). + * Add `ExoPlayer.setPreferredAudioDevice` to set the preferred audio + output device ([#135](https://github.com/androidx/media/issues/135)). + * Rename `com.google.android.exoplayer2.audio.AudioProcessor` to + `com.google.android.exoplayer2.audio.AudioProcessor`. + * Map 8-channel and 12-channel audio to the 7.1 and 7.1.4 channel masks + respectively on all Android versions + ([#10701](https://github.com/google/ExoPlayer/issues/10701)). +* Metadata: + * `MetadataRenderer` can now be configured to render metadata as soon as + they are available. Create an instance with + `MetadataRenderer(MetadataOutput, Looper, MetadataDecoderFactory, + boolean)` to specify whether the renderer will output metadata early or + in sync with the player position. +* DRM: + * Work around a bug in the Android 13 ClearKey implementation that returns + a non-empty but invalid license URL. + * Fix `setMediaDrmSession failed: session not opened` error when switching + between DRM schemes in a playlist (e.g. Widevine to ClearKey). +* Text: + * CEA-608: Ensure service switch commands on field 2 are handled correctly + ([#10666](https://github.com/google/ExoPlayer/issues/10666)). +* DASH: + * Parse `EventStream.presentationTimeOffset` from manifests + ([#10460](https://github.com/google/ExoPlayer/issues/10460)). +* UI: + * Use current overrides of the player as preset in + `TrackSelectionDialogBuilder` + ([#10429](https://github.com/google/ExoPlayer/issues/10429)). +* RTSP: + * Add H263 fragmented packet handling + ([#119](https://github.com/androidx/media/pull/119)). + * Add support for MP4A-LATM + ([#162](https://github.com/androidx/media/pull/162)). +* IMA: + * Add timeout for loading ad information to handle cases where the IMA SDK + gets stuck loading an ad + ([#10510](https://github.com/google/ExoPlayer/issues/10510)). + * Prevent skipping mid-roll ads when seeking to the end of the content + ([#10685](https://github.com/google/ExoPlayer/issues/10685)). + * Correctly calculate window duration for live streams with server-side + inserted ads, for example IMA DAI + ([#10764](https://github.com/google/ExoPlayer/issues/10764)). +* FFmpeg extension: + * Add newly required flags to link FFmpeg libraries with NDK 23.1.7779620 + and above ([#9933](https://github.com/google/ExoPlayer/issues/9933)). +* AV1 extension: + * Update CMake version to avoid incompatibilities with the latest Android + Studio releases + ([#9933](https://github.com/google/ExoPlayer/issues/9933)). +* Cast extension: + * Implement `getDeviceInfo()` to be able to identify `CastPlayer` when + controlling playback with a `MediaController` + ([#142](https://github.com/androidx/media/issues/142)). +* Transformer: + * Add muxer watchdog timer to detect when generating an output sample is + too slow. +* Remove deprecated symbols: + * Remove `Transformer.Builder.setOutputMimeType(String)`. This feature has + been removed. The MIME type will always be MP4 when the default muxer is + used. + ### 2.18.1 (2022-07-21) This release corresponds to the diff --git a/constants.gradle b/constants.gradle index afedfe1ec1e..3068e7646b5 100644 --- a/constants.gradle +++ b/constants.gradle @@ -13,8 +13,8 @@ // limitations under the License. project.ext { // ExoPlayer version and version code. - releaseVersion = '2.18.1' - releaseVersionCode = 2_018_001 + releaseVersion = '2.18.2' + releaseVersionCode = 2_018_002 minSdkVersion = 16 appTargetSdkVersion = 33 // API version before restricting local file access. diff --git a/library/common/src/main/java/com/google/android/exoplayer2/ExoPlayerLibraryInfo.java b/library/common/src/main/java/com/google/android/exoplayer2/ExoPlayerLibraryInfo.java index 42ed0dc1aa2..c2e67dfb6be 100644 --- a/library/common/src/main/java/com/google/android/exoplayer2/ExoPlayerLibraryInfo.java +++ b/library/common/src/main/java/com/google/android/exoplayer2/ExoPlayerLibraryInfo.java @@ -27,11 +27,11 @@ public final class ExoPlayerLibraryInfo { /** The version of the library expressed as a string, for example "1.2.3". */ // Intentionally hardcoded. Do not derive from other constants (e.g. VERSION_INT) or vice versa. - public static final String VERSION = "2.18.1"; + public static final String VERSION = "2.18.2"; /** The version of the library expressed as {@code TAG + "/" + VERSION}. */ // Intentionally hardcoded. Do not derive from other constants (e.g. VERSION) or vice versa. - public static final String VERSION_SLASHY = "ExoPlayerLib/2.18.1"; + public static final String VERSION_SLASHY = "ExoPlayerLib/2.18.2"; /** * The version of the library expressed as an integer, for example 1002003. @@ -41,7 +41,7 @@ public final class ExoPlayerLibraryInfo { * integer version 123045006 (123-045-006). */ // Intentionally hardcoded. Do not derive from other constants (e.g. VERSION) or vice versa. - public static final int VERSION_INT = 2_018_001; + public static final int VERSION_INT = 2_018_002; /** Whether the library was compiled with {@link Assertions} checks enabled. */ public static final boolean ASSERTIONS_ENABLED = true;