gralloc: Add ITU-R standard info for YUV formats
These format qualifiers will help graphics decide which standard to use when working with a YUV texture. Change-Id: I6ad464e6b070d3b375c5e07f03228308d15407cd
This commit is contained in:
committed by
Gerrit - the friendly Code Review server
parent
59793b67c2
commit
fc940ef958
@@ -103,6 +103,23 @@ int gpu_context_t::gralloc_alloc_buffer(size_t size, int usage,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (bufferType == BUFFER_TYPE_VIDEO) {
|
||||||
|
if (usage & GRALLOC_USAGE_HW_CAMERA_WRITE) {
|
||||||
|
if ((qdutils::MDPVersion::getInstance().getMDPVersion() <
|
||||||
|
qdutils::MDSS_V5)) { //A-Family
|
||||||
|
flags |= private_handle_t::PRIV_FLAGS_ITU_R_601_FR;
|
||||||
|
} else {
|
||||||
|
if (usage & (GRALLOC_USAGE_HW_TEXTURE |
|
||||||
|
GRALLOC_USAGE_HW_VIDEO_ENCODER))
|
||||||
|
flags |= private_handle_t::PRIV_FLAGS_ITU_R_709;
|
||||||
|
else if (usage & GRALLOC_USAGE_HW_CAMERA_ZSL)
|
||||||
|
flags |= private_handle_t::PRIV_FLAGS_ITU_R_601_FR;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
flags |= private_handle_t::PRIV_FLAGS_ITU_R_601;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (usage & GRALLOC_USAGE_HW_VIDEO_ENCODER ) {
|
if (usage & GRALLOC_USAGE_HW_VIDEO_ENCODER ) {
|
||||||
flags |= private_handle_t::PRIV_FLAGS_VIDEO_ENCODER;
|
flags |= private_handle_t::PRIV_FLAGS_VIDEO_ENCODER;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -159,6 +159,9 @@ struct private_handle_t : public native_handle {
|
|||||||
PRIV_FLAGS_CAMERA_READ = 0x00040000,
|
PRIV_FLAGS_CAMERA_READ = 0x00040000,
|
||||||
PRIV_FLAGS_HW_COMPOSER = 0x00080000,
|
PRIV_FLAGS_HW_COMPOSER = 0x00080000,
|
||||||
PRIV_FLAGS_HW_TEXTURE = 0x00100000,
|
PRIV_FLAGS_HW_TEXTURE = 0x00100000,
|
||||||
|
PRIV_FLAGS_ITU_R_601 = 0x00200000,
|
||||||
|
PRIV_FLAGS_ITU_R_601_FR = 0x00400000,
|
||||||
|
PRIV_FLAGS_ITU_R_709 = 0x00800000,
|
||||||
};
|
};
|
||||||
|
|
||||||
// file-descriptors
|
// file-descriptors
|
||||||
|
|||||||
Reference in New Issue
Block a user