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 media3 to v1.3.0 #2503

Merged
merged 1 commit into from
Mar 7, 2024
Merged

Update media3 to v1.3.0 #2503

merged 1 commit into from
Mar 7, 2024

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-exoplayer 1.2.1 -> 1.3.0 age adoption passing confidence

Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


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.

@renovate renovate bot requested a review from a team as a code owner March 7, 2024 09:39
@renovate renovate bot added the dependencies Pull requests that update a dependency file label Mar 7, 2024
@renovate renovate bot requested review from ganfra and removed request for a team March 7, 2024 09:39
@ElementBot
Copy link
Collaborator

ElementBot commented Mar 7, 2024

Warnings
⚠️

gradle/libs.versions.toml#L66 - A newer version of com.google.firebase:firebase-bom than 32.7.2 is available: 32.7.3

Generated by 🚫 dangerJS against 958efcf

Copy link
Contributor

github-actions bot commented Mar 7, 2024

📱 Scan the QR code below to install the build (arm64 only) for this PR.
QR code
If you can't scan the QR code you can install the build via this link: https://i.diawi.com/592oXB

Copy link

sonarcloud bot commented Mar 7, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

Copy link

codecov bot commented Mar 7, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 72.97%. Comparing base (4db8864) to head (958efcf).

Additional details and impacted files
@@           Coverage Diff            @@
##           develop    #2503   +/-   ##
========================================
  Coverage    72.97%   72.97%           
========================================
  Files         1394     1394           
  Lines        33511    33511           
  Branches      6493     6493           
========================================
  Hits         24455    24455           
  Misses        5671     5671           
  Partials      3385     3385           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@ganfra ganfra added the Run-Maestro Starts a Maestro Cloud session to run integration tests label Mar 7, 2024
@ganfra ganfra enabled auto-merge March 7, 2024 14:36
@github-actions github-actions bot removed the Run-Maestro Starts a Maestro Cloud session to run integration tests label Mar 7, 2024
@ganfra ganfra merged commit 5823ad2 into develop Mar 7, 2024
19 checks passed
@ganfra ganfra deleted the renovate/media3 branch March 7, 2024 14:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants