amazon-chime-sdk / com.amazonaws.services.chime.sdk.meetings.audiovideo.video.buffer / VideoFrameBuffer

# VideoFrameBuffer

`interface VideoFrameBuffer`

VideoFrameBuffer is a buffer which contains a single video buffer's raw data. Typically owned by a VideoFrame which includes additional metadata.

### Properties

#### height | Height of the video frame buffer `abstract val height: Int`
#### width | Width of the video frame buffer `abstract val width: Int`

### Functions

#### release | Release the video frame buffer. Use after frame construction or release after the frame is no longer needed. Will trigger appropriate release of any internally allocated resources. Not using may result in leaks. `abstract fun release(): Unit`
#### retain | Retain the video frame buffer. Use when shared ownership of the buffer is desired (e.g. when passing to separate thread), otherwise the frame may be spuriously released `abstract fun retain(): Unit`

### Inheritors

#### VideoFrameI420Buffer | VideoFrameI420Buffer provides an reference counted wrapper of a YUV where planes are natively (i.e. in JNI) allocated direct byte buffers. `class VideoFrameI420Buffer : VideoFrameBuffer`
#### VideoFrameRGBABuffer | VideoFrameRGBABuffer provides an reference counted wrapper of an RGBA natively (i.e. in JNI) allocated direct byte buffer. `class VideoFrameRGBABuffer : VideoFrameBuffer`
#### VideoFrameTextureBuffer | VideoFrameTextureBuffer provides an reference counted wrapper of an OpenGLES texture and related metadata `class VideoFrameTextureBuffer : VideoFrameBuffer`