iLab Neuromorphic Robotics Toolkit  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
V4L2ControlParamDefs.H
Go to the documentation of this file.
1 /*! @file
2  @author Unknown
3  @copyright GNU Public License (GPL v3)
4  @section License
5  @verbatim
6  // ////////////////////////////////////////////////////////////////////////
7  // The iLab Neuromorphic Robotics Toolkit (NRT) //
8  // Copyright 2010-2012 by the University of Southern California (USC) //
9  // and the iLab at USC. //
10  // //
11  // iLab - University of Southern California //
12  // Hedco Neurociences Building, Room HNB-10 //
13  // Los Angeles, Ca 90089-2520 - USA //
14  // //
15  // See http://ilab.usc.edu for information about this project. //
16  // ////////////////////////////////////////////////////////////////////////
17  // This file is part of The iLab Neuromorphic Robotics Toolkit. //
18  // //
19  // The iLab Neuromorphic Robotics Toolkit is free software: you can //
20  // redistribute it and/or modify it under the terms of the GNU General //
21  // Public License as published by the Free Software Foundation, either //
22  // version 3 of the License, or (at your option) any later version. //
23  // //
24  // The iLab Neuromorphic Robotics Toolkit is distributed in the hope //
25  // that it will be useful, but WITHOUT ANY WARRANTY; without even the //
26  // implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR //
27  // PURPOSE. See the GNU General Public License for more details. //
28  // //
29  // You should have received a copy of the GNU General Public License //
30  // along with The iLab Neuromorphic Robotics Toolkit. If not, see //
31  // <http://www.gnu.org/licenses/>. //
32  // ////////////////////////////////////////////////////////////////////////
33  @endverbatim */
34 #ifndef INCLUDE_NRT_IMAGEPROC_IO_IMAGESOURCE_DETAILS_V4L2CONTROLPARAMDEFS_H
35 #define INCLUDE_NRT_IMAGEPROC_IO_IMAGESOURCE_DETAILS_V4L2CONTROLPARAMDEFS_H
36 
38 
39 namespace nrt { namespace v4l2 {
40 
41  static ParameterCategory ParamCateg("V4L2 Image Source Related Parameters");
42 
43  const static ParameterDef<int> FrameGrabberBrightnessParamDef(
44  "brightness", "Brightness of the grabbed picture", 32768, ParamCateg );
45 
46  const static ParameterDef<int> FrameGrabberHueParamDef(
47  "hue", "Hue of the grabbed picture", 32768, ParamCateg );
48 
49  const static ParameterDef<int> FrameGrabberSaturationParamDef(
50  "saturation", "Saturation of the grabbed picture", 90, ParamCateg );
51 
52  const static ParameterDef<int> FrameGrabberContrastParamDef(
53  "contrast", "Contrast of the grabbed picture", 32768, ParamCateg );
54 
55  const static ParameterDef<int> FrameGrabberExposureParamDef(
56  "exposure", "Exposure of the frame grabber", 511, ParamCateg );
57 
58  const static ParameterDef<int> FrameGrabberSharpnessParamDef(
59  "sharpness", "Sharpness of the grabbed picture", 80, ParamCateg );
60 
61  const static ParameterDef<int> FrameGrabberWhiteBalBUParamDef(
62  "whitebalBU", "B/U white balance of the grabbed picture", 95, ParamCateg );
63 
64  const static ParameterDef<int> FrameGrabberWhiteBalRVParamDef(
65  "whitebalRV", "R/V white balance of the grabbed picture", 87, ParamCateg );
66 
67  const static ParameterDef<int> FrameGrabberGammaParamDef(
68  "gamma", "Gamma correction of the frame grabber", 1, ParamCateg );
69 
70  const static ParameterDef<int> FrameGrabberGainParamDef(
71  "gain", "Gain of the frame grabber", 87, ParamCateg );
72 
73  const static ParameterDef<int> FrameGrabberAudioVolumeParamDef(
74  "audio-vol", "Overall audio volume. Note some drivers also provide an OSS or ALSA mixer interface", 100, ParamCateg );
75 
76  const static ParameterDef<int> FrameGrabberAudioBalanceParamDef(
77  "audio-bass", "Audio stereo balance. Minimum corresponds to all the way left, maximum to right", 0, ParamCateg );
78 
79  const static ParameterDef<int> FrameGrabberAudioTrebleParamDef(
80  "audio-treb", "Audio treble adjustment", 0, ParamCateg );
81 
82  const static ParameterDef<int> FrameGrabberAudioBassParamDef(
83  "audio-bass", "Audio bass adjustment", 0, ParamCateg );
84 
85  const static ParameterDef<bool> FrameGrabberAudioLoudnessParamDef(
86  "audio-loudness", "Loudness mode (bass boost)", false, ParamCateg );
87 
88  const static ParameterDef<bool> FrameGrabberAudioMuteParamDef(
89  "audio-mute",
90  "Mute audio, i. e. set the volume to zero, however without affecting the audio volume. Like ALSA drivers, "
91  "V4L2 drivers must mute at load time to avoid excessive noise. Actually the entire device should be reset "
92  "to a low power consumption state", false, ParamCateg );
93 
94  const static ParameterDef<bool> FrameGrabberDoWhiteBalParamDef(
95  "do-whitebal",
96  "This is an action control. When set (the value is ignored), the device will do a white balance and "
97  "then hold the current setting. Contrast this with the boolean --auto-whitebal, which, "
98  "when activated, keeps adjusting the white balance.",
99  false, ParamCateg );
100 
101  const static ParameterDef<bool> FrameGrabberAutoGainParamDef(
102  "autogain", "Automatic gain/exposure control", true, ParamCateg );
103 
104  const static ParameterDef<bool> FrameGrabberHFlipParamDef(
105  "hflip", "Mirror the picture horizontally", false, ParamCateg );
106 
107  const static ParameterDef<bool> FrameGrabberVFlipParamDef(
108  "vflip", "Mirror the picture vertically", false, ParamCateg );
109 
110  const static ParameterDef<bool> FrameGrabberHueAutoParamDef(
111  "hue-auto",
112  "Enables automatic hue control by the device. The effect of setting --hue while automatic hue "
113  "control is enabled is undefined, drivers should ignore such request",
114  true, ParamCateg );
115 
116  const static ParameterDef<bool> FrameGrabberFocusAutoParamDef(
117  "autofocus", "Whether to use built-in auto-focus", true, ParamCateg );
118 
119  const static ParameterDef<bool> FrameGrabberWhiteBalTempAutoParamDef(
120  "auto-whitebaltemp", "Whether to use built-in auto white balance temperature", true, ParamCateg );
121 
122  const static ParameterDef<int> FrameGrabberWhiteBalTempParamDef(
123  "whitebaltemp", "Manual white balance temperature (make sure auto white balance is disabled)", 4500, ParamCateg );
124 
125  const static ParameterDef<int> FrameGrabberPowerLineFreqParamDef(
126  "powerlinefreq", "Power line frequency compensation", 2, ParamCateg );
127 
128  const static ParameterDef<int> FrameGrabberBacklightCompParamDef(
129  "backlight", "Backlight compensation", 0, ParamCateg );
130 
131  const static ParameterDef<int> FrameGrabberExposureModeParamDef(
132  "exposuremode", "Exposure control mode", 0, ParamCateg );
133 
134  const static ParameterDef<bool> FrameGrabberExposureAutoPriParamDef(
135  "exposure-autopri", "Exposure auto priority control flag", false, ParamCateg );
136 
137  const static ParameterDef<int> FrameGrabberFocusParamDef(
138  "focus", "Manual focus value (make sure you disabled auto-focus)", 10, ParamCateg );
139 
140  const static ParameterDef<int> FrameGrabberZoomParamDef(
141  "zoom", "Manual zoom value", 0, ParamCateg );
142 
143  const static ParameterDef<int> FrameGrabberExposureAbsParamDef(
144  "exposure-abs",
145  "Exposure (absolute) of the frame grabber (make sure you selected manual exposure mode). Note that on some cameras "
146  "only a few discrete values in the range are valid; for example, 9, 19, 39, 78, 156, 312 and similar for "
147  "the Microsoft Lifecam Cinema 720p",
148  511, ParamCateg );
149 
150  } /*namespace v4l2*/ }/*namespace nrt*/
151 
152 #endif // INCLUDE_NRT_IMAGEPROC_IO_IMAGESOURCE_DETAILS_V4L2CONTROLPARAMDEFS_H
153