java.lang.Object | |
↳ | android.graphics.ImageFormat |
Constants | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
int | JPEG | Encoded formats. | |||||||||
int | NV16 | YCbCr format, used for video. | |||||||||
int | NV21 | YCrCb format used for images, which uses the NV21 encoding format. | |||||||||
int | RGB_565 | RGB format used for pictures encoded as RGB_565. | |||||||||
int | UNKNOWN | ||||||||||
int | YUV_420_888 |
Multi-plane Android YUV format This format is a generic YCbCr format, capable of describing any 4:2:0 chroma-subsampled planar or semiplanar buffer (but not fully interleaved), with 8 bits per color sample. |
|||||||||
int | YUY2 | YCbCr format used for images, which uses YUYV (YUY2) encoding format. | |||||||||
int | YV12 |
Android YUV format. |
Public Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
|
Use this function to retrieve the number of bits per pixel of an
ImageFormat.
|
[Expand]
Inherited Methods
|
|||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
|
Encoded formats. These are not necessarily supported by the hardware.
YCbCr format, used for video. Whether this format is supported by the
camera hardware can be determined by
getSupportedPreviewFormats()
.
YCrCb format used for images, which uses the NV21 encoding format. This
is the default format for camera preview images, when not otherwise set
with
setPreviewFormat(int)
.
RGB format used for pictures encoded as RGB_565. See
setPictureFormat(int)
.
Multi-plane Android YUV format
This format is a generic YCbCr format, capable of describing any 4:2:0 chroma-subsampled planar or semiplanar buffer (but not fully interleaved), with 8 bits per color sample.
Images in this format are always represented by three separate buffers of data, one for each color plane. Additional information always accompanies the buffers, describing the row stride and the pixel stride for each plane.
The order of planes in the array returned by
Image#getPlanes()
is guaranteed such that
plane #0 is always Y, plane #1 is always U (Cb), and plane #2 is always V (Cr).
The Y-plane is guaranteed not to be interleaved with the U/V planes
(in particular, pixel stride is always 1 in
yPlane.getPixelStride()
).
The U/V planes are guaranteed to have the same row stride and pixel stride
(in particular,
uPlane.getRowStride()
==
vPlane.getRowStride()
and
uPlane.getPixelStride()
==
vPlane.getPixelStride()
;
).
Image
ImageReader
YCbCr format used for images, which uses YUYV (YUY2) encoding format.
This is an alternative format for camera preview images. Whether this
format is supported by the camera hardware can be determined by
getSupportedPreviewFormats()
.
Android YUV format.
This format is exposed to software decoders and applications.
YV12 is a 4:2:0 YCrCb planar format comprised of a WxH Y plane followed by (W/2) x (H/2) Cr and Cb planes.
This format assumes
y_size = stride * height c_stride = ALIGN(stride/2, 16) c_size = c_stride * height/2 size = y_size + c_size * 2 cr_offset = y_size cb_offset = y_size + c_size
This format is guaranteed to be supported for camera preview images since
API level 12; for earlier API versions, check
getSupportedPreviewFormats()
.
Note that for camera preview callback use (see
setPreviewCallback(Camera.PreviewCallback)
), the
stride
value is the smallest possible; that is, it is equal
to:
stride = ALIGN(width, 16)
Use this function to retrieve the number of bits per pixel of an ImageFormat.