Added in API level 19

Plane


abstract class Plane
kotlin.Any
   ↳ android.media.Image.Plane

A single color plane of image data.

The number and meaning of the planes in an Image are determined by the format of the Image.

Once the Image has been closed, any access to the plane's ByteBuffer will fail.

Summary

Public methods
abstract ByteBuffer!

Get a direct ByteBuffer containing the frame data.

abstract Int

The distance between adjacent pixel samples, in bytes.

abstract Int

The row stride for this color plane, in bytes.

Public methods

getBuffer

Added in API level 19
abstract fun getBuffer(): ByteBuffer!

Get a direct ByteBuffer containing the frame data.

In particular, the buffer returned will always have isDirect return true, so the underlying data could be mapped as a pointer in JNI without doing any copies with GetDirectBufferAddress.

For raw formats, each plane is only guaranteed to contain data up to the last pixel in the last row. In other words, the stride after the last row may not be mapped into the buffer. This is a necessary requirement for any interleaved format.

Return
ByteBuffer! the byte buffer containing the image data for this plane.

getPixelStride

Added in API level 19
abstract fun getPixelStride(): Int

The distance between adjacent pixel samples, in bytes.

This is the distance between two consecutive pixel values in a row of pixels. It may be larger than the size of a single pixel to account for interleaved image data or padded formats. Note that pixel stride is undefined for some formats such as RAW_PRIVATE, and calling getPixelStride on images of these formats will cause an UnsupportedOperationException being thrown. For formats where pixel stride is well defined, the pixel stride is always greater than 0.

getRowStride

Added in API level 19
abstract fun getRowStride(): Int

The row stride for this color plane, in bytes.

This is the distance between the start of two consecutive rows of pixels in the image. Note that row stride is undefined for some formats such as RAW_PRIVATE, and calling getRowStride on images of these formats will cause an UnsupportedOperationException being thrown. For formats where row stride is well defined, the row stride is always greater than 0.