1 /* 2 * Copyright (C) 2023 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 16 /** 17 * @addtogroup image 18 * @{ 19 * 20 * @brief Provides APIs for access to the image interface. 21 * 22 * @since 12 23 */ 24 25 /** 26 * @file image_common.h 27 * 28 * @brief Declares the common enums and structs used by the image interface. 29 * 30 * @library libpixelmap.so 31 * @kit ImageKit 32 * @syscap SystemCapability.Multimedia.Image.Core 33 * @since 12 34 */ 35 36 #ifndef INTERFACES_KITS_NATIVE_INCLUDE_IMAGE_IMAGE_COMMON_H_ 37 #define INTERFACES_KITS_NATIVE_INCLUDE_IMAGE_IMAGE_COMMON_H_ 38 #include <stdint.h> 39 #include <stddef.h> 40 41 #ifdef __cplusplus 42 extern "C" { 43 #endif 44 45 /** 46 * @brief Defines the image size. 47 * 48 * @since 12 49 */ 50 struct Image_Size { 51 /** Image width, in pixels. */ 52 uint32_t width; 53 /** Image height, in pixels. */ 54 uint32_t height; 55 }; 56 57 /** 58 * @brief Declaration the image size. 59 * 60 * @since 12 61 */ 62 typedef struct Image_Size Image_Size; 63 64 /** 65 * @brief Defines the region of the image source to decode. 66 * 67 * @since 12 68 */ 69 struct Image_Region { 70 /** X coordinate of the start point, in pixels. */ 71 uint32_t x; 72 /** Y coordinate of the start point, in pixels. */ 73 uint32_t y; 74 /** Width of the region, in pixels. */ 75 uint32_t width; 76 /** Height of the region, in pixels. */ 77 uint32_t height; 78 }; 79 80 /** 81 * @brief Declaration the image region. 82 * 83 * @since 12 84 */ 85 typedef struct Image_Region Image_Region; 86 87 #ifdef __cplusplus 88 /** 89 * @brief Defines the region of the image source to decode. 90 * 91 * @since 12 92 */ 93 struct Image_String { 94 /** data for string type */ 95 char *data = nullptr; 96 /** data lenth for string type */ 97 size_t size = 0; 98 }; 99 #else 100 /** 101 * @brief Defines the region of the image source to decode. 102 * 103 * @since 12 104 */ 105 struct Image_String { 106 /** data for string type */ 107 char *data; 108 /** data lenth for string type */ 109 size_t size; 110 }; 111 #endif 112 113 /** 114 * @brief Define a PictureMetadata struct type, used for picture metadata. 115 * 116 * @since 13 117 */ 118 struct OH_PictureMetadata; 119 120 /** 121 * @brief Define a PictureMetadata struct type, used for picture metadata. 122 * 123 * @since 13 124 */ 125 typedef struct OH_PictureMetadata OH_PictureMetadata; 126 127 /** 128 * @brief Defines the property string (in key-value format) of the image source. 129 * 130 * @since 12 131 */ 132 typedef struct Image_String Image_String; 133 134 /** 135 * @brief Defines the image encode format. 136 * 137 * @since 12 138 */ 139 typedef struct Image_String Image_MimeType; 140 141 /** 142 * @brief Enumerates the return values that may be used by the interface. 143 * 144 * @since 12 145 */ 146 typedef enum { 147 /** operation success */ 148 IMAGE_SUCCESS = 0, 149 /** invalid parameter */ 150 IMAGE_BAD_PARAMETER = 401, 151 /** unsupported mime type */ 152 IMAGE_UNSUPPORTED_MIME_TYPE = 7600101, 153 /** unknown mime type */ 154 IMAGE_UNKNOWN_MIME_TYPE = 7600102, 155 /** too large data or image */ 156 IMAGE_TOO_LARGE = 7600103, 157 /** @error DMA memory does not exist */ 158 IMAGE_DMA_NOT_EXIST = 7600173, 159 /** @error DMA operation failed */ 160 IMAGE_DMA_OPERATION_FAILED = 7600174, 161 /** unsupported operations */ 162 IMAGE_UNSUPPORTED_OPERATION = 7600201, 163 /** unsupported metadata */ 164 IMAGE_UNSUPPORTED_METADATA = 7600202, 165 /** unsupported conversion */ 166 IMAGE_UNSUPPORTED_CONVERSION = 7600203, 167 /** invalid region */ 168 IMAGE_INVALID_REGION = 7600204, 169 /** 170 * @error unsupported memory format 171 * @since 13 172 */ 173 IMAGE_UNSUPPORTED_MEMORY_FORMAT = 7600205, 174 /** failed to allocate memory */ 175 IMAGE_ALLOC_FAILED = 7600301, 176 /** memory copy failed */ 177 IMAGE_COPY_FAILED = 7600302, 178 /** unknown error */ 179 IMAGE_UNKNOWN_ERROR = 7600901, 180 /** decode data source exception */ 181 IMAGE_BAD_SOURCE = 7700101, 182 /** decode failed */ 183 IMAGE_DECODE_FAILED = 7700301, 184 /** encode failed */ 185 IMAGE_ENCODE_FAILED = 7800301, 186 } Image_ErrorCode; 187 188 /** 189 * @brief Define the metadata type. 190 * 191 * @since 13 192 */ 193 typedef enum { 194 /* 195 * EXIF metadata. 196 */ 197 EXIF_METADATA = 1, 198 /* 199 * Fragment metadata. 200 */ 201 FRAGMENT_METADATA = 2, 202 } Image_MetadataType; 203 204 /** 205 * @brief Creates a <b>PictureMetadata</b> object. 206 * 207 * @param metadataType The type of metadata. 208 * @param metadata The PictureMetadata pointer will be operated. 209 * @return Image functions result code. 210 * {@link IMAGE_SUCCESS} if the execution is successful. 211 * {@link IMAGE_BAD_PARAMETER} metadata is nullptr. 212 * @since 13 213 */ 214 Image_ErrorCode OH_PictureMetadata_Create(Image_MetadataType metadataType, OH_PictureMetadata **metadata); 215 216 /** 217 * @brief Obtains the property of picture metadata. 218 * 219 * @param metadata The PictureMetadata pointer will be operated. 220 * @param key The property's key. 221 * @param value The property's value. 222 * @return Image functions result code. 223 * {@link IMAGE_SUCCESS} if the execution is successful. 224 * {@link IMAGE_BAD_PARAMETER} metadata is nullptr, or key is nullptr, or value is nullptr. 225 * {@link IMAGE_UNSUPPORTED_METADATA} unsupported metadata type, or the metadata type does not match the 226 * auxiliary picture type. 227 * @since 13 228 */ 229 Image_ErrorCode OH_PictureMetadata_GetProperty(OH_PictureMetadata *metadata, Image_String *key, Image_String *value); 230 231 /** 232 * @brief Set picture metadata property. 233 * 234 * @param metadata The PictureMetadata pointer will be operated. 235 * @param key The property's key. 236 * @param value The property's value. 237 * @return Image functions result code. 238 * {@link IMAGE_SUCCESS} if the execution is successful. 239 * {@link IMAGE_BAD_PARAMETER} metadata is nullptr, or key is nullptr, or value is nullptr. 240 * {@link IMAGE_UNSUPPORTED_METADATA} unsupported metadata type, or the metadata type does not match the 241 * auxiliary picture type. 242 * @since 13 243 */ 244 Image_ErrorCode OH_PictureMetadata_SetProperty(OH_PictureMetadata *metadata, Image_String *key, Image_String *value); 245 246 /** 247 * @brief Releases this PictureMetadata object. 248 * 249 * @param metadata The PictureMetadata pointer will be operated. 250 * @return Image functions result code. 251 * {@link IMAGE_SUCCESS} if the execution is successful. 252 * {@link IMAGE_BAD_PARAMETER} metadata is nullptr. 253 * @since 13 254 */ 255 Image_ErrorCode OH_PictureMetadata_Release(OH_PictureMetadata *metadata); 256 257 /** 258 * @brief Obtains a clone of metadata. 259 * 260 * @param oldMetadata The PictureMetadata pointer will be operated. 261 * @param newMetadata The PictureMetadata pointer will be cloned. 262 * @return Image functions result code. 263 * {@link IMAGE_SUCCESS} if the execution is successful. 264 * {@link IMAGE_BAD_PARAMETER} metadata is nullptr. 265 * {@link IMAGE_ALLOC_FAILED} memory alloc failed. 266 * {@link IMAGE_COPY_FAILED} memory copy failed. 267 * @since 13 268 */ 269 Image_ErrorCode OH_PictureMetadata_Clone(OH_PictureMetadata *oldMetadata, OH_PictureMetadata **newMetadata); 270 271 /** 272 * @brief Defines the bmp mime type. 273 * 274 * @since 12 275 */ 276 static const char* MIME_TYPE_BMP = "image/bmp"; 277 278 /** 279 * @brief Defines the jpeg mime type. 280 * 281 * @since 12 282 */ 283 static const char* MIME_TYPE_JPEG = "image/jpeg"; 284 285 /** 286 * @brief Defines the heic mime type. 287 * 288 * @since 12 289 */ 290 static const char* MIME_TYPE_HEIC = "image/heic"; 291 292 /** 293 * @brief Defines the png mime type. 294 * 295 * @since 12 296 */ 297 static const char* MIME_TYPE_PNG = "image/png"; 298 299 /** 300 * @brief Defines the webp mime type. 301 * 302 * @since 12 303 */ 304 static const char* MIME_TYPE_WEBP = "image/webp"; 305 306 /** 307 * @brief Defines the gif mime type. 308 * 309 * @since 12 310 */ 311 static const char* MIME_TYPE_GIF = "image/gif"; 312 313 /** 314 * @brief Defines the x-icon mime type. 315 * 316 * @since 12 317 */ 318 static const char* MIME_TYPE_ICON = "image/x-icon"; 319 320 /** 321 * @brief Defines a pointer to bits per sample, one of the image properties. 322 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 323 * 324 * @since 12 325 */ 326 static const char *OHOS_IMAGE_PROPERTY_BITS_PER_SAMPLE = "BitsPerSample"; 327 328 /** 329 * @brief Defines a pointer to the orientation, one of the image properties. 330 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 331 * 332 * @since 12 333 */ 334 static const char *OHOS_IMAGE_PROPERTY_ORIENTATION = "Orientation"; 335 336 /** 337 * @brief Defines a pointer to the image length, one of the image properties. 338 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 339 * 340 * @since 12 341 */ 342 static const char *OHOS_IMAGE_PROPERTY_IMAGE_LENGTH = "ImageLength"; 343 344 /** 345 * @brief Defines a pointer to the image width, one of the image properties. 346 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 347 * 348 * @since 12 349 */ 350 static const char *OHOS_IMAGE_PROPERTY_IMAGE_WIDTH = "ImageWidth"; 351 352 /** 353 * @brief Defines a pointer to the GPS latitude, one of the image properties. 354 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 355 * 356 * @since 12 357 */ 358 static const char *OHOS_IMAGE_PROPERTY_GPS_LATITUDE = "GPSLatitude"; 359 360 /** 361 * @brief Defines a pointer to the GPS longitude, one of the image properties. 362 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 363 * 364 * @since 12 365 */ 366 static const char *OHOS_IMAGE_PROPERTY_GPS_LONGITUDE = "GPSLongitude"; 367 368 /** 369 * @brief Defines a pointer to the GPS latitude reference information, one of the image properties. 370 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 371 * 372 * @since 12 373 */ 374 static const char *OHOS_IMAGE_PROPERTY_GPS_LATITUDE_REF = "GPSLatitudeRef"; 375 376 /** 377 * @brief Defines a pointer to the GPS longitude reference information, one of the image properties. 378 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 379 * 380 * @since 12 381 */ 382 static const char *OHOS_IMAGE_PROPERTY_GPS_LONGITUDE_REF = "GPSLongitudeRef"; 383 384 /** 385 * @brief Defines a pointer to the created date and time, one of the image properties. 386 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 387 * 388 * @since 12 389 */ 390 static const char *OHOS_IMAGE_PROPERTY_DATE_TIME_ORIGINAL = "DateTimeOriginal"; 391 392 /** 393 * @brief Defines a pointer to the exposure time, one of the image properties. 394 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 395 * 396 * @since 12 397 */ 398 static const char *OHOS_IMAGE_PROPERTY_EXPOSURE_TIME = "ExposureTime"; 399 400 /** 401 * @brief Defines a pointer to the scene type, one of the image properties. 402 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 403 * 404 * @since 12 405 */ 406 static const char *OHOS_IMAGE_PROPERTY_SCENE_TYPE = "SceneType"; 407 408 /** 409 * @brief Defines a pointer to the ISO speed ratings, one of the image properties. 410 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 411 * 412 * @since 12 413 */ 414 static const char *OHOS_IMAGE_PROPERTY_ISO_SPEED_RATINGS = "ISOSpeedRatings"; 415 416 /** 417 * @brief Defines a pointer to the f-number of the image, one of the image properties. 418 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 419 * 420 * @since 12 421 */ 422 static const char *OHOS_IMAGE_PROPERTY_F_NUMBER = "FNumber"; 423 424 /** 425 * @brief Defines a pointer to the compressed bits per pixel, one of the image properties. 426 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 427 * 428 * @since 12 429 */ 430 static const char *OHOS_IMAGE_PROPERTY_COMPRESSED_BITS_PER_PIXEL = "CompressedBitsPerPixel"; 431 432 /** 433 * @brief The scheme used for image compression. 434 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 435 * 436 * @since 12 437 */ 438 static const char *OHOS_IMAGE_PROPERTY_COMPRESSION = "Compression"; 439 440 /** 441 * @brief Pixel composition, such as RGB or YCbCr. 442 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 443 * 444 * @since 12 445 */ 446 static const char *OHOS_IMAGE_PROPERTY_PHOTOMETRIC_INTERPRETATION = "PhotometricInterpretation"; 447 448 /** 449 * @brief For each strip, the byte offset of that strip. 450 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 451 * 452 * @since 12 453 */ 454 static const char *OHOS_IMAGE_PROPERTY_STRIP_OFFSETS = "StripOffsets"; 455 456 /** 457 * @brief The number of components per pixel. 458 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 459 * 460 * @since 12 461 */ 462 static const char *OHOS_IMAGE_PROPERTY_SAMPLES_PER_PIXEL = "SamplesPerPixel"; 463 464 /** 465 * @brief The number of rows per strip of image data. 466 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 467 * 468 * @since 12 469 */ 470 static const char *OHOS_IMAGE_PROPERTY_ROWS_PER_STRIP = "RowsPerStrip"; 471 472 /** 473 * @brief The total number of bytes in each strip of image data. 474 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 475 * 476 * @since 12 477 */ 478 static const char *OHOS_IMAGE_PROPERTY_STRIP_BYTE_COUNTS = "StripByteCounts"; 479 480 /** 481 * @brief The image resolution in the width direction. 482 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 483 * 484 * @since 12 485 */ 486 static const char *OHOS_IMAGE_PROPERTY_X_RESOLUTION = "XResolution"; 487 488 /** 489 * @brief The image resolution in the height direction. 490 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 491 * 492 * @since 12 493 */ 494 static const char *OHOS_IMAGE_PROPERTY_Y_RESOLUTION = "YResolution"; 495 496 /** 497 * @brief Indicates whether pixel components are recorded in a chunky or planar format. 498 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 499 * 500 * @since 12 501 */ 502 static const char *OHOS_IMAGE_PROPERTY_PLANAR_CONFIGURATION = "PlanarConfiguration"; 503 504 /** 505 * @brief The unit used to measure XResolution and YResolution. 506 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 507 * 508 * @since 12 509 */ 510 static const char *OHOS_IMAGE_PROPERTY_RESOLUTION_UNIT = "ResolutionUnit"; 511 512 /** 513 * @brief The transfer function for the image, typically used for color correction. 514 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 515 * 516 * @since 12 517 */ 518 static const char *OHOS_IMAGE_PROPERTY_TRANSFER_FUNCTION = "TransferFunction"; 519 520 /** 521 * @brief The name and version of the software used to generate the image. 522 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 523 * 524 * @since 12 525 */ 526 static const char *OHOS_IMAGE_PROPERTY_SOFTWARE = "Software"; 527 528 /** 529 * @brief The name of the person who created the image. 530 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 531 * 532 * @since 12 533 */ 534 static const char *OHOS_IMAGE_PROPERTY_ARTIST = "Artist"; 535 536 /** 537 * @brief The chromaticity of the white point of the image. 538 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 539 * 540 * @since 12 541 */ 542 static const char *OHOS_IMAGE_PROPERTY_WHITE_POINT = "WhitePoint"; 543 544 /** 545 * @brief The chromaticity of the primary colors of the image. 546 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 547 * 548 * @since 12 549 */ 550 static const char *OHOS_IMAGE_PROPERTY_PRIMARY_CHROMATICITIES = "PrimaryChromaticities"; 551 552 /** 553 * @brief The matrix coefficients for transformation from RGB to YCbCr image data. 554 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 555 * 556 * @since 12 557 */ 558 static const char *OHOS_IMAGE_PROPERTY_YCBCR_COEFFICIENTS = "YCbCrCoefficients"; 559 560 /** 561 * @brief The sampling ratio of chrominance components to the luminance component. 562 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 563 * 564 * @since 12 565 */ 566 static const char *OHOS_IMAGE_PROPERTY_YCBCR_SUB_SAMPLING = "YCbCrSubSampling"; 567 568 /** 569 * @brief The position of chrominance components in relation to the luminance component. 570 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 571 * 572 * @since 12 573 */ 574 static const char *OHOS_IMAGE_PROPERTY_YCBCR_POSITIONING = "YCbCrPositioning"; 575 576 /** 577 * @brief The reference black point value and reference white point value. 578 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 579 * 580 * @since 12 581 */ 582 static const char *OHOS_IMAGE_PROPERTY_REFERENCE_BLACK_WHITE = "ReferenceBlackWhite"; 583 584 /** 585 * @brief Copyright information for the image. 586 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 587 * 588 * @since 12 589 */ 590 static const char *OHOS_IMAGE_PROPERTY_COPYRIGHT = "Copyright"; 591 592 /** 593 * @brief The offset to the start byte (SOI) of JPEG compressed thumbnail data. 594 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 595 * 596 * @since 12 597 */ 598 static const char *OHOS_IMAGE_PROPERTY_JPEG_INTERCHANGE_FORMAT = "JPEGInterchangeFormat"; 599 600 /** 601 * @brief The number of bytes of JPEG compressed thumbnail data. 602 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 603 * 604 * @since 12 605 */ 606 static const char *OHOS_IMAGE_PROPERTY_JPEG_INTERCHANGE_FORMAT_LENGTH = "JPEGInterchangeFormatLength"; 607 608 /** 609 * @brief The class of the program used by the camera to set exposure when the picture is taken. 610 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 611 * 612 * @since 12 613 */ 614 static const char *OHOS_IMAGE_PROPERTY_EXPOSURE_PROGRAM = "ExposureProgram"; 615 616 /** 617 * @brief Indicates the spectral sensitivity of each channel of the camera used. 618 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 619 * 620 * @since 12 621 */ 622 static const char *OHOS_IMAGE_PROPERTY_SPECTRAL_SENSITIVITY = "SpectralSensitivity"; 623 624 /** 625 * @brief Indicates the Opto-Electric Conversion Function (OECF) specified in ISO 14524. 626 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 627 * 628 * @since 12 629 */ 630 static const char *OHOS_IMAGE_PROPERTY_OECF = "OECF"; 631 632 /** 633 * @brief The version of the Exif standard supported. 634 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 635 * 636 * @since 12 637 */ 638 static const char *OHOS_IMAGE_PROPERTY_EXIF_VERSION = "ExifVersion"; 639 640 /** 641 * @brief The date and time when the image was stored as digital data. 642 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 643 * 644 * @since 12 645 */ 646 static const char *OHOS_IMAGE_PROPERTY_DATE_TIME_DIGITIZED = "DateTimeDigitized"; 647 648 /** 649 * @brief Information specific to compressed data. 650 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 651 * 652 * @since 12 653 */ 654 static const char *OHOS_IMAGE_PROPERTY_COMPONENTS_CONFIGURATION = "ComponentsConfiguration"; 655 656 /** 657 * @brief The shutter speed, expressed as an APEX (Additive System of Photographic Exposure) value. 658 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 659 * 660 * @since 12 661 */ 662 static const char *OHOS_IMAGE_PROPERTY_SHUTTER_SPEED_VALUE = "ShutterSpeedValue"; 663 664 /** 665 * @brief The brightness value of the image, in APEX units. 666 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 667 * 668 * @since 12 669 */ 670 static const char *OHOS_IMAGE_PROPERTY_BRIGHTNESS_VALUE = "BrightnessValue"; 671 672 /** 673 * @brief The smallest F number of lens. 674 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 675 * 676 * @since 12 677 */ 678 static const char *OHOS_IMAGE_PROPERTY_MAX_APERTURE_VALUE = "MaxApertureValue"; 679 680 /** 681 * @brief The distance to the subject, measured in meters. 682 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 683 * 684 * @since 12 685 */ 686 static const char *OHOS_IMAGE_PROPERTY_SUBJECT_DISTANCE = "SubjectDistance"; 687 688 /** 689 * @brief This tag indicate the location and area of the main subject in the overall scene. 690 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 691 * 692 * @since 12 693 */ 694 static const char *OHOS_IMAGE_PROPERTY_SUBJECT_AREA = "SubjectArea"; 695 696 /** 697 * @brief A tag for manufacturers of Exif/DCF writers to record any desired infomation. 698 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 699 * 700 * @since 12 701 */ 702 static const char *OHOS_IMAGE_PROPERTY_MAKER_NOTE = "MakerNote"; 703 704 /** 705 * @brief A tag for record fractions of seconds for the DateTime tag. 706 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 707 * 708 * @since 12 709 */ 710 static const char *OHOS_IMAGE_PROPERTY_SUBSEC_TIME = "SubsecTime"; 711 712 /** 713 * @brief A tag used to record fractions of seconds for the DateTimeOriginal tag. 714 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 715 * 716 * @since 12 717 */ 718 static const char *OHOS_IMAGE_PROPERTY_SUBSEC_TIME_ORIGINAL = "SubsecTimeOriginal"; 719 720 /** 721 * @brief A tag used to record fractions of seconds for the DateTimeDigitized tag. 722 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 723 * 724 * @since 12 725 */ 726 static const char *OHOS_IMAGE_PROPERTY_SUBSEC_TIME_DIGITIZED = "SubsecTimeDigitized"; 727 728 /** 729 * @brief This tag denotes the Flashpix format version supported by an FPXR file, enhancing device compatibility. 730 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 731 * 732 * @since 12 733 */ 734 static const char *OHOS_IMAGE_PROPERTY_FLASHPIX_VERSION = "FlashpixVersion"; 735 736 /** 737 * @brief The color space information tag, often recorded as the color space specifier. 738 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 739 * 740 * @since 12 741 */ 742 static const char *OHOS_IMAGE_PROPERTY_COLOR_SPACE = "ColorSpace"; 743 744 /** 745 * @brief The name of an audio file related to the image data. 746 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 747 * 748 * @since 12 749 */ 750 static const char *OHOS_IMAGE_PROPERTY_RELATED_SOUND_FILE = "RelatedSoundFile"; 751 752 /** 753 * @brief Strobe energy at image capture, in BCPS. 754 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 755 * 756 * @since 12 757 */ 758 static const char *OHOS_IMAGE_PROPERTY_FLASH_ENERGY = "FlashEnergy"; 759 760 /** 761 * @brief Camera or input device spatial frequency table. 762 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 763 * 764 * @since 12 765 */ 766 static const char *OHOS_IMAGE_PROPERTY_SPATIAL_FREQUENCY_RESPONSE = "SpatialFrequencyResponse"; 767 768 /** 769 * @brief Pixels per FocalPlaneResolutionUnit in the image width. 770 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 771 * 772 * @since 12 773 */ 774 static const char *OHOS_IMAGE_PROPERTY_FOCAL_PLANE_X_RESOLUTION = "FocalPlaneXResolution"; 775 776 /** 777 * @brief Pixels per FocalPlaneResolutionUnit in the image height. 778 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 779 * 780 * @since 12 781 */ 782 static const char *OHOS_IMAGE_PROPERTY_FOCAL_PLANE_Y_RESOLUTION = "FocalPlaneYResolution"; 783 784 /** 785 * @brief Unit for measuring FocalPlaneXResolution and FocalPlaneYResolution. 786 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 787 * 788 * @since 12 789 */ 790 static const char *OHOS_IMAGE_PROPERTY_FOCAL_PLANE_RESOLUTION_UNIT = "FocalPlaneResolutionUnit"; 791 792 /** 793 * @brief Location of the main subject, relative to the left edge. 794 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 795 * 796 * @since 12 797 */ 798 static const char *OHOS_IMAGE_PROPERTY_SUBJECT_LOCATION = "SubjectLocation"; 799 800 /** 801 * @brief Selected exposure index at capture. 802 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 803 * 804 * @since 12 805 */ 806 static const char *OHOS_IMAGE_PROPERTY_EXPOSURE_INDEX = "ExposureIndex"; 807 808 /** 809 * @brief Image sensor type on the camera. 810 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 811 * 812 * @since 12 813 */ 814 static const char *OHOS_IMAGE_PROPERTY_SENSING_METHOD = "SensingMethod"; 815 816 /** 817 * @brief Indicates the image source. 818 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 819 * 820 * @since 12 821 */ 822 static const char *OHOS_IMAGE_PROPERTY_FILE_SOURCE = "FileSource"; 823 824 /** 825 * @brief Color filter array (CFA) geometric pattern of the image sensor. 826 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 827 * 828 * @since 12 829 */ 830 static const char *OHOS_IMAGE_PROPERTY_CFA_PATTERN = "CFAPattern"; 831 832 /** 833 * @brief Indicates special processing on image data. 834 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 835 * 836 * @since 12 837 */ 838 static const char *OHOS_IMAGE_PROPERTY_CUSTOM_RENDERED = "CustomRendered"; 839 840 /** 841 * @brief Exposure mode set when the image was shot. 842 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 843 * 844 * @since 12 845 */ 846 static const char *OHOS_IMAGE_PROPERTY_EXPOSURE_MODE = "ExposureMode"; 847 848 /** 849 * @brief Digital zoom ratio at the time of capture. 850 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 851 * 852 * @since 12 853 */ 854 static const char *OHOS_IMAGE_PROPERTY_DIGITAL_ZOOM_RATIO = "DigitalZoomRatio"; 855 856 /** 857 * @brief Type of scene captured. 858 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 859 * 860 * @since 12 861 */ 862 static const char *OHOS_IMAGE_PROPERTY_SCENE_CAPTURE_TYPE = "SceneCaptureType"; 863 864 /** 865 * @brief Degree of overall image gain adjustment. 866 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 867 * 868 * @since 12 869 */ 870 static const char *OHOS_IMAGE_PROPERTY_GAIN_CONTROL = "GainControl"; 871 872 /** 873 * @brief Direction of contrast processing applied by the camera. 874 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 875 * 876 * @since 12 877 */ 878 static const char *OHOS_IMAGE_PROPERTY_CONTRAST = "Contrast"; 879 880 /** 881 * @brief Direction of saturation processing applied by the camera. 882 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 883 * 884 * @since 12 885 */ 886 static const char *OHOS_IMAGE_PROPERTY_SATURATION = "Saturation"; 887 888 /** 889 * @brief The direction of sharpness processing applied by the camera. 890 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 891 * 892 * @since 12 893 */ 894 static const char *OHOS_IMAGE_PROPERTY_SHARPNESS = "Sharpness"; 895 896 /** 897 * @brief Information on picture-taking conditions for a specific camera model. 898 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 899 * 900 * @since 12 901 */ 902 static const char *OHOS_IMAGE_PROPERTY_DEVICE_SETTING_DESCRIPTION = "DeviceSettingDescription"; 903 904 /** 905 * @brief Indicates the distance range to the subject. 906 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 907 * 908 * @since 12 909 */ 910 static const char *OHOS_IMAGE_PROPERTY_SUBJECT_DISTANCE_RANGE = "SubjectDistanceRange"; 911 912 /** 913 * @brief An identifier uniquely assigned to each image. 914 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 915 * 916 * @since 12 917 */ 918 static const char *OHOS_IMAGE_PROPERTY_IMAGE_UNIQUE_ID = "ImageUniqueID"; 919 920 /** 921 * @brief The version of the GPSInfoIFD. 922 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 923 * 924 * @since 12 925 */ 926 static const char *OHOS_IMAGE_PROPERTY_GPS_VERSION_ID = "GPSVersionID"; 927 928 /** 929 * @brief Reference altitude used for GPS altitude. 930 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 931 * 932 * @since 12 933 */ 934 static const char *OHOS_IMAGE_PROPERTY_GPS_ALTITUDE_REF = "GPSAltitudeRef"; 935 936 /** 937 * @brief The altitude based on the reference in GPSAltitudeRef. 938 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 939 * 940 * @since 12 941 */ 942 static const char *OHOS_IMAGE_PROPERTY_GPS_ALTITUDE = "GPSAltitude"; 943 944 /** 945 * @brief The GPS satellites used for measurements. 946 * Used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 947 * 948 * @since 12 949 */ 950 static const char *OHOS_IMAGE_PROPERTY_GPS_SATELLITES = "GPSSatellites"; 951 952 /** 953 * @brief The status of the GPS receiver when the image is recorded. 954 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 955 * 956 * @since 12 957 */ 958 static const char *OHOS_IMAGE_PROPERTY_GPS_STATUS = "GPSStatus"; 959 960 /** 961 * @brief The GPS measurement mode. 962 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 963 * 964 * @since 12 965 */ 966 static const char *OHOS_IMAGE_PROPERTY_GPS_MEASURE_MODE = "GPSMeasureMode"; 967 968 /** 969 * @brief The GPS DOP (data degree of precision). 970 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 971 * 972 * @since 12 973 */ 974 static const char *OHOS_IMAGE_PROPERTY_GPS_DOP = "GPSDOP"; 975 976 /** 977 * @brief The unit used to express the GPS receiver speed of movement. 978 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 979 * 980 * @since 12 981 */ 982 static const char *OHOS_IMAGE_PROPERTY_GPS_SPEED_REF = "GPSSpeedRef"; 983 984 /** 985 * @brief The speed of GPS receiver movement. 986 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 987 * 988 * @since 12 989 */ 990 static const char *OHOS_IMAGE_PROPERTY_GPS_SPEED = "GPSSpeed"; 991 992 /** 993 * @brief The reference for giving the direction of GPS receiver movement. 994 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 995 * 996 * @since 12 997 */ 998 static const char *OHOS_IMAGE_PROPERTY_GPS_TRACK_REF = "GPSTrackRef"; 999 1000 /** 1001 * @brief The direction of GPS receiver movement. 1002 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1003 * 1004 * @since 12 1005 */ 1006 static const char *OHOS_IMAGE_PROPERTY_GPS_TRACK = "GPSTrack"; 1007 1008 /** 1009 * @brief The reference for the image's direction. 1010 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1011 * 1012 * @since 12 1013 */ 1014 static const char *OHOS_IMAGE_PROPERTY_GPS_IMG_DIRECTION_REF = "GPSImgDirectionRef"; 1015 1016 /** 1017 * @brief The direction of the image when captured. 1018 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1019 * 1020 * @since 12 1021 */ 1022 static const char *OHOS_IMAGE_PROPERTY_GPS_IMG_DIRECTION = "GPSImgDirection"; 1023 1024 /** 1025 * @brief Geodetic survey data used by the GPS receiver. 1026 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1027 * 1028 * @since 12 1029 */ 1030 static const char *OHOS_IMAGE_PROPERTY_GPS_MAP_DATUM = "GPSMapDatum"; 1031 1032 /** 1033 * @brief Indicates the latitude reference of the destination point. 1034 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1035 * 1036 * @since 12 1037 */ 1038 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_LATITUDE_REF = "GPSDestLatitudeRef"; 1039 1040 /** 1041 * @brief The latitude of the destination point. 1042 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1043 * 1044 * @since 12 1045 */ 1046 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_LATITUDE = "GPSDestLatitude"; 1047 1048 /** 1049 * @brief Indicates the longitude reference of the destination point. 1050 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1051 * 1052 * @since 12 1053 */ 1054 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_LONGITUDE_REF = "GPSDestLongitudeRef"; 1055 1056 /** 1057 * @brief A character string recording the name of the method used for location finding. 1058 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1059 * 1060 * @since 12 1061 */ 1062 static const char *OHOS_IMAGE_PROPERTY_GPS_PROCESSING_METHOD = "GPSProcessingMethod"; 1063 1064 /** 1065 * @brief A character string recording the name of the GPS area. 1066 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1067 * 1068 * @since 12 1069 */ 1070 static const char *OHOS_IMAGE_PROPERTY_GPS_AREA_INFORMATION = "GPSAreaInformation"; 1071 1072 /** 1073 * @brief This field denotes if differential correction was applied to GPS data, crucial for precise location accuracy. 1074 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1075 * 1076 * @since 12 1077 */ 1078 static const char *OHOS_IMAGE_PROPERTY_GPS_DIFFERENTIAL = "GPSDifferential"; 1079 1080 /** 1081 * @brief The serial number of the camera body. 1082 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1083 * 1084 * @since 12 1085 */ 1086 static const char *OHOS_IMAGE_PROPERTY_BODY_SERIAL_NUMBER = "BodySerialNumber"; 1087 1088 /** 1089 * @brief The name of the camera owner. 1090 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1091 * 1092 * @since 12 1093 */ 1094 static const char *OHOS_IMAGE_PROPERTY_CAMERA_OWNER_NAME = "CameraOwnerName"; 1095 1096 /** 1097 * @brief The name of the camera owner. 1098 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1099 * 1100 * @since 12 1101 */ 1102 static const char *OHOS_IMAGE_PROPERTY_COMPOSITE_IMAGE = "CompositeImage"; 1103 1104 /** 1105 * @brief The DNGVersion tag encodes the four-tier version number for DNG specification compliance. 1106 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1107 * 1108 * @since 12 1109 */ 1110 static const char *OHOS_IMAGE_PROPERTY_DNG_VERSION = "DNGVersion"; 1111 1112 /** 1113 * @brief The longitude of the destination point. 1114 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1115 * 1116 * @since 12 1117 */ 1118 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_LONGITUDE = "GPSDestLongitude"; 1119 1120 /** 1121 * @brief The reference for the bearing to the destination point. 1122 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1123 * 1124 * @since 12 1125 */ 1126 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_BEARING_REF = "GPSDestBearingRef"; 1127 1128 /** 1129 * @brief The bearing to the destination point. 1130 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1131 * 1132 * @since 12 1133 */ 1134 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_BEARING = "GPSDestBearing"; 1135 1136 /** 1137 * @brief The measurement unit for the distance to the target point. 1138 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1139 * 1140 * @since 12 1141 */ 1142 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_DISTANCE_REF = "GPSDestDistanceRef"; 1143 1144 /** 1145 * @brief The distance to the destination point. 1146 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1147 * 1148 * @since 12 1149 */ 1150 static const char *OHOS_IMAGE_PROPERTY_GPS_DEST_DISTANCE = "GPSDestDistance"; 1151 1152 /** 1153 * @brief DefaultCropSize specifies the final image size in raw coordinates, accounting for extra edge pixels. 1154 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1155 * 1156 * @since 12 1157 */ 1158 static const char *OHOS_IMAGE_PROPERTY_DEFAULT_CROP_SIZE = "DefaultCropSize"; 1159 1160 /** 1161 * @brief Indicates the value of coefficient gamma. 1162 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1163 * 1164 * @since 12 1165 */ 1166 static const char *OHOS_IMAGE_PROPERTY_GAMMA = "Gamma"; 1167 1168 /** 1169 * @brief The tag indicate the ISO speed latitude yyy value of the camera or input device that is defined in ISO 12232. 1170 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1171 * 1172 * @since 12 1173 */ 1174 static const char *OHOS_IMAGE_PROPERTY_ISO_SPEED_LATITUDEYYY = "ISOSpeedLatitudeyyy"; 1175 1176 /** 1177 * @brief The tag indicate the ISO speed latitude zzz value of the camera or input device that is defined in ISO 12232. 1178 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1179 * 1180 * @since 12 1181 */ 1182 static const char *OHOS_IMAGE_PROPERTY_ISO_SPEED_LATITUDEZZZ = "ISOSpeedLatitudezzz"; 1183 1184 /** 1185 * @brief The manufacturer of the lens. 1186 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1187 * 1188 * @since 12 1189 */ 1190 static const char *OHOS_IMAGE_PROPERTY_LENS_MAKE = "LensMake"; 1191 1192 /** 1193 * @brief The model name of the lens. 1194 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1195 * 1196 * @since 12 1197 */ 1198 static const char *OHOS_IMAGE_PROPERTY_LENS_MODEL = "LensModel"; 1199 1200 /** 1201 * @brief The serial number of the lens. 1202 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1203 * 1204 * @since 12 1205 */ 1206 static const char *OHOS_IMAGE_PROPERTY_LENS_SERIAL_NUMBER = "LensSerialNumber"; 1207 1208 /** 1209 * @brief Specifications of the lens used. 1210 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1211 * 1212 * @since 12 1213 */ 1214 static const char *OHOS_IMAGE_PROPERTY_LENS_SPECIFICATION = "LensSpecification"; 1215 1216 /** 1217 * @brief This tag provides a broad description of the data type in this subfile. 1218 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1219 * 1220 * @since 12 1221 */ 1222 static const char *OHOS_IMAGE_PROPERTY_NEW_SUBFILE_TYPE = "NewSubfileType"; 1223 1224 /** 1225 * @brief This tag records the UTC offset for the DateTime tag, ensuring accurate timestamps regardless of location. 1226 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1227 * 1228 * @since 12 1229 */ 1230 static const char *OHOS_IMAGE_PROPERTY_OFFSET_TIME = "OffsetTime"; 1231 1232 /** 1233 * @brief This tag logs the UTC offset when the image was digitized, aiding in accurate timestamp adjustment. 1234 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1235 * 1236 * @since 12 1237 */ 1238 static const char *OHOS_IMAGE_PROPERTY_OFFSET_TIME_DIGITIZED = "OffsetTimeDigitized"; 1239 1240 /** 1241 * @brief This tag records the UTC offset when the original image was created, crucial for time-sensitive applications. 1242 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1243 * 1244 * @since 12 1245 */ 1246 static const char *OHOS_IMAGE_PROPERTY_OFFSET_TIME_ORIGINAL = "OffsetTimeOriginal"; 1247 1248 /** 1249 * @brief Exposure times of source images for a composite image. 1250 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1251 * 1252 * @since 12 1253 */ 1254 static const char *OHOS_IMAGE_PROPERTY_SOURCE_EXPOSURE_TIMES_OF_COMPOSITE_IMAGE = "SourceExposureTimesOfCompositeImage"; 1255 1256 /** 1257 * @brief The number of source images used for a composite image. 1258 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1259 * 1260 * @since 12 1261 */ 1262 static const char *OHOS_IMAGE_PROPERTY_SOURCE_IMAGE_NUMBER_OF_COMPOSITE_IMAGE = "SourceImageNumberOfCompositeImage"; 1263 1264 /** 1265 * @brief This deprecated field signifies the type of data in this subfile. Use the NewSubfileType field instead. 1266 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1267 * 1268 * @since 12 1269 */ 1270 static const char *OHOS_IMAGE_PROPERTY_SUBFILE_TYPE = "SubfileType"; 1271 1272 /** 1273 * @brief This tag indicates horizontal positioning errors in meters. 1274 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1275 * 1276 * @since 12 1277 */ 1278 static const char *OHOS_IMAGE_PROPERTY_GPS_H_POSITIONING_ERROR = "GPSHPositioningError"; 1279 1280 /** 1281 * @brief This tag indicates the sensitivity of the camera or input device when the image was shot. 1282 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1283 * 1284 * @since 12 1285 */ 1286 static const char *OHOS_IMAGE_PROPERTY_PHOTOGRAPHIC_SENSITIVITY = "PhotographicSensitivity"; 1287 1288 /** 1289 * @brief Burst Number 1290 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1291 * 1292 * @since 12 1293 */ 1294 static const char *OHOS_IMAGE_PROPERTY_BURST_NUMBER = "HwMnoteBurstNumber"; 1295 1296 /** 1297 * @brief Face Conf 1298 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1299 * 1300 * @since 12 1301 */ 1302 static const char *OHOS_IMAGE_PROPERTY_FACE_CONF = "HwMnoteFaceConf"; 1303 1304 /** 1305 * @brief Face Leye Center 1306 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1307 * 1308 * @since 12 1309 */ 1310 static const char *OHOS_IMAGE_PROPERTY_FACE_LEYE_CENTER = "HwMnoteFaceLeyeCenter"; 1311 1312 /** 1313 * @brief Face Mouth Center 1314 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1315 * 1316 * @since 12 1317 */ 1318 static const char *OHOS_IMAGE_PROPERTY_FACE_MOUTH_CENTER = "HwMnoteFaceMouthCenter"; 1319 1320 /** 1321 * @brief Face Pointer 1322 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1323 * 1324 * @since 12 1325 */ 1326 static const char *OHOS_IMAGE_PROPERTY_FACE_POINTER = "HwMnoteFacePointer"; 1327 1328 /** 1329 * @brief Face Rect 1330 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1331 * 1332 * @since 12 1333 */ 1334 static const char *OHOS_IMAGE_PROPERTY_FACE_RECT = "HwMnoteFaceRect"; 1335 1336 /** 1337 * @brief Face Reye Center 1338 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1339 * 1340 * @since 12 1341 */ 1342 static const char *OHOS_IMAGE_PROPERTY_FACE_REYE_CENTER = "HwMnoteFaceReyeCenter"; 1343 1344 /** 1345 * @brief Face Smile Score 1346 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1347 * 1348 * @since 12 1349 */ 1350 static const char *OHOS_IMAGE_PROPERTY_FACE_SMILE_SCORE = "HwMnoteFaceSmileScore"; 1351 1352 /** 1353 * @brief Face Version 1354 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1355 * 1356 * @since 12 1357 */ 1358 static const char *OHOS_IMAGE_PROPERTY_FACE_VERSION = "HwMnoteFaceVersion"; 1359 1360 /** 1361 * @brief Front Camera 1362 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1363 * 1364 * @since 12 1365 */ 1366 static const char *OHOS_IMAGE_PROPERTY_FRONT_CAMERA = "HwMnoteFrontCamera"; 1367 1368 /** 1369 * @brief Scene Pointer 1370 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1371 * 1372 * @since 12 1373 */ 1374 static const char *OHOS_IMAGE_PROPERTY_SCENE_POINTER = "HwMnoteScenePointer"; 1375 1376 /** 1377 * @brief Scene Version 1378 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1379 * 1380 * @since 12 1381 */ 1382 static const char *OHOS_IMAGE_PROPERTY_SCENE_VERSION = "HwMnoteSceneVersion"; 1383 1384 /** 1385 * @brief Is Xmage Supported 1386 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1387 * 1388 * @since 12 1389 */ 1390 static const char *OHOS_IMAGE_PROPERTY_IS_XMAGE_SUPPORTED = "HwMnoteIsXmageSupported"; 1391 1392 /** 1393 * @brief Xmage Mode 1394 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1395 * 1396 * @since 12 1397 */ 1398 static const char *OHOS_IMAGE_PROPERTY_XMAGE_MODE = "HwMnoteXmageMode"; 1399 1400 /** 1401 * @brief Xmage X1 Coordinate 1402 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1403 * 1404 * @since 12 1405 */ 1406 static const char *OHOS_IMAGE_PROPERTY_XMAGE_LEFT = "HwMnoteXmageLeft"; 1407 1408 /** 1409 * @brief Xmage Y1 Coordinate 1410 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1411 * 1412 * @since 12 1413 */ 1414 static const char *OHOS_IMAGE_PROPERTY_XMAGE_TOP = "HwMnoteXmageTop"; 1415 1416 /** 1417 * @brief Xmage X2 Coordinate 1418 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1419 * 1420 * @since 12 1421 */ 1422 static const char *OHOS_IMAGE_PROPERTY_XMAGE_RIGHT = "HwMnoteXmageRight"; 1423 1424 /** 1425 * @brief Xmage Y2 Coordinate 1426 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1427 * 1428 * @since 12 1429 */ 1430 static const char *OHOS_IMAGE_PROPERTY_XMAGE_BOTTOM = "HwMnoteXmageBottom"; 1431 1432 /** 1433 * @brief Cloud Enhancement Mode 1434 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1435 * 1436 * @since 12 1437 */ 1438 static const char *OHOS_IMAGE_PROPERTY_CLOUD_ENHANCEMENT_MODE = "HwMnoteCloudEnhancementMode"; 1439 1440 /** 1441 * @brief Wind Snapshot Mode 1442 * It is used in {@link OH_ImageSource_GetImageProperty} and {@link OH_ImageSource_ModifyImageProperty}. 1443 * 1444 * @since 12 1445 */ 1446 static const char *OHOS_IMAGE_PROPERTY_WIND_SNAPSHOT_MODE = "HwMnoteWindSnapshotMode"; 1447 1448 1449 /** 1450 * @brief Gif Loop Count 1451 * It is used in {@link OH_ImageSource_GetImageProperty}. 1452 * If infinite loop returns 0, other values represent the number of loops 1453 * 1454 * @since 12 1455 */ 1456 static const char *OHOS_IMAGE_PROPERTY_GIF_LOOP_COUNT = "GIFLoopCount"; 1457 1458 /** 1459 * @brief X in original 1460 * It is used in {@link OH_ImageSource_GetImageProperty}. 1461 * The top left corner of the fragment image is at the X-coordinate of the original image 1462 * 1463 * @since 13 1464 */ 1465 static const char *OHOS_IMAGE_PROPERTY_X_IN_ORIGINAL = "XInOriginal"; 1466 1467 /** 1468 * @brief Y in original 1469 * It is used in {@link OH_ImageSource_GetImageProperty}. 1470 * The top left corner of the fragment image is at the Y-coordinate of the original image 1471 * 1472 * @since 13 1473 */ 1474 static const char *OHOS_IMAGE_PROPERTY_Y_IN_ORIGINAL = "YInOriginal"; 1475 1476 /** 1477 * @brief Fragment map width 1478 * It is used in {@link OH_ImageSource_GetImageProperty}. 1479 * The width of the fragment image 1480 * 1481 * @since 13 1482 */ 1483 static const char *OHOS_IMAGE_PROPERTY_FRAGMENT_WIDTH = "FragmentImageWidth"; 1484 1485 /** 1486 * @brief Fragment map height 1487 * It is used in {@link OH_ImageSource_GetImageProperty}. 1488 * The height of the fragment image 1489 * 1490 * @since 13 1491 */ 1492 static const char *OHOS_IMAGE_PROPERTY_FRAGMENT_HEIGHT = "FragmentImageHeight"; 1493 #ifdef __cplusplus 1494 }; 1495 #endif 1496 /** @} */ 1497 1498 #endif // INTERFACES_KITS_NATIVE_INCLUDE_IMAGE_IMAGE_COMMON_H_