public static abstract class Image.Plane
extends Object
java.lang.Object | |
↳ | android.media.Image.Plane |
图像数据的单色平面。
图像中平面的数量和含义取决于图像的格式。
一旦图像被关闭,任何对飞机的ByteBuffer的访问都将失败。
也可以看看:
Public methods |
|
---|---|
abstract ByteBuffer |
getBuffer() 获取包含帧数据的直接 |
abstract int |
getPixelStride() 相邻像素采样之间的距离,以字节为单位。 |
abstract int |
getRowStride() 该颜色平面的行跨距,以字节为单位。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
ByteBuffer getBuffer ()
获取包含帧数据的直接 ByteBuffer
。
特别是,返回的缓冲区将始终有 isDirect
返回 true
,因此底层数据可以作为JNI中的指针映射,而不使用 GetDirectBufferAddress
执行任何副本。
对于原始格式,每个平面只保证包含最后一行中最后一个像素的数据。 换句话说,最后一行之后的步幅可能不会映射到缓冲区中。 这是任何交错格式的必要条件。
Returns | |
---|---|
ByteBuffer |
the byte buffer containing the image data for this plane. |
int getPixelStride ()
相邻像素采样之间的距离,以字节为单位。
这是一行像素中两个连续像素值之间的距离。 它可能大于单个像素的大小以说明交错图像数据或填充格式。 请注意,某些格式(如RAW_PRIVATE
像素跨距未定义,并且在这些格式的图像上调用getPixelStride将导致抛出UnsupportedOperationException。 对于像素跨度定义明确的格式,像素跨度总是大于0。
Returns | |
---|---|
int |
int getRowStride ()
该颜色平面的行跨距,以字节为单位。
这是图像中连续两行像素开始的距离。 请注意,对于某些格式(例如RAW_PRIVATE
,stried未定义,并且对这些格式的图像调用getRowStride将导致抛出UnsupportedOperationException。 对于行跨度很好定义的格式,行跨度总是大于0。
Returns | |
---|---|
int |