Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update androidxMedia3 to v1.3.0 #872

Merged
merged 1 commit into from
Mar 14, 2024
Merged

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Mar 7, 2024

Mend Renovate

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
androidx.media3:media3-ui 1.2.1 -> 1.3.0 age adoption passing confidence
androidx.media3:media3-session 1.2.1 -> 1.3.0 age adoption passing confidence
androidx.media3:media3-exoplayer-rtsp 1.2.1 -> 1.3.0 age adoption passing confidence
androidx.media3:media3-exoplayer-hls 1.2.1 -> 1.3.0 age adoption passing confidence
androidx.media3:media3-exoplayer-dash 1.2.1 -> 1.3.0 age adoption passing confidence
androidx.media3:media3-exoplayer 1.2.1 -> 1.3.0 age adoption passing confidence
androidx.media3:media3-common 1.2.1 -> 1.3.0 age adoption passing confidence

Release Notes

androidx/media (androidx.media3:media3-ui)

v1.3.0

Compare Source

This release includes the following changes since the
1.2.1 release:

  • Common Library:
    • Implement support for android.resource://package/[type/]name raw
      resource URIs where package is different to the package of the current
      application. This has always been documented to work, but wasn't
      correctly implemented until now.
    • Normalize MIME types set by app code or read from media to be fully
      lower-case.
    • Define ads with a full MediaItem instead of a single Uri in
      AdPlaybackState.
    • Increase minSdk to 19 (Android KitKat). This is
      aligned with all other AndroidX libraries,
      and is required for us to upgrade to the latest versions of our AndroidX
      dependencies.
    • Populate both artworkUri and artworkData in
      MediaMetadata.Builder.populate(MediaMetadata) when at least one of
      them is non-null (#​964).
  • ExoPlayer:
    • Add PreloadMediaSource and PreloadMediaPeriod that allows apps to
      preload a content media source at a specific start position before
      playback. PreloadMediaSource takes care of preparing the content media
      source to receive the Timeline, preparing and caching the period at
      the given start position, selecting tracks and loading media data for
      the period. Apps control the preload progress by implementing
      PreloadMediaSource.PreloadControl and set the preloaded source to the
      player for playback.
    • Add ExoPlayer.setImageOutput that allows apps to set
      ImageRenderer.ImageOutput.
    • DefaultRenderersFactory now provides an ImageRenderer to the player
      by default with null ImageOutput and ImageDecoder.Factory.DEFAULT.
    • Emit Player.Listener.onPositionDiscontinuity event when silence is
      skipped (#​765).
    • Add experimental support for parsing subtitles during extraction. You
      can enable this using
      MediaSource.Factory.experimentalParseSubtitlesDuringExtraction().
    • Support adaptive media sources with PreloadMediaSource.
    • Implement HttpEngineDataSource, an HttpDataSource using the
      HttpEngine
      API.
    • Prevent subclassing CompositeSequenceableLoader. This component was
      previously made extensible
      but was never subclassed within the library. Customizations can be done
      by wrapping an instance using the
      decorator pattern and
      implementing a custom CompositeSequenceableLoaderFactory.
    • Fix issue where repeating the same time causes metadata from this item
      to be cleared (#​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).
    • Fix the regex used for validating custom Common Media Client Data (CMCD)
      key names by modifying it to only check for hyphen
      (#​1028).
    • Stop double-encoding CMCD query parameters
      (#​1075).
  • Transformer:
    • Add support for flattening H.265/HEVC SEF slow motion videos.
    • Increase transmuxing speed, especially for 'remove video' edits.
    • Add API to ensure that the output file starts on a video frame. This can
      make the output of trimming operations more compatible with player
      implementations that don't show the first video frame until its
      presentation timestamp
      (#​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).
  • Track Selection:
    • Add DefaultTrackSelector.selectImageTrack to enable image track
      selection.
    • Add TrackSelectionParameters.isPrioritizeImageOverVideoEnabled to
      determine whether to select an image track if both an image track and a
      video track are available. The default value is false which means
      selecting a video track is prioritized.
  • Extractors:
    • Add additional AV1C parsing to MP4 extractor to retrieve
      ColorInfo.colorSpace, ColorInfo.colorTransfer, and
      ColorInfo.colorRange values
      (#​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).
    • Extract audio types from TS descriptors and map them to role flags,
      allowing users to make better-informed audio track selections
      (#​973).
  • Audio:
    • Improve silence skipping algorithm with smooth volume ramp; retained
      minimal silence and more natural silence durations
      (#​7423).
    • Report the skipped silence more deterministically
      (#​1035).
  • Video:
    • Change the MediaCodecVideoRenderer constructor that takes a
      VideoFrameProcessor.Factory argument and replace it with a constructor
      that takes a VideoSinkProvider argument. Apps that want to inject a
      custom VideoFrameProcessor.Factory can instantiate a
      CompositingVideoSinkProvider that uses the custom
      VideoFrameProcessor.Factory and pass the video sink provider to
      MediaCodecVideoRenderer.
  • Text:
    • Fix serialization of bitmap cues to resolve Tried to marshall a Parcel that contained Binder objects error when using
      DefaultExtractorsFactory.setTextTrackTranscodingEnabled
      (#​836).
    • CEA-708: Ignore rowLock value. The CEA-708-E S-2023 spec states that
      rowLock and columnLock should both be assumed to be true, regardless
      of the values present in the stream (columnLock support is not
      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:
  • IMA extension:
    • Fix issue where DASH and HLS ads without the appropriate file extension
      can't be played.
  • Session:
    • Disable double-click detection for TV apps
      (#​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:
    • Reduce HlsMediaPeriod to package-private visibility. This type
      shouldn't be directly depended on from outside the HLS package.
    • Resolve seeks to beginning of a segment more efficiently
      (#​1031).
  • Decoder Extensions (FFmpeg, VP9, AV1, MIDI, etc.):
    • MIDI decoder: Ignore SysEx event messages
      (#​710).
  • Test Utilities:
    • Don't pause playback in TestPlayerRunHelper.playUntilPosition. The
      test keeps the playback in a playing state, but suspends progress until
      the test is able to add assertions and further actions.
  • Demo app:
    • Add a shortform demo module to demo the usage of PreloadMediaSource
      with the short-form content use case.

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about these updates again.


  • If you want to rebase/retry this PR, check this box

This PR has been generated by Mend Renovate. View repository job log here.

@anilbeesetti anilbeesetti merged commit 8e2adee into main Mar 14, 2024
3 checks passed
@renovate renovate bot deleted the renovate/androidxmedia3 branch March 14, 2024 13:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant