PDK API Guide for J721E
|
Inteface file for Flex Color processing module.
Go to the source code of this file.
Data Structures | |
struct | Fcp_CcmConfig |
Color Conversion Module Used 4 outputs of the CFA and generates 3 outputs. Allows genration of the different color combination from four inputs colors. More... | |
struct | Fcp_GammaConfig |
Contrast stretch/gamma correction module configuration Can be used to provide a gain and offset to stretch the histogram and increase contrast in the image. Can replace the standard gamma table for standard color processing. Uses independent Lut for each color. More... | |
struct | Fcp_Rgb2YuvConfig |
RGB 2 YUV conversion coefficients. Converts 12bit RGB to 12bit YUV. Output of this conversion is YUV444. More... | |
struct | Fcp_Rgb2HsvConfig |
RGB to HSV color conversion module This module is used to convert from RGB format to Saturation and Greyscale value. Does not support hue generation. Greyscale is computed by doing weighter average of three input, H1, H2 and H3. H1 and H2 inputs can be selected from different sources. Saturation block first applies dynamic white balance offset to correct the saturation plane and then calculates the saturation. More... | |
struct | Fcp_HistConfig |
Histogram Module configuration Used to configure Histogram module Used to enable/disable histogram module. More... | |
struct | Fcp_HistData |
Used to read histogram data. More... | |
struct | Fcp_OutputSelect |
There are 5 output channels from VISS, the outputs format for all of them can be selecting appropriate data formats. The data format can further be overridded using below variables. For example, Luma and chroma 12 bit output can be selected by YUV420 data format and 12bit CCSF, luma12 output channel can further be changed to get Greyscale value from RGB2HSV output using Fcp_Luma12OutSelect in the below structure. More... | |
struct | Fcp_CfaConfig |
Flex CFA/Demosaicing Module Configuration Refer to specs for more details on this module. More... | |
struct | Fcp_RgbLutConfig |
Structure for configuring RGB Companding LUT This Lut is used for companding 12b RGB to 8b RGB If this lut is disabled, a fixed shift is used for converting 12b to 8b RGB. There is only one enable bit for all three luts. More... | |
struct | Fcp_YuvSatLutConfig |
Structure for configuring YUV and Saturation Companding LUT This Lut is used for companding 12b RGB to 8b RGB If this lut is disabled, a fixed shift is used for converting 12b to 8b Luma/Chroma/Saturation Each individual Lut can be enabled/disabled. More... | |
struct | Fcp_EeConfig |
struct | Fcp_Control |
FCP control structure. More... | |
Macros | |
#define | FCP_MAX_CCM_COEFF_IN_RAW (4U) |
#define | FCP_MAX_CCM_COEFF (3U) |
#define | FCP_MAX_RGB2YUV_COEFF (3U) |
#define | FCP_RGB2HSV_MAX_IN_COLOR (3U) |
#define | FCP_MAX_CFA_COEFF (1728U) |
#define | FCP_MAX_COLOR_COMP (4U) |
#define | FCP_CFA_MAX_PHASE (4U) |
#define | FCP_CFA_MAX_SET (2U) |
#define | FCP_CFA_MAX_SET_THR (7U) |
#define | FCP_COMPANDING_LUT_SIZE (639U) |
Companding module Lut size. More... | |
#define | FCP_GAMMA_LUT_SIZE (513U) |
Contrast stretch/gamma module Lut size. More... | |
#define | FCP_EE_LUT_SIZE (4096U) |
#define | FCP_RGB_YUVSAT_LUT_SIZE (513U) |
12b to 8b companding module Lut Size for RGB and YUV/Saturation More... | |
#define | FCP_HISTOGRAM_SIZE (256U) |
Size of the histogram data. More... | |
FCP IOCTL macros | |
#define | IOCTL_FCP_SET_CONFIG (VHWA_IOCTL_FCP_IOCTL_BASE) |
Used for setting individual FCP sub-module's configuration. Single ioctl for configuring all sub-module's configuration, by selecting module id and setting appropriate pointer in Fcp_Control. This is also used for configuring CFA module. More... | |
#define | IOCTL_FCP_GET_HISTOGRAM (VHWA_IOCTL_FCP_IOCTL_BASE + 1U) |
Used for reading histogram data. This ioctl reads the current histogram data from the registers and returns it to user. Uses Fcp_HistData as an argument. More... | |
Saturation Mode | |
#define | FCP_SAT_MODE_SUM_RGB_MINUS_MIN_RGB (0U) |
#define | FCP_SAT_MODE_MAX_RGB_MINUS_MIN_RGB (1U) |
#define | FCP_SAT_MODE_MAX (2U) |
Saturation Divison | |
#define | FCP_SAT_DIV_1 (0U) |
#define | FCP_SAT_DIV_MAX_RGB (1U) |
#define | FCP_SAT_DIV_4096_MINUS_GREY (2U) |
#define | FCP_SAT_DIV_SUM_RGB (3U) |
#define | FCP_SAT_DIV_MAX (4U) |
RGB 2 HSV input select | |
This enum is used for selecting input to the RGB 2 HSV block. RGB input for the RGB2HSV module can come either from the output of the Contrast block, ie after gamma correcttion or from the input of the contrast block ie before gamma correction. Caution: This macro value is used directly in configuring register. | |
#define | FCP_RGB2HSV_INPUT_CONTRAST_OUTPUT (0U) |
#define | FCP_RGB2HSV_INPUT_CONTRAST_INPUT (1U) |
#define | FCP_RGB2HSV_INPUT_MAX (2U) |
RGB 2 HSV H1 input select | |
#define | FCP_RGB2HSV_H1_INPUT_RED_COLOR (0U) |
#define | FCP_RGB2HSV_H1_INPUT_MIN_RGB (1U) |
#define | FCP_RGB2HSV_H1_INPUT_MAX (2U) |
RGB 2 HSV H2 input select | |
#define | FCP_RGB2HSV_H2_INPUT_BLUE_COLOR (0U) |
#define | FCP_RGB2HSV_H2_INPUT_MAX_RGB (1U) |
#define | FCP_RGB2HSV_H2_INPUT_MAX (2U) |
Histogram Input Selection | |
#define | FCP_HIST_IN_SEL_COLOR_RED (0U) |
#define | FCP_HIST_IN_SEL_COLOR_GREEN (1U) |
#define | FCP_HIST_IN_SEL_COLOR_BLUE (2U) |
#define | FCP_HIST_IN_SEL_CLR (3U) |
#define | FCP_HIST_IN_SEL_COLOR_R2GB_DIV_4 (4U) |
#define | FCP_HIST_IN_SEL_COLOR_RGB_DIV_3 (5U) |
#define | FCP_HIST_IN_SEL_MAX (6U) |
CFA Core Selection | |
#define | FCP_CFA_CORE_SEL_CORE0 (0U) |
#define | FCP_CFA_CORE_SEL_CORE1 (1U) |
CFA blending mode | |
#define | FCP_CFA_CORE_BLEND_MODE_INPUT0 (0U) |
#define | FCP_CFA_CORE_BLEND_MODE_INPUT01 (1U) |
#define | FCP_CFA_CORE_BLEND_MODE_INPUT012 (2U) |
#define | FCP_CFA_CORE_BLEND_MODE_ADAPT_INPUT012 (3U) |
#define | FCP_CFA_CORE_BLEND_MODE_MAX (4U) |
Selects the output on Luma12 output path | |
#define | FCP_LUMA12_OUT_DISABLE (0U) |
#define | FCP_LUMA12_OUT_C1 (1U) |
#define | FCP_LUMA12_OUT_C2 (2U) |
#define | FCP_LUMA12_OUT_C3 (3U) |
#define | FCP_LUMA12_OUT_C4 (4U) |
#define | FCP_LUMA12_OUT_RGB2YUV (5U) |
#define | FCP_LUMA12_OUT_RGB2HSV (6U) |
#define | FCP_LUMA12_OUT_CFA_C1 (7U) |
#define | FCP_LUMA12_OUT_MAX (8U) |
Selects the output on Chroma12 output path | |
#define | FCP_CHROMA12_OUT_DISABLE (0U) |
#define | FCP_CHROMA12_OUT_CHROMA (1U) |
#define | FCP_CHROMA12_OUT_C1 (2U) |
#define | FCP_CHROMA12_OUT_MAX (3U) |
Selects the output on Luma8 output path | |
Enum to select output pipe/channel on Luma8 output This channel is used to output Luma in 8b, it could either after RGB2YUV conversion or from RGB2HSV conversion. It can also be used to output red color of the RGB or one of the CFA output. When CFA output is selected, only MSB 8bits will be output. Caution: This macro value is used directly in configuring register. | |
#define | FCP_LUMA8_OUT_DISABLE (0U) |
#define | FCP_LUMA8_OUT_C1 (1U) |
#define | FCP_LUMA8_OUT_C2 (2U) |
#define | FCP_LUMA8_OUT_C3 (3U) |
#define | FCP_LUMA8_OUT_C4 (4U) |
#define | FCP_LUMA8_OUT_RGB2YUV_Y8 (5U) |
#define | FCP_LUMA8_OUT_RGB2HSV_Y8 (6U) |
#define | FCP_LUMA8_OUT_RED8 (7U) |
#define | FCP_LUMA8_OUT_CFA_C2 (8U) |
#define | FCP_LUMA8_OUT_MAX (9U) |
Selects the output on Chroma8 output path | |
Enum to select output pipe/channel on Chroma8 output This channel is used to output Chroma in 8b, It can also be used to output green color of the RGB or one of the CFA output. When CFA output is selected, only MSB 8bits will be output. Caution: This macro value is used directly in configuring register. | |
#define | FCP_CHROMA8_OUT_DISABLE (0U) |
#define | FCP_CHROMA8_OUT_CHROMA (1U) |
#define | FCP_CHROMA8_OUT_GREEN (2U) |
#define | FCP_CHROMA8_OUT_CFA_C3 (3U) |
#define | FCP_CHROMA8_OUT_MAX (4U) |
Selects the output on Saturation-8 output path | |
Enum to select output pipe/channel on Saturatin8 output This channel is used to output either saturation from RGB2HSV module or Blue color from after CCM or C4 output of CFA. When CFA output is selected, only MSB 8bits will be output. Caution: This macro value is used directly in configuring register. | |
#define | FCP_SAT8_OUT_DISABLE (0U) |
#define | FCP_SAT8_OUT_SATURATION (1U) |
#define | FCP_SAT8_OUT_BLUE (2U) |
#define | FCP_SAT8_OUT_CFA_C4 (3U) |
#define | FCP_SAT8_OUT_MAX (4U) |
Chroma Mode | |
#define | FCP_CHROMA_MODE_420 (0U) |
#define | FCP_CHROMA_MODE_422 (1U) |
#define | FCP_CHROMA_MODE_MAX (2U) |
FCP Modules | |
#define | FCP_MODULE_COMPANDING (0U) |
#define | FCP_MODULE_CFA (1U) |
#define | FCP_MODULE_CCM (2U) |
#define | FCP_MODULE_GAMMA (3U) |
#define | FCP_MODULE_RGB2HSV (4U) |
#define | FCP_MODULE_RGB2YUV (5U) |
#define | FCP_MODULE_OUT_SELECT (6U) |
#define | FCP_MODULE_HISTOGRAM (7U) |
#define | FCP_MODULE_RGB_LUT (8U) |
#define | FCP_MODULE_YUV_SAT_LUT (9U) |
#define | FCP_MODULE_EE (10U) |
#define | FCP_MODULE_MAX (13U) |