1 /**
2  * @file
3  *
4  * @brief Public APIs for Video.
5  */
6 
7 /*
8  * Copyright (c) 2019 Linaro Limited.
9  *
10  * SPDX-License-Identifier: Apache-2.0
11  */
12 #ifndef ZEPHYR_INCLUDE_VIDEO_CONTROLS_H_
13 #define ZEPHYR_INCLUDE_VIDEO_CONTROLS_H_
14 
15 /**
16  * @brief Video controls
17  * @defgroup video_controls Video Controls
18  * @ingroup io_interfaces
19  * @{
20  */
21 
22 #include <zephyr/device.h>
23 #include <stddef.h>
24 #include <zephyr/kernel.h>
25 
26 #include <zephyr/types.h>
27 
28 #ifdef __cplusplus
29 extern "C" {
30 #endif
31 
32 /**
33  * @name Control classes
34  * @{
35  */
36 #define VIDEO_CTRL_CLASS_GENERIC	0x00000000	/**< Generic class controls */
37 #define VIDEO_CTRL_CLASS_CAMERA		0x00010000	/**< Camera class controls */
38 #define VIDEO_CTRL_CLASS_MPEG		0x00020000	/**< MPEG-compression controls */
39 #define VIDEO_CTRL_CLASS_JPEG		0x00030000	/**< JPEG-compression controls */
40 #define VIDEO_CTRL_CLASS_VENDOR		0xFFFF0000	/**< Vendor-specific class controls */
41 /**
42  * @}
43  */
44 
45 /**
46  * @name Generic class control IDs
47  * @{
48  */
49 /** Mirror the picture horizontally */
50 #define VIDEO_CID_HFLIP			(VIDEO_CTRL_CLASS_GENERIC + 0)
51 /** Mirror the picture vertically */
52 #define VIDEO_CID_VFLIP			(VIDEO_CTRL_CLASS_GENERIC + 1)
53 /**
54  * @}
55  */
56 
57 /**
58  * @name Camera class control IDs
59  * @{
60  */
61 #define VIDEO_CID_CAMERA_EXPOSURE	(VIDEO_CTRL_CLASS_CAMERA + 0)
62 #define VIDEO_CID_CAMERA_GAIN		(VIDEO_CTRL_CLASS_CAMERA + 1)
63 #define VIDEO_CID_CAMERA_ZOOM		(VIDEO_CTRL_CLASS_CAMERA + 2)
64 #define VIDEO_CID_CAMERA_BRIGHTNESS	(VIDEO_CTRL_CLASS_CAMERA + 3)
65 #define VIDEO_CID_CAMERA_SATURATION	(VIDEO_CTRL_CLASS_CAMERA + 4)
66 #define VIDEO_CID_CAMERA_WHITE_BAL	(VIDEO_CTRL_CLASS_CAMERA + 5)
67 #define VIDEO_CID_CAMERA_CONTRAST	(VIDEO_CTRL_CLASS_CAMERA + 6)
68 #define VIDEO_CID_CAMERA_COLORBAR	(VIDEO_CTRL_CLASS_CAMERA + 7)
69 #define VIDEO_CID_CAMERA_QUALITY	(VIDEO_CTRL_CLASS_CAMERA + 8)
70 /**
71  * @}
72  */
73 
74 #ifdef __cplusplus
75 }
76 #endif
77 
78 /* Controls */
79 
80 
81 /**
82  * @}
83  */
84 
85 #endif /* ZEPHYR_INCLUDE_VIDEO_H_ */
86