From 8d6eb5bebf836c68dcdb54e89b85e9308b66961a Mon Sep 17 00:00:00 2001 From: lvxiaoqiang Date: Sat, 8 Feb 2025 10:23:15 +0800 Subject: [PATCH 1/2] add xdraw format and encodetype Signed-off-by: lvxiaoqiang Change-Id: I07ecaf6c823496d9f28f51cebf538c36714dd9eb --- camera/bundle.json | 26 +++++++++++ .../include/camera_device_ability_items.h | 3 +- camera/v1_4/BUILD.gn | 41 +++++++++++++++++ camera/v1_4/Types.idl | 45 +++++++++++++++++++ 4 files changed, 114 insertions(+), 1 deletion(-) create mode 100644 camera/v1_4/BUILD.gn create mode 100644 camera/v1_4/Types.idl diff --git a/camera/bundle.json b/camera/bundle.json index 069728d6..d1d70459 100644 --- a/camera/bundle.json +++ b/camera/bundle.json @@ -34,6 +34,7 @@ }, "build": { "sub_component": [ + "//drivers/interface/camera/v1_4:camera_idl_target", "//drivers/interface/camera/v1_3:camera_idl_target", "//drivers/interface/camera/v1_2:camera_idl_target", "//drivers/interface/camera/v1_1:camera_idl_target", @@ -42,6 +43,7 @@ "//drivers/interface/camera/sequenceable/buffer_handle:libbuffer_handle_sequenceable_1.0", "//drivers/interface/camera/sequenceable/map_data:libmap_data_sequenceable_1.0", "//drivers/interface/camera/metadata:metadata", + "//drivers/interface/camera/v1_4:libcamera_stub_1.4", "//drivers/interface/camera/v1_3:libcamera_stub_1.3", "//drivers/interface/camera/v1_2:libcamera_stub_1.2", "//drivers/interface/camera/v1_1:libcamera_stub_1.1", @@ -52,6 +54,30 @@ "//drivers/peripheral/camera/test/hdi/sequenceable_test:camera_hdi_sequenceable_ut" ], "inner_kits": [ + { + "name": "//drivers/interface/camera/v1_4:libcamera_stub_1.4", + "header": { + "header_files": [ + ], + "header_base": "//drivers/interface/camera" + } + }, + { + "name": "//drivers/interface/camera/v1_4:libcamera_proxy_1.4", + "header": { + "header_files": [ + ], + "header_base": "//drivers/interface/camera" + } + }, + { + "name": "//drivers/interface/camera/v1_4:camera_idl_headers", + "header": { + "header_files": [ + ], + "header_base": "//drivers/interface/camera" + } + }, { "name": "//drivers/interface/camera/v1_3:libcamera_stub_1.3", "header": { diff --git a/camera/metadata/include/camera_device_ability_items.h b/camera/metadata/include/camera_device_ability_items.h index bb1c672c..89ebde3e 100644 --- a/camera/metadata/include/camera_device_ability_items.h +++ b/camera/metadata/include/camera_device_ability_items.h @@ -2547,6 +2547,7 @@ typedef enum camera_format { OHOS_CAMERA_FORMAT_DEPTH_16, OHOS_CAMERA_FORMAT_DEPTH_32, OHOS_CAMERA_FORMAT_HEIC, + OHOS_CAMERA_FORMAT_DNG_XDRAW, OHOS_CAMERA_FORMAT_IMPLEMENTATION_DEFINED = 0x1000, } camera_format_t; @@ -2732,7 +2733,7 @@ typedef enum moving_photo_enum { OHOS_CAMERA_MOVING_PHOTO_UNSUPPORT = 0, OHOS_CAMERA_MOVING_PHOTO_SUPPORT, } moving_photo_enum_t; - + // OHOS_CONTROL_MOVING_PHOTO typedef enum control_moving_photo_enum { OHOS_CAMERA_MOVING_PHOTO_OFF = 0, diff --git a/camera/v1_4/BUILD.gn b/camera/v1_4/BUILD.gn new file mode 100644 index 00000000..cb5d85a7 --- /dev/null +++ b/camera/v1_4/BUILD.gn @@ -0,0 +1,41 @@ +# Copyright (c) 2025 Huawei Device Co., Ltd. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import("//build/config/components/hdi/hdi.gni") +if (defined(ohos_lite)) { + group("libcamera_proxy_1.4") { + deps = [] + public_configs = [] + } +} else { + hdi("camera") { + module_name = "camera_service" + imports = [ "ohos.hdi.camera.v1_3:camera" ] + + sources = [ "Types.idl" ] + + sequenceable_pub_deps = [ + "../sequenceable/buffer_handle:libbuffer_handle_sequenceable_1.0", + "../sequenceable/buffer_producer:libbuffer_producer_sequenceable_1.0", + "../sequenceable/map_data:libmap_data_sequenceable_1.0", + ] + sequenceable_ext_deps = [ + "graphic_surface:buffer_handle", + "graphic_surface:surface", + ] + + language = "cpp" + subsystem_name = "hdf" + part_name = "drivers_interface_camera" + } +} diff --git a/camera/v1_4/Types.idl b/camera/v1_4/Types.idl new file mode 100644 index 00000000..a9691d81 --- /dev/null +++ b/camera/v1_4/Types.idl @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2025 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * @file Types.h + * + * @brief Declares data types + * used by the Hardware Driver Interfaces (HDIs) of this module. + * + * @since 5.1 + * @version 1.4 + */ + +package ohos.hdi.camera.v1_4; + +import ohos.hdi.camera.v1_3.Types; +import ohos.hdi.camera.v1_2.Types; +import ohos.hdi.camera.v1_0.Types; + +sequenceable ohos.hdi.camera.v1_0.BufferHandleSequenceable; +sequenceable ohos.hdi.camera.v1_0.MapDataSequenceable; + +/** + * @brief Enumerates encoding types of stream data. + * @since 5.1 + * @version 1.0 + */ +enum EncodeType : ohos.hdi.camera.v1_3.EncodeType { + /** + * DNG_XDRAW + */ + ENCODE_TYPE_DNG_XDRAW = 5, +}; -- Gitee From 0c7b64892493115241fde1960df57e9652cd512b Mon Sep 17 00:00:00 2001 From: lvxiaoqiang Date: Tue, 4 Mar 2025 15:45:23 +0800 Subject: [PATCH 2/2] indepent compile Signed-off-by: lvxiaoqiang Change-Id: Ie94bc6402a6c05f539771c9c0585784b5907ff0a --- camera/v1_4/BUILD.gn | 10 ++++++++-- camera/v1_4/Types.idl | 3 +-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/camera/v1_4/BUILD.gn b/camera/v1_4/BUILD.gn index cb5d85a7..45a0cdfe 100644 --- a/camera/v1_4/BUILD.gn +++ b/camera/v1_4/BUILD.gn @@ -20,14 +20,20 @@ if (defined(ohos_lite)) { } else { hdi("camera") { module_name = "camera_service" - imports = [ "ohos.hdi.camera.v1_3:camera" ] sources = [ "Types.idl" ] - sequenceable_pub_deps = [ + stub_deps = [ "../sequenceable/buffer_handle:libbuffer_handle_sequenceable_1.0", "../sequenceable/buffer_producer:libbuffer_producer_sequenceable_1.0", "../sequenceable/map_data:libmap_data_sequenceable_1.0", + "../v1_3:libcamera_stub_1.3" + ] + proxy_deps = [ + "../sequenceable/buffer_handle:libbuffer_handle_sequenceable_1.0", + "../sequenceable/buffer_producer:libbuffer_producer_sequenceable_1.0", + "../sequenceable/map_data:libmap_data_sequenceable_1.0", + "../v1_3:libcamera_proxy_1.3" ] sequenceable_ext_deps = [ "graphic_surface:buffer_handle", diff --git a/camera/v1_4/Types.idl b/camera/v1_4/Types.idl index a9691d81..383c305a 100644 --- a/camera/v1_4/Types.idl +++ b/camera/v1_4/Types.idl @@ -26,10 +26,9 @@ package ohos.hdi.camera.v1_4; import ohos.hdi.camera.v1_3.Types; -import ohos.hdi.camera.v1_2.Types; -import ohos.hdi.camera.v1_0.Types; sequenceable ohos.hdi.camera.v1_0.BufferHandleSequenceable; +sequenceable ohos.hdi.camera.v1_0.BufferProducerSequenceable; sequenceable ohos.hdi.camera.v1_0.MapDataSequenceable; /** -- Gitee