mirror of
https://github.com/androidx/media.git
synced 2025-04-30 06:46:50 +08:00
Update release notes section for 1.3.0 stable release
PiperOrigin-RevId: 609407248 (cherry picked from commit 82065e699aec9e0b951ef0ad489c0862c95d288b)
This commit is contained in:
parent
ee0eac7e31
commit
c6a6b81d96
146
RELEASENOTES.md
146
RELEASENOTES.md
@ -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)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user