amazon-chime-sdk / com.amazonaws.services.chime.sdk.meetings.audiovideo.video.gl / TextureRenderView

# TextureRenderView

`open class TextureRenderView : TextureView, SurfaceTextureListener, EglVideoRenderView`

TextureRenderView is an implementation of EglVideoRenderView which uses EGL14 and OpenGLES2 to draw any incoming video buffer types to the surface provided by the inherited TextureView

Note that since most TextureRenderView objects will not be constructed in code, builders must pass in the Logger directly before initialization by setting logger

### Constructors

#### <init> | TextureRenderView is an implementation of EglVideoRenderView which uses EGL14 and OpenGLES2 to draw any incoming video buffer types to the surface provided by the inherited TextureView `TextureRenderView(context: Context, attrs: AttributeSet? = null, defStyle: Int = 0)`

### Properties

#### logger | `var logger: Logger`
#### mirror | If true, rendered frames will be mirrored across the vertical axis `var mirror: Boolean`
#### scalingType | VideoScalingType used to render on this view. May impact cropping. `var scalingType: VideoScalingType`

### Functions

#### init | Initialize view with factory to create EglCore objects to hold/share EGL state `open fun init(eglCoreFactory: EglCoreFactory): Unit`
#### onLayout | `open fun onLayout(changed: Boolean, left: Int, top: Int, right: Int, bottom: Int): Unit`
#### onMeasure | `open fun onMeasure(widthSpec: Int, heightSpec: Int): Unit`
#### onSurfaceTextureAvailable | `open fun onSurfaceTextureAvailable(surface: SurfaceTexture, width: Int, height: Int): Unit`
#### onSurfaceTextureDestroyed | `open fun onSurfaceTextureDestroyed(surface: SurfaceTexture): Boolean`
#### onSurfaceTextureSizeChanged | `open fun onSurfaceTextureSizeChanged(surface: SurfaceTexture, width: Int, height: Int): Unit`
#### onSurfaceTextureUpdated | `open fun onSurfaceTextureUpdated(surface: SurfaceTexture): Unit`
#### onVideoFrameReceived | Receive a video frame from some upstream source. The VideoSink may render, store, process, and forward the frame, among other applications. `open fun onVideoFrameReceived(frame: VideoFrame): Unit`
#### release | Deallocate any state or resources held by this object `open fun release(): Unit`