diff options
author | Sylwester Nawrocki <s.nawrocki@samsung.com> | 2012-03-06 05:04:26 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-05-14 13:04:30 -0400 |
commit | e40a05736d4503950ec303610a51f838bd59cdc1 (patch) | |
tree | ffd2cfa05d4fdd0d031729bc7f2deffc6003ee86 /drivers/media/video/v4l2-ctrls.c | |
parent | d58083c949b3d76aba225be9f303ab5dab585064 (diff) |
[media] V4L: Add an extended camera white balance control
This patch adds V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE control which is
an extended version of the V4L2_CID_AUTO_WHITE_BALANCE control,
including white balance presets. The following presets are defined:
- V4L2_WHITE_BALANCE_INCANDESCENT,
- V4L2_WHITE_BALANCE_FLUORESCENT,
- V4L2_WHITE_BALANCE_FLUORESCENT_H,
- V4L2_WHITE_BALANCE_HORIZON,
- V4L2_WHITE_BALANCE_DAYLIGHT,
- V4L2_WHITE_BALANCE_FLASH,
- V4L2_WHITE_BALANCE_CLOUDY,
- V4L2_WHITE_BALANCE_SHADE.
Signed-off-by: HeungJun Kim <riverful.kim@samsung.com>
Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/video/v4l2-ctrls.c')
-rw-r--r-- | drivers/media/video/v4l2-ctrls.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/media/video/v4l2-ctrls.c b/drivers/media/video/v4l2-ctrls.c index 5bfef90e88e..56ac71c8ba3 100644 --- a/drivers/media/video/v4l2-ctrls.c +++ b/drivers/media/video/v4l2-ctrls.c | |||
@@ -249,6 +249,19 @@ const char * const *v4l2_ctrl_get_menu(u32 id) | |||
249 | "Set Cb/Cr", | 249 | "Set Cb/Cr", |
250 | NULL | 250 | NULL |
251 | }; | 251 | }; |
252 | static const char * const auto_n_preset_white_balance[] = { | ||
253 | "Manual", | ||
254 | "Auto", | ||
255 | "Incandescent", | ||
256 | "Fluorescent", | ||
257 | "Fluorescent H", | ||
258 | "Horizon", | ||
259 | "Daylight", | ||
260 | "Flash", | ||
261 | "Cloudy", | ||
262 | "Shade", | ||
263 | NULL, | ||
264 | }; | ||
252 | static const char * const tune_preemphasis[] = { | 265 | static const char * const tune_preemphasis[] = { |
253 | "No Preemphasis", | 266 | "No Preemphasis", |
254 | "50 Microseconds", | 267 | "50 Microseconds", |
@@ -418,6 +431,8 @@ const char * const *v4l2_ctrl_get_menu(u32 id) | |||
418 | return camera_exposure_auto; | 431 | return camera_exposure_auto; |
419 | case V4L2_CID_COLORFX: | 432 | case V4L2_CID_COLORFX: |
420 | return colorfx; | 433 | return colorfx; |
434 | case V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE: | ||
435 | return auto_n_preset_white_balance; | ||
421 | case V4L2_CID_TUNE_PREEMPHASIS: | 436 | case V4L2_CID_TUNE_PREEMPHASIS: |
422 | return tune_preemphasis; | 437 | return tune_preemphasis; |
423 | case V4L2_CID_FLASH_LED_MODE: | 438 | case V4L2_CID_FLASH_LED_MODE: |
@@ -605,6 +620,7 @@ const char *v4l2_ctrl_get_name(u32 id) | |||
605 | case V4L2_CID_IRIS_ABSOLUTE: return "Iris, Absolute"; | 620 | case V4L2_CID_IRIS_ABSOLUTE: return "Iris, Absolute"; |
606 | case V4L2_CID_IRIS_RELATIVE: return "Iris, Relative"; | 621 | case V4L2_CID_IRIS_RELATIVE: return "Iris, Relative"; |
607 | case V4L2_CID_AUTO_EXPOSURE_BIAS: return "Auto Exposure, Bias"; | 622 | case V4L2_CID_AUTO_EXPOSURE_BIAS: return "Auto Exposure, Bias"; |
623 | case V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE: return "White Balance, Auto & Preset"; | ||
608 | 624 | ||
609 | /* FM Radio Modulator control */ | 625 | /* FM Radio Modulator control */ |
610 | /* Keep the order of the 'case's the same as in videodev2.h! */ | 626 | /* Keep the order of the 'case's the same as in videodev2.h! */ |
@@ -739,6 +755,7 @@ void v4l2_ctrl_fill(u32 id, const char **name, enum v4l2_ctrl_type *type, | |||
739 | case V4L2_CID_MPEG_STREAM_VBI_FMT: | 755 | case V4L2_CID_MPEG_STREAM_VBI_FMT: |
740 | case V4L2_CID_EXPOSURE_AUTO: | 756 | case V4L2_CID_EXPOSURE_AUTO: |
741 | case V4L2_CID_COLORFX: | 757 | case V4L2_CID_COLORFX: |
758 | case V4L2_CID_AUTO_N_PRESET_WHITE_BALANCE: | ||
742 | case V4L2_CID_TUNE_PREEMPHASIS: | 759 | case V4L2_CID_TUNE_PREEMPHASIS: |
743 | case V4L2_CID_FLASH_LED_MODE: | 760 | case V4L2_CID_FLASH_LED_MODE: |
744 | case V4L2_CID_FLASH_STROBE_SOURCE: | 761 | case V4L2_CID_FLASH_STROBE_SOURCE: |