diff --git a/RELEASENOTES.md b/RELEASENOTES.md index 21aa2b64cb..bac01582d2 100644 --- a/RELEASENOTES.md +++ b/RELEASENOTES.md @@ -48,6 +48,9 @@ visibility in order to allow Kotlin subclasses of `AdaptiveTrackSelection.Factory` ([#8830](https://github.com/google/ExoPlayer/issues/8830)). + * Added a combined and structured metadata object (`MediaMetadata`) to + Player, accessible through `getMediaMetadata` or by listening to + `EventListener.onMediaMetadataChanged`. * UI: * Add builder for `PlayerNotificationManager`. * Add group setting to `PlayerNotificationManager`. @@ -64,8 +67,8 @@ * Allow fall back from DTS-HD to DTS when playing via passthrough. * Video: * Add `Player.getVideoSize()` to retrieve the current size of the video - stream. Add `Listener.onVideoSizeChanged(VideoSize)` and - deprecate `Listener.onVideoSizeChanged(int weight, int height...)`. + stream. Add `Listener.onVideoSizeChanged(VideoSize)` and deprecate + `Listener.onVideoSizeChanged(int weight, int height...)`. * Analytics: * Add `onAudioCodecError` and `onVideoCodecError` to `AnalyticsListener`. * Downloads and caching: @@ -105,6 +108,28 @@ `programInformation` and `serviceDescription` set to `null` instead. * Remove `CryptoInfo.getFrameworkCryptoInfoV16`. Use `CryptoInfo.getFrameworkCryptoInfo` instead. + * Remove `CastPlayer` specific playlist manipulation methods. Use + `setMediaItems`, `addMediaItems`, `removeMediaItem` and `moveMediaItem` + instead. + * Remove `PlaybackPreparer`. UI components that previously had + `setPlaybackPreparer` methods will now call `Player.prepare` by default. + If this behavior is sufficient, use of `PlaybackPreparer` can be removed + from application code without replacement. For custom preparation logic, + replace calls to `setPlaybackPreparer` with calls to + `setControlDispatcher` on the same components, passing a + `ControlDispatcher` that implements custom preparation logic in + `dispatchPrepare`. Extend `DefaultControlDispatcher` to avoid having to + implement the other `ControlDispatcher` methods. + * Remove `setRewindIncrementMs` and `setFastForwardIncrementMs` from UI + components. Use `setControlDispatcher` on the same components, passing a + `DefaultControlDispatcher` built using `DefaultControlDispatcher(long, + long)`. + * Remove `PlayerNotificationManager` constructors and `createWith` + methods. Use `PlayerNotificationManager.Builder` instead. + * Remove `PlayerNotificationManager` `setUseNavigationActions` and + `setUseNavigationActionsInCompactView`. Use `setUseNextAction`, + `setUsePreviousAction`, `setUseNextActionInCompactView` and + `setUsePreviousActionInCompactView` instead. * DRM: * Only dispatch DRM session acquire and release events once per period when playing content that uses the same encryption keys for both audio &