1094332d3Sopenharmony_ci/* 2094332d3Sopenharmony_ci * Copyright (c) 2021 Huawei Device Co., Ltd. 3094332d3Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4094332d3Sopenharmony_ci * you may not use this file except in compliance with the License. 5094332d3Sopenharmony_ci * You may obtain a copy of the License at 6094332d3Sopenharmony_ci * 7094332d3Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8094332d3Sopenharmony_ci * 9094332d3Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10094332d3Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11094332d3Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12094332d3Sopenharmony_ci * See the License for the specific language governing permissions and 13094332d3Sopenharmony_ci * limitations under the License. 14094332d3Sopenharmony_ci */ 15094332d3Sopenharmony_ci 16094332d3Sopenharmony_ci/** 17094332d3Sopenharmony_ci * @file video_key_info.h 18094332d3Sopenharmony_ci * 19094332d3Sopenharmony_ci * @brief Declares the key-value pairs used to record key information of a video frame. 20094332d3Sopenharmony_ci * 21094332d3Sopenharmony_ci * @since 1.0 22094332d3Sopenharmony_ci * @version 1.0 23094332d3Sopenharmony_ci */ 24094332d3Sopenharmony_ci 25094332d3Sopenharmony_ci#ifndef VIDEO_KEY_INFO_H 26094332d3Sopenharmony_ci#define VIDEO_KEY_INFO_H 27094332d3Sopenharmony_ci 28094332d3Sopenharmony_ci#include <string> 29094332d3Sopenharmony_ci 30094332d3Sopenharmony_cinamespace OHOS::Camera { 31094332d3Sopenharmony_ci/** 32094332d3Sopenharmony_ci * @brief Indicates the data length. The value type is int32_t. 33094332d3Sopenharmony_ci */ 34094332d3Sopenharmony_ciconst std::string dataSize = "dataSize"; 35094332d3Sopenharmony_ciconst std::string dataWidth = "dataWidth"; 36094332d3Sopenharmony_ciconst std::string dataHeight = "dataHeight"; 37094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_INFO_DATA_SIZE = 0x01; 38094332d3Sopenharmony_ci 39094332d3Sopenharmony_ci/** 40094332d3Sopenharmony_ci * @brief Indicates the timestamp, in nanoseconds. The value type is int64_t. 41094332d3Sopenharmony_ci */ 42094332d3Sopenharmony_ciconst std::string timeStamp = "timeStamp"; 43094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_INFO_TIMESTAMP = 0x02; 44094332d3Sopenharmony_ci 45094332d3Sopenharmony_ci/** 46094332d3Sopenharmony_ci * @brief Specifies whether the frame is a key frame. 47094332d3Sopenharmony_ci * The value type is int32_t. The value <b>1</b> means that the frame is a key frame, and <b>0</b> means the opposite. 48094332d3Sopenharmony_ci */ 49094332d3Sopenharmony_ciconst std::string isKeyFrame = "isKeyFrame"; 50094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_INFO_IS_KEY_FRAME = 0x03; 51094332d3Sopenharmony_ci 52094332d3Sopenharmony_ci/** 53094332d3Sopenharmony_ci * @brief Indicates the stream id corresponding to the image data. The value type is int32_t. 54094332d3Sopenharmony_ci */ 55094332d3Sopenharmony_ciconst std::string streamId = "streamId"; 56094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_STREAM_ID = 0x04; 57094332d3Sopenharmony_ci 58094332d3Sopenharmony_ci/** 59094332d3Sopenharmony_ci * @brief Indicates the capture id corresponding to the image data. The value type is int32_t. 60094332d3Sopenharmony_ci */ 61094332d3Sopenharmony_ciconst std::string captureId = "captureId"; 62094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_CAPTRUE_ID = 0x05; 63094332d3Sopenharmony_ci 64094332d3Sopenharmony_ci/** 65094332d3Sopenharmony_ci * @brief Specifies whether the image is a degraded image. The value type is int32_t. 66094332d3Sopenharmony_ci * The value <b>1</b> means that the image is a degraded image, and <b>0</b> means the opposite. 67094332d3Sopenharmony_ci */ 68094332d3Sopenharmony_ciconst std::string isDegradedImage = "isDegradedImage"; 69094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_IS_DEGRADED_IMAGE = 0x06; 70094332d3Sopenharmony_ci 71094332d3Sopenharmony_ci/** 72094332d3Sopenharmony_ci * @brief Indicates the image id corresponding to the image data. The value type is int32_t. 73094332d3Sopenharmony_ci */ 74094332d3Sopenharmony_ciconst std::string imageId = "imageId"; 75094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_IMAGE_ID = 0x07; 76094332d3Sopenharmony_ci 77094332d3Sopenharmony_ci/** 78094332d3Sopenharmony_ci * @brief Indicates the type of to the deferred processing. 79094332d3Sopenharmony_ci * The value type is int32_t. The value <b>1</b> means that breakgound process, and <b>0</b> means offline process. 80094332d3Sopenharmony_ci */ 81094332d3Sopenharmony_ciconst std::string deferredProcessingType = "deferredProcessingType"; 82094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_DEFERRED_PROCESSING_TYPE = 0x08; 83094332d3Sopenharmony_ci 84094332d3Sopenharmony_ci/** 85094332d3Sopenharmony_ci * @brief Indicates the continuous shooting effect score. The value type is int32_t. 86094332d3Sopenharmony_ci */ 87094332d3Sopenharmony_ciconst std::string imageScore = "imageScore"; 88094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_IMAGE_SCORE = 0x09; 89094332d3Sopenharmony_ci 90094332d3Sopenharmony_ci/** 91094332d3Sopenharmony_ci * @brief Indicates the continuous fromat of image. The value type is int32_t. 92094332d3Sopenharmony_ci * 0 rgba; 1:jpg; 2:heif 93094332d3Sopenharmony_ci */ 94094332d3Sopenharmony_ciconst std::string deferredImageFormat = "deferredImageFormat"; 95094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_DEFERRED_IMAGE_FORMAT = 0x0A; 96094332d3Sopenharmony_ci 97094332d3Sopenharmony_ci/** 98094332d3Sopenharmony_ci * @brief Indicates the count of image. The value type is int32_t. 99094332d3Sopenharmony_ci * include main image and extend images 100094332d3Sopenharmony_ci */ 101094332d3Sopenharmony_ciconst std::string imageCount = "imageCount"; 102094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_DEFEREED_COUNT = 0x0B; 103094332d3Sopenharmony_ci 104094332d3Sopenharmony_ci/** 105094332d3Sopenharmony_ci * @brief Indicates the quality level of depth data. The value type is int32_t. 106094332d3Sopenharmony_ci */ 107094332d3Sopenharmony_ciconst std::string depthDataQualityLevel = "depthDataQualityLevel"; 108094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_DEPTH_DATA_QUALITY_LEVEL = 0x0C; 109094332d3Sopenharmony_ci 110094332d3Sopenharmony_ci/** 111094332d3Sopenharmony_ci * @brief Indicates the sequenceId of capture. The value type is int32_t. 112094332d3Sopenharmony_ci */ 113094332d3Sopenharmony_ciconst std::string burstSequenceId = "burstSequenceId"; 114094332d3Sopenharmony_ciconst int32_t VIDEO_KEY_BURST_SEQUENCE_ID = 0x0D; 115094332d3Sopenharmony_ci 116094332d3Sopenharmony_ci} // end namespace OHOS::Camera 117094332d3Sopenharmony_ci#endif 118