NVIDIA DRIVE OS Linux API Reference

5.1.0.2 Release

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

Detailed Description

Defines IPP manager-related structures and functions.

Typedefs

typedef NvMediaStatus NvMediaIPPGetAbsoluteGlobalTime (void *clientContext, NvMediaGlobalTime *timeValue)
 Defines the global time callback function prototype. More...
 

Functions

NvMediaIPPManagerNvMediaIPPManagerCreate (uint32_t versionInfo, NvMediaDevice *device)
 Allocates an Image Processing Pipeline manager object. More...
 
void NvMediaIPPManagerDestroy (NvMediaIPPManager *ippManager)
 Destroys an IPP manager object. More...
 
NvMediaStatus NvMediaIPPManagerSetTimeSource (NvMediaIPPManager *ippManager, void *clientContext, NvMediaIPPGetAbsoluteGlobalTime getAbsoluteGlobalTime)
 Sets the callback function for image time-stamping. More...
 

Typedef Documentation

typedef NvMediaStatus NvMediaIPPGetAbsoluteGlobalTime(void *clientContext, NvMediaGlobalTime *timeValue)

Defines the global time callback function prototype.

The client must create a function with the same function signature.

Parameters
clientContextThe client context that was passed to NvMediaIPPManagerSetTimeSource().
timeValueA pointer to the location where the callback is to write the absolute global time, a 64-bit number measured in microseconds.

Definition at line 463 of file nvmedia_ipp.h.

Function Documentation

NvMediaIPPManager* NvMediaIPPManagerCreate ( uint32_t  versionInfo,
NvMediaDevice device 
)

Allocates an Image Processing Pipeline manager object.

The object is a container for all of the pipelines created with its handle.

Parameters
[in]versionInfoSet to NVMEDIA_IPP_VERSION_INFO. Used to determine the version of the API with which the client application was compiled. If the application and NvMedia IPP library have different version numbers, the function returns NULL, and the client application must be recompiled with the latest library and header files.
[in]deviceA pointer to the already created NvMediaDevice.
Returns
NvMediaIPPManager, the new IPP manager's handle if successful, or NULL otherwise.
void NvMediaIPPManagerDestroy ( NvMediaIPPManager ippManager)

Destroys an IPP manager object.

Parameters
[in]ippManagerA pointer to the IPP manager object to destroy.
Returns
void
NvMediaStatus NvMediaIPPManagerSetTimeSource ( NvMediaIPPManager ippManager,
void *  clientContext,
NvMediaIPPGetAbsoluteGlobalTime  getAbsoluteGlobalTime 
)

Sets the callback function for image time-stamping.

NvMedia IPP does not have access to an internal time source sufficient for absolute global timestamping. The client application can establish a callback function to provide an absolute global time. When the capture component receives a frame, it calls this callback function and applies the timestamp to the image. You may call NvMediaIPPManagerSetTimeSource() after creating the NvMedia IPP manager.

If the application does not establish a callback function, NvMedia IPP uses the kernel-based timestamp obtained from ktime_get_ts() to get the clock monotonic time.

Parameters
[in]ippManagerA pointer to the IPP manager object.
[in]clientContextContext of the caller application. If not
[in]getAbsoluteGlobalTimeA pointer to a function that returns the absolute global time. If not needed, set to NULL.
Returns
NvMediaStatus, the completion status of the operation: NVMEDIA_STATUS_OK if successful, or NVMEDIA_STATUS_ERROR otherwise.