Update release notes section for 1.3.0 stable release

PiperOrigin-RevId: 609407248
(cherry picked from commit 82065e699aec9e0b951ef0ad489c0862c95d288b)
This commit is contained in:
sheenachhabra 2024-02-22 09:56:21 -08:00 committed by SheenaChhabra
parent ee0eac7e31
commit c6a6b81d96

View File

@ -2,80 +2,7 @@
## 1.3 ## 1.3
### 1.3.0-rc01 (2024-02-22) ### 1.3.0 (2024-03-06)
This release includes the following changes since the
[1.3.0-beta01 release](#130-beta01-2024-02-07):
* ExoPlayer:
* Add source prefix to all `Format.id` fields generated from
`MergingMediaSource`. This helps to identify which source produced a
`Format` ([#883](https://github.com/androidx/media/issues/883)).
* Fix the regex used for validating custom Common Media Client Data (CMCD)
key names by modifying it to only check for hyphen
([#1028](https://github.com/androidx/media/issues/1028)).
* Stop double-encoding CMCD query parameters
([#1075](https://github.com/androidx/media/issues/1075)).
* Audio:
* Improve silence skipping algorithm with smooth volume ramp; retained
minimal silence and more natural silence durations
([#7423](https://github.com/google/ExoPlayer/issues/7423)).
* Report the skipped silence more deterministically
([#1035](https://github.com/androidx/media/issues/1035)).
* Session:
* Fix issue where `MediaItem.RequestMetadata` with just non-null extras is
not transmitted between media controllers and sessions.
* Add constructor to `MediaLibrarySession.Builder` that only takes a
`Context` instead of a `MediaLibraryService`.
* HLS Extension:
* Resolve seeks to beginning of a segment more efficiently
([#1031](https://github.com/androidx/media/pull/1031)).
### 1.3.0-beta01 (2024-02-07)
This release includes the following changes since the
[1.3.0-alpha01 release](#130-alpha01-2024-01-15):
* Common Library:
* Populate both `artworkUri` and `artworkData` in
`MediaMetadata.Builder.populate(MediaMetadata)` when at least one of
them is non-null ([#964](https://github.com/androidx/media/issues/964)).
* ExoPlayer:
* Prevent subclassing `CompositeSequenceableLoader`. This component was
[previously made extensible](https://github.com/androidx/media/commit/0de57cbfae7165dd3bb829e323d089cd312b4b1b)
but was never subclassed within the library. Customizations can be done
by wrapping an instance using the
[decorator pattern](https://en.wikipedia.org/wiki/Decorator_pattern) and
implementing a custom `CompositeSequenceableLoaderFactory`.
* Fix issue where repeating the same time causes metadata from this item
to be cleared ([#1007](https://github.com/androidx/media/issues/1007)).
* Rename `experimentalSetSubtitleParserFactory` methods on
`BundledChunkExtractor.Factory` and `DefaultHlsExtractorFactory` to
`setSubtitleParserFactory` and disallow passing `null`. Use the new
`experimentalParseSubtitlesDuringExtraction(boolean)` methods to control
parsing behaviour.
* Add support for customising the `SubtitleParser.Factory` used during
extraction. This can be achieved with
`MediaSource.Factory.setSubtitleParserFactory()`.
* Extractors:
* MP3: Use constant bitrate (CBR) seeking for files with an `Info` header
(the CBR equivalent of the `Xing` header). Previously we used the seek
table from the `Info` header, but this results in less precise seeking
than if we ignore it and assume the file is CBR.
* MPEG2-TS: Add DTS, DTS-LBR and DTS:X Profile2 support
([#275](https://github.com/androidx/media/pull/275)).
* Extract audio types from TS descriptors and map them to role flags,
allowing users to make better-informed audio track selections
([#973](https://github.com/androidx/media/pull/973)).
* Image:
* Add support for DASH thumbnails. Grid images are cropped and individual
thumbnails are provided to `ImageOutput` close to their presentation
times.
* Session:
* Disable double-click detection for TV apps
([#962](https://github.com/androidx/media/issues/962)).
### 1.3.0-alpha01 (2024-01-15)
This release includes the following changes since the This release includes the following changes since the
[1.2.1 release](#121-2024-01-09): [1.2.1 release](#121-2024-01-09):
@ -93,6 +20,9 @@ This release includes the following changes since the
[aligned with all other AndroidX libraries](https://android-developers.googleblog.com/2023/10/androidx-minsdkversion-19.html), [aligned with all other AndroidX libraries](https://android-developers.googleblog.com/2023/10/androidx-minsdkversion-19.html),
and is required for us to upgrade to the latest versions of our AndroidX and is required for us to upgrade to the latest versions of our AndroidX
dependencies. dependencies.
* Populate both `artworkUri` and `artworkData` in
`MediaMetadata.Builder.populate(MediaMetadata)` when at least one of
them is non-null ([#964](https://github.com/androidx/media/issues/964)).
* ExoPlayer: * ExoPlayer:
* Add `PreloadMediaSource` and `PreloadMediaPeriod` that allows apps to * Add `PreloadMediaSource` and `PreloadMediaPeriod` that allows apps to
preload a content media source at a specific start position before preload a content media source at a specific start position before
@ -115,6 +45,30 @@ This release includes the following changes since the
* Implement `HttpEngineDataSource`, an `HttpDataSource` using the * Implement `HttpEngineDataSource`, an `HttpDataSource` using the
[HttpEngine](https://developer.android.com/reference/android/net/http/HttpEngine) [HttpEngine](https://developer.android.com/reference/android/net/http/HttpEngine)
API. API.
* Prevent subclassing `CompositeSequenceableLoader`. This component was
[previously made extensible](https://github.com/androidx/media/commit/0de57cbfae7165dd3bb829e323d089cd312b4b1b)
but was never subclassed within the library. Customizations can be done
by wrapping an instance using the
[decorator pattern](https://en.wikipedia.org/wiki/Decorator_pattern) and
implementing a custom `CompositeSequenceableLoaderFactory`.
* Fix issue where repeating the same time causes metadata from this item
to be cleared ([#1007](https://github.com/androidx/media/issues/1007)).
* Rename `experimentalSetSubtitleParserFactory` methods on
`BundledChunkExtractor.Factory` and `DefaultHlsExtractorFactory` to
`setSubtitleParserFactory` and disallow passing `null`. Use the new
`experimentalParseSubtitlesDuringExtraction(boolean)` methods to control
parsing behaviour.
* Add support for customising the `SubtitleParser.Factory` used during
extraction. This can be achieved with
`MediaSource.Factory.setSubtitleParserFactory()`.
* Add source prefix to all `Format.id` fields generated from
`MergingMediaSource`. This helps to identify which source produced a
`Format` ([#883](https://github.com/androidx/media/issues/883)).
* Fix the regex used for validating custom Common Media Client Data (CMCD)
key names by modifying it to only check for hyphen
([#1028](https://github.com/androidx/media/issues/1028)).
* Stop double-encoding CMCD query parameters
([#1075](https://github.com/androidx/media/issues/1075)).
* Transformer: * Transformer:
* Add support for flattening H.265/HEVC SEF slow motion videos. * Add support for flattening H.265/HEVC SEF slow motion videos.
* Increase transmuxing speed, especially for 'remove video' edits. * Increase transmuxing speed, especially for 'remove video' edits.
@ -123,6 +77,10 @@ This release includes the following changes since the
implementations that don't show the first video frame until its implementations that don't show the first video frame until its
presentation timestamp presentation timestamp
([#829](https://github.com/androidx/media/issues/829)). ([#829](https://github.com/androidx/media/issues/829)).
* Add support for optimizing single asset mp4 trim operations.
* Add support to ensure a video frame has the first timestamp in the
output file. Fixes output files beginning with black frame on iOS based
players ([#829](https://github.com/androidx/media/issues/829)).
* Track Selection: * Track Selection:
* Add `DefaultTrackSelector.selectImageTrack` to enable image track * Add `DefaultTrackSelector.selectImageTrack` to enable image track
selection. selection.
@ -135,6 +93,21 @@ This release includes the following changes since the
`ColorInfo.colorSpace`, `ColorInfo.colorTransfer`, and `ColorInfo.colorSpace`, `ColorInfo.colorTransfer`, and
`ColorInfo.colorRange` values `ColorInfo.colorRange` values
([#692](https://github.com/androidx/media/pull/692)). ([#692](https://github.com/androidx/media/pull/692)).
* MP3: Use constant bitrate (CBR) seeking for files with an `Info` header
(the CBR equivalent of the `Xing` header). Previously we used the seek
table from the `Info` header, but this results in less precise seeking
than if we ignore it and assume the file is CBR.
* MPEG2-TS: Add DTS, DTS-LBR and DTS:X Profile2 support
([#275](https://github.com/androidx/media/pull/275)).
* Extract audio types from TS descriptors and map them to role flags,
allowing users to make better-informed audio track selections
([#973](https://github.com/androidx/media/pull/973)).
* Audio:
* Improve silence skipping algorithm with smooth volume ramp; retained
minimal silence and more natural silence durations
([#7423](https://github.com/google/ExoPlayer/issues/7423)).
* Report the skipped silence more deterministically
([#1035](https://github.com/androidx/media/issues/1035)).
* Video: * Video:
* Change the `MediaCodecVideoRenderer` constructor that takes a * Change the `MediaCodecVideoRenderer` constructor that takes a
`VideoFrameProcessor.Factory` argument and replace it with a constructor `VideoFrameProcessor.Factory` argument and replace it with a constructor
@ -152,6 +125,10 @@ This release includes the following changes since the
`rowLock` and `columnLock` should both be assumed to be true, regardless `rowLock` and `columnLock` should both be assumed to be true, regardless
of the values present in the stream (`columnLock` support is not of the values present in the stream (`columnLock` support is not
implemented, so it's effectively assumed to always be false). implemented, so it's effectively assumed to always be false).
* Image:
* Add support for DASH thumbnails. Grid images are cropped and individual
thumbnails are provided to `ImageOutput` close to their presentation
times.
* DRM: * DRM:
* Play 'clear lead' unencrypted samples in DRM content immediately by * Play 'clear lead' unencrypted samples in DRM content immediately by
default, even if the keys for the later encrypted samples aren't ready default, even if the keys for the later encrypted samples aren't ready
@ -165,9 +142,18 @@ This release includes the following changes since the
* IMA extension: * IMA extension:
* Fix issue where DASH and HLS ads without the appropriate file extension * Fix issue where DASH and HLS ads without the appropriate file extension
can't be played. can't be played.
* Session:
* Disable double-click detection for TV apps
([#962](https://github.com/androidx/media/issues/962)).
* Fix issue where `MediaItem.RequestMetadata` with just non-null extras is
not transmitted between media controllers and sessions.
* Add constructor to `MediaLibrarySession.Builder` that only takes a
`Context` instead of a `MediaLibraryService`.
* HLS Extension: * HLS Extension:
* Reduce `HlsMediaPeriod` to package-private visibility. This type * Reduce `HlsMediaPeriod` to package-private visibility. This type
shouldn't be directly depended on from outside the HLS package. shouldn't be directly depended on from outside the HLS package.
* Resolve seeks to beginning of a segment more efficiently
([#1031](https://github.com/androidx/media/pull/1031)).
* Decoder Extensions (FFmpeg, VP9, AV1, MIDI, etc.): * Decoder Extensions (FFmpeg, VP9, AV1, MIDI, etc.):
* MIDI decoder: Ignore SysEx event messages * MIDI decoder: Ignore SysEx event messages
([#710](https://github.com/androidx/media/pull/710)). ([#710](https://github.com/androidx/media/pull/710)).
@ -179,6 +165,18 @@ This release includes the following changes since the
* Add a shortform demo module to demo the usage of `PreloadMediaSource` * Add a shortform demo module to demo the usage of `PreloadMediaSource`
with the short-form content use case. with the short-form content use case.
### 1.3.0-rc01 (2024-02-22)
Use the 1.3.0 [stable version](#130-2024-03-06).
### 1.3.0-beta01 (2024-02-07)
Use the 1.3.0 [stable version](#130-2024-03-06).
### 1.3.0-alpha01 (2024-01-15)
Use the 1.3.0 [stable version](#130-2024-03-06).
## 1.2 ## 1.2
### 1.2.1 (2024-01-09) ### 1.2.1 (2024-01-09)