Update release notes for 1.4.1 bug fix release
#cherrypick PiperOrigin-RevId: 666328660
This commit is contained in:
parent
6e0e2d0cee
commit
1994ccdea8
@ -32,15 +32,11 @@
|
|||||||
zero.
|
zero.
|
||||||
* Allow the user to select the built-in speaker for playback on Wear OS
|
* Allow the user to select the built-in speaker for playback on Wear OS
|
||||||
API 35+ (where the device advertises support for this).
|
API 35+ (where the device advertises support for this).
|
||||||
* Handle preload callbacks asynchronously in `PreloadMediaSource`
|
|
||||||
([#1568](https://github.com/androidx/media/issues/1568)).
|
|
||||||
* Defer the blocking call to
|
* Defer the blocking call to
|
||||||
`Context.getSystemService(Context.AUDIO_SERVICE)` until audio focus
|
`Context.getSystemService(Context.AUDIO_SERVICE)` until audio focus
|
||||||
handling is enabled. This ensures the blocking call isn't done if audio
|
handling is enabled. This ensures the blocking call isn't done if audio
|
||||||
focus handling is not enabled
|
focus handling is not enabled
|
||||||
([#1616](https://github.com/androidx/media/pull/1616)).
|
([#1616](https://github.com/androidx/media/pull/1616)).
|
||||||
* Allow playback regardless of buffered duration when loading fails
|
|
||||||
([#1571](https://github.com/androidx/media/issues/1571)).
|
|
||||||
* Transformer:
|
* Transformer:
|
||||||
* Add `SurfaceAssetLoader`, which supports queueing video data to
|
* Add `SurfaceAssetLoader`, which supports queueing video data to
|
||||||
Transformer via a `Surface`.
|
Transformer via a `Surface`.
|
||||||
@ -50,9 +46,6 @@
|
|||||||
* Extractors:
|
* Extractors:
|
||||||
* Allow `Mp4Extractor` and `FragmentedMp4Extractor` to identify H264
|
* Allow `Mp4Extractor` and `FragmentedMp4Extractor` to identify H264
|
||||||
samples that are not used as reference by subsequent samples.
|
samples that are not used as reference by subsequent samples.
|
||||||
* MP3: Fix `Searched too many bytes` error by correctly ignoring trailing
|
|
||||||
non-MP3 data based on the length field in an `Info` frame
|
|
||||||
([#1480](https://github.com/androidx/media/issues/1480)).
|
|
||||||
* Add option to enable index-based seeking in `AmrExtractor`.
|
* Add option to enable index-based seeking in `AmrExtractor`.
|
||||||
* DataSource:
|
* DataSource:
|
||||||
* Update `HttpEngineDataSource` to allow use starting at version S
|
* Update `HttpEngineDataSource` to allow use starting at version S
|
||||||
@ -70,13 +63,6 @@
|
|||||||
to remove a previously set `Surface` if the codec supports this
|
to remove a previously set `Surface` if the codec supports this
|
||||||
(`MediaCodecInfo.detachedSurfaceSupported`).
|
(`MediaCodecInfo.detachedSurfaceSupported`).
|
||||||
* Text:
|
* Text:
|
||||||
* TTML: Fix handling of percentage `tts:fontSize` values to ensure they
|
|
||||||
are correctly inherited from parent nodes with percentage `tts:fontSize`
|
|
||||||
values.
|
|
||||||
* Fix `IndexOutOfBoundsException` in `LegacySubtitleUtil` due to
|
|
||||||
incorrectly handling the case of the requested output start time being
|
|
||||||
greater than or equal to the final event time in the `Subtitle`
|
|
||||||
([#1516](https://github.com/androidx/media/issues/1516)).
|
|
||||||
* Metadata:
|
* Metadata:
|
||||||
* Image:
|
* Image:
|
||||||
* Add `ExternallyLoadedImageDecoder` for simplified integration with
|
* Add `ExternallyLoadedImageDecoder` for simplified integration with
|
||||||
@ -86,12 +72,6 @@
|
|||||||
read from a `FileDescriptor`
|
read from a `FileDescriptor`
|
||||||
([#3757](https://github.com/google/ExoPlayer/issues/3757)).
|
([#3757](https://github.com/google/ExoPlayer/issues/3757)).
|
||||||
* DRM:
|
* DRM:
|
||||||
* Fix `android.media.MediaCodec$CryptoException: Operation not supported
|
|
||||||
in this configuration: ERROR_DRM_CANNOT_HANDLE` error on API 31+ devices
|
|
||||||
playing L1 Widevine content. This error is caused by an incomplete
|
|
||||||
implementation of the framework
|
|
||||||
[`MediaDrm.requiresSecureDecoder`](https://developer.android.com/reference/android/media/MediaDrm#requiresSecureDecoder\(java.lang.String\))
|
|
||||||
method ([#1603](https://github.com/google/ExoPlayer/issues/1603)).
|
|
||||||
* Effect:
|
* Effect:
|
||||||
* Add `DefaultVideoFrameProcessor` workaround for minor `SurfaceTexture`
|
* Add `DefaultVideoFrameProcessor` workaround for minor `SurfaceTexture`
|
||||||
scaling. `SurfaceTexture` may include a small scaling that cuts off a
|
scaling. `SurfaceTexture` may include a small scaling that cuts off a
|
||||||
@ -99,7 +79,6 @@
|
|||||||
such that output is closer to expected.
|
such that output is closer to expected.
|
||||||
* Speed up `DefaultVideoFrameProcessor.queueInputBitmap()`. As a result,
|
* Speed up `DefaultVideoFrameProcessor.queueInputBitmap()`. As a result,
|
||||||
exporting images to videos with `Transformer` is faster.
|
exporting images to videos with `Transformer` is faster.
|
||||||
* Add a `release()` method to `GlObjectsProvider`.
|
|
||||||
* Muxers:
|
* Muxers:
|
||||||
* IMA extension:
|
* IMA extension:
|
||||||
* Fix bug where clearing the playlist may cause an
|
* Fix bug where clearing the playlist may cause an
|
||||||
@ -112,14 +91,6 @@
|
|||||||
playback can't be suppressed without the system crashing the service
|
playback can't be suppressed without the system crashing the service
|
||||||
with a `ForegroundServiceDidNotStartInTimeException`
|
with a `ForegroundServiceDidNotStartInTimeException`
|
||||||
([#1528](https://github.com/google/ExoPlayer/issues/1528)).
|
([#1528](https://github.com/google/ExoPlayer/issues/1528)).
|
||||||
* Transform a double-tap of `KEYCODE_HEADSETHOOK` into a 'seek to next'
|
|
||||||
action, as
|
|
||||||
[documented](https://developer.android.com/reference/androidx/media3/session/MediaSession#media-key-events-mapping)
|
|
||||||
([#1493](https://github.com/androidx/media/issues/1493)).
|
|
||||||
* Handle `KEYCODE_HEADSETHOOK` as a 'play' command in
|
|
||||||
`MediaButtonReceiver` when deciding whether to ignore it to avoid a
|
|
||||||
`ForegroundServiceDidNotStartInTimeException`
|
|
||||||
([#1581](https://github.com/google/ExoPlayer/issues/1581)).
|
|
||||||
* UI:
|
* UI:
|
||||||
* Downloads:
|
* Downloads:
|
||||||
* OkHttp Extension:
|
* OkHttp Extension:
|
||||||
@ -128,8 +99,6 @@
|
|||||||
* HLS Extension:
|
* HLS Extension:
|
||||||
* Smooth Streaming Extension:
|
* Smooth Streaming Extension:
|
||||||
* RTSP Extension:
|
* RTSP Extension:
|
||||||
* Skip invalid Media Descriptions in SDP parsing
|
|
||||||
([#1087](https://github.com/androidx/media/issues/1472)).
|
|
||||||
* Decoder Extensions (FFmpeg, VP9, AV1, etc.):
|
* Decoder Extensions (FFmpeg, VP9, AV1, etc.):
|
||||||
* MIDI extension:
|
* MIDI extension:
|
||||||
* Leanback extension:
|
* Leanback extension:
|
||||||
@ -148,6 +117,50 @@
|
|||||||
|
|
||||||
## 1.4
|
## 1.4
|
||||||
|
|
||||||
|
### 1.4.1 (2024-08-23)
|
||||||
|
|
||||||
|
This release includes the following changes since the
|
||||||
|
[1.4.0 release](#140-2024-07-24):
|
||||||
|
|
||||||
|
* ExoPlayer:
|
||||||
|
* Handle preload callbacks asynchronously in `PreloadMediaSource`
|
||||||
|
([#1568](https://github.com/androidx/media/issues/1568)).
|
||||||
|
* Allow playback regardless of buffered duration when loading fails
|
||||||
|
([#1571](https://github.com/androidx/media/issues/1571)).
|
||||||
|
* Extractors:
|
||||||
|
* MP3: Fix `Searched too many bytes` error by correctly ignoring trailing
|
||||||
|
non-MP3 data based on the length field in an `Info` frame
|
||||||
|
([#1480](https://github.com/androidx/media/issues/1480)).
|
||||||
|
* Text:
|
||||||
|
* TTML: Fix handling of percentage `tts:fontSize` values to ensure they
|
||||||
|
are correctly inherited from parent nodes with percentage `tts:fontSize`
|
||||||
|
values.
|
||||||
|
* Fix `IndexOutOfBoundsException` in `LegacySubtitleUtil` due to
|
||||||
|
incorrectly handling the case of the requested output start time being
|
||||||
|
greater than or equal to the final event time in the `Subtitle`
|
||||||
|
([#1516](https://github.com/androidx/media/issues/1516)).
|
||||||
|
* DRM:
|
||||||
|
* Fix `android.media.MediaCodec$CryptoException: Operation not supported
|
||||||
|
in this configuration: ERROR_DRM_CANNOT_HANDLE` error on API 31+ devices
|
||||||
|
playing L1 Widevine content. This error is caused by an incomplete
|
||||||
|
implementation of the framework
|
||||||
|
[`MediaDrm.requiresSecureDecoder`](https://developer.android.com/reference/android/media/MediaDrm#requiresSecureDecoder\(java.lang.String\))
|
||||||
|
method ([#1603](https://github.com/androidx/media/issues/1603)).
|
||||||
|
* Effect:
|
||||||
|
* Add a `release()` method to `GlObjectsProvider`.
|
||||||
|
* Session:
|
||||||
|
* Transform a double-tap of `KEYCODE_HEADSETHOOK` into a 'seek to next'
|
||||||
|
action, as
|
||||||
|
[documented](https://developer.android.com/reference/androidx/media3/session/MediaSession#media-key-events-mapping)
|
||||||
|
([#1493](https://github.com/androidx/media/issues/1493)).
|
||||||
|
* Handle `KEYCODE_HEADSETHOOK` as a 'play' command in
|
||||||
|
`MediaButtonReceiver` when deciding whether to ignore it to avoid a
|
||||||
|
`ForegroundServiceDidNotStartInTimeException`
|
||||||
|
([#1581](https://github.com/androidx/media/issues/1581)).
|
||||||
|
* RTSP Extension:
|
||||||
|
* Skip invalid Media Descriptions in SDP parsing
|
||||||
|
([#1087](https://github.com/androidx/media/issues/1472)).
|
||||||
|
|
||||||
### 1.4.0 (2024-07-24)
|
### 1.4.0 (2024-07-24)
|
||||||
|
|
||||||
This release includes the following changes since the
|
This release includes the following changes since the
|
||||||
|
Loading…
x
Reference in New Issue
Block a user