The following table shows all options available to set and get by camera.setOptions
and camera.getOptions
. An option cannot be changed when its corresponding support is empty or contains only one option.
Name | Type | Description | Read/Write |
---|---|---|---|
captureMode |
String | Current capture mode. Default to image. |
rw |
captureModeSupport |
String Array | List of capture modes currently available. Minimum requirement for API level 1 is ["image"] , and minimum requirement for API level 2 is ["image", "interval"] , where "interval" represents the mode of capturing a series of images spaced at a certain interval, please see also captureInterval and captureIntervalSupport . Two additional modes ("video" and "walkaround") are supported by API level 2, so the complete supported set by API level 2 is ["image", "interval", "video", "walkaround"] , where "video" represents the video capture mode and "walkaround" represents the mode of capturing two images in sequence, the first with the users standing anywhere relative to the camera and the second with the users standing on the opposite side (relative to the first standing point) of the camera. This allows the camera to remove the users from the final image by combining the two images. When "walkaround" is supported by the camera and set to be the current capture mode, the client should expect to send two takePicture commands to the camera, where the response of the first command (when it finishes) indicates the camera is ready to take the second image while the second command should return the final image when it finishes.
To add more capture modes not supported yet, please prefix vendor-specific modes with an underscore ( _ ). This option was modified in API level 2. |
r |
captureStatus |
String | Current capture status. Default to "idle" . This is useful to determine the camera's status when it is first connected to an app. If the camera is in the middle of shooting a video, it may need to be stopped before commanded to do other things, e.g. another video shooting. This option was added in API level 2.1. |
rw |
captureStatusSupport |
String Array | List of capture statuses currently available; By default, it should be ["idle", "shooting"] if video shooting is supported. Other statues can be provided too, e.g. "downloading" . This option was added in API level 2.1. |
r |
exposureProgram |
Number | Current exposure program. | rw |
exposureProgramSupport |
Number Array | List of exposure programs currently available; for example, [0, 1, 2, 3, 4] . Each integer represents a different exposure program:
ExposureProgram .
|
r |
iso |
Number | Current ISO speed setting. | rw |
isoSupport |
Number Array | API level 1: List of ISO settings currently available; for example, API level 2: List of ISO settings currently available; for example, This option was modified in API level 2. |
r |
shutterSpeed |
Number | Current shutter speed setting. | rw |
shutterSpeedSupport |
Number Array | API level 1: List of shutter speeds currently available; for example, API level 2: List of shutter speeds currently available; for example, This option was modified in API level 2. |
r |
aperture |
Number | Current aperture setting, in f-stops. | rw |
apertureSupport |
Number Array | API level 1: List of aperture settings currently available, expressed in API level 2: List of aperture settings currently available, expressed in |
r |
whiteBalance |
String | Current white balance setting; for example, daylight . Default to auto . |
rw |
whiteBalanceSupport |
String Array | List of white balance settings currently available, can be a subset of the predefined list:[ "auto", "incandescent", "fluorescent", "daylight", "cloudy-daylight", "shade", "twilight"] . Values for each:
_vendor-setting |
r |
exposureCompensation |
Number | Current exposure compensation. | rw |
exposureCompensationSupport |
Number Array | List of of exposure compensations currently available, usually in step 0.33 or
0.5; for example: [-1, -0.67, -0.33, 0, 0.33, 0.67, 1] |
r |
fileFormat |
Object | Current file type and resolution. The format should reflect the current value of { "type": "jpeg", "width": 2000, "height": 1000 } captureMode is video , an appropriate response could be:
{ "type": "mp4", "width": 1920, "height": 1080, "framerate": 30 } This option was modified in API level 2. |
rw |
fileFormatSupport |
Object Array | List of the file formats currently available; for example: [ { "type": "jpeg", "width": 2000, "height": 1000 }, { "type": "jpeg", "width": 200, "height": 100 }, { "type": "mp4", "width": 1920, "height": 1080, "framerate": 24 }, { "type": "mp4", "width": 1280, "height": 720, "framerate": 30 }, ... ] This option was modified in API level 2. |
r |
exposureDelay |
Number | Current delay between the takePicture command and when the exposure is started, in seconds. |
rw |
exposureDelaySupport |
Number Array | List of exposure delays currently available, in seconds; for example: [0, 1, 2, 5, 10, 30, 60] |
r |
sleepDelay |
Number | Current delay before the camera goes to sleep, in seconds. | rw |
sleepDelaySupport |
Number Array | List of the sleep delays currently available, in seconds; for example, [30, 60, 120, 300, 600, 1800, 65535] , where 65535 disables sleep mode (the camera doesn't sleep until powered off) and must be supported. |
r |
offDelay |
Number | Current delay in seconds before the camera powers off. | rw |
offDelaySupport |
Number Array | List of power off delays currently available, in seconds; for example, [1800, 3600, 7200, 65535] , where 65535 disables power off mode (the camera doesn’t power off until the battery is depleted or powered off manually) and must be supported. |
r |
totalSpace |
Number | Read-only: Number of bytes of total storage. | r |
remainingSpace |
Number | Read-only: Number of bytes of free storage. | r |
remainingPictures |
Number | Read-only: Estimated number of remaining pictures based on current capture setting. | r |
gpsInfo |
Object | Current GPS information. Set using { "lat": 23.532, "lng": -132.35 } lat and lng properties are decimal degrees, with lat in the range, [-90, 90] , and lng in the range, [-180, 180] . When provided by a phone, please note that each GPS location is valid only
until the next update from the phone. The phone must determine when to update
the GPS location; for example, right before each takePicture command. 65535 notifies the camera that the current GPS location is invalid and the camera
should ignore it and use its own GPS if it exists; for example,
setOptions({"gpsInfo": {"lat": 65535, "lng": 65535}}) means the GPS location is
invalid. |
rw |
dateTimeZone |
String | Current date and time information. Set by setOptions using phone’s date, time, and time zone. The format is, YYYY:MM:DD HH:MM:SS+(-)HH:MM . Time is in 24-hour format, date and time are separated by a blank space,
andtime zone is an offset from UTC time; for example, 2014:05:18 01:04:29+8:00 is China Time Zone (UTC+8:00) |
rw |
hdr |
API level 1: Boolean API level 2: String |
API level 1: Enable/disable HDR capture mode. Value is API level 2: Current HDR mode of String type. This option was modified in API level 2. |
rw |
hdrSupport |
API level 1: Boolean API level 2: String Array |
API level 1: A value of API level 2: If you don’t support HDR mode, it is
This option was modified in API level 2. |
r |
exposureBracket |
Object | Current exposure bracket setting. Available only when hdrSupport == true (API level 1) or hdrSupport contains at least one HDR mode (API level 2). If the camera uses manual exposure bracketing, the object contains two entries:
{ "shots": 3, "increment": 1.33 } { "autoMode": true } API level 1: Default to empty API level 2: Default to empty {} when This option was modified in API level 2. |
rw |
exposureBracketSupport |
Object | Exposure bracket settings currently available; for example: { "autoMode": true, "shotsSupport": [1, 3, 5, 7], "incrementSupport": [0.33, 0.67, 1, 1.33, 1.67, 2] } API level 1: Default to empty API level 2: Default to empty This option was modified in API level 2. |
r |
gyro |
Boolean | Set to true to enable the camera’s gyroscope module, or false to disable this feature. Default to true if the camera supports it, otherwise false . This setting can be true only when gyroSupport == true . |
rw |
gyroSupport |
Boolean | If the camera has a gyroscope this value should be true , otherwise, false . |
r |
gps |
Boolean | Enables/disables the camera GPS module. Value must be true to enable, or false to disable. Default value is true if the camera supports it, otherwise false . Setting is true only when gpsSupport == true . |
rw |
gpsSupport |
Boolean | This value should be true if the camera has its own GPS module, otherwise false . |
r |
imageStabilization |
String | Current image stabilization operation; for example, off . |
rw |
imageStabilizationSupport |
String Array | Image stabilization options currently available. The pre-defined list is, ["off", "on"] .If the camera doesn’t support image stabilization, return ["off"] , otherwise return ["off", "on"] . Prefix vendor-specific strings with an underscore ( _ ); for example, [ "off", "_horizontal_stabilization", "_vibration_correction" ] . |
r |
wifiPassword |
String | At least 8 characters long, containing letters, numbers, symbols, but no spaces. It can be changed only when the camera is connected to a client device. Once it is changed, the camera must disconnect so the user must reconnect using the new
wifiPassword .The camera must provide a reset mechanism in case the password is forgotten; for example, a reset button to restore the factory default password. |
w |
previewFormat |
Object | Current live preview resolution; for example: { "width": 640, "height": 320, "framerate": 24 } This option was added in API level 2. |
rw |
previewFormatSupport |
Object Array | Currently supported live preview formats; for example: [ { "width": 640, "height": 320, "framerate": 24 }, ... { "width": 1280, "height": 720, "framerate": 24 } ] This option was added in API level 2. |
r |
captureInterval |
Number | Current interval between capturing two consecutive images, in seconds .
This option was added in API level 2. |
rw |
captureIntervalSupport |
Object | Minimum and maximum intervals allowed between capturing two consecutive images, in seconds; for example: { "minInterval": 10, "maxInterval": 60 } fileFormat .
This option was added in API level 2. |
r |
captureNumber |
Number | Number of images to be captured for one interval capture session. Default to 0 , which means the capture needs to be terminated explicitly by stopCapture command; otherwise, the capture stops automatically after it captures images of the specified number. The capture can also be interrupted when the camera is out of battery or when it is turned off intentionally.
This option was added in API level 2. |
rw |
captureNumberSupport |
Object | Minimum and maximum number of images that can be captured during an interval capture; for example: { "minNumber": 2, "maxNumber": 50 } This option was added in API level 2. |
r |
remainingVideoSeconds |
Number | Estimated number of seconds for remaining video based on current capture setting.
This option was added in API level 2. |
r |
pollingDelay |
Number | Minimum interval in seconds between two consecutive status polling requests. Clients should use this field to guide their status polling behavior; for example, when it is stitching an image, clients might need to poll the camera periodically to see if it finishes stitching. Different cameras have different support; for example, some cameras can handle status polling every one second while others support longer interval.
This option was added in API level 2. |
r |
delayProcessing |
Boolean | True when processing (e.g. stitching) has a lower priority than capturing, or in other words, another capture is allowed before the processing of the previous captured image is finished. This is highly recommended, especially for cameras that require long processing time.
This option was added in API level 2. |
rw |
delayProcessingSupport |
Boolean Array |
This option was added in API level 2. |
r |
clientVersion |
Number | The API level the client decides to use. Default to 1 if the
camera supports both API level 1 and 2 so that clients written for
API level 1 still works with the camera without any change; default
to 2 if the camera only supports API level 2, which is not
recommended before clients migrate to API level 2. If the camera
only supports API level 2, the request trying to set it to 1 should
fail. If This option was added in API level 2. |
rw |
photoStitchingSupport |
String Array | List of stitching options for photos. Return
This option was added in API level 2.1. |
r |
photoStitching |
String | Current stitching option for photos, e.g.
This option was added in API level 2.1. |
rw |
videoStitchingSupport |
String Array | List of stitching options for videos. Return
This option was added in API level 2.1. |
r |
videoStitching |
String | Current stitching option for videos, e.g.
This option was added in API level 2.1. |
rw |
videoGPSSupport |
String Array | List of GPS options during video capture. Return
This option was added in API level 2.1. |
r |
videoGPS |
String | Current option for GPS support during video capture, e.g.
This option was added in API level 2.1. |
rw |
_vendorSpecific |
[type] (optional) | Vendor-specific additional camera options. Prefix vendor-specific strings with an underscore ( _ ). |