| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
…n.strategy=in-process` parameter
Edited/Blocked NotificationRenovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR. You can manually request rebase by checking the rebase/retry box above. ⚠️ Warning: custom changes will be lost. |
Sorry, something went wrong.
…elabs Updated compileOptions (sourceCompatibility and targetCompatibility) and Kotlin jvmTarget from Java 1.8 to Java 17 across AccessibilityCodelab, AdaptiveUiCodelab, BasicLayoutsCodelab, NavigationCodelab, TestingCodelab, and ThemingCodelab. Reason: Jetpack Compose dependencies updated by Renovate were compiled against JVM 11/17. Setting the project JVM target to 17 resolves the compiler error: 'Cannot inline bytecode built with JVM target 11 into bytecode that is being built with JVM target 1.8'.
Removed composeOptions { kotlinCompilerExtensionVersion '1.5.15' } from NavigationCodelab/app/build.gradle.
Reason:
In Kotlin 2.0+, the Compose compiler is managed via the Kotlin Compose plugin (org.jetbrains.kotlin.plugin.compose). Specifying kotlinCompilerExtensionVersion forces AGP to inject legacy pre-Kotlin 2.0 compiler artifacts which are incompatible with Kotlin 2.3.10.
… tests Updated .github/workflows/MigrationCodelab.yaml to configure /dev/kvm group permissions and use gradle/actions/setup-gradle@v6. Reason: On GitHub Actions Ubuntu runners, the Android API 29 emulator times out during APK installation (ShellCommandUnresponsiveException) when running in unaccelerated software mode. Enabling KVM group permissions allows the emulator to run with native hardware acceleration, preventing timeouts during connectedCheck.
Updated ktlint to 1.2.1 across AccessibilityCodelab, AdvancedStateAndSideEffectsCodelab, BasicLayoutsCodelab, MigrationCodelab, NavigationCodelab, TestingCodelab, and ThemingCodelab build files. Reason: Spotless plugin 8.9.0 requires a modern ktlint version (1.2.1). The previous ktlint versions (0.45.2-0.48.2) produced InvocationTargetException errors during spotlessCheck and spotlessApply.
| Back | FazBrowse Home | New Git URL |
This PR contains the following updates:
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
Release Notes
gradle/gradle (gradle)v9.7.0
Compare Source
google/ksp (com.google.devtools.ksp)v2.3.11
Compare Source
What's Changed
Contributors
Full Changelog: google/ksp@2.3.10...2.3.11
androidx/media (androidx.media3:media3-ui)v1.11.0
Compare Source
This release includes the following changes since the
1.10.1 release:
and a new Util.getAudioTrackChannelConfig(Format) overload to safely
resolve it.
IllegalStateException or IndexOutOfBoundsException in ExoPlayer.
count to decrease when an ad group is fully processed
(hasUnplayedAds() is false), accommodating dynamic ad group resizing
during reset workflows.
streams to report flags, and update renderers to check these flags
dynamically.
to the codec output format in MediaCodecAudioRenderer to calculate the
codec operating rate when the stream formats do not provide a valid
value, and avoid unnecessary codec resets.
player. Instead, AdsMediaSource takes care of the clipping logic.
Custom client-side inserted ads sources need to be updated to implement
the content clipping internally.
as supported=NO_EXCEEDS_CAPABILITIES instead of supported=YES (which
is how tracks with missing or malformed profile or level info are
marked). This ensures these tracks (which are unlikely to be supported
by the device) are not selected when there are better-supported
alternatives.
RankingDataComparator that compares the ranks of the media items based
on their distances to the index of the current playing media item. Apps
can override its compare(Integer, Integer) method if a more fine-tuned
comparison logic is needed. The custom SimpleRankingDataComparator can
be injected via a new constructor of DefaultPreloadManager.Builder.
DefaultLoadControl.prioritizeTimeOverSizeThresholds by falling back to
buffer byte size limits if available heap memory seems tight.
set: JPEG and HEIC still images now 'play' with a very short default
duration (the same way PNG and other images previously behaved).
deprecated method with custom implementation will still be called by
default though, it is recommended to implement the new method and use
BandwidthMeter.getTransferListener() to get parity to the old method.
InitialBitrateSupplier. This allows apps to provide their own logic
for determining the initial bitrate estimate, which will be used on
creation of DefaultBandwidthMeter and on network type changes. The
supplier can be set via
DefaultBandwidthMeter.Builder.setInitialBitrateSupplier().
will run dynamically as opposed to on a static interval.
pre-roll samples to active playback.
getInitialBitrateCountryGroupAssignment to return the country group
assignments packed into a 32-bit integer instead of an array, reducing
code size and avoiding allocations.
retry logic always attempts a minimum of 1 second buffer size if other
retries (by halving the buffer size) are unsuccessful
(#3207).
samples if previously flushed before receiving input buffers.
to allow advancing media processing on a per-stream basis. This reduces
startup latency between playlist items and avoids playback becoming
"stuck" with very short content
(#3122).
audio session id auto-generated by ExoPlayer would be used instead of
the value set by setAudioSessionId
(#3241).
progressive media (e.g. MP4, Matroska). The player automatically merges
HAGC metadata tracks with the associated video track and delivers the
metadata out-of-band to the decoder on API 37+ devices. This behavior
can be disabled via
DefaultMediaSourceFactory.setExperimentalEnableHagcPlayback(false).
the Format in track selection
(#3236).
seeking to 'end of stream'.
AdaptiveTrackSelection.Factory.setTrackFormatComparator to allow
custom format ordering and ABR selection priority beyond bitrate-only
ordering.
to track selection parameters could result in some updates being lost or
overwritten.
discarding attached pictures and cover art metadata during container
parsing to reduce runtime memory consumption
(#2077). This can also
be enabled centrally via
DefaultExtractorsFactory.setDisableArtworkMetadata.
tracks.
QuickTime formats). QuickTime chapters are preferred if both are
present. The extracted chapter information is exposed as Chapter
entries within the track's Metadata, allowing for native chapter
navigation in MP4, M4A, and M4B files (such as audiobooks and podcasts)
(#2803).
(#3090).
box when a sidx box is not present. To enable this, provide
FLAG_READ_MFRA_FOR_SEEK_MAP to the FragmentedMp4Extractor, which is
now done by default in DefaultExtractorsFactory
(#3088).
Metadata.
combining the Core and Extension Substream into a single sample, fixing
playback issues where the two were previously output as separate samples
(#3147).
ilst metadata tag items
(#3191).
PES packet has a known length
(#3206).
(#3250).
(#3268).
(#3243).
tracks caused audio loss and OutOfMemoryError.
(#3183).
decoded PCM trimming
(#3200).
transitioning from ready to not-ready state, to debounce transient
underruns and avoid unexpected buffering states during active playout
(#3210).
DefaultAudioTrackBufferSizeProvider to use a fixed 500ms buffer to
make it less device dependent.
the platform decoder, allowing DefaultAudioSink to use this explicit
mask instead of inferring one from the channel count.
overrides of ForwardingAudioSink.configure need to be migrated to the
new method signature.
with EditedMediaItem.Builder#setSpeed(SpeedParameters).
16-bit big-endian PCM, and 64-bit floating point PCM to 32-bit floating
point PCM (#3090).
ImmutableIntArray.
audio in compressed offload mode.
AudioProcessor.StreamMetadata to provide playlist context to the audio
processors (#418).
time-based audio processing
(#418).
devices as their standard EAC3 decoders cannot decode EAC3-JOC streams
(#3257).
skipped instead of dropped.
drops on devices that don't support placeholder surfaces.
accurate by accounting for dropped or skipped frames.
default is 50ms but one can customize the value through
MediaCodecVideoRenderer.Builder.setMaxEarlyUsThreshold().
redundant Choreographer callbacks and excessive CPU wakeups on the
main thread.
(#2559).
(#3246).
and Vorbis DISCSUBTITLE data.
prevent the player from freezing when seeking.
new addTrackReference API. This allows establishing relationships
between tracks, such as linking a metadata track to the video track it
describes.
the ogg file format.
floating-point PCM).
allow writing smaller non-streamable files without reserved space.
ImaServerSideAdInsertionMediaSource.AdsLoader.Builder.setPauseAdSlot
to allow providing an ad slot to use for pause ads.
immediately on the second ad
(#3165).
MediaNotificationManager when using a session with a background thread
player looper.
methods now automatically post execution to the application looper
thread, and state accessors (getters) explicitly throw an
IllegalStateException if called from a thread other than the
application looper.
MediaUtils.mergePlayerInfo) by tracking state consistency
per-controller on the session side.
querying active media sessions and returning Media3 SessionToken
instances.
method is not overridden to only provide read access to untrusted
controllers.
new API MediaSession.Builder#setPackageNameOverride. The caller must
have android.permission.OVERRIDE_MEDIA_SESSION_OWNER permission to
override the package name of the session.
asynchronously process the connection attempt of a controller. Apps can
return an immediate Future with
Futures.immediateFuture(ConnectionResult) to achieve the previous
behaviour. It's recommended to migrate to the new method because
Callback.onConnect is a candidate to be deprecated.
MediaLibraryService on API 36 and 37.
is close to the platform limit, resolving blurriness in notifications
(#3134).
MediaNotificationManager when an asynchronous artwork bitmap load
callback attempts to start the foreground service while the app is in
the background (#3270).
MediaController were missing their original Timeline UIDs. The
session now reliably translates and propagates these UIDs during state
updates.
MediaSessionService.stopSelfSafely()
(#3310).
when seeking inside the same media item
(#3248).
recomposed mid-playback
(#3238).
rememberCurrentMediaItemState Composable to media3-ui-compose
module. This state holder is used in demo-compose to display various
metadata information about the currently playing MediaItem.
Composable to media3-ui-compose module. This state holder is used in
demo-compose to display various metadata information about the
MediaItems set on the Player.
functionality in demo-compose to showcase fastforwarding with a long
press.
It provides a compact affordance to control the Player while
displaying the title, artist, artwork, and progress of the current media
item.
Composable to media3-ui-compose module. Add ErrorText Composable to
media3-ui-compose-material3 and make it a default overlay on the
Player.
CenterControls, BottomControls, and ErrorOverlay.
(ui-compose) to support preloading of MediaItems in sliding window
UI environments. Showcase this functionality in demo-compose with a
new ShortFormPlayerScreen.
PresentationState that caused crashes on timelines that do not support
period UID lookup
(#3264).
(#3258).
KtorDataSource backed by the Ktor HTTP stack.
when opening a connection
(#3305).
(#1689).
to reset fully processed asset list interstitials back to an unavailable
state for on-demand re-resolution.
EXT-X-I-FRAME-STREAM-INF, and populate it to
Format.selectionPriority
(#3236).
playlist is no longer primary or active
(#3254).
asset lists (#3322).
latency live playback after a playlist request failure
(#3311).
renditions is considered as subtitles
(#3333).
language (#3113).
(MPD) and performing location fallback in DashMediaSource when
manifest loads fail.
empty <SegmentTimeline/> element
(#3326).
preparation caused by UDP port binding errors.
Cast.initialize(CastParams).
option, which triggers the use of the SystemUI Output Switcher instead
of the in-app Cast device picker when available.
support observing the visibility state of the media route picker, and
add state parameter to MediaRouteButton
(#3172).
track-masking state after a track selection, causing it to ignore
subsequent track updates from the Cast receiver
(#3237).
NullPointerException when trying to join a cast session started from a
non-Media3 sender.
playable when changing the active player
(#3199).
were queued as STREAM_TYPE_BUFFERED
(#3318).
with headers & bodies, add some POST resources to
HttpDataSourceTestEnv, and add assertions for the expected HTTP
method, headers & body in WebServerDispatcher.
DataSource.open(). Resources that may result in C.LENGTH_UNSET
should indicate this by using
TestResource.Builder.setMayResolveToUnknownLength(boolean).
androidx.media3.inspector.MetadataRetriever instead.
androidx.media3.inspector.MediaExtractorCompat instead.
HeifExtractor to extract motion photo metadata from HEIC files
instead.
androidx.media3.extractor.metadata.MotionPhotoMetadata instead.
androidx.media3.extractor.DiscardingTrackOutput instead.
androidx.media3.extractor.NoOpExtractorOutput instead.
androidx.media3.common.util.Util.generateAudioSessionId instead.
use Gradle Composite Builds (includeBuild). The core_settings.gradle
script has been removed, and the androidxMediaModulePrefix and
androidxMediaEnableMidiModule properties are no longer used.
Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.
This PR was generated by Mend Renovate. View the repository job log.