Fresco: Tell Fresco to use disk cache for thumbnails of local videos

Created on 3 Aug 2018  路  2Comments  路  Source: facebook/fresco

Description

I'm using version 1.10.0

  • In root application, I call Fresco.initialize(getApplicationContext()).
  • In other UI controls, I pass Uri.fromFile("file://.../sdcard/example-video.mp4") to SimpleDraweeView. The view generates in-memory thumbnail and displays it correctly.
  • I check /data/data/my.app.id/cache/image_cache/ in emulator, no files or directories are in there. Which means for local videos, Fresco does not use disk cache.

Additional Information

  • Fresco version: 1.10.0
  • Platform version: emulator API 23

May I ask if you could consider adding option to tell Fresco to use disk cache for local videos? Normally generating thumbnails takes time, like 1-2 seconds per video (on my real device). So disk cache would help a lot.

Thank you,

====================

P.S: If someone could tell me how to do this hack then it would also help a lot:

Would it be possible to force Fresco to flush the in-memory generated thumbnails to disk cache? Then next time it checks for cache, it can use the cached files.

enhancement help wanted

All 2 comments

Hey @hkcorac, that sounds like a great enhancement. And I'll mark this issue as such.

The thumbnail is created in LocalVideoThumbnailProducer and the step where the images are cached on disk is DiskCacheWriteProducer. The change would require that LocalVideoThumbnailProducer returns an EncodedImage instead of an decoded image.

@lambdapioneer

Thank you very much. I found LocalVideoThumbnailProducer last some days, but couldn't go anywhere more. Your suggestion will help a lot.

Was this page helpful?
0 / 5 - 0 ratings