Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 99a9750a authored by Jason Macnak's avatar Jason Macnak Committed by Android (Google) Code Review
Browse files

Merge "Add AHARDWAREBUFFER_FORMAT_YCBCR_P010"

parents d8b2e241 240bb02e
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -584,6 +584,8 @@ bool AHardwareBuffer_isValidPixelFormat(uint32_t format) {
            "HAL and AHardwareBuffer pixel format don't match");
    static_assert(HAL_PIXEL_FORMAT_YCBCR_422_I == AHARDWAREBUFFER_FORMAT_YCbCr_422_I,
            "HAL and AHardwareBuffer pixel format don't match");
    static_assert(HAL_PIXEL_FORMAT_YCBCR_P010 == AHARDWAREBUFFER_FORMAT_YCbCr_P010,
            "HAL and AHardwareBuffer pixel format don't match");
    static_assert(static_cast<int>(aidl::android::hardware::graphics::common::PixelFormat::R_8) ==
                          AHARDWAREBUFFER_FORMAT_R8_UNORM,
            "HAL and AHardwareBuffer pixel format don't match");
@@ -617,6 +619,7 @@ bool AHardwareBuffer_isValidPixelFormat(uint32_t format) {
        case AHARDWAREBUFFER_FORMAT_YCbCr_422_SP:
        case AHARDWAREBUFFER_FORMAT_YCrCb_420_SP:
        case AHARDWAREBUFFER_FORMAT_YCbCr_422_I:
        case AHARDWAREBUFFER_FORMAT_YCbCr_P010:
            return true;

        default:
@@ -633,6 +636,7 @@ bool AHardwareBuffer_formatIsYuv(uint32_t format) {
        case AHARDWAREBUFFER_FORMAT_YCbCr_422_SP:
        case AHARDWAREBUFFER_FORMAT_YCrCb_420_SP:
        case AHARDWAREBUFFER_FORMAT_YCbCr_422_I:
        case AHARDWAREBUFFER_FORMAT_YCbCr_P010:
            return true;
        default:
            return false;
+8 −0
Original line number Diff line number Diff line
@@ -159,6 +159,14 @@ enum AHardwareBuffer_Format {
     */
    AHARDWAREBUFFER_FORMAT_Y8Cb8Cr8_420             = 0x23,

    /**
     * YUV P010 format.
     * Must have an even width and height. Can be accessed in OpenGL
     * shaders through an external sampler. Does not support mip-maps
     * cube-maps or multi-layered textures.
     */
    AHARDWAREBUFFER_FORMAT_YCbCr_P010               = 0x36,

    /**
     * Corresponding formats:
     *   Vulkan: VK_FORMAT_R8_UNORM