Update release notes for 1.0.0-rc02

PiperOrigin-RevId: 513483809
(cherry picked from commit df11545ba18f9bf3e6e9c87c3bdb30bfb0723279)
This commit is contained in:
tonihei 2023-03-02 10:46:54 +00:00
parent dbf737de08
commit 64c6d8f351

View File

@ -2,32 +2,47 @@
### Unreleased changes ### Unreleased changes
* Core library: * Core library:
* Add suppression reason for unsuitable audio route and play when ready * Add suppression reason for unsuitable audio route and play when ready
change reason for suppressed too long. change reason for suppressed too long.
([#15](https://github.com/androidx/media/issues/15)). ([#15](https://github.com/androidx/media/issues/15)).
* Make the maximum difference of the start time of two segments to be * Add `ExoPlayer.setVideoEffects()` for using `Effect` during video
merged configurable in `SegmentDownloader` and subclasses
([#248](https://github.com/androidx/media/pull/248)).
* Add `ExoPlayer.setVideoEffects()` for using `Effect` during video
playback. playback.
* Update `SampleQueue` to store `sourceId` as a `long` rather than an * Update `SampleQueue` to store `sourceId` as a `long` rather than an
`int`. This changes the signatures of public methods `int`. This changes the signatures of public methods
`SampleQueue.sourceId` and `SampleQueue.peekSourceId`. `SampleQueue.sourceId` and `SampleQueue.peekSourceId`.
* Fix network type detection on API 33 * Audio:
([#10970](https://github.com/google/ExoPlayer/issues/10970)).
* Make the maximum difference of the start time of two segments to be
merged configurable in `SegmentDownloader` and subclasses
([#248](https://github.com/androidx/media/pull/248)).
* Extractors:
* Fix `NullPointerException` when calling `ExoPlayer.isTunnelingEnabled`
([#10977](https://github.com/google/ExoPlayer/issues/10977)).
* Audio:
* Fix bug where some playbacks fail when tunneling is enabled and * Fix bug where some playbacks fail when tunneling is enabled and
`AudioProcessors` are active, e.g. for gapless trimming `AudioProcessors` are active, e.g. for gapless trimming
([#10847](https://github.com/google/ExoPlayer/issues/10847)). ([#10847](https://github.com/google/ExoPlayer/issues/10847)).
* Encapsulate Opus frames in Ogg packets in direct playbacks (offload). * Encapsulate Opus frames in Ogg packets in direct playbacks (offload).
* Fix broken gapless MP3 playback on Samsung devices * Transformer:
* Remove `Transformer.Builder.setMediaSourceFactory(MediaSource.Factory)`.
Use `ExoPlayerAssetLoader.Factory(MediaSource.Factory)` and
`Transformer.Builder.setAssetLoaderFactory(AssetLoader.Factory)`
instead.
* Remove `Transformer.startTransformation(MediaItem,
ParcelFileDescriptor)`.
* Remove deprecated symbols:
* Remove `DefaultAudioSink` constructors, use `DefaultAudioSink.Builder`
instead.
### 1.0.0-rc02 (2023-03-02)
This release corresponds to the
[ExoPlayer 2.18.4 release](https://github.com/google/ExoPlayer/releases/tag/r2.18.4).
* Core library:
* Fix network type detection on API 33
([#10970](https://github.com/google/ExoPlayer/issues/10970)).
* Fix `NullPointerException` when calling `ExoPlayer.isTunnelingEnabled`
([#10977](https://github.com/google/ExoPlayer/issues/10977)).
* Downloads:
* Make the maximum difference of the start time of two segments to be
merged configurable in `SegmentDownloader` and subclasses
([#248](https://github.com/androidx/media/pull/248)).
* Audio:
* Fix broken gapless MP3 playback on Samsung devices
([#8594](https://github.com/google/ExoPlayer/issues/8594)). ([#8594](https://github.com/google/ExoPlayer/issues/8594)).
* Fix bug where playback speeds set immediately after disabling audio may * Fix bug where playback speeds set immediately after disabling audio may
be overridden by a previous speed change be overridden by a previous speed change
@ -35,51 +50,29 @@
* Video: * Video:
* Map HEVC HDR10 format to `HEVCProfileMain10HDR10` instead of * Map HEVC HDR10 format to `HEVCProfileMain10HDR10` instead of
`HEVCProfileMain10`. `HEVCProfileMain10`.
* Add workaround for a device issue on Chromecast with Google TV and * Add workaround for a device issue on Chromecast with Google TV and
Lenovo M10 FHD Plus that causes 60fps AVC streams to be marked as Lenovo M10 FHD Plus that causes 60fps AVC streams to be marked as
unsupported unsupported
([#10898](https://github.com/google/ExoPlayer/issues/10898)). ([#10898](https://github.com/google/ExoPlayer/issues/10898)).
* DASH: * Fix frame release performance issues when playing media with a frame
* Add full parsing for image adaptation sets, including tile counts rate far higher than the screen refresh rate.
([#3752](https://github.com/google/ExoPlayer/issues/3752)). * Cast:
* RTSP: * Fix transient `STATE_IDLE` when transitioning between media items
* Catch the IllegalArgumentException thrown in parsing of invalid RTSP ([#245](https://github.com/androidx/media/issues/245)).
Describe response messages
([#10971](https://github.com/google/ExoPlayer/issues/10971)).
* Session:
* Fix a bug where notification play/pause button doesn't update with
player state ([#192](https://github.com/androidx/media/issues/192)).
* Fix a bug where notification play/pause button doesn't update with
player state ([#192](https://github.com/androidx/media/issues/192)).
* RTSP: * RTSP:
* Catch the IllegalArgumentException thrown in parsing of invalid RTSP * Catch the IllegalArgumentException thrown in parsing of invalid RTSP
Describe response messages Describe response messages
([#10971](https://github.com/google/ExoPlayer/issues/10971)). ([#10971](https://github.com/google/ExoPlayer/issues/10971)).
* Metadata: * Session:
* Parse multiple null-separated values from ID3 frames, as permitted by * Fix a bug where notification play/pause button doesn't update with
ID3 v2.4. player state ([#192](https://github.com/androidx/media/issues/192)).
* Add `MediaMetadata.mediaType` to denote the type of content or the type
of folder described by the metadata.
* Add `MediaMetadata.isBrowsable` as a replacement for
`MediaMetadata.folderType`. The folder type will be deprecated in the
next release.
* Transformer:
* Remove `Transformer.Builder.setMediaSourceFactory(MediaSource.Factory)`.
Use `ExoPlayerAssetLoader.Factory(MediaSource.Factory)` and
`Transformer.Builder.setAssetLoaderFactory(AssetLoader.Factory)`
instead.
* Remove `Transformer.startTransformation(MediaItem,
ParcelFileDescriptor)`.
* Remove deprecated symbols:
* Remove `DefaultAudioSink` constructors, use `DefaultAudioSink.Builder`
instead.
### 1.0.0-rc01 (2023-02-16) ### 1.0.0-rc01 (2023-02-16)
This release corresponds to the This release corresponds to the
[ExoPlayer 2.18.3 release](https://github.com/google/ExoPlayer/releases/tag/r2.18.3). [ExoPlayer 2.18.3 release](https://github.com/google/ExoPlayer/releases/tag/r2.18.3).
* Core library: * Core library:
* Tweak the renderer's decoder ordering logic to uphold the * Tweak the renderer's decoder ordering logic to uphold the
`MediaCodecSelector`'s preferences, even if a decoder reports it may not `MediaCodecSelector`'s preferences, even if a decoder reports it may not
be able to play the media performantly. For example with default be able to play the media performantly. For example with default
@ -97,7 +90,7 @@ This release corresponds to the
* Add `ConcatenatingMediaSource2` that allows combining multiple media * Add `ConcatenatingMediaSource2` that allows combining multiple media
items into a single window items into a single window
([#247](https://github.com/androidx/media/issues/247)). ([#247](https://github.com/androidx/media/issues/247)).
* Extractors: * Extractors:
* Throw a `ParserException` instead of a `NullPointerException` if the * Throw a `ParserException` instead of a `NullPointerException` if the
sample table (stbl) is missing a required sample description (stsd) when sample table (stbl) is missing a required sample description (stsd) when
parsing trak atoms. parsing trak atoms.
@ -111,7 +104,7 @@ This release corresponds to the
`Subtitle.getEventTime` if a subtitle file contains no cues. `Subtitle.getEventTime` if a subtitle file contains no cues.
* SubRip: Add support for UTF-16 files if they start with a byte order * SubRip: Add support for UTF-16 files if they start with a byte order
mark. mark.
* Metadata: * Metadata:
* Parse multiple null-separated values from ID3 frames, as permitted by * Parse multiple null-separated values from ID3 frames, as permitted by
ID3 v2.4. ID3 v2.4.
* Add `MediaMetadata.mediaType` to denote the type of content or the type * Add `MediaMetadata.mediaType` to denote the type of content or the type
@ -119,10 +112,10 @@ This release corresponds to the
* Add `MediaMetadata.isBrowsable` as a replacement for * Add `MediaMetadata.isBrowsable` as a replacement for
`MediaMetadata.folderType`. The folder type will be deprecated in the `MediaMetadata.folderType`. The folder type will be deprecated in the
next release. next release.
* DASH: * DASH:
* Add full parsing for image adaptation sets, including tile counts * Add full parsing for image adaptation sets, including tile counts
([#3752](https://github.com/google/ExoPlayer/issues/3752)). ([#3752](https://github.com/google/ExoPlayer/issues/3752)).
* UI: * UI:
* Fix the deprecated * Fix the deprecated
`PlayerView.setControllerVisibilityListener(PlayerControlView.VisibilityListener)` `PlayerView.setControllerVisibilityListener(PlayerControlView.VisibilityListener)`
to ensure visibility changes are passed to the registered listener to ensure visibility changes are passed to the registered listener
@ -130,7 +123,7 @@ This release corresponds to the
* Fix the ordering of the center player controls in `PlayerView` when * Fix the ordering of the center player controls in `PlayerView` when
using a right-to-left (RTL) layout using a right-to-left (RTL) layout
([#227](https://github.com/androidx/media/issues/227)). ([#227](https://github.com/androidx/media/issues/227)).
* Session: * Session:
* Add abstract `SimpleBasePlayer` to help implement the `Player` interface * Add abstract `SimpleBasePlayer` to help implement the `Player` interface
for custom players. for custom players.
* Add helper method to convert platform session token to Media3 * Add helper method to convert platform session token to Media3
@ -147,33 +140,12 @@ This release corresponds to the
([#233](https://github.com/androidx/media/issues/233)). ([#233](https://github.com/androidx/media/issues/233)).
* Make `QueueTimeline` more robust in case of a shady legacy session state * Make `QueueTimeline` more robust in case of a shady legacy session state
([#241](https://github.com/androidx/media/issues/241)). ([#241](https://github.com/androidx/media/issues/241)).
* Cast extension: * Cast extension:
* Fix a bug where notification play/pause button doesn't update with
player state ([#192](https://github.com/androidx/media/issues/192)).
* Metadata:
* Parse multiple null-separated values from ID3 frames, as permitted by
ID3 v2.4.
* Add `MediaMetadata.mediaType` to denote the type of content or the type
of folder described by the metadata.
* Add `MediaMetadata.isBrowsable` as a replacement for
`MediaMetadata.folderType`. The folder type will be deprecated in the
next release.
* Transformer:
* Remove `Transformer.Builder.setMediaSourceFactory(MediaSource.Factory)`.
Use `ExoPlayerAssetLoader.Factory(MediaSource.Factory)` and
`Transformer.Builder.setAssetLoaderFactory(AssetLoader.Factory)`
instead.
* Remove `Transformer.startTransformation(MediaItem,
ParcelFileDescriptor)`.
* Remove deprecated symbols:
* Remove `DefaultAudioSink` constructors, use `DefaultAudioSink.Builder`
instead.
* Cast extension
* Bump Cast SDK version to 21.2.0. * Bump Cast SDK version to 21.2.0.
* IMA extension: * IMA extension:
* Map `PLAYER_STATE_LOADING` to `STATE_BUFFERING` * Map `PLAYER_STATE_LOADING` to `STATE_BUFFERING`
([#245](\(https://github.com/androidx/media/issues/245\)). ([#245](\(https://github.com/androidx/media/issues/245\)).
* IMA extension * IMA extension
* Remove player listener of the `ImaServerSideAdInsertionMediaSource` on * Remove player listener of the `ImaServerSideAdInsertionMediaSource` on
the application thread to avoid threading issues. the application thread to avoid threading issues.
* Add a property `focusSkipButtonWhenAvailable` to the * Add a property `focusSkipButtonWhenAvailable` to the
@ -185,7 +157,7 @@ This release corresponds to the
* Fix a bug which prevented playback from starting for a DAI stream * Fix a bug which prevented playback from starting for a DAI stream
without any ads. without any ads.
* Bump IMA SDK version to 3.29.0. * Bump IMA SDK version to 3.29.0.
* Demo app: * Demo app:
* Request notification permission for download notifications at runtime * Request notification permission for download notifications at runtime
([#10884](https://github.com/google/ExoPlayer/issues/10884)). ([#10884](https://github.com/google/ExoPlayer/issues/10884)).