From 1b73c09ecf5501134d674896e18d53953d4ade64 Mon Sep 17 00:00:00 2001 From: tbago Date: Tue, 27 Feb 2024 10:49:51 +0800 Subject: [PATCH] Camera server: add camera cap flags in Information --- protos/camera_server/camera_server.proto | 30 ++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/protos/camera_server/camera_server.proto b/protos/camera_server/camera_server.proto index 02f7e0f9..7b444209 100644 --- a/protos/camera_server/camera_server.proto +++ b/protos/camera_server/camera_server.proto @@ -236,6 +236,35 @@ enum CameraFeedback { // Type to represent a camera information. message Information { + enum CameraCapFlags { + CAMERA_CAP_FLAGS_CAPTURE_VIDEO = 0; // Camera is able to record video + CAMERA_CAP_FLAGS_CAPTURE_IMAGE = 1; // Camera is able to capture images + CAMERA_CAP_FLAGS_HAS_MODES = + 2; // Camera has separate Video and Image/Photo modes + // (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_CAN_CAPTURE_IMAGE_IN_VIDEO_MODE = + 3; // Camera can capture images while in video mode + CAMERA_CAP_FLAGS_CAN_CAPTURE_VIDEO_IN_IMAGE_MODE = + 4; // Camera can capture videos while in Photo/Image mode + CAMERA_CAP_FLAGS_HAS_IMAGE_SURVEY_MODE = + 5; // Camera has image survey mode (MAV_CMD_SET_CAMERA_MODE) + CAMERA_CAP_FLAGS_HAS_BASIC_ZOOM = + 6; // Camera has basic zoom control (MAV_CMD_SET_CAMERA_ZOOM) + CAMERA_CAP_FLAGS_HAS_BASIC_FOCUS = + 7; // Camera has basic focus control (MAV_CMD_SET_CAMERA_FOCUS) + CAMERA_CAP_FLAGS_HAS_VIDEO_STREAM = + 8; // Camera has video streaming capabilities (request + // VIDEO_STREAM_INFORMATION with MAV_CMD_REQUEST_MESSAGE for video + // streaming info) + CAMERA_CAP_FLAGS_HAS_TRACKING_POINT = + 9; // Camera supports tracking of a point on the camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_RECTANGLE = + 10; // Camera supports tracking of a selection rectangle on the + // camera view. + CAMERA_CAP_FLAGS_HAS_TRACKING_GEO_STATUS = + 11; // Camera supports tracking geo status + // (CAMERA_TRACKING_GEO_STATUS). + }; string vendor_name = 1; // Name of the camera vendor string model_name = 2; // Name of the camera model string firmware_version = 3; // Camera firmware version in major[.minor[.patch[.dev]]] format @@ -247,6 +276,7 @@ message Information { uint32 lens_id = 9; // Lens ID uint32 definition_file_version = 10; // Camera definition file version (iteration) string definition_file_uri = 11; // Camera definition URI (http or mavlink ftp) + repeated CameraCapFlags camera_cap_flags = 12; // Camera capability flags } // Type for video stream settings.