mirror of
https://github.com/raspberrypi/userland.git
synced 2025-12-06 04:49:12 +00:00
isp: add application control of the gamma block
Preserves the "gamma_shift" functionality that was previously available.
This commit is contained in:
committed by
popcornmix
parent
998f7ee3e5
commit
106b9ee84d
@@ -153,6 +153,7 @@ enum {
|
|||||||
MMAL_PARAMETER_SHARPEN, /**< Takes a @ref MMAL_PARAMETER_SHARPEN_T */
|
MMAL_PARAMETER_SHARPEN, /**< Takes a @ref MMAL_PARAMETER_SHARPEN_T */
|
||||||
MMAL_PARAMETER_GREEN_EQ, /**< Takes a @ref MMAL_PARAMETER_GREEN_EQ_T */
|
MMAL_PARAMETER_GREEN_EQ, /**< Takes a @ref MMAL_PARAMETER_GREEN_EQ_T */
|
||||||
MMAL_PARAMETER_DPC, /**< Tales a @ref MMAP_PARAMETER_DPC_T */
|
MMAL_PARAMETER_DPC, /**< Tales a @ref MMAP_PARAMETER_DPC_T */
|
||||||
|
MMAL_PARAMETER_GAMMA, /**< Tales a @ref MMAP_PARAMETER_GAMMA_T */
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Thumbnail configuration parameter type */
|
/** Thumbnail configuration parameter type */
|
||||||
@@ -1047,4 +1048,14 @@ typedef struct MMAL_PARAMETER_DPC_T {
|
|||||||
MMAL_DPC_MODE_T strength; /**< DPC strength. */
|
MMAL_DPC_MODE_T strength; /**< DPC strength. */
|
||||||
} MMAL_PARAMETER_DPC_T;
|
} MMAL_PARAMETER_DPC_T;
|
||||||
|
|
||||||
|
#define MMAL_NUM_GAMMA_PTS 33
|
||||||
|
|
||||||
|
typedef struct MMAL_PARAMETER_GAMMA_T {
|
||||||
|
MMAL_PARAMETER_HEADER_T hdr;
|
||||||
|
|
||||||
|
MMAL_BOOL_T enable; /**< Enable gamma parameters. */
|
||||||
|
uint16_t X[MMAL_NUM_GAMMA_PTS]; /**< X values (16 bit range) */
|
||||||
|
uint16_t Y[MMAL_NUM_GAMMA_PTS]; /**< Y values (16 bit range) */
|
||||||
|
} MMAL_PARAMETER_GAMMA_T;
|
||||||
|
|
||||||
#endif /* MMAL_PARAMETERS_CAMERA_H */
|
#endif /* MMAL_PARAMETERS_CAMERA_H */
|
||||||
|
|||||||
@@ -2804,5 +2804,20 @@ typedef struct OMX_PARAM_DPCTYPE {
|
|||||||
OMX_U32 nStrength; /**< Strength (0 = off, 1 = normal, 2 = strong) */
|
OMX_U32 nStrength; /**< Strength (0 = off, 1 = normal, 2 = strong) */
|
||||||
} OMX_PARAM_DPCTYPE;
|
} OMX_PARAM_DPCTYPE;
|
||||||
|
|
||||||
|
/* OMX_IndexParamGamma: Manual gamma parameters. */
|
||||||
|
/*
|
||||||
|
Configures the gamma block within the ISP pipeline.
|
||||||
|
*/
|
||||||
|
#define OMX_NUM_GAMMA_PTS 33
|
||||||
|
|
||||||
|
typedef struct OMX_PARAM_GAMMATYPE {
|
||||||
|
OMX_U32 nSize;
|
||||||
|
OMX_VERSIONTYPE nVersion;
|
||||||
|
|
||||||
|
OMX_BOOL bEnabled; /**< Enable gamma */
|
||||||
|
OMX_U16 nX[OMX_NUM_GAMMA_PTS]; /**< X coordinates (16 bit range) */
|
||||||
|
OMX_U16 nY[OMX_NUM_GAMMA_PTS]; /**< Y coordinates (16 bit range) */
|
||||||
|
} OMX_PARAM_GAMMATYPE;
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
/* File EOF */
|
/* File EOF */
|
||||||
|
|||||||
@@ -543,6 +543,7 @@ typedef enum OMX_INDEXTYPE {
|
|||||||
OMX_IndexParamSharpen, /**< reference: OMX_PARAM_SHARPENTYPE */
|
OMX_IndexParamSharpen, /**< reference: OMX_PARAM_SHARPENTYPE */
|
||||||
OMX_IndexParamGreenEq, /**< reference: OMX_PARAM_GREENEQTYPE */
|
OMX_IndexParamGreenEq, /**< reference: OMX_PARAM_GREENEQTYPE */
|
||||||
OMX_IndexParamDpc, /**< reference: OMX_PARAM_DPCTYPE */
|
OMX_IndexParamDpc, /**< reference: OMX_PARAM_DPCTYPE */
|
||||||
|
OMX_IndexParamGamma, /**< reference: OMX_PARAM_GAMMATYPE */
|
||||||
OMX_IndexMax = 0x7FFFFFFF
|
OMX_IndexMax = 0x7FFFFFFF
|
||||||
} OMX_INDEXTYPE;
|
} OMX_INDEXTYPE;
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user