TIOVX User Guide
hwa_vpac_ldc.h File Reference

The LDC kernels in this kernel extension. More...

#include <VX/vx.h>
#include <VX/vx_kernels.h>

Go to the source code of this file.

Data Structures

struct  tivx_vpac_ldc_region_params_t
 The region_params data structure used by the TIVX_KERNEL_VPAC_LDC kernel. More...
 
struct  tivx_vpac_ldc_multi_region_params_t
 The alternative region_params data structure used by the TIVX_KERNEL_VPAC_LDC kernel. More...
 
struct  tivx_vpac_ldc_mesh_params_t
 The mesh data structure in the configuration data structure used by the TIVX_KERNEL_VPAC_LDC kernel. More...
 
struct  tivx_vpac_ldc_params_t
 The configuration data structure used by the TIVX_KERNEL_VPAC_LDC kernel. More...
 
struct  tivx_vpac_ldc_bandwidth_params_t
 The bandwidth params structure used by the TIVX_KERNEL_VPAC_LDC kernel. Passed as argument to TIVX_VPAC_LDC_CMD_SET_READ_BW_LIMIT_PARAMS command. More...
 
struct  tivx_vpac_ldc_bit_depth_conv_lut_params_t
 The remap params structure used by the TIVX_KERNEL_VPAC_LDC kernel. Passed as argument to TIVX_VPAC_LDC_CMD_SET_BIT_DEPTH_CONV_LUT_PARAMS command. Used to set Remap/Tone Map Lut in LDC. More...
 

Macros

#define TIVX_KERNEL_VPAC_LDC_NAME   "com.ti.hwa.vpac_ldc"
 vpac_ldc kernel name
 
#define TIVX_VPAC_LDC_CMD_SET_READ_BW_LIMIT_PARAMS   (0x10000000u)
 Control Command to set LDC Read Bandwidth limit parameters User data object tivx_vpac_ldc_bandwidth_params_t is passed as argument with this control command.
 
#define TIVX_VPAC_LDC_CMD_SET_BIT_DEPTH_CONV_LUT_PARAMS   (0x10000001u)
 Control Command to set LDC Lut parameters This LUT is used in bit depth conversion for output 2 & 3. An array of tivx_vpac_ldc_bit_depth_conv_lut_params_t is used an an argument to this command. Params at index-0 is used for setting Luma output (output2) and Params at index-1 is used for setting Chroma output (output3). Both entries are optional and can be null if no change is required.
 
#define TIVX_VPAC_LDC_CMD_GET_ERR_STATUS   (0x10000002u)
 Control Command to get the error status Returns the error status of the last processed frame. Reference to vx_scalar is passed as argument with this control command. Node returns bit-mask of error status in u32 variable of vx_scalar.
 
#define TIVX_VPAC_LDC_CMD_SET_LDC_PARAMS   (0x10000003u)
 Control Command to set the LDC Parameters. More...
 
#define TIVX_VPAC_LDC_CMD_SET_LDC_DCC_PARAMS   (0x30000000u)
 Control Command to set the DCC (Dynamic Camera Configuration) information to the given LDC Node. More...
 
#define TIVX_VPAC_LDC_ALIGN_LSB   (0U)
 
#define TIVX_VPAC_LDC_ALIGN_MSB   (1U)
 
#define TIVX_VPAC_LDC_INTERPOLATION_BICUBIC   (0U)
 
#define TIVX_VPAC_LDC_INTERPOLATION_BILINEAR   (1U)
 
#define TIVX_VPAC_LDC_MODE_LUMA_ONLY   (0U)
 
#define TIVX_VPAC_LDC_MODE_CHROMA_ONLY   (1U)
 
#define TIVX_VPAC_LDC_CALC_MESH_LINE_OFFSET(width, subsample_factor)   ((((((width)/(subsample_factor))+1) + 15U) & ~15U) * (4U))
 Macro to calculate mesh line offset for the given width and down scaling factor.
 
#define TIVX_VPAC_LDC_BIT_DEPTH_CONV_LUT_SIZE   (513u)
 
#define TIVX_VPAC_LDC_PIX_BLK_OUTOFBOUND_ERR_STATUS   (0x1u)
 
#define TIVX_VPAC_LDC_MESH_BLK_OUTOFBOUND_ERR_STATUS   (0x2u)
 
#define TIVX_VPAC_LDC_PIX_MEM_OVF_ERR_STATUS   (0x4u)
 
#define TIVX_VPAC_LDC_MESH_MEM_OVF_ERR_STATUS   (0x8u)
 
#define TIVX_VPAC_LDC_PIX_FRM_OUTOFBOUND_ERR_STATUS   (0x10u)
 
#define TIVX_VPAC_LDC_SZ_OVF_ERR_STATUS   (0x20u)
 
#define TIVX_VPAC_LDC_SL2_WR_ERR_STATUS   (0x80u)
 
#define TIVX_VPAC_LDC_RD_ERR_STATUS   (0x100u)
 

Functions

void tivxRegisterHwaTargetVpacLdcKernels (void)
 Function to register HWA Kernels on the vpac_ldc Target.
 
void tivxUnRegisterHwaTargetVpacLdcKernels (void)
 Function to un-register HWA Kernels on the vpac_ldc Target.
 
VX_API_ENTRY vx_node VX_API_CALL tivxVpacLdcNode (vx_graph graph, vx_user_data_object configuration, vx_matrix warp_matrix, vx_user_data_object region_prms, vx_user_data_object mesh_prms, vx_image mesh_img, vx_user_data_object dcc_db, vx_image in_img, vx_image out0_img, vx_image out1_img)
 [Graph] Creates a VPAC_LDC Node. More...
 
void tivx_vpac_ldc_region_params_init (tivx_vpac_ldc_region_params_t *prms)
 Function to initialize LDC Region parameters. More...
 
void tivx_vpac_ldc_multi_region_params_init (tivx_vpac_ldc_multi_region_params_t *prms)
 Function to initialize LDC Multi Region parameters. More...
 
void tivx_vpac_ldc_mesh_params_init (tivx_vpac_ldc_mesh_params_t *prms)
 Function to initialize LDC Mesh parameters. More...
 
void tivx_vpac_ldc_bandwidth_params_init (tivx_vpac_ldc_bandwidth_params_t *prms)
 Function to initialize Bandwidth limiter parameters. More...
 
void tivx_vpac_ldc_params_init (tivx_vpac_ldc_params_t *prms)
 Function to initialize LDC parameters with the default values. More...
 

Detailed Description

The LDC kernels in this kernel extension.

Definition in file hwa_vpac_ldc.h.

Macro Definition Documentation

◆ TIVX_VPAC_LDC_BIT_DEPTH_CONV_LUT_SIZE

#define TIVX_VPAC_LDC_BIT_DEPTH_CONV_LUT_SIZE   (513u)

Size of the Remap LUT, used for 12bit to 8bit conversion

Definition at line 185 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_PIX_BLK_OUTOFBOUND_ERR_STATUS

#define TIVX_VPAC_LDC_PIX_BLK_OUTOFBOUND_ERR_STATUS   (0x1u)

Error status for pixel co-ordinate goes out of the pre-computed input pixel bounding box

Definition at line 189 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_MESH_BLK_OUTOFBOUND_ERR_STATUS

#define TIVX_VPAC_LDC_MESH_BLK_OUTOFBOUND_ERR_STATUS   (0x2u)

Error status for Block mesh co-ordinate goes out of the pre-computed mesh bounding box

Definition at line 192 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_PIX_MEM_OVF_ERR_STATUS

#define TIVX_VPAC_LDC_PIX_MEM_OVF_ERR_STATUS   (0x4u)

Input Pixel block memory overflow

Definition at line 194 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_MESH_MEM_OVF_ERR_STATUS

#define TIVX_VPAC_LDC_MESH_MEM_OVF_ERR_STATUS   (0x8u)

Mesh block memory overflow

Definition at line 196 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_PIX_FRM_OUTOFBOUND_ERR_STATUS

#define TIVX_VPAC_LDC_PIX_FRM_OUTOFBOUND_ERR_STATUS   (0x10u)

Back mapped input co-ordinate goes out of input frame range

Definition at line 198 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_SZ_OVF_ERR_STATUS

#define TIVX_VPAC_LDC_SZ_OVF_ERR_STATUS   (0x20u)

Affine and perspective transform precision overflow error

Definition at line 200 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_SL2_WR_ERR_STATUS

#define TIVX_VPAC_LDC_SL2_WR_ERR_STATUS   (0x80u)

Error on SL2 VBSUM Write interface

Definition at line 202 of file hwa_vpac_ldc.h.

◆ TIVX_VPAC_LDC_RD_ERR_STATUS

#define TIVX_VPAC_LDC_RD_ERR_STATUS   (0x100u)

Error on Input VBUSM Read interface

Definition at line 204 of file hwa_vpac_ldc.h.