Skip to content

1.6.0-beta01

Pre-release
Pre-release
Compare
Choose a tag to compare
@tonihei tonihei released this 26 Feb 12:02
· 801 commits to release since this release
  • Common Library:
    • Upgrade Kotlin from 1.9.20 to 2.0.20 and use Compose Compiler Gradle
      plugin. Upgrade KotlinX Coroutines library from 1.8.1 to 1.9.0.
  • ExoPlayer:
    • Initial audio session id is no longer immediately available after
      creating the player. You can use
      AnalyticsListener.onAudioSessionIdChanged to listen to the initial
      update if required.
  • Transformer:
    • Add MediaProjectionAssetLoader, which provides media from a
      MediaProjection for screen recording, and add support for screen
      recording to the Transformer demo app.
    • Add #getInputFormat() to Codec interface.
    • Shift the responsibility to release the GlObjectsProvider onto the
      caller in DefaultVideoFrameProcessor and DefaultVideoCompositor when
      possible.
  • Video:
    • Add experimental ExoPlayer API to drop late MediaCodecVideoRenderer
      decoder input buffers that are not depended on. Enable it with
      DefaultRenderersFactory.experimentalSetLateThresholdToDropDecoderInputUs.
  • Session:
    • Keep foreground service state for an additional 10 minutes when playback
      pauses, stops or fails. This allows users to resume playback within this
      timeout without risking foreground service restrictions on various
      devices. Note that simply calling player.pause() can no longer be used
      to stop the foreground service before stopSelf() when overriding
      onTaskRemoved, use MediaSessionService.pauseAllPlayersAndStopSelf()
      instead.
    • Make MediaSession.setSessionActivity(PendingIntent) accept null
      (#2109).
    • Keep notification visible when playback enters an error or stopped
      state. The notification is only removed if the playlist is cleared or
      the player is released.
    • Improve handling of Android platform MediaSession actions ACTION_PLAY
      and ACTION_PAUSE to only set one of them according to the available
      commands and also accept if only one of them is set.
  • Remove deprecated symbols:
    • Removed the following deprecated DownloadHelper methods:
      • Constructor DownloadHelper(MediaItem, @Nullable MediaSource, TrackSelectionParameters, RendererCapabilities[]), use
        DownloadHelper(MediaItem, @Nullable MediaSource, TrackSelectionParameters, RendererCapabilitiesList) instead.
      • getRendererCapabilities(RenderersFactory), equivalent
        functionality can be achieved by creating a
        DefaultRendererCapabilitiesList with a RenderersFactory, and
        calling DefaultRendererCapabilitiesList.getRendererCapabilities().
    • Removed
      PlayerNotificationManager.setMediaSessionToken(MediaSessionCompat)
      method. Use
      PlayerNotificationManager.setMediaSessionToken(MediaSession.Token) and
      pass in (MediaSession.Token) compatToken.getToken()instead.