From 93657afb42509e061ad07ac103bd5762e9786a1d Mon Sep 17 00:00:00 2001 From: Hamish Willee Date: Wed, 30 Jan 2019 09:47:48 +1100 Subject: [PATCH] Add inverted cam mode doc --- en/services/camera_def.md | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/en/services/camera_def.md b/en/services/camera_def.md index 08ce3a96a..e0334c717 100644 --- a/en/services/camera_def.md +++ b/en/services/camera_def.md @@ -97,7 +97,7 @@ CAM_EV | Exposure Compensation (usually only used for automatic exposure modes.) CAM_EXPMODE | Exposure Mode (Manual, Auto, Program Auto, Aperture Priority, etc.) CAM_ISO | ISO CAM_METERING | Metering Mode -CAM_MODE | Camera Mode. Invariably, when switching modes, some of the camera parameters that are available for one mode is not available for the other. Video mode may offer video recording resolutions while photo mode may offer image capture size, format, compression, etc. If you simply use the MAVLink command [MAV_CMD_SET_CAMERA_MODE](../messages/common.md#MAV_CMD_SET_CAMERA_MODE), you won't have a chance to let the GCS know that. If your camera does have different parameters and/or options for [CAMERA_MODE_IMAGE](../messages/common.md#CAMERA_MODE) or [CAMERA_MODE_VIDEO](../messages/common.md#CAMERA_MODE), you may want to use this parameter (along with the proper exclusion rules) instead. The CGS will look to see if this parameter is exposed. If it is, it will use it instead of [MAV_CMD_SET_CAMERA_MODE](../messages/common.md#MAV_CMD_SET_CAMERA_MODE). If the parameter is not exposed, [MAV_CMD_SET_CAMERA_MODE](../messages/common.md#MAV_CMD_SET_CAMERA_MODE) will be used instead. See an example of a definition of `CAM_MODE` below. +CAM_MODE | Camera Mode. This parameter is used to change the camera mode (via [PARAM_EXT_SET](../messages/common.md#PARAM_EXT_SET)) for cameras that support different settings/options (ISO, video/image resolution, frame rates, encoding format, etc.) for image and video capture [camera modes](../messages/common.md#CAMERA_MODE).

If it is not defined then [MAV_CMD_SET_CAMERA_MODE](../messages/common.md#MAV_CMD_SET_CAMERA_MODE) can be used to set the mode instead (this command is ignored if `CAM_MODE` is defined), and any configuration settings/options will be common to all modes.

There is an example `CAM_MODE` definition with additional detail [below](#cam_mode_example). CAM_SHUTTERSPD | Shutter speed CAM_VIDRES | Video Resolution (for video capture) CAM_WBMODE | White Balance Mode @@ -159,7 +159,7 @@ There are cases where an option change requires a parameter to be updated. For e This tells the GCS that when the `CAM_EXPMODE` parameter changes, the `CAM_APERTURE`, `CAM_SHUTTERSPD` and the `CAM_ISO` parameters must be updated (requested from the camera). -#### Range Limit +#### Mode-Specific Range Limit {#cam_mode_example} Suppose your camera has the following ISO options: @@ -210,7 +210,9 @@ But this full range is only available when in *Photo Mode*. For whatever reason, This indicates to the GCS that when the `CAM_MODE` parameter is set to *Video*, only the given range for the `CAM_ISO` parameter is valid. It additionally gives a condition that this is only the case when the `CAM_EXPOSURE` mode is set to *Manual* (1). -This example also tells the GCS not to display this parameter to the user (`control=“0”`). Camera Mode is a standard parameter defined in the [CAMERA\_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message and it’s handled by the GCS in that way. The parameter definition above was created in order to tell the GCS the rules that are applied when changes to the camera mode occur. +This example also tells the GCS not to display this parameter to the user (`control=“0”`). +Camera Mode is a standard parameter defined in the [CAMERA\_INFORMATION](../messages/common.md#CAMERA_INFORMATION) message and it’s handled by the GCS in that way. +The parameter definition above was created in order to tell the GCS the rules that are applied when changes to the camera mode occur. ### Localization