1 /* 2 * Copyright (c) 2024 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 #ifndef ENUM_LIST_H 16 #define ENUM_LIST_H 17 #include "native_buffer.h" 18 19 int32_t NativeBuffer_ColorSpace[] = { 20 OH_COLORSPACE_NONE, 21 OH_COLORSPACE_BT601_EBU_FULL, 22 OH_COLORSPACE_BT601_SMPTE_C_FULL, 23 OH_COLORSPACE_BT709_FULL, 24 OH_COLORSPACE_BT2020_HLG_FULL, 25 OH_COLORSPACE_BT2020_PQ_FULL, 26 OH_COLORSPACE_BT601_EBU_LIMIT, 27 OH_COLORSPACE_BT601_SMPTE_C_LIMIT, 28 OH_COLORSPACE_BT709_LIMIT, 29 OH_COLORSPACE_BT2020_HLG_LIMIT, 30 OH_COLORSPACE_BT2020_PQ_LIMIT, 31 OH_COLORSPACE_SRGB_FULL, 32 OH_COLORSPACE_P3_FULL, 33 OH_COLORSPACE_P3_HLG_FULL, 34 OH_COLORSPACE_P3_PQ_FULL, 35 OH_COLORSPACE_ADOBERGB_FULL, 36 OH_COLORSPACE_SRGB_LIMIT, 37 OH_COLORSPACE_P3_LIMIT, 38 OH_COLORSPACE_P3_HLG_LIMIT, 39 OH_COLORSPACE_P3_PQ_LIMIT, 40 OH_COLORSPACE_ADOBERGB_LIMIT, 41 OH_COLORSPACE_LINEAR_SRGB, 42 OH_COLORSPACE_LINEAR_BT709, 43 OH_COLORSPACE_LINEAR_P3, 44 OH_COLORSPACE_LINEAR_BT2020, 45 OH_COLORSPACE_DISPLAY_SRGB, 46 OH_COLORSPACE_DISPLAY_P3_SRGB, 47 OH_COLORSPACE_DISPLAY_P3_HLG, 48 OH_COLORSPACE_DISPLAY_P3_PQ, 49 OH_COLORSPACE_DISPLAY_BT2020_SRGB, 50 OH_COLORSPACE_DISPLAY_BT2020_HLG, 51 OH_COLORSPACE_DISPLAY_BT2020_PQ 52 }; 53 54 int32_t NativeBuffer_Format[] = { 55 NATIVEBUFFER_PIXEL_FMT_CLUT8, 56 NATIVEBUFFER_PIXEL_FMT_CLUT1, 57 NATIVEBUFFER_PIXEL_FMT_CLUT4, 58 NATIVEBUFFER_PIXEL_FMT_RGB_565, 59 NATIVEBUFFER_PIXEL_FMT_RGBA_5658, 60 NATIVEBUFFER_PIXEL_FMT_RGBX_4444, 61 NATIVEBUFFER_PIXEL_FMT_RGBA_4444, 62 NATIVEBUFFER_PIXEL_FMT_RGB_444, 63 NATIVEBUFFER_PIXEL_FMT_RGBX_5551, 64 NATIVEBUFFER_PIXEL_FMT_RGBA_5551, 65 NATIVEBUFFER_PIXEL_FMT_RGB_555, 66 NATIVEBUFFER_PIXEL_FMT_RGBX_8888, 67 NATIVEBUFFER_PIXEL_FMT_RGBA_8888, 68 NATIVEBUFFER_PIXEL_FMT_RGB_888, 69 NATIVEBUFFER_PIXEL_FMT_BGR_565, 70 NATIVEBUFFER_PIXEL_FMT_BGRX_4444, 71 NATIVEBUFFER_PIXEL_FMT_BGRA_4444, 72 NATIVEBUFFER_PIXEL_FMT_BGRX_5551, 73 NATIVEBUFFER_PIXEL_FMT_BGRA_5551, 74 NATIVEBUFFER_PIXEL_FMT_BGRX_8888, 75 NATIVEBUFFER_PIXEL_FMT_BGRA_8888, 76 NATIVEBUFFER_PIXEL_FMT_YUV_422_I, 77 NATIVEBUFFER_PIXEL_FMT_YCBCR_422_SP, 78 NATIVEBUFFER_PIXEL_FMT_YCRCB_422_SP, 79 NATIVEBUFFER_PIXEL_FMT_YCBCR_420_SP, 80 NATIVEBUFFER_PIXEL_FMT_YCRCB_420_SP, 81 NATIVEBUFFER_PIXEL_FMT_YCBCR_422_P, 82 NATIVEBUFFER_PIXEL_FMT_YCRCB_422_P, 83 NATIVEBUFFER_PIXEL_FMT_YCBCR_420_P, 84 NATIVEBUFFER_PIXEL_FMT_YCRCB_420_P, 85 NATIVEBUFFER_PIXEL_FMT_YUYV_422_PKG, 86 NATIVEBUFFER_PIXEL_FMT_UYVY_422_PKG, 87 NATIVEBUFFER_PIXEL_FMT_YVYU_422_PKG, 88 NATIVEBUFFER_PIXEL_FMT_VYUY_422_PKG, 89 NATIVEBUFFER_PIXEL_FMT_RGBA_1010102, 90 NATIVEBUFFER_PIXEL_FMT_YCBCR_P010, 91 NATIVEBUFFER_PIXEL_FMT_YCRCB_P010, 92 NATIVEBUFFER_PIXEL_FMT_RAW10, 93 NATIVEBUFFER_PIXEL_FMT_VENDER_MASK, 94 NATIVEBUFFER_PIXEL_FMT_BUTT 95 }; 96 97 int32_t NativeBuffer_MetadataType[] = { 98 OH_VIDEO_HDR_HLG, 99 OH_VIDEO_HDR_HDR10, 100 OH_VIDEO_HDR_VIVID, 101 OH_VIDEO_NONE 102 }; 103 104 std::unordered_map<int32_t, std::string> metadataString = { 105 {OH_VIDEO_HDR_HLG, "HDR_HLG"}, 106 {OH_VIDEO_HDR_HDR10, "HDR_HDR10"}, 107 {OH_VIDEO_HDR_VIVID, "HDR_VIVID"}, 108 {OH_VIDEO_NONE, "NONE"} 109 }; 110 111 std::unordered_map<int32_t, std::string> formatString = { 112 {NATIVEBUFFER_PIXEL_FMT_CLUT8, "CLUT8"}, 113 {NATIVEBUFFER_PIXEL_FMT_CLUT1, "CLUT1"}, 114 {NATIVEBUFFER_PIXEL_FMT_CLUT4, "CLUT4"}, 115 {NATIVEBUFFER_PIXEL_FMT_RGB_565, "RGB_565"}, 116 {NATIVEBUFFER_PIXEL_FMT_RGBA_5658, "RGBA_5658"}, 117 {NATIVEBUFFER_PIXEL_FMT_RGBX_4444, "RGBX_4444"}, 118 {NATIVEBUFFER_PIXEL_FMT_RGBA_4444, "RGBA_4444"}, 119 {NATIVEBUFFER_PIXEL_FMT_RGB_444, "RGB_444"}, 120 {NATIVEBUFFER_PIXEL_FMT_RGBX_5551, "RGBX_5551"}, 121 {NATIVEBUFFER_PIXEL_FMT_RGBA_5551, "RGBA_5551"}, 122 {NATIVEBUFFER_PIXEL_FMT_RGB_555, "RGB_555"}, 123 {NATIVEBUFFER_PIXEL_FMT_RGBX_8888, "RGBX_8888"}, 124 {NATIVEBUFFER_PIXEL_FMT_RGBA_8888, "RGBA_8888"}, 125 {NATIVEBUFFER_PIXEL_FMT_RGB_888, "RGB_888"}, 126 {NATIVEBUFFER_PIXEL_FMT_BGR_565, "BGR_565"}, 127 {NATIVEBUFFER_PIXEL_FMT_BGRX_4444, "BGRX_4444"}, 128 {NATIVEBUFFER_PIXEL_FMT_BGRA_4444, "BGRA_4444"}, 129 {NATIVEBUFFER_PIXEL_FMT_BGRX_5551, "BGRX_5551"}, 130 {NATIVEBUFFER_PIXEL_FMT_BGRA_5551, "BGRA_5551"}, 131 {NATIVEBUFFER_PIXEL_FMT_BGRX_8888, "BGRX_8888"}, 132 {NATIVEBUFFER_PIXEL_FMT_BGRA_8888, "BGRA_8888"}, 133 {NATIVEBUFFER_PIXEL_FMT_YUV_422_I, "YUV_422_I"}, 134 {NATIVEBUFFER_PIXEL_FMT_YCBCR_422_SP, "YCBCR_422_SP"}, 135 {NATIVEBUFFER_PIXEL_FMT_YCRCB_422_SP, "YCRCB_422_SP"}, 136 {NATIVEBUFFER_PIXEL_FMT_YCBCR_420_SP, "YCBCR_420_SP"}, 137 {NATIVEBUFFER_PIXEL_FMT_YCRCB_420_SP, "YCRCB_420_SP"}, 138 {NATIVEBUFFER_PIXEL_FMT_YCBCR_422_P, "YCBCR_422_P"}, 139 {NATIVEBUFFER_PIXEL_FMT_YCRCB_422_P, "YCRCB_422_P"}, 140 {NATIVEBUFFER_PIXEL_FMT_YCBCR_420_P, "YCBCR_420_P"}, 141 {NATIVEBUFFER_PIXEL_FMT_YCRCB_420_P, "YCRCB_420_P"}, 142 {NATIVEBUFFER_PIXEL_FMT_YUYV_422_PKG, "YUYV_422_PKG"}, 143 {NATIVEBUFFER_PIXEL_FMT_UYVY_422_PKG, "UYVY_422_PKG"}, 144 {NATIVEBUFFER_PIXEL_FMT_YVYU_422_PKG, "YVYU_422_PKG"}, 145 {NATIVEBUFFER_PIXEL_FMT_VYUY_422_PKG, "VYUY_422_PKG"}, 146 {NATIVEBUFFER_PIXEL_FMT_RGBA_1010102, "RGBA_1010102"}, 147 {NATIVEBUFFER_PIXEL_FMT_YCBCR_P010, "YCBCR_P010"}, 148 {NATIVEBUFFER_PIXEL_FMT_YCRCB_P010, "YCRCB_P010"}, 149 {NATIVEBUFFER_PIXEL_FMT_RAW10, "RAW10"}, 150 {NATIVEBUFFER_PIXEL_FMT_VENDER_MASK, "VENDER_MASK"}, 151 {NATIVEBUFFER_PIXEL_FMT_BUTT, "BUTT"} 152 }; 153 154 std::unordered_map<int32_t, std::string> colorString = { 155 {OH_COLORSPACE_NONE, "NONE"}, 156 {OH_COLORSPACE_BT601_EBU_FULL, "BT601_EBU_FULL"}, 157 {OH_COLORSPACE_BT601_SMPTE_C_FULL, "BT601_SMPTC_FULL"}, 158 {OH_COLORSPACE_BT709_FULL, "BT709_FULL"}, 159 {OH_COLORSPACE_BT2020_HLG_FULL, "BT2020_HLG_FULL"}, 160 {OH_COLORSPACE_BT2020_PQ_FULL, "BT2020_PQ_FULL"}, 161 {OH_COLORSPACE_BT601_EBU_LIMIT, "BT601_EBU_LIMIT"}, 162 {OH_COLORSPACE_BT601_SMPTE_C_LIMIT, "BT601_SMPTC_LIMIT"}, 163 {OH_COLORSPACE_BT709_LIMIT, "BT709_LIMIT"}, 164 {OH_COLORSPACE_BT2020_HLG_LIMIT, "BT2020_HLG_LIMIT"}, 165 {OH_COLORSPACE_BT2020_PQ_LIMIT, "BT2020_PQ_LIMIT"}, 166 {OH_COLORSPACE_SRGB_FULL, "SRGB_FULL"}, 167 {OH_COLORSPACE_P3_FULL, "P3_FULL"}, 168 {OH_COLORSPACE_P3_HLG_FULL, "P3_HLG_FULL"}, 169 {OH_COLORSPACE_P3_PQ_FULL, "P3_PQ_FULL"}, 170 {OH_COLORSPACE_ADOBERGB_FULL, "ADOBERGB_FULL"}, 171 {OH_COLORSPACE_SRGB_LIMIT, "SRGB_LIMIT"}, 172 {OH_COLORSPACE_P3_LIMIT, "P3_LIMIT"}, 173 {OH_COLORSPACE_P3_HLG_LIMIT, "P3_HLG_LIMIT"}, 174 {OH_COLORSPACE_P3_PQ_LIMIT, "P3_PQ_LIMIT"}, 175 {OH_COLORSPACE_ADOBERGB_LIMIT, "ADOBERGB_LIMIT"}, 176 {OH_COLORSPACE_LINEAR_SRGB, "LINEAR_SRGB"}, 177 {OH_COLORSPACE_LINEAR_BT709, "LINEAR_BT709"}, 178 {OH_COLORSPACE_LINEAR_P3, "LINEAR_P3"}, 179 {OH_COLORSPACE_LINEAR_BT2020, "LINEAR_BT2020"}, 180 {OH_COLORSPACE_DISPLAY_SRGB, "DISPLAY_SRGB"}, 181 {OH_COLORSPACE_DISPLAY_P3_SRGB, "DISPLAY_P3_SRGB"}, 182 {OH_COLORSPACE_DISPLAY_P3_HLG, "DISPLAY_P3_HLG"}, 183 {OH_COLORSPACE_DISPLAY_P3_PQ, "DISPLAY_P3_PQ"}, 184 {OH_COLORSPACE_DISPLAY_BT2020_SRGB, "DISPLAY_BT2020_SRGB"}, 185 {OH_COLORSPACE_DISPLAY_BT2020_HLG, "DISPLAY_BT2020_HLG"}, 186 {OH_COLORSPACE_DISPLAY_BT2020_PQ, "DISPLAY_BT2020_PQ"} 187 }; 188 189 #endif