NVIDIA DRIVE 5.0 Linux SDK API Reference

5.0.5.0 Release

 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages

Detailed Description

Defines IPP component-related structures and functions.

Data Structures

struct  NvMediaIPPBufferPoolParamsNew
 Holds new buffer pool parameters for initializing an IPP component. More...
 
struct  NvMediaIPPBufferPoolParamsImgGrp
 Holds image group buffer pool parameters for initializing an IPP component. More...
 
struct  NvMediaIPPIcpComponentConfig
 Holds configuration for an ICP component. More...
 
struct  NvMediaIPPFileReaderComponentConfig
 Holds configuration information for a file reader component. More...
 
struct  NvMediaIPPIscComponentConfig
 Holds configuration information for an ISC component. More...
 
struct  NvMediaIPPIspComponentConfig
 Holds configuration information for an ISP component. More...
 
struct  NvMediaIPPControlAlgorithmComponentConfig
 Holds configuration information for a Control Algorithm component. More...
 
struct  NvMediaIPPComponentOutput
 Holds a handle representing an IPP component output object. More...
 
struct  NvMediaIPPComponentOutputImgGrp
 Holds a handle representing an IPP component output object. More...
 

Typedefs

typedef NvMediaStatus(* NvMediaIPPImgGrpReadCallback )(void *clientContext, NvMediaImageGroup *imageGroup)
 File-reader image-read callback prototype. More...
 

Enumerations

enum  NvMediaIPPPortType {
  NVMEDIA_IPP_PORT_IMAGE_1,
  NVMEDIA_IPP_PORT_IMAGE_2,
  NVMEDIA_IPP_PORT_STATS_1,
  NVMEDIA_IPP_PORT_SENSOR_CONTROL_1,
  NVMEDIA_IPP_PORT_IMAGE_CAPTURE_AGGREGATE
}
 Defines IPP port types. More...
 
enum  NvMediaIPPIspAttrFlags {
  NVMEDIA_IPP_ISP_MODE_NONHDR = (1 << 0),
  NVMEDIA_IPP_ISP_SINGLE_PIPELINE_MODE = (1 << 1),
  NVMEDIA_IPP_ISP_OUTPUT2_MODE_1 = (1 << 3),
  NVMEDIA_IPP_ISP_OUTPUT2_MODE_2 = (1 << 4)
}
 Defines IPP ISP attribute flags. More...
 
enum  NvMediaIPPMetadataType {
  NVMEDIA_IPP_METADATA_IMAGE_INFO,
  NVMEDIA_IPP_METADATA_CONTROL_PROPERTIES,
  NVMEDIA_IPP_METADATA_DYNAMIC_PROPERTIES,
  NVMEDIA_IPP_METADATA_EMBEDDED_DATA_ISC,
  NVMEDIA_IPP_METADATA_EMBEDDED_DATA_TOP,
  NVMEDIA_IPP_METADATA_EMBEDDED_DATA_BOTTOM,
  NVMEDIA_IPP_METADATA_LTM_DATA,
  NVMEDIA_IPP_METADATA_MAX_TYPES
}
 Defines metadata types. More...
 

Functions

uint32_t NvMediaIPPMetadataGetSize (void *metadata, NvMediaIPPMetadataType type)
 Gets the size of the specified metadata type. More...
 
NvMediaStatus NvMediaIPPMetadataGet (void *metadata, NvMediaIPPMetadataType type, void *buffer, uint32_t size)
 Gets the data of the specified metadata type. More...
 
NvMediaStatus NvMediaIPPMetadataGetAddress (void *metadata, NvMediaIPPMetadataType type, void **buffer, uint32_t *size)
 Gets the address of the data of the specified metadata type. More...
 
NvMediaIPPComponentNvMediaIPPComponentCreateNew (NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponentType componentType, NvMediaIPPBufferPoolParamsNew **bufferPools, void *componentConfig)
 Creates an IPP component object. More...
 
NvMediaIPPComponentNvMediaIPPComponentCreateImgGrp (NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponentType componentType, NvMediaIPPBufferPoolParamsImgGrp **bufferPools, void *componentConfig)
 Creates an IPP component object. More...
 
NvMediaStatus NvMediaIPPComponentAddToPipeline (NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponent *ippComponent)
 Adds an IPP component to pipeline. More...
 
NvMediaStatus NvMediaIPPComponentAttach (NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponent *srcComponent, NvMediaIPPComponent *dstComponent, NvMediaIPPPortType portType)
 Attaches an IPP source component to a destination component. More...
 
NvMediaStatus NvMediaIPPComponentGetOutput (NvMediaIPPComponent *component, uint32_t millisecondTimeout, NvMediaIPPComponentOutput *output)
 Gets output from a component. More...
 
NvMediaStatus NvMediaIPPComponentReturnOutput (NvMediaIPPComponent *component, NvMediaIPPComponentOutput *output)
 Returns output to a component. More...
 
NvMediaStatus NvMediaIPPComponentGetOutputImgGrp (NvMediaIPPComponent *component, uint32_t millisecondTimeout, NvMediaIPPComponentOutputImgGrp *output)
 Gets image group output from a component. More...
 
NvMediaStatus NvMediaIPPComponentReturnOutputImgGrp (NvMediaIPPComponent *component, NvMediaIPPComponentOutputImgGrp *output)
 Returns image group output to a component. More...
 
void NvMediaIPPComponentDestroy (NvMediaIPPComponent *ippComponent)
 Destroys an IPP component object. More...
 

Typedef Documentation

typedef NvMediaStatus(* NvMediaIPPImgGrpReadCallback)(void *clientContext, NvMediaImageGroup *imageGroup)

File-reader image-read callback prototype.

The client must create a function with the same function signature. The IPP File Reader component calls this function when it is ready to read an image into the framework. The component passes a pointer to an image that holds the entire image/frame.

Parameters
[in]clientContextPointer to the client's context.
[in]imageGroupPointer to the image group that will be read in the function.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_ERROR

Definition at line 1014 of file nvmedia_ipp.h.

Enumeration Type Documentation

Defines IPP ISP attribute flags.

Enumerator
NVMEDIA_IPP_ISP_MODE_NONHDR 

Indicates a NON-HDR ISP pipeline must be set in the ISP component.

NVMEDIA_IPP_ISP_SINGLE_PIPELINE_MODE 

Indicates the single ISP pipeline mode is enabled.

NVMEDIA_IPP_ISP_OUTPUT2_MODE_1 

Indicates the second ISP output mode 1 is selected.

NVMEDIA_IPP_ISP_OUTPUT2_MODE_2 

Indicates the second ISP output mode 2 is selected.

Definition at line 1043 of file nvmedia_ipp.h.

Defines metadata types.

Enumerator
NVMEDIA_IPP_METADATA_IMAGE_INFO 

Image information.

Data corresponds to NvMediaIPPImageInformation.

NVMEDIA_IPP_METADATA_CONTROL_PROPERTIES 

Control properties.

Data corresponds to NvMediaIPPPropertyControls.

NVMEDIA_IPP_METADATA_DYNAMIC_PROPERTIES 

Dynamic properties.

Data corresponds to NvMediaIPPPropertyDynamic

NVMEDIA_IPP_METADATA_EMBEDDED_DATA_ISC 

Embedded data.

Data corresponds to NvMediaISCEmbeddedData. The top and bottom embedded lines will not provided. Use NVMEDIA_IPP_METADATA_EMBEDDED_DATA_TOP and NVMEDIA_IPP_METADATA_EMBEDDED_DATA_BOTTOM

NVMEDIA_IPP_METADATA_EMBEDDED_DATA_TOP 

The top embedded line whose size and base register are defined by size and baseRegAddress of NvMediaISCEmbeddedDataBuffer.

NVMEDIA_IPP_METADATA_EMBEDDED_DATA_BOTTOM 

The bottom embedded line whose size and base register are defined by size and baseRegAddress of NvMediaISCEmbeddedDataBuffer.

NVMEDIA_IPP_METADATA_LTM_DATA 

Local Tone Map data.

NVMEDIA_IPP_METADATA_MAX_TYPES 

Number of metadata types.

Definition at line 1088 of file nvmedia_ipp.h.

Defines IPP port types.

Enumerator
NVMEDIA_IPP_PORT_IMAGE_1 

Image port 1.

NVMEDIA_IPP_PORT_IMAGE_2 

Image port 2.

NVMEDIA_IPP_PORT_STATS_1 

Statistics port 1.

NVMEDIA_IPP_PORT_SENSOR_CONTROL_1 

Sensor control port 1.

NVMEDIA_IPP_PORT_IMAGE_CAPTURE_AGGREGATE 

Capture port of aggregate images.

Definition at line 925 of file nvmedia_ipp.h.

Function Documentation

NvMediaStatus NvMediaIPPComponentAddToPipeline ( NvMediaIPPPipeline ippPipeline,
NvMediaIPPComponent ippComponent 
)

Adds an IPP component to pipeline.

Parameters
[in]ippPipelineThe NvMedia IPP pipeline the component will be added to.
[in]ippComponentThe IPP component's handle.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_ERROR
NvMediaStatus NvMediaIPPComponentAttach ( NvMediaIPPPipeline ippPipeline,
NvMediaIPPComponent srcComponent,
NvMediaIPPComponent dstComponent,
NvMediaIPPPortType  portType 
)

Attaches an IPP source component to a destination component.

Parameters
[in]ippPipelineThe NvMedia IPP pipeline the components belongs to.
[in]srcComponentSource component.
[in]dstComponentDestination component.
[in]portTypeSpecifies which port of source component is attached to the destination.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_ERROR
NvMediaIPPComponent* NvMediaIPPComponentCreateImgGrp ( NvMediaIPPPipeline ippPipeline,
NvMediaIPPComponentType  componentType,
NvMediaIPPBufferPoolParamsImgGrp **  bufferPools,
void *  componentConfig 
)

Creates an IPP component object.

Parameters
[in]ippPipelineThe NvMedia IPP pipeline the component belongs to.
[in]componentTypeType of the component. Currently the following types are supported:
[in]bufferPoolsA NULL terminated list of pointers ponting to image group buffer pool parameters.
[in]componentConfigComponent specific configuration.
Returns
NvMediaIPPComponent The new IPP component's handle or NULL if unsuccessful.
NvMediaIPPComponent* NvMediaIPPComponentCreateNew ( NvMediaIPPPipeline ippPipeline,
NvMediaIPPComponentType  componentType,
NvMediaIPPBufferPoolParamsNew **  bufferPools,
void *  componentConfig 
)

Creates an IPP component object.

Parameters
[in]ippPipelineThe NvMedia IPP pipeline the component belongs to.
[in]componentTypeType of the component. Currently the following types are supported:
[in]bufferPoolsA NULL terminated list of pointers ponting to new buffer pool parameters.
[in]componentConfigComponent specific configuration.
Returns
NvMediaIPPComponent The new IPP component's handle or NULL if unsuccessful.
void NvMediaIPPComponentDestroy ( NvMediaIPPComponent ippComponent)

Destroys an IPP component object.

Parameters
[in]ippComponentThe IPP component object to destroy.
Returns
void
NvMediaStatus NvMediaIPPComponentGetOutput ( NvMediaIPPComponent component,
uint32_t  millisecondTimeout,
NvMediaIPPComponentOutput output 
)

Gets output from a component.

Only the NVMEDIA_IPP_COMPONENT_OUTPUT supports this functionaly.

Parameters
[in]componentComponent handle
[in]millisecondTimeoutTime-out in milliseconds. Use NVMEDIA_IMAGE_TIMEOUT_INFINITE for infinite timeout.
[out]outputOutput structure filed by the component.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_TIMED_OUT If the output is not received within millisecondTimeout time
NVMEDIA_STATUS_ERROR
NvMediaStatus NvMediaIPPComponentGetOutputImgGrp ( NvMediaIPPComponent component,
uint32_t  millisecondTimeout,
NvMediaIPPComponentOutputImgGrp output 
)

Gets image group output from a component.

Only the NVMEDIA_IPP_COMPONENT_OUTPUT supports this functionaly.

Parameters
[in]componentComponent handle
[in]millisecondTimeoutTime-out in milliseconds. Use NVMEDIA_IMAGE_TIMEOUT_INFINITE for infinite timeout.
[out]outputOutput structure filed by the component.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_TIMED_OUT If the output is not received within millisecondTimeout time
NVMEDIA_STATUS_ERROR
NvMediaStatus NvMediaIPPComponentReturnOutput ( NvMediaIPPComponent component,
NvMediaIPPComponentOutput output 
)

Returns output to a component.

Only the NVMEDIA_IPP_COMPONENT_OUTPUT supports this functionaly. This function must be called for each output structure received by NvMediaIPPComponentGetOutput.

Parameters
[in]componentComponent handle.
[in]outputOutput structure to be returned.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_ERROR
NvMediaStatus NvMediaIPPComponentReturnOutputImgGrp ( NvMediaIPPComponent component,
NvMediaIPPComponentOutputImgGrp output 
)

Returns image group output to a component.

Only the NVMEDIA_IPP_COMPONENT_OUTPUT supports this functionaly. This function must be called for each output structure received by NvMediaIPPComponentGetOutput.

Parameters
[in]componentComponent handle.
[in]outputOutput structure to be returned.
Returns
NvMediaStatus The completion status of the operation. Possible values are:
NVMEDIA_STATUS_OK
NVMEDIA_STATUS_ERROR
NvMediaStatus NvMediaIPPMetadataGet ( void *  metadata,
NvMediaIPPMetadataType  type,
void *  buffer,
uint32_t  size 
)

Gets the data of the specified metadata type.

Parameters
[in]metadataThe buffer holding the metadata.
[in]typeType of the requested metadata.
[out]bufferDestionation buffer.
[in]sizeThe size of the requested type.
Returns
NvMediaStatus. NVMEDIA_STATUS_OK or NVMEDIA_STATUS_ERROR if the size does not match the returned size from NvMediaIPPMetadataGetSize().
NvMediaStatus NvMediaIPPMetadataGetAddress ( void *  metadata,
NvMediaIPPMetadataType  type,
void **  buffer,
uint32_t *  size 
)

Gets the address of the data of the specified metadata type.

Parameters
[in]metadataThe buffer holding the metadata.
[in]typeType of the requested metadata.
[out]bufferThe pointer inside the metadata. This pointer is filled by this function.
[out]sizePointer to the size of the requested type filled by this function.
Returns
NvMediaStatus. NVMEDIA_STATUS_OK or NVMEDIA_STATUS_ERROR
uint32_t NvMediaIPPMetadataGetSize ( void *  metadata,
NvMediaIPPMetadataType  type 
)

Gets the size of the specified metadata type.

Parameters
[in]metadataThe buffer holding metadata.
[in]typeType of the requested metadata.
Returns
uint32_t. The size.