diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 910781495c..19ceda9499 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -1,63 +1,57 @@ # Release notes -### 2.12.1 ### +### 2.12.1 (2020-10-23) ### * Core library: - * Fix bug where streams with highly uneven durations may get stuck in a - buffering state - ([#7943](https://github.com/google/ExoPlayer/issues/7943)). - * Switch Guava dependency from `implementation` to `api` - ([#7905](https://github.com/google/ExoPlayer/issues/7905), - ([#7993](https://github.com/google/ExoPlayer/issues/7993)). + * Fix bug where streams with highly uneven track durations may get stuck + in a buffering state + * Add 403, 500 and 503 to the list of HTTP status codes that can trigger + failover to another quality variant during adaptive playbacks. * Data sources: * Add support for `android.resource` URI scheme in `RawResourceDataSource` ([#7866](https://github.com/google/ExoPlayer/issues/7866)). * Text: * Add support for `\h` SSA/ASS style override code (non-breaking space). - * Fix WebVTT subtitles in MP4 containers in DASH streams + * Fix playback of WebVTT subtitles in MP4 containers in DASH streams ([#7985](https://github.com/google/ExoPlayer/issues/7985)). - * Fix NPE in `TextRenderer` when playing content with a single subtitle - buffer ([#8017](https://github.com/google/ExoPlayer/issues/8017)). + * Fix `NullPointerException` in `TextRenderer` when playing content with a + single subtitle buffer + ([#8017](https://github.com/google/ExoPlayer/issues/8017)). * UI: - * Show overflow button in `StyledPlayerControlView` only when there is not - enough space. * Fix animation when `StyledPlayerView` first shows its playback controls. - * Allow subtitleButton to be omitted in custom `StyledPlayerView` layouts - ([#7962](https://github.com/google/ExoPlayer/issues/7962)). + * Improve touch targets in `StyledPlayerView` to make tapping easier. + * Allow `subtitleButton` to be omitted in custom `StyledPlayerView` + layouts ([#7962](https://github.com/google/ExoPlayer/issues/7962)). * Add an option to sort tracks by `Format` in `TrackSelectionView` and `TrackSelectionDialogBuilder` ([#7709](https://github.com/google/ExoPlayer/issues/7709)). - * Improve touch targets in `StyledPlayerView` to make tapping easier. * Audio: * Fix the default audio sink position not advancing correctly when using - `AudioTrack`-based speed adjustment + `AudioTrack` based speed adjustment ([#7982](https://github.com/google/ExoPlayer/issues/7982)). * Fix `NoClassDefFoundError` warning for `AudioTrack$StreamEventCallback` - even though the class was not used ([#8058](https://github.com/google/ExoPlayer/issues/8058)). * Extractors: - * Add support for `_mp2` boxes in `Mp4Extractor` - ([#7967](https://github.com/google/ExoPlayer/issues/7967)). - * Fix playback of MP4 and MOV files containing `pcm_alaw` or `pcm_mulaw` - audio tracks, by enabling sample rechunking of such tracks - * Use TLEN ID3 tag to compute the duration in `Mp3Extractor` + * MP4: + * Add support for `_mp2` boxes + ([#7967](https://github.com/google/ExoPlayer/issues/7967)). + * Fix playback of files containing `pcm_alaw` or `pcm_mulaw` audio + tracks, by enabling sample rechunking for such tracks. + * MPEG-TS: + * Add `TsExtractor` parameter to configure the number of bytes in + which to search for timestamps when seeking and determining stream + duration ([#7988](https://github.com/google/ExoPlayer/issues/7988)). + * Ignore negative payload size in PES packets + ([#8005](https://github.com/google/ExoPlayer/issues/8005)). + * MP3: Use TLEN ID3 tag to compute the stream duration ([#7949](https://github.com/google/ExoPlayer/issues/7949)). - * Fix regression for Ogg files with packets that span multiple pages + * Ogg: Fix regression playing files with packets that span multiple pages ([#7992](https://github.com/google/ExoPlayer/issues/7992)). - * Add TS extractor parameter to configure the number of bytes in which - to search for a timestamp to determine the duration and to seek. - ([#7988](https://github.com/google/ExoPlayer/issues/7988)). - * Ignore negative payload size in PES packets - ([#8005](https://github.com/google/ExoPlayer/issues/8005)). - * Make FLV files seekable by using the key frame index + * FLV: Make files seekable by using the key frame index ([#7378](https://github.com/google/ExoPlayer/issues/7378)). -* Adaptive playback (DASH / HLS / SmoothStreaming): - * Add 403, 500 and 503 to the list of HTTP status codes that can trigger - failover to another quality variant. -* HLS: - * Fix crash affecting chunkful preparation of master playlists that start - with an I-FRAME only variant - ([#8025](https://github.com/google/ExoPlayer/issues/8025)). +* HLS: Fix crash affecting chunkful preparation of master playlists that start + with an I-FRAME only variant + ([#8025](https://github.com/google/ExoPlayer/issues/8025)). * IMA extension: * Fix position reporting after fetch errors ([#7956](https://github.com/google/ExoPlayer/issues/7956)). @@ -70,7 +64,7 @@ ([#3750](https://github.com/google/ExoPlayer/issues/3750)). * Add a way to override ad media MIME types ([#7961)(https://github.com/google/ExoPlayer/issues/7961)). - * Fix truncating large cue points in microseconds + * Fix incorrect truncation of large cue point positions ([#8067](https://github.com/google/ExoPlayer/issues/8067)). * Upgrade IMA SDK dependency to 3.20.1. This brings in a fix for companion ads rendering when targeting API 29 @@ -235,7 +229,7 @@ To learn more about what's new in 2.12, read the corresponding * Redefine `Cue.lineType=LINE_TYPE_NUMBER` in terms of aligning the cue text lines to grid of viewport lines. Only consider `Cue.lineAnchor` when `Cue.lineType=LINE_TYPE_FRACTION`. - * WebVTT + * WebVTT: * Add support for default [text](https://www.w3.org/TR/webvtt1/#default-text-color) and [background](https://www.w3.org/TR/webvtt1/#default-text-background) @@ -250,10 +244,10 @@ To learn more about what's new in 2.12, read the corresponding * Parse the `ruby-position` CSS property. * Parse the `text-combine-upright` CSS property (i.e., tate-chu-yoko). * Parse the `` and `` tags. - * TTML + * TTML: * Parse the `tts:combineText` property (i.e., tate-chu-yoko). * Parse t`tts:ruby` and `tts:rubyPosition` properties. - * CEA-608 + * CEA-608: * Implement timing-out of stuck captions, as permitted by ANSI/CTA-608-E R-2014 Annex C.9. The default timeout is set to 16 seconds ([#7181](https://github.com/google/ExoPlayer/issues/7181)). diff --git a/constants.gradle b/constants.gradle index c2b0000368..44a61d6baa 100644 --- a/constants.gradle +++ b/constants.gradle @@ -13,8 +13,8 @@ // limitations under the License. project.ext { // ExoPlayer version and version code. - releaseVersion = '2.12.0' - releaseVersionCode = 2012000 + releaseVersion = '2.12.1' + releaseVersionCode = 2012001 minSdkVersion = 16 appTargetSdkVersion = 29 targetSdkVersion = 28 // TODO: Bump once b/143232359 is resolved. Also fix TODOs in UtilTest. 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 15c4bf1c1d..b751fff7bd 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 @@ -30,11 +30,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.12.0"; + public static final String VERSION = "2.12.1"; /** The version of the library expressed as {@code "ExoPlayerLib/" + VERSION}. */ // Intentionally hardcoded. Do not derive from other constants (e.g. VERSION) or vice versa. - public static final String VERSION_SLASHY = "ExoPlayerLib/2.12.0"; + public static final String VERSION_SLASHY = "ExoPlayerLib/2.12.1"; /** * The version of the library expressed as an integer, for example 1002003. @@ -44,7 +44,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 = 2012000; + public static final int VERSION_INT = 2012001; /** The default user agent for requests made by the library. */ public static final String DEFAULT_USER_AGENT =