Glide version: 4.11.0
Device: Google Pixel XL, android 10
Not reproduced in Glide 4.10.0 and on other devices.
Tested on Samsung S10 (Android 10), Nexus 5 (Android 6), Nokia 6.1 (Android 9))
Failed to create image decoder with message 'unimplemented'
JNI DETECTED ERROR IN APPLICATION: JNI IsInstanceOf called with pending exception java.lang.RuntimeException: setDataSourceCallback failed: status = 0x80000000
at void android.media.MediaMetadataRetriever._setDataSource(android.media.MediaDataSource) (MediaMetadataRetriever.java:-2)
at void android.media.MediaMetadataRetriever.setDataSource(android.media.MediaDataSource) (MediaMetadataRetriever.java:210)
at void com.bumptech.glide.load.resource.bitmap.VideoDecoder$ByteBufferInitializer.initialize(android.media.MediaMetadataRetriever, java.nio.ByteBuffer) (VideoDecoder.java:316)
at void com.bumptech.glide.load.resource.bitmap.VideoDecoder$ByteBufferInitializer.initialize(android.media.MediaMetadataRetriever, java.lang.Object) (VideoDecoder.java:310)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.resource.bitmap.VideoDecoder.decode(java.lang.Object, int, int, com.bumptech.glide.load.Options) (VideoDecoder.java:173)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.DecodePath.decodeResourceWithList(com.bumptech.glide.load.data.DataRewinder, int, int, com.bumptech.glide.load.Options, java.util.List) (DecodePath.java:92)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.DecodePath.decodeResource(com.bumptech.glide.load.data.DataRewinder, int, int, com.bumptech.glide.load.Options) (DecodePath.java:70)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.DecodePath.decode(com.bumptech.glide.load.data.DataRewinder, int, int, com.bumptech.glide.load.Options, com.bumptech.glide.load.engine.DecodePath$DecodeCallback) (DecodePath.java:59)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.LoadPath.loadWithExceptionList(com.bumptech.glide.load.data.DataRewinder, com.bumptech.glide.load.Options, int, int, com.bumptech.glide.load.engine.DecodePath$DecodeCallback, java.util.List) (LoadPath.java:76)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.LoadPath.load(com.bumptech.glide.load.data.DataRewinder, com.bumptech.glide.load.Options, int, int, com.bumptech.glide.load.engine.DecodePath$DecodeCallback) (LoadPath.java:57)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.DecodeJob.runLoadPath(java.lang.Object, com.bumptech.glide.load.DataSource, com.bumptech.glide.load.engine.LoadPath) (DecodeJob.java:524)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.DecodeJob.decodeFromFetcher(java.lang.Object, com.bumptech.glide.load.DataSource) (DecodeJob.java:488)
at com.bumptech.glide.load.engine.Resource com.bumptech.glide.load.engine.DecodeJob.decodeFromData(com.bumptech.glide.load.data.DataFetcher, java.lang.Object, com.bumptech.glide.load.DataSource) (DecodeJob.java:474)
at void com.bumptech.glide.load.engine.DecodeJob.decodeFromRetrievedData() (DecodeJob.java:426)
at void com.bumptech.glide.load.engine.DecodeJob.onDataFetcherReady(com.bumptech.glide.load.Key, java.lang.Object, com.bumptech.glide.load.data.DataFetcher, com.bumptech.glide.load.DataSource, com.bumptech.glide.load.Key) (DecodeJob.java:390)
at void com.bumptech.glide.load.engine.DataCacheGenerator.onDataReady(java.lang.Object) (DataCacheGenerator.java:94)
at void com.bumptech.glide.load.model.ByteBufferFileLoader$ByteBufferFetcher.loadData(com.bumptech.glide.Priority, com.bumptech.glide.load.data.DataFetcher$DataCallback) (ByteBufferFileLoader.java:70)
at boolean com.bumptech.glide.load.engine.DataCacheGenerator.startNext() (DataCacheGenerator.java:74)
at void com.bumptech.glide.load.engine.DecodeJob.runGenerators() (DecodeJob.java:310)
at void com.bumptech.glide.load.engine.DecodeJob.runWrapped() (DecodeJob.java:276)
at void com.bumptech.glide.load.engine.DecodeJob.run() (DecodeJob.java:234)
at void java.util.concurrent.ThreadPoolExecutor.runWorker(java.util.concurrent.ThreadPoolExecutor$Worker) (ThreadPoolExecutor.java:1167)
at void java.util.concurrent.ThreadPoolExecutor$Worker.run() (ThreadPoolExecutor.java:641)
at void java.lang.Thread.run() (Thread.java:919)
at void com.bumptech.glide.load.engine.executor.GlideExecutor$DefaultThreadFactory$1.run() (GlideExecutor.java:393)
in call to IsInstanceOf
from void android.media.MediaMetadataRetriever._setDataSource(android.media.MediaDataSource)
Runtime aborting...
Skipping all-threads dump as locks are held: thread_suspend_count_lock
Aborting thread:
"glide-disk-cache-thread-0" prio=5 tid=82 Native
| group="" sCount=0 dsCount=0 flags=0 obj=0x1430a548 self=0x74fabf7000
| sysTid=14660 nice=9 cgrp=default sched=0/0 handle=0x7559d35d50
| state=R schedstat=( 2050508924 2024939422 2059 ) utm=185 stm=19 core=2 HZ=100
| stack=0x7559c33000-0x7559c35000 stackSize=1039KB
| held mutexes= "abort lock" "thread list lock"
........
Fatal signal 6 (SIGABRT), code -1 (SI_QUEUE) in tid 14660 (glide-disk-cach), pid 14356 (ia.*.dev)
Full stacktrace can be found here
As a temporary solution I use 4.10.0, but I would appreciate any help.
Thanks in advance!
This issue has been automatically marked as stale because it has not had activity in the last seven days. It will be closed if no further activity occurs within the next seven days. Thank you for your contributions.
Met the same issue after upgraded glide from 4.10.0 to 4.11.0. I also reverted it back to 4.10.0.
Why is this issue closed?
It is still happening.
I can reproduce this on 4.11.0, specifically when using the profiler in Android Studio. Reverting to 4.10.0 fixes the issue.
I can also reproduce this on 4.11.0 on Pixel 2 (Android 10) ONLY when using the profiler in Android Studio.
Now I am reverting to 4.10.0 till the issue resolves.
Most helpful comment
Met the same issue after upgraded glide from
4.10.0to4.11.0. I also reverted it back to4.10.0.