8000 MediaControllerStub.onPlayerInfoChanged() takes too much time when having a large playlist especially with multiple MeidaControllers · Issue #57 · androidx/media · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
MediaControllerStub.onPlayerInfoChanged() takes too much time when having a large playlist especially with multiple MeidaControllers #57
Closed
@h6ah4i

Description

@h6ah4i

Conditions

  • Playlist size: 10k items
  • MediaController: 3 instances attached to the MediaSession
  • Xiaomi Mi 11 Lite 5G (Android 12)

Measured result

It took 1,000 ms - 3,000 ms per controller, which means it took 3,000 ms - 9,000 ms totally executed on the main thread.

Stacktraces (where the most of time consumed)

nativeWriteString16:-1, Parcel (android.os)
writeString16NoHelper:870, Parcel (android.os)
writeString16:424, Parcel$ReadWriteHelper (android.os)
writeString16:849, Parcel (android.os)
writeString:839, Parcel (android.os)
writeArrayMapInternal:1022, Parcel (android.os)
writeToParcelInner:1620, BaseBundle (android.os)
writeToParcel:1304, Bundle (android.os)
writeBundle:1092, Parcel (android.os)
writeValue:1849, Parcel (android.os)
writeArrayMapInternal:1023, Parcel (android.os)
writeToParcelInner:1620, BaseBundle (android.os)
writeToParcel:1304, Bundle (android.os)
writeBundle:1092, Parcel (android.os)
onTransact:86, BundleListRetriever (androidx.media3.common)
transact:1067, Binder (android.os)
getList:111, BundleListRetriever (androidx.media3.common)
fromBundleListRetriever:1480, Timeline (androidx.media3.common)
fromBundle:1462, Timeline (androidx.media3.common)
$r8$lambda$IosUR-LlCTyBXD6bufNR07UK3iY:-1, Timeline (androidx.media3.common)
fromBundle:-1, Timeline$$ExternalSyntheticLambda0 (androidx.media3.common)
fromNullableBundle:59, BundleableUtil (androidx.media3.common.util)
fromBundle:825, PlayerInfo (androidx.media3.session)
$r8$lambda$UYUSO7JOpKqYSM-ZlCuW_lSgFks:-1, PlayerInfo (androidx.media3.session)
fromBundle:-1, PlayerInfo$$ExternalSyntheticLambda0 (androidx.media3.session)
onPlayerInfoChanged:173, MediaControllerStub (androidx.media3.session)
onPlayerInfoChanged:1734, MediaSessionStub$Controller2Cb (androidx.media3.session)
dispatchOnPlayerInfoChanged:396, MediaSessionImpl (androidx.media3.session)
access$600:80, MediaSessionImpl (androidx.media3.session)
handleMessage:1194, MediaSessionImpl$PlayerInfoChangedHandler (androidx.media3.session)
dispatchMessage:106, Handler (android.os)
loopOnce:210, Looper (android.os)
loop:299, Looper (android.os)
main:8085, ActivityThread (android.app)
invoke:-1, Method (java.lang.reflect)
run:556, RuntimeInit$MethodAndArgsCaller (com.android.internal.os)
main:1045, ZygoteInit (com.android.internal.os)
newStringFromChars:109, StringFactory (java.lang)
toString:158, Integer (java.lang)
keyForField:1063, MediaMetadata (androidx.media3.common)
toBundle:914, MediaMetadata (androidx.media3.common)
toBundle:1834, MediaItem (androidx.media3.common)
toBundle:459, Timeline$Window (androidx.media3.common)
access$000:151, Timeline$Window (androidx.media3.common)
toBundle:1407, Timeline (androidx.media3.common)
toBundle:738, PlayerInfo (androidx.media3.session)
onPlayerInfoChanged:1736, MediaSessionStub$Controller2Cb (androidx.media3.session)
dispatchOnPlayerInfoChanged:396, MediaSessionImpl (androidx.media3.session)
access$600:80, MediaSessionImpl (androidx.media3.session)
handleMessage:1194, MediaSessionImpl$PlayerInfoChangedHandler (androidx.media3.session)
dispatchMessage:106, Handler (android.os)
loopOnce:210, Looper (android.os)
loop:299, Looper (android.os)
main:8085, ActivityThread (android.app)
invoke:-1, Method (java.lang.reflect)
run:556, RuntimeInit$MethodAndArgsCaller (com.android.internal.os)
main:1045, ZygoteInit (com.android.internal.os)

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    0