8#ifndef ZEPHYR_INCLUDE_VIDEO_CONTROLS_H_
9#define ZEPHYR_INCLUDE_VIDEO_CONTROLS_H_
43#define VIDEO_CID_BASE 0x00980900
46#define VIDEO_CID_BRIGHTNESS (VIDEO_CID_BASE + 0)
49#define VIDEO_CID_CONTRAST (VIDEO_CID_BASE + 1)
52#define VIDEO_CID_SATURATION (VIDEO_CID_BASE + 2)
55#define VIDEO_CID_HUE (VIDEO_CID_BASE + 3)
58#define VIDEO_CID_AUTO_WHITE_BALANCE (VIDEO_CID_BASE + 12)
61#define VIDEO_CID_RED_BALANCE (VIDEO_CID_BASE + 14)
64#define VIDEO_CID_BLUE_BALANCE (VIDEO_CID_BASE + 15)
67#define VIDEO_CID_GAMMA (VIDEO_CID_BASE + 16)
70#define VIDEO_CID_EXPOSURE (VIDEO_CID_BASE + 17)
73#define VIDEO_CID_AUTOGAIN (VIDEO_CID_BASE + 18)
79#define VIDEO_CID_GAIN (VIDEO_CID_BASE + 19)
82#define VIDEO_CID_HFLIP (VIDEO_CID_BASE + 20)
85#define VIDEO_CID_VFLIP (VIDEO_CID_BASE + 21)
90#define VIDEO_CID_POWER_LINE_FREQUENCY (VIDEO_CID_BASE + 24)
106#define VIDEO_CID_HUE_AUTO (VIDEO_CID_BASE + 25)
111#define VIDEO_CID_WHITE_BALANCE_TEMPERATURE (VIDEO_CID_BASE + 26)
116#define VIDEO_CID_SHARPNESS (VIDEO_CID_BASE + 27)
121#define VIDEO_CID_BACKLIGHT_COMPENSATION (VIDEO_CID_BASE + 28)
124#define VIDEO_CID_COLORFX (VIDEO_CID_BASE + 31)
148#define VIDEO_CID_AUTOBRIGHTNESS (VIDEO_CID_BASE + 32)
153#define VIDEO_CID_BAND_STOP_FILTER (VIDEO_CID_BASE + 33)
159#define VIDEO_CID_ALPHA_COMPONENT (VIDEO_CID_BASE + 41)
162#define VIDEO_CID_LASTP1 (VIDEO_CID_BASE + 44)
172#define VIDEO_CID_CODEC_CLASS_BASE 0x00990900
182#define VIDEO_CID_CAMERA_CLASS_BASE 0x009a0900
188#define VIDEO_CID_EXPOSURE_AUTO (VIDEO_CID_CAMERA_CLASS_BASE + 1)
205#define VIDEO_CID_EXPOSURE_ABSOLUTE (VIDEO_CID_CAMERA_CLASS_BASE + 2)
211#define VIDEO_CID_EXPOSURE_AUTO_PRIORITY (VIDEO_CID_CAMERA_CLASS_BASE + 3)
217#define VIDEO_CID_PAN_RELATIVE (VIDEO_CID_CAMERA_CLASS_BASE + 4)
223#define VIDEO_CID_TILT_RELATIVE (VIDEO_CID_CAMERA_CLASS_BASE + 5)
230#define VIDEO_CID_PAN_ABSOLUTE (VIDEO_CID_CAMERA_CLASS_BASE + 8)
236#define VIDEO_CID_TILT_ABSOLUTE (VIDEO_CID_CAMERA_CLASS_BASE + 9)
242#define VIDEO_CID_FOCUS_ABSOLUTE (VIDEO_CID_CAMERA_CLASS_BASE + 10)
248#define VIDEO_CID_FOCUS_RELATIVE (VIDEO_CID_CAMERA_CLASS_BASE + 11)
254#define VIDEO_CID_FOCUS_AUTO (VIDEO_CID_CAMERA_CLASS_BASE + 12)
259#define VIDEO_CID_ZOOM_ABSOLUTE (VIDEO_CID_CAMERA_CLASS_BASE + 13)
265#define VIDEO_CID_ZOOM_RELATIVE (VIDEO_CID_CAMERA_CLASS_BASE + 14)
274#define VIDEO_CID_ZOOM_CONTINUOUS (VIDEO_CID_CAMERA_CLASS_BASE + 15)
279#define VIDEO_CID_IRIS_ABSOLUTE (VIDEO_CID_CAMERA_CLASS_BASE + 17)
285#define VIDEO_CID_IRIS_RELATIVE (VIDEO_CID_CAMERA_CLASS_BASE + 18)
293#define VIDEO_CID_WIDE_DYNAMIC_RANGE (VIDEO_CID_CAMERA_CLASS_BASE + 21)
300#define VIDEO_CID_PAN_SPEED (VIDEO_CID_CAMERA_CLASS_BASE + 32)
306#define VIDEO_CID_TILT_SPEED (VIDEO_CID_CAMERA_CLASS_BASE + 33)
316#define VIDEO_CID_CAMERA_ORIENTATION (VIDEO_CID_CAMERA_CLASS_BASE + 34)
335#define VIDEO_CID_CAMERA_SENSOR_ROTATION (VIDEO_CID_CAMERA_CLASS_BASE + 35)
345#define VIDEO_CID_FLASH_CLASS_BASE 0x009c0900
355#define VIDEO_CID_JPEG_CLASS_BASE 0x009d0900
358#define VIDEO_CID_JPEG_COMPRESSION_QUALITY (VIDEO_CID_JPEG_CLASS_BASE + 3)
368#define VIDEO_CID_IMAGE_SOURCE_CLASS_BASE 0x009e0900
371#define VIDEO_CID_ANALOGUE_GAIN (VIDEO_CID_IMAGE_SOURCE_CLASS_BASE + 3)
381#define VIDEO_CID_IMAGE_PROC_CLASS_BASE 0x009f0900
384#define VIDEO_CID_LINK_FREQ (VIDEO_CID_IMAGE_PROC_CLASS_BASE + 1)
387#define VIDEO_CID_PIXEL_RATE (VIDEO_CID_IMAGE_PROC_CLASS_BASE + 2)
390#define VIDEO_CID_TEST_PATTERN (VIDEO_CID_IMAGE_PROC_CLASS_BASE + 3)
400#define VIDEO_CID_PRIVATE_BASE 0x08000000
410#define VIDEO_CTRL_FLAG_NEXT_CTRL 0x80000000
video_exposure_type
Video exposure type.
Definition video-controls.h:193
video_camera_orientation
Video camera orientation.
Definition video-controls.h:321
video_colorfx
Video color effects.
Definition video-controls.h:129
video_power_line_frequency
Video power line frequency.
Definition video-controls.h:95
@ VIDEO_EXPOSURE_MANUAL
Manual exposure.
Definition video-controls.h:195
@ VIDEO_EXPOSURE_APERTURE_PRIORITY
Aperture priority.
Definition video-controls.h:197
@ VIDEO_EXPOSURE_AUTO
Automatic exposure.
Definition video-controls.h:194
@ VIDEO_EXPOSURE_SHUTTER_PRIORITY
Shutter priority.
Definition video-controls.h:196
@ VIDEO_CAMERA_ORIENTATION_FRONT
Camera installed on the user-facing side of a phone/tablet/laptop device.
Definition video-controls.h:323
@ VIDEO_CAMERA_ORIENTATION_BACK
Camera installed on the opposite side of the user.
Definition video-controls.h:325
@ VIDEO_CAMERA_ORIENTATION_EXTERNAL
Camera sensors not directly attached to the device or that can move freely.
Definition video-controls.h:327
@ VIDEO_COLORFX_ART_FREEZE
Art freeze/stylized effect.
Definition video-controls.h:141
@ VIDEO_COLORFX_SKY_BLUE
Sky blue tint effect.
Definition video-controls.h:136
@ VIDEO_COLORFX_SILHOUETTE
Silhouette effect.
Definition video-controls.h:142
@ VIDEO_COLORFX_SOLARIZATION
Solarization effect.
Definition video-controls.h:143
@ VIDEO_COLORFX_SKIN_WHITEN
Skin whitening effect.
Definition video-controls.h:138
@ VIDEO_COLORFX_SEPIA
Sepia tone effect.
Definition video-controls.h:132
@ VIDEO_COLORFX_BW
Black and white effect.
Definition video-controls.h:131
@ VIDEO_COLORFX_VIVID
Vivid/bright color effect.
Definition video-controls.h:139
@ VIDEO_COLORFX_ANTIQUE
Antique/vintage effect.
Definition video-controls.h:144
@ VIDEO_COLORFX_SKETCH
Sketch/drawing effect.
Definition video-controls.h:135
@ VIDEO_COLORFX_NONE
No color effect.
Definition video-controls.h:130
@ VIDEO_COLORFX_EMBOSS
Emboss effect.
Definition video-controls.h:134
@ VIDEO_COLORFX_GRASS_GREEN
Grass green tint effect.
Definition video-controls.h:137
@ VIDEO_COLORFX_NEGATIVE
Negative image effect.
Definition video-controls.h:133
@ VIDEO_COLORFX_AQUA
Aqua (blue-green) effect.
Definition video-controls.h:140
@ VIDEO_CID_POWER_LINE_FREQUENCY_DISABLED
Power line frequency disabled.
Definition video-controls.h:96
@ VIDEO_CID_POWER_LINE_FREQUENCY_AUTO
Automatic power line frequency.
Definition video-controls.h:99
@ VIDEO_CID_POWER_LINE_FREQUENCY_60HZ
60 Hz power line frequency.
Definition video-controls.h:98
@ VIDEO_CID_POWER_LINE_FREQUENCY_50HZ
50 Hz power line frequency.
Definition video-controls.h:97
__UINT32_TYPE__ uint32_t
Definition stdint.h:90
__INT32_TYPE__ int32_t
Definition stdint.h:74
__INT64_TYPE__ int64_t
Definition stdint.h:75
Runtime device structure (in ROM) per driver instance.
Definition device.h:510
Video control structure.
Definition video-controls.h:428
int32_t val
Definition video-controls.h:433
uint32_t id
control id
Definition video-controls.h:430
int64_t val64
Definition video-controls.h:434
Definition video-controls.h:475
const char * name
control name
Definition video-controls.h:483
struct video_ctrl_range range
control range
Definition video-controls.h:487
const char *const * menu
Definition video-controls.h:490
uint32_t type
control type
Definition video-controls.h:481
uint32_t id
control id, application needs to set this field
Definition video-controls.h:479
const struct device * dev
device being queried, application needs to set this field
Definition video-controls.h:477
const int64_t * int_menu
Definition video-controls.h:491
uint32_t flags
control flags
Definition video-controls.h:485
Definition video-controls.h:444
int32_t min
Definition video-controls.h:447
int64_t min64
Definition video-controls.h:448
int32_t max
Definition video-controls.h:452
int64_t max64
Definition video-controls.h:453
int64_t step64
Definition video-controls.h:458
int64_t def64
Definition video-controls.h:465
int32_t step
Definition video-controls.h:457
int32_t def
Definition video-controls.h:464