Search in sources :

Example 1 with DefaultBitmapFramePreparer

use of com.facebook.fresco.animation.bitmap.preparation.DefaultBitmapFramePreparer in project fresco by facebook.

the class ExampleBitmapAnimationFactory method createColorBitmapAnimationBackend.

public static BitmapAnimationBackend createColorBitmapAnimationBackend(final int[] colors, final int animationDurationMs, final BitmapFrameCache bitmapFrameCache) {
    final PlatformBitmapFactory platformBitmapFactory = Fresco.getImagePipelineFactory().getPlatformBitmapFactory();
    final BitmapFrameRenderer bitmapFrameRenderer = new ColorAndFrameNumberRenderer(colors);
    final AnimationInformation animationInformation = new ColorListAnimationInformation(colors, animationDurationMs);
    final ExecutorService executorServiceForFramePreparer = new DefaultSerialExecutorService(new DefaultExecutorSupplier(1).forDecode());
    final BitmapFramePreparationStrategy framePreparationStrategy = new FixedNumberBitmapFramePreparationStrategy(NUMBER_OF_FRAMES_TO_PREPARE);
    final BitmapFramePreparer bitmapFramePreparer = new DefaultBitmapFramePreparer(platformBitmapFactory, bitmapFrameRenderer, Bitmap.Config.ARGB_8888, executorServiceForFramePreparer);
    BitmapAnimationBackend bitmapAnimationBackend = new BitmapAnimationBackend(platformBitmapFactory, bitmapFrameCache, animationInformation, bitmapFrameRenderer, framePreparationStrategy, bitmapFramePreparer);
    bitmapAnimationBackend.setFrameListener(new DebugBitmapAnimationFrameListener());
    return bitmapAnimationBackend;
}
Also used : DefaultSerialExecutorService(com.facebook.common.executors.DefaultSerialExecutorService) PlatformBitmapFactory(com.facebook.imagepipeline.bitmaps.PlatformBitmapFactory) DefaultExecutorSupplier(com.facebook.imagepipeline.core.DefaultExecutorSupplier) DefaultBitmapFramePreparer(com.facebook.fresco.animation.bitmap.preparation.DefaultBitmapFramePreparer) AnimationInformation(com.facebook.fresco.animation.backend.AnimationInformation) FixedNumberBitmapFramePreparationStrategy(com.facebook.fresco.animation.bitmap.preparation.FixedNumberBitmapFramePreparationStrategy) DefaultSerialExecutorService(com.facebook.common.executors.DefaultSerialExecutorService) ExecutorService(java.util.concurrent.ExecutorService) BitmapFramePreparationStrategy(com.facebook.fresco.animation.bitmap.preparation.BitmapFramePreparationStrategy) FixedNumberBitmapFramePreparationStrategy(com.facebook.fresco.animation.bitmap.preparation.FixedNumberBitmapFramePreparationStrategy) BitmapAnimationBackend(com.facebook.fresco.animation.bitmap.BitmapAnimationBackend) BitmapFrameRenderer(com.facebook.fresco.animation.bitmap.BitmapFrameRenderer) BitmapFramePreparer(com.facebook.fresco.animation.bitmap.preparation.BitmapFramePreparer) DefaultBitmapFramePreparer(com.facebook.fresco.animation.bitmap.preparation.DefaultBitmapFramePreparer)

Aggregations

DefaultSerialExecutorService (com.facebook.common.executors.DefaultSerialExecutorService)1 AnimationInformation (com.facebook.fresco.animation.backend.AnimationInformation)1 BitmapAnimationBackend (com.facebook.fresco.animation.bitmap.BitmapAnimationBackend)1 BitmapFrameRenderer (com.facebook.fresco.animation.bitmap.BitmapFrameRenderer)1 BitmapFramePreparationStrategy (com.facebook.fresco.animation.bitmap.preparation.BitmapFramePreparationStrategy)1 BitmapFramePreparer (com.facebook.fresco.animation.bitmap.preparation.BitmapFramePreparer)1 DefaultBitmapFramePreparer (com.facebook.fresco.animation.bitmap.preparation.DefaultBitmapFramePreparer)1 FixedNumberBitmapFramePreparationStrategy (com.facebook.fresco.animation.bitmap.preparation.FixedNumberBitmapFramePreparationStrategy)1 PlatformBitmapFactory (com.facebook.imagepipeline.bitmaps.PlatformBitmapFactory)1 DefaultExecutorSupplier (com.facebook.imagepipeline.core.DefaultExecutorSupplier)1 ExecutorService (java.util.concurrent.ExecutorService)1