media
media copied to clipboard
Failed resolution of: LogSessionId
Version
Media3 pre-release (alpha, beta or RC not in this list)
More version details
Devices that reproduce the issue
Samsung S9 - Android 9 Xiaomi Redmi Note 8 Pro - Android 10
Devices that do not reproduce the issue
Galaxy S23 Ultra Android 14
Reproducible in the demo app?
Not tested
Reproduction steps
Start a media3 transformer to render a video on a release build with minify enabled using the current alpha version of the library
I've already added
-keep class android.media.metrics.LogSessionId
To my proguard-rules.pro
It seems like LogSessionId requires api level 31 anyway so it's no wonder older devices can't find the class definition
Expected result
Transformer renders the video
Actual result
Crash:
# Crashlytics - Stack trace
# Application: com.cardinalblue.onbeat
# Platform: android
# Version: 1.71-develop (71)
# Issue: d52f187bfdb55de3fbb88612fbc6d99b
# Session: 684FB543031200012084CCCBFF43DF31_DNE_0_v2
# Date: Mon Jun 16 2025 14:18:45 GMT+0800 (Taipei Standard Time)
Fatal Exception: java.lang.NoClassDefFoundError: Failed resolution of: Landroid/media/metrics/LogSessionId;
at androidx.media3.transformer.DefaultAssetLoaderFactory.createAssetLoader(DefaultAssetLoaderFactory.java:204)
at androidx.media3.transformer.SequenceAssetLoader$GapInterceptingAssetLoaderFactory.createAssetLoader(SequenceAssetLoader.java:840)
at androidx.media3.transformer.SequenceAssetLoader.<init>(SequenceAssetLoader.java:158)
at androidx.media3.transformer.TransformerInternal.<init>(TransformerInternal.java:252)
at androidx.media3.transformer.Transformer.startInternal(Transformer.java:1712)
at androidx.media3.transformer.Transformer.start(Transformer.java:1034)
at com.cardinalblue.onbeat.timeline.VideoTrimRendererKt$run$2.invokeSuspend(VideoTrimRenderer.kt:146)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:6981)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1445)
Caused by java.lang.ClassNotFoundException: Didn't find class "android.media.metrics.LogSessionId" on path: DexPathList[[zip file "/data/app/com.cardinalblue.onbeat-IXp6YYqXJu8f7cu6O_JW9w==/base.apk"],nativeLibraryDirectories=[/data/app/com.cardinalblue.onbeat-IXp6YYqXJu8f7cu6O_JW9w==/lib/arm64, /data/app/com.cardinalblue.onbeat-IXp6YYqXJu8f7cu6O_JW9w==/base.apk!/lib/arm64-v8a, /system/lib64]]
at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134)
at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
at androidx.media3.transformer.DefaultAssetLoaderFactory.createAssetLoader(DefaultAssetLoaderFactory.java:204)
at androidx.media3.transformer.SequenceAssetLoader$GapInterceptingAssetLoaderFactory.createAssetLoader(SequenceAssetLoader.java:840)
at androidx.media3.transformer.SequenceAssetLoader.<init>(SequenceAssetLoader.java:158)
at androidx.media3.transformer.TransformerInternal.<init>(TransformerInternal.java:252)
at androidx.media3.transformer.Transformer.startInternal(Transformer.java:1712)
at androidx.media3.transformer.Transformer.start(Transformer.java:1034)
at com.cardinalblue.onbeat.timeline.VideoTrimRendererKt$run$2.invokeSuspend(VideoTrimRenderer.kt:146)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:100)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:214)
at android.app.ActivityThread.main(ActivityThread.java:6981)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1445)
Media
Media doesn't matter
Bug Report
- [ ] You will email the zip file produced by
adb bugreportto [email protected] after filing this issue.