Package com.google.android.exoplayer2.effect

## Class GlEffectsFrameProcessor.Factory

- java.lang.Object
- - com.google.android.exoplayer2.effect.GlEffectsFrameProcessor.Factory

- All Implemented Interfaces:
    `FrameProcessor.Factory`
  Enclosing class:
    GlEffectsFrameProcessor

      public static class GlEffectsFrameProcessor.Factory
      extends Object
      implements FrameProcessor.Factory

  A factory for `GlEffectsFrameProcessor` instances.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Factory()` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `GlEffectsFrameProcessor` | `create​(Context context, FrameProcessor.Listener listener, List<Effect> effects, DebugViewProvider debugViewProvider, ColorInfo colorInfo, boolean releaseFramesAutomatically)` | Creates a new `FrameProcessor` instance.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### Factory

          public Factory()

  - ### Method Detail

    - #### create

          public GlEffectsFrameProcessor create​(Context context,
                                                FrameProcessor.Listener listener,
                                                List<Effect> effects,
                                                DebugViewProvider debugViewProvider,
                                                ColorInfo colorInfo,
                                                boolean releaseFramesAutomatically)
                                         throws FrameProcessingException

      Creates a new `FrameProcessor` instance.

      All `Effect` instances must be `GlEffect` instances.

      Using HDR requires the `EXT_YUV_target` OpenGL extension.

      Specified by:
        `create` in interface `FrameProcessor.Factory`
      Parameters:
        `context` - A `Context`.
        `listener` - A `FrameProcessor.Listener`.
        `effects` - The `Effect` instances to apply to each frame.
        `debugViewProvider` - A `DebugViewProvider`.
        `colorInfo` - The `ColorInfo` for input and output frames.
        `releaseFramesAutomatically` - If `true`, the `FrameProcessor` will render output frames to the output surface automatically as `FrameProcessor` is done processing them. If `false`, the `FrameProcessor` will block until `FrameProcessor.releaseOutputFrame(long)` is called, to render or drop the frame.
      Returns:
        A new instance.
      Throws:
        `FrameProcessingException` - If a problem occurs while creating the `FrameProcessor`.