Package com.google.android.exoplayer2.effect

## Interface MatrixTransformation

- All Superinterfaces:
    `Effect`, `GlEffect`, `GlMatrixTransformation`
  All Known Implementing Classes:
    `Crop`, `Presentation`, `ScaleToFitTransformation`

      public interface MatrixTransformation
      extends GlMatrixTransformation

  Specifies a 3x3 transformation `Matrix` to apply in the vertex shader for each frame.

  The matrix is applied to points given in normalized device coordinates (-1 to 1 on x and y axes). Transformed pixels that are moved outside of the normal device coordinate range are clipped.

  Output frame pixels outside of the transformed input frame will be black, with alpha = 0 if applicable.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default float[]` | `getGlMatrixArray​(long presentationTimeUs)` | Returns the 4x4 transformation `Matrix` to apply to the frame with the given timestamp.
    `Matrix` | `getMatrix​(long presentationTimeUs)` | Returns the 3x3 transformation `Matrix` to apply to the frame with the given timestamp.

    - ### Methods inherited from interface com.google.android.exoplayer2.effect.GlMatrixTransformation

      `configure, toGlTextureProcessor`

- - ### Method Detail

    - #### getMatrix

          Matrix getMatrix​(long presentationTimeUs)

      Returns the 3x3 transformation `Matrix` to apply to the frame with the given timestamp.

    - #### getGlMatrixArray

          default float[] getGlMatrixArray​(long presentationTimeUs)

      Description copied from interface: `GlMatrixTransformation`
      Returns the 4x4 transformation `Matrix` to apply to the frame with the given timestamp.
      Specified by:
        `getGlMatrixArray` in interface `GlMatrixTransformation`