NVIDIA DRIVE OS Linux API Reference

5.1.3.0 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvmedia_ipp.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2014-2018, NVIDIA CORPORATION. All rights reserved. All
3  * information contained herein is proprietary and confidential to NVIDIA
4  * Corporation. Any use, reproduction, or disclosure without the written
5  * permission of NVIDIA Corporation is prohibited.
6  */
7 
16 #ifndef _NVMEDIA_IPP_H
17 #define _NVMEDIA_IPP_H
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #include "nvmedia_core.h"
24 #include "nvmedia_surface.h"
25 #include "nvmedia_image.h"
26 #include "nvmedia_icp.h"
27 #include "nvmedia_isc.h"
28 #include "nvmedia_isp_legacy.h"
29 
54 #define NVMEDIA_IPP_VERSION_MAJOR 2u
55 
56 #define NVMEDIA_IPP_VERSION_MINOR 17u
57 
58 #define NVMEDIA_IPP_VERSION_INFO (((uint8_t)'N' << 24) | ((uint8_t)'V' << 16) | (NVMEDIA_IPP_VERSION_MAJOR << 8) | NVMEDIA_IPP_VERSION_MINOR)
59 
63 typedef void NvMediaIPPManager;
64 
69 #define NVMEDIA_MAX_COMPONENTS_PER_PIPELINE 32
70 
75 #define NVMEDIA_MAX_PIPELINES_PER_MANAGER 16
76 
80 typedef void NvMediaIPPPipeline;
81 
85 typedef void NvMediaIPPComponent;
86 
91 typedef enum {
97 
102 typedef enum {
118 
120 #define NVMEDIA_IPP_STREAM_MAX_TYPES 2
121 
125 typedef struct {
127  uint32_t frameId;
129  uint32_t cameraId;
135  uint64_t frameCaptureTSC;
140 
151 typedef enum
152 {
162 
166 typedef enum
167 {
175 
179 typedef struct
180 {
182  float_t array[4][4];
184 
188 typedef enum
189 {
202 
206 typedef enum
207 {
220 
231 typedef struct
232 {
235 
240 
243 
246 
249 
251  float_t ispDigitalGain;
253 
257 typedef struct
258 {
261 
267 
270 
275 
277  float_t ispDigitalGain;
278 
280  float_t brightness;
281 
283  uint32_t awbCCT;
284 
287 
291 
295 #define NVMEDIA_IPP_MAX_KNEEPOINTS 24
296 
300 typedef struct
301 {
303  NvMediaISPSize activeArraySize;
304 
307 
309  unsigned int numKneePoints;
310 
313 
317 
319 
323 typedef enum {
356 
360 typedef struct {
364  void *value;
366 
380  NvMediaIPPPipeline *ippPipeline,
381  uint32_t numProperties,
382  NvMediaIPPPipelineProperty *properties);
383 
397 typedef struct {
401 
412  NvMediaIPPVersionInfo *versionInfo
413 );
414 
438 NvMediaIPPManager *
440  uint32_t versionInfo,
441  NvMediaDevice *device
442 );
443 
449 void
451  NvMediaIPPManager *ippManager
452 );
453 
464  void *clientContext,
465  NvMediaGlobalTime *timeValue);
466 
492  NvMediaIPPManager *ippManager,
493  void *clientContext,
494  NvMediaIPPGetAbsoluteGlobalTime getAbsoluteGlobalTime
495 );
510 NvMediaIPPPipeline *
512  NvMediaIPPManager *ippManager
513 );
514 
522 void
524  NvMediaIPPPipeline *ippPipeline
525 );
526 
538  NvMediaIPPPipeline *ippPipeline
539 );
540 
544 typedef enum {
562 
566 typedef struct {
577 
590  void *clientContext,
591  NvMediaIPPComponentType componentType,
592  NvMediaIPPComponent *ippComponent,
593  NvMediaIPPEventType eventType,
594  NvMediaIPPEventData *eventData);
595 
617  NvMediaIPPManager *ippManager,
618  void *clientContext,
619  NvMediaIPPEventCallback eventCallback
620 );
621 
639  NvMediaIPPPipeline *ippPipeline
640 );
641 
658  NvMediaIPPPipeline *ippPipeline
659 );
660 
672  NvMediaIPPPipeline *ippPipeline,
673  NvMediaIPPPropertyControls *controlProperties
674 );
675 
688  NvMediaIPPPipeline *ippPipeline,
689  NvMediaIPPPropertyStatic *staticProperties
690 );
691 
704  NvMediaIPPPipeline *ippPipeline,
705  NvMediaIPPPropertyControls *defaultControlsProperties
706 );
707 
719 typedef void NvMediaIPPPlugin;
720 
724 typedef struct
725 {
728  union {
729  struct {
731  NvMediaISPStatsHistogramMeasurement *histogramStats[2];
733  NvMediaISPStatsLacMeasurementV4 *lacStats[2];
735  NvMediaISPStatsFlickerBandMeasurement *flickerBandStats;
736  } v4;
737  struct {
739  NvMediaISPStatsHistogramMeasurementV5 *histogramStats[2];
741  NvMediaISPStatsLacMeasurementV5 *lacStats[2];
743  NvMediaISPStatsFlickerBandMeasurementV5 *flickerBandStats;
744  } v5;
745  };
747 
751 typedef struct
752 {
764  NvMediaISCWBGainControl whiteBalanceGainControl[2];
774  float_t brightness;
776 
780 typedef struct
781 {
782  union {
783  struct {
786  NvMediaBool histogramSettingsValid[2];
790  NvMediaISPStatsHistogramSettingsV4 histogramSettings[2];
793  NvMediaBool lacSettingsValid[2];
797  NvMediaISPStatsLacSettingsV4 lacSettings[2];
804  NvMediaISPStatsFlickerBandSettingsV4 flickerBandSettings;
805  } v4;
806  struct {
809  NvMediaBool histogramSettingsValid[2];
813  NvMediaISPStatsHistogramSettingsV5 histogramSettings[2];
816  NvMediaBool lacSettingsValid[2];
820  NvMediaISPStatsLacSettingsV5 lacSettings[2];
823  NvMediaBool flickerBandSettingsValid;
827  NvMediaISPStatsFlickerBandSettingsV5 flickerBandSettings;
828  } v5;
829  };
831 
835 #define NVMEDIA_IPP_MAX_EXPOSURE_SETS 8
836 
840 typedef struct
841 {
857  NvMediaISCWBGainControl whiteBalanceGainControl[2];
866  float_t ispDigitalGain;
870  float_t awbCCT;
872 
888  NvMediaIPPComponent *parentControlAlgorithmHandle,
890  uint32_t size,
891  void *attribute);
892 
900 typedef struct
901 {
905 
931  NvMediaIPPComponent *parentControlAlgorithmHandle,
932  NvMediaIPPPluginSupportFuncs *supportFunctions,
933  NvMediaIPPPropertyStatic *staticProperties,
934  void *clientContext,
935  NvMediaIPPPlugin **pluginHandle,
936  NvMediaIPPISPVersion ispVersion);
937 
947  NvMediaIPPPlugin *pluginHandle);
948 
966  NvMediaIPPPlugin *pluginHandle,
967  NvMediaIPPPluginInput *pluginInput,
968  NvMediaIPPPluginOutputEx *pluginOutput);
974 typedef struct
975 {
983 
996 typedef enum {
1008 
1013 typedef struct {
1017  uint32_t poolBuffersNum;
1019  uint32_t width;
1021  uint32_t height;
1030  uint32_t imagesCount;
1032 
1037 typedef struct {
1041  uint32_t poolBuffersNum;
1044  struct {
1058  } imageConfig[NVMEDIA_MAX_IMAGE_GROUP_SIZE];
1062 
1066 typedef struct {
1071  uint32_t siblingsNum;
1073 
1091  void *clientContext,
1092  NvMediaImageGroup *imageGroup
1093 );
1094 
1098 typedef struct {
1106  uint32_t siblingsNum;
1108 
1112 typedef struct {
1115 
1119 #define NVMEDIA_IPP_ISP_OUTPUT2_MODE_MASK (7 << 4)
1120 #define NVMEDIA_IPP_ISP_OUTPUT2_MODE_NONE 0
1121 
1126 typedef enum {
1142 
1146 typedef struct {
1148  NvMediaISPSelect ispSelect;
1151  uint32_t ispSettingAttr;
1153 
1157 typedef struct {
1159  uint32_t width;
1161  uint32_t height;
1169  /* Holds client context passed to plugin Control Algorithm. */
1174 
1178 typedef enum {
1205 
1212 uint32_t
1214  void *metadata,
1216 );
1217 
1231  void *metadata,
1233  void *buffer,
1234  uint32_t size);
1235 
1252  void *metadata,
1254  void **buffer,
1255  uint32_t *size);
1256 
1287 NvMediaIPPComponent *
1289  NvMediaIPPPipeline *ippPipeline,
1290  NvMediaIPPComponentType componentType,
1291  NvMediaIPPBufferPoolParamsNew **bufferPools,
1292  void *componentConfig
1293 );
1294 
1320 NvMediaIPPComponent *
1322  NvMediaIPPPipeline *ippPipeline,
1323  NvMediaIPPComponentType componentType,
1324  NvMediaIPPBufferPoolParamsImgGrp **bufferPools,
1325  void *componentConfig
1326 );
1327 
1345  NvMediaIPPPipeline *ippPipeline,
1346  NvMediaIPPComponent *ippComponent);
1347 
1365  NvMediaIPPPipeline *ippPipeline,
1366  NvMediaIPPComponent *srcComponent,
1367  NvMediaIPPComponent *dstComponent,
1368  NvMediaIPPPortType portType
1369 );
1370 
1374 typedef struct {
1377  void *metadata;
1379  uint32_t metadataSize;
1381 
1404  NvMediaIPPComponent *component,
1405  uint32_t millisecondTimeout,
1407 );
1408 
1435  NvMediaIPPComponent *component,
1437 );
1438 
1442 typedef struct {
1445  void *metadata;
1447  uint32_t metadataSize;
1449 
1466  NvMediaIPPComponent *component,
1467  uint32_t millisecondTimeout,
1469 );
1470 
1484  NvMediaIPPComponent *component,
1486 );
1487 
1499 void
1501  NvMediaIPPComponent *ippComponent
1502 );
1505 /*
1506  * \defgroup history_ipp History
1507  * Provides change history for the NvMedia Image Processing Pipeline API.
1508  *
1509  * \section history_ipp Version History
1510  *
1511  * <b> Version 1.0 </b> July 8, 2014
1512  * - Initial release
1513  *
1514  * <b> Version 1.1 </b> November 4, 2014
1515  * - Added IPP control, static and dynamic properties
1516  *
1517  * <b> Version 1.2 </b> January 15, 2015
1518  * - Added fileLoopBackCount to FileReader ComponentConfig
1519  *
1520  * <b> Version 1.3 </b> January 16, 2015
1521  * - Added plugin Control Algorithm related functions and structures
1522  * - Renamed Camera Driver to Control Algorithm
1523  * - Added version information to IPP manager create API
1524  *
1525  * <b> Version 1.4 </b> January 28, 2015
1526  * - Added metadata to NvMediaIPPComponentOutput
1527  *
1528  * <b> Version 1.5 </b> February 27, 2015
1529  * - Fixed a typo in NvMediaIPPCompandingControl
1530  * - Changed pointers in NvMediaIPPPluginOutput to the actual types.
1531  *
1532  * <b> Version 1.6 </b> March 25, 2015
1533  * - Removed list of sensor modes from NvMediaIPPPropertyStatic
1534  *
1535  * <b> Version 1.7 </b> March 26, 2015
1536  * - Added global time-stamp to info structure
1537  * - Changed the \ref NvMediaIPPGetAbsoluteGlobalTime to use 64-bit
1538  * microsecond based time-stamp.
1539  *
1540  * <b> Version 1.8 </b> March 30, 2015
1541  * - Added NVMEDIA_IPP_PORT_IMAGE_CAPTURE_X capture ports
1542  *
1543  * <b> Version 1.9 </b> April 14, 2015
1544  * - Added \ref NvMediaIPPStreamType.
1545  * - Changed \ref NvMediaIPPPluginInput to have separate stats data for
1546  * different streams.
1547  * - Changed \ref NvMediaIPPPluginOutput to have separate settings for different
1548  * streams.
1549  *
1550  * <b> Version 1.10 </b> April 23, 2015
1551  * - Added reserved member to \ref NvMediaIPPLensShadingControl structure to
1552  * resolve C and C++ structure size differences.
1553  *
1554  * <b> Version 1.11 </b> April 29, 2015
1555  * - Removed dynamicProperties from \ref NvMediaIPPPluginOutput structure
1556  * - Added aeLock, aeState, awbLock & awbState in \ref NvMediaIPPPluginOutput
1557  * structure.
1558  *
1559  * <b> Version 1.12 </b> May 26, 2015
1560  * - Updated \ref NvMediaIPPEventCallback callback API
1561  *
1562  * <b> Version 1.13 </b> June 16, 2015
1563  * - Added port type NVMEDIA_IPP_PORT_IMAGE_CAPTURE_AGGREGATE
1564  * - Added metadataFileName to \ref NvMediaIPPFileWriterComponentConfig
1565  *
1566  * <b> Version 1.14 </b> July 17, 2015
1567  * - Added iscSensorDevice to \ref NvMediaIPPFileReaderComponentConfig,
1568  * \ref NvMediaIPPIcpComponentConfig and
1569  * \ref NvMediaIPPControlAlgorithmComponentConfig.
1570  *
1571  * <b> Version 1.15 </b> September 4, 2015
1572  * - Added sensorMode to \ref NvMediaIPPExposureControl
1573  *
1574  * <b> Version 1.16 </b> September 4, 2015
1575  * - Added NVMEDIA_IPP_EVENT_WARNING_CAPTURE_RECOVERY to
1576  * \ref NvMediaIPPEventType.
1577  *
1578  * <b> Version 1.17 </b> December 8, 2015
1579  * - Removed ISP control functions.
1580  * - Added ISP version 4 support.
1581  *
1582  * <b> Version 1.18 </b> January 7, 2016
1583  * - Added ChannelGainRatio (Gain ratio between exposure channels).
1584  *
1585  * <b> Version 1.19 </b> January 27, 2016
1586  * - Added \ref NvMediaIPPPropertyStatic to \ref NvMediaIPPPluginInput.
1587  *
1588  * <b> Version 1.20 </b> Jan 27, 2016
1589  * - Added firstRun flag to \ref NvMediaIPPPluginInput.
1590  *
1591  * <b> Version 1.21 </b> March 11, 2016
1592  * - Increased maximum IPP pipelines in IPP manager to 12.
1593  *
1594  * <b> Version 1.22 </b> March 28, 2016
1595  * - Added NVMEDIA_IPP_EVENT_ERROR_I2C_TRANSMISSION_FAILURE event type.
1596  *
1597  * <b> Version 1.23 </b> March 29, 2016
1598  * - Added \ref NVMEDIA_IPP_MAX_LTM_DATA_SIZE define for max LTM data size.
1599  *
1600  * <b> Version 1.24 </b> May 3, 2016
1601  * - Added \ref NvMediaIPPIspAttrFlags to \ref NvMediaIPPIspComponentConfig.
1602  *
1603  * <b> Version 1.25 </b> May 4, 2016
1604  * - Added ModuleConfig to static properties
1605  *
1606  * <b> Version 1.26 </b> May 11, 2016
1607  * - Changed \ref NvMediaIPPImageInformation frameSequenceNumber type to
1608  * unsigned int.
1609  *
1610  * <b> Version 1.27 </b> May 23, 2016
1611  * - Added NVMEDIA_IPP_EVENT_WARNING_CSI_DISCONTINUITY to
1612  * \ref NvMediaIPPEventType.
1613  *
1614  * <b> Version 1.28 </b> June 16, 2016
1615  * - Added NVMEDIA_IPP_COMPONENT_CAPTURE_EX component for virtual channels
1616  * capture support.
1617  *
1618  * <b> Version 1.29 </b> June 24, 2016
1619  * - Added \ref NvMediaIPPPipelineSetProperties new API to set pipeline
1620  * properties.
1621  *
1622  * <b> Version 1.30 </b> June 29, 2016
1623  * - Added \ref NvMediaIPPPluginProcessExFunc new plugin process function for
1624  * bracketed exposure.
1625  *
1626  * <b> Version 1.31 </b> July 18, 2016
1627  * - Added support for event based capture \ref NvMediaIPPPipelineSingleCapture.
1628  *
1629  * <b> Version 1.32 </b> September 12, 2016
1630  * - Added \ref NVMEDIA_IPP_PIPELINE_PROPERTY_SETTINGS_DELAY property to support
1631  * sensor without embedded lines
1632  *
1633  * <b> Version 1.33 </b> October 10, 2016
1634  * - Added new support function for getting sensor attributes
1635  * \ref NvMediaIPPGetSensorAttr.
1636  *
1637  * <b> Version 1.34 </b> February 3, 2017
1638  * - Added \ref NVMEDIA_IPP_METADATA_EMBEDDED_DATA_ISC for ISC embedded data
1639  * inside \ref NvMediaIPPMetadataType.
1640  *
1641  * <b> Version 1.35 </b> March 10, 2017
1642  * - Added capture error info in \ref NvMediaIPPEventData
1643  * - Added new event type for CSI input stream error in \ref NvMediaIPPEventType
1644  *
1645  * <b> Version 1.36 </b> March 31, 2017
1646  * - Removed ISP stats version 3 support from
1647  * \ref NvMediaIPPPluginOutputStreamSettings
1648  * and \ref NvMediaIPPPluginInputStreamData.
1649  *
1650  * <b> Version 1.37 </b> April 13, 2017
1651  * - Fixed violation MISRA-C rule 10.1 in NVMEDIA_IPP_VERSION_INFO macro.
1652  *
1653  * <b> Version 2.00 </b> April 27, 2017
1654  * - Removed PRE_PROCESSING, POST_PROCESSING & DISPLAY components
1655  * - Removed ipaDevice argument from \ref NvMediaIPPManagerCreate
1656  * - Removed iscSensorDevice & registerImageBuffersWithIPA from CAPTURE &
1657  * FILE_READER component config.
1658  * - Removed iscRootDevice, iscAggregatorDevice & iscSerializerDevice from ISC
1659  * component config.
1660  * - Removed ispSettingsFile & registerImageBuffersWithIPA from ISP component
1661  * config.
1662  * - Removed logging callback \ref NvMediaIPPPluginSupportFuncs
1663  * - Removed parseConfigurationFunc from \ref NvMediaIPPPluginFuncs
1664  * - Removed IPP session related APIs. Use
1665  * \ref NvMediaIPPPipelineApplyControlProperties to apply control properties.
1666  * - Removed unused data structures & enums
1667  * - Removed captureIntent, aeExposureCompensation, requestId from
1668  * \ref NvMediaIPPPropertyControls.
1669  * - Removed exposureTimeRange from \ref NvMediaIPPPropertyControls use
1670  * GetSensorAttr API to get the exposure time range.
1671  * - Removed companding control from \ref NvMediaIPPPluginInput.
1672  * - Removed lens shading from \ref NvMediaIPPPluginOutput &
1673  * \ref NvMediaIPPPluginOutputEx.
1674  * - Removed ISP stats version 3 support from
1675  * \ref NvMediaIPPPluginOutputStreamSettings
1676  and \ref NvMediaIPPPluginInputStreamData.
1677  *
1678  * <b> Version 2.01 </b> May 5, 2017
1679  * - Removed NvMediaICPInterfaceFormat from \ref NvMediaIPPIcpComponentConfig
1680  *
1681  * <b> Version 2.02 </b> April 27, 2017
1682  * - Replaced NvMediaIPPExposureControl with NvMediaISCExposureControl
1683  - ISP digital gain is added in impacted plugin structures
1684  - Sensor mode & hdrRatio have been removed
1685  * - Replaced NvMediaIPPWBGainControl use NvMediaISCWBGainControl
1686  * - Removed NvMediaIPPSensorExposureMode use NvMediaISCExposureMode
1687  * - Removed notion of human & machine vision streams
1688  * - Removed NvMediaIPPCameraSensorMode
1689  - ActiveArraySize is added in NvMediaIPPPropertyStatic
1690  - For frame rate use GetSensorAttr API
1691  - Suface type have been removed
1692  * - Removed AE & AWB lock flags
1693  * - Removed valid flag for color correction
1694  * - Removed requestId from NvMediaIPPPropertyDynamic
1695  * - Removed sensorCFA from NvMediaIPPPropertyStatic
1696  * - Removed exposure time range & sensor analog gain range &
1697  channelGainRaio from NvMediaIPPPropertyStatic use GetSensorAttr API
1698  *
1699  * <b> Version 2.03 </b> May 15, 2017
1700  * - Added deprecated warning message for \ref NvMediaIPPComponentCreate
1701  *
1702  * <b> Version 2.04 </b> May 23, 2017
1703  * - Replaced NvMediaIPPEmbeddedDataInformation with
1704  * \ref NvMediaISCEmbeddedDataBuffer.
1705  * - Removed frameCaptureTimeStamp from NvMediaIPPImageInformation
1706  * - Removed AE & AWB modes and replaced with NvMediaBool
1707  * - Removed unused event types.
1708  * - Removed NVMEDIA_IPP_PORT_IMAGE_CAPTURE_* ports use Image ports
1709  * - Renamed NVMEDIA_IPP_COMPONENT_CAPTURE to NVMEDIA_IPP_COMPONENT_ICP
1710  * - Renamed NVMEDIA_IPP_COMPONENT_CONTROL_ALGORITHM to
1711  * NVMEDIA_IPP_COMPONENT_ALG.
1712  * - Renamed NVMEDIA_IPP_COMPONENT_SENSOR_CONTROL to NVMEDIA_IPP_COMPONENT_ISC.
1713  * - Renamed NVMEDIA_IPP_COMPONENT_CAPTURE_EX to NVMEDIA_IPP_COMPONENT_ICP.
1714  * - Changed \ref NvMediaIPPPluginInputStreamData &
1715  * \ref NvMediaIPPPluginOutputStreamSettings to have union for all stats.
1716  *
1717  * <b> Version 2.05 </b> May 17, 2017
1718  * - Added companding params in \ref NvMediaIPPPropertyStatic.
1719  * - Added brightness value in \ref NvMediaIPPPluginInputEx.
1720  * - Added awbCCT value in \ref NvMediaIPPPluginOutputEx.
1721  * - Renamed CurrentSceneLux to brightness in \ref NvMediaIPPPropertyDynamic.
1722  * - Changed whiteBalanceGainControl to be an array of two in
1723  * \ref NvMediaIPPPluginOutputEx.
1724  * - Removed \ref NvMediaIPPPluginOutput struct and processFunc in
1725  * \ref NvMediaIPPPluginFuncs.
1726  * - Added useBracketedExp flag in \ref NvMediaIPPPluginInputEx.
1727  *
1728  * <b> Version 2.06 </b> June 27, 2017
1729  * - Added file read callback functions
1730  *
1731  * <b> Version 2.07 </b> July 28, 2017
1732  * - Removed deprecated file writer component
1733  *
1734  * <b> Version 2.08 </b> Aug 17, 2017
1735  * - Add ISP Version 5 Stats structs to Plugin Interface
1736  * - Update NvMediaIPPISPVersion enum to add NVMEDIA_IPP_ISP_VERSION_5
1737  *
1738  * <b> Version 2.09 </b> August 25, 2017
1739  * - Add new APIs to support \ref NvMediaImageGroup.
1740  *
1741  * <b> Version 2.10 </b> September 05, 2017
1742  * - Add colorCorrectionsMatrixRec2020 in \ref NvMediaIPPPluginOutputEx.
1743  *
1744  * <b> Version 2.11 </b> September 07, 2017
1745  * - Add new attribute flags in \ref NvMediaIPPIspAttrFlags.
1746  *
1747  * <b> Version 2.12 </b> September 12, 2017
1748  * - Deprecated \ref NvMediaIPPBufferPoolParams, \ref NvMediaIPPComponentCreate
1749  *
1750  * <b> Version 2.13 </b> September 14, 2017
1751  * - Added frameCaptureTimeBase member to \ref NvMediaIPPImageinformation
1752  *
1753  * <b> Version 2.14 </b> September 25, 2017
1754  * - Add new ISP attribute flags in \ref NvMediaIPPIspAttrFlags.
1755  *
1756  * <b> Version 2.15 </b> October 13, 2017
1757  * - Remove NVMEDIA_IPP_METADATA_LTM_DATA metadata enum
1758  * - Remove NVMEDIA_IPP_MAX_LTM_DATA_SIZE define
1759  *
1760  * <b> Version 2.16 </b> January 19, 2018
1761  * - Added frameCaptureTSC for TSC value in \ref NvMediaIPPImageinformation
1762  *
1763  * <b> Version 2.17 </b> November 2, 2018
1764  * - Updated Maximum number of IPP Pipelines in IPP pipeline manager from 12 to 16.
1765  * - Fix comments associated with NVMEDIA_MAX_PIPELINES_PER_MANAGER
1766  * & NVMEDIA_MAX_COMPONENTS_PER_PIPELINE
1767  *
1768  */
1771 #ifdef __cplusplus
1772 }; /* extern "C" */
1773 #endif
1774 
1775 #endif /* _NVMEDIA_IPP_H */
Indicates auto exposure has timed out searching for a good set of values for the current scene...
Definition: nvmedia_ipp.h:200
NvMediaStatus NvMediaIPPManagerSetTimeSource(NvMediaIPPManager *ippManager, void *clientContext, NvMediaIPPGetAbsoluteGlobalTime getAbsoluteGlobalTime)
Sets the callback function for image time-stamping.
NvMediaIPPluginCreateFunc * createFunc
A pointer to the Plugin Control Algorithm Create function.
Definition: nvmedia_ipp.h:977
A handle representing image objects.
Definition: nvmedia_image.h:75
void NvMediaIPPPipelineDestroy(NvMediaIPPPipeline *ippPipeline)
Destroys an IPP pipeline object and all components created with the handle.
Specifies the settings delay (in number of frames) from the time when the sensor is programmed...
Definition: nvmedia_ipp.h:354
#define NVMEDIA_IPP_STREAM_MAX_TYPES
Maximum number of streams.
Definition: nvmedia_ipp.h:120
#define NvMediaSurfaceType
Defines the set of NvMedia surface types.
NvMediaStatus NvMediaIPPComponentReturnOutput(NvMediaIPPComponent *component, NvMediaIPPComponentOutput *output)
Returns output to a component.
Holds a 4x4 matrix of floats.
Definition: nvmedia_ipp.h:179
void NvMediaIPPManager
A handle representing IPP manager object.
Definition: nvmedia_ipp.h:63
float_t ispDigitalGain
Holds digital gain applied in ISP.
Definition: nvmedia_ipp.h:277
Holds the embedded data buffer structure.
Definition: nvmedia_isc.h:1388
void NvMediaIPPPipeline
A handle representing IPP pipeline object.
Definition: nvmedia_ipp.h:80
Specifies the bottom embedded line whose size and base register are defined by the size and baseRegAd...
Definition: nvmedia_ipp.h:1201
NvMediaIPPIspAttrFlags
Specifies IPP ISP attribute flags.
Definition: nvmedia_ipp.h:1126
uint32_t poolBuffersNum
Holds number of pool buffer elements.
Definition: nvmedia_ipp.h:1017
Indicates the second ISP output mode 3 is selected.
Definition: nvmedia_ipp.h:1136
NvMediaISCDevice * iscSensorDevice
Holds an ISC sensor device handle used to get sensor properties.
Definition: nvmedia_ipp.h:1172
NvMediaIPPAwbState awbState
Holds the auto white balance state.
Definition: nvmedia_ipp.h:852
NvMediaISCDevice * iscSensorDevice
Definition: nvmedia_ipp.h:1113
NvMediaISPStatsFlickerBandMeasurement * flickerBandStats
A pointer to flicker band statistics.
Definition: nvmedia_ipp.h:735
uint32_t numSurfAllocAttrs
Holds number of surface allocation attributes.
Definition: nvmedia_ipp.h:1028
NvMediaIPPMathFloatMatrix colorCorrectionMatrix
Holds color correction matrix.
Definition: nvmedia_ipp.h:286
uint32_t NvMediaBool
A boolean value, holding NVMEDIA_TRUE or NVMEDIA_FALSE.
Definition: nvmedia_core.h:79
NvMediaStatus NvMediaIPPPipelineApplyControlProperties(NvMediaIPPPipeline *ippPipeline, NvMediaIPPPropertyControls *controlProperties)
Applies control properties to the pipeline.
Indicates illuminant frequency of 50 Hz.
Definition: nvmedia_ipp.h:171
NvMediaICPErrorInfo captureErrorInfo
Holds capture error information.
Definition: nvmedia_ipp.h:575
Holds image capture settings for the CSI format.
Definition: nvmedia_icp.h:184
void * clientContext
Holds context of the client, or NULL.
Definition: nvmedia_ipp.h:1100
Indicates a NON-HDR ISP pipeline must be set in the ISP component.
Definition: nvmedia_ipp.h:1128
void NvMediaIPPEventCallback(void *clientContext, NvMediaIPPComponentType componentType, NvMediaIPPComponent *ippComponent, NvMediaIPPEventType eventType, NvMediaIPPEventData *eventData)
Defines a function prototype for event callbacks.
Definition: nvmedia_ipp.h:589
Indicates auto white balance is off.
Definition: nvmedia_ipp.h:209
Specifies flicker correction to 50Hz mode.
Definition: nvmedia_ipp.h:156
NvMediaIPPPluginProcessExFunc * processExFunc
A pointer to Plugin Control Algorithm Process function.
Definition: nvmedia_ipp.h:981
Specifies statistics port 1.
Definition: nvmedia_ipp.h:1002
Indicates the second ISP output mode 5 is selected.
Definition: nvmedia_ipp.h:1140
Holds the Control Algorithm plugin function descriptor.
Definition: nvmedia_ipp.h:974
uint32_t imagesCount
Holds images count.
Definition: nvmedia_ipp.h:1030
Holds dynamic properties associated with the camera.
Definition: nvmedia_ipp.h:257
uint32_t numSurfAllocAttrs
Holds number of surface allocation attributes.
Definition: nvmedia_ipp.h:1051
uint32_t width
Holds image width.
Definition: nvmedia_ipp.h:1159
Specifies ISP version 5.
Definition: nvmedia_ipp.h:95
void NvMediaIPPPlugin
Holds an opaque handle representing a Control Algorithm plugin.
Definition: nvmedia_ipp.h:719
NvMediaIPPComponentType
Specifies IPP component types.
Definition: nvmedia_ipp.h:102
uint32_t siblingsNum
Holds the number of sibling images per captured frame.
Definition: nvmedia_ipp.h:1071
NVIDIA Media Interface: Surface Handling
Specifies event error: CSI input stream error.
Definition: nvmedia_ipp.h:560
Specifies event info: One frame captured.
Definition: nvmedia_ipp.h:550
Holds Control Algorithm plugin output parameters for bracketed exposure.
Definition: nvmedia_ipp.h:840
NvMediaISCWBGainControl wbGains
Holds white balance color correction gains.
Definition: nvmedia_ipp.h:245
NvMediaISCExposureControl exposureControl
Holds sensor exposure time and sensor gain for each sensor exposure mode.
Definition: nvmedia_ipp.h:239
NvMediaIPPPipelinePropertyType
Defines IPP pipeline property types.
Definition: nvmedia_ipp.h:323
NVIDIA Media Interface: Image Processing
NvMediaStatus NvMediaIPPComponentReturnOutputImgGrp(NvMediaIPPComponent *component, NvMediaIPPComponentOutputImgGrp *output)
Returns image group output to a component.
NvMediaIPPPortType portType
Holds port type associated with the pool.
Definition: nvmedia_ipp.h:1039
Specifies the capture component.
Definition: nvmedia_ipp.h:104
NvMediaISCSensorAttrType
ISC sensor attributes.
Definition: nvmedia_isc.h:554
Holds a location on a 2-dimensional object.
Definition: nvmedia_core.h:160
NvMediaStatus NvMediaIPPluginCreateFunc(NvMediaIPPComponent *parentControlAlgorithmHandle, NvMediaIPPPluginSupportFuncs *supportFunctions, NvMediaIPPPropertyStatic *staticProperties, void *clientContext, NvMediaIPPPlugin **pluginHandle, NvMediaIPPISPVersion ispVersion)
Creates a Plugin Control Algorithm callback.
Definition: nvmedia_ipp.h:930
NvMediaStatus NvMediaIPPGetAbsoluteGlobalTime(void *clientContext, NvMediaGlobalTime *timeValue)
Defines the global time callback function prototype.
Definition: nvmedia_ipp.h:463
float_t awbCCT
Holds CCT estimated by plugin.
Definition: nvmedia_ipp.h:870
NvMediaIPPImgGrpReadCallback imageGroupReadCallback
Holds a callback function for accepting an image from NvMedia IPP client.
Definition: nvmedia_ipp.h:1103
Holds Control Algorithm plugin input parameters.
Definition: nvmedia_ipp.h:751
uint64_t frameCaptureTSC
Specifies the frame capture TSC.
Definition: nvmedia_ipp.h:135
float_t ispDigitalGain
Holds ISP digital gain calculated by the plugin control algorithm.
Definition: nvmedia_ipp.h:866
NvMediaStatus(* NvMediaIPPImgGrpReadCallback)(void *clientContext, NvMediaImageGroup *imageGroup)
Defines the prototype for the file-reader image-read callback function.
Definition: nvmedia_ipp.h:1090
#define NVMEDIA_MAX_IMAGE_GROUP_SIZE
Maximum number of images in an image group.
Definition: nvmedia_image.h:64
NvMediaIPPComponent * NvMediaIPPComponentCreateNew(NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponentType componentType, NvMediaIPPBufferPoolParamsNew **bufferPools, void *componentConfig)
Creates an IPP component object for image group processing.
NvMediaIPPPipeline * NvMediaIPPPipelineCreate(NvMediaIPPManager *ippManager)
Allocates an IPP pipeline object.
uint32_t width
Holds image width.
Definition: nvmedia_ipp.h:1019
NvMediaIPPISPVersion
Specifies the IPP ISP version.
Definition: nvmedia_ipp.h:91
Holds NvMedia Version information.
Definition: nvmedia_core.h:252
NvMediaBool manualAWB
Holds a flag to indicate manual or auto white balance.
Definition: nvmedia_ipp.h:242
NvMediaStatus NvMediaIPPPipelineGetStaticProperties(NvMediaIPPPipeline *ippPipeline, NvMediaIPPPropertyStatic *staticProperties)
Gets static properties of the pipeline, that is, properties that do not change during the pipeline's ...
NvMediaIPPPortType portType
Holds port type associated with the pool.
Definition: nvmedia_ipp.h:1015
void NvMediaIPPPluginDestroyFunc(NvMediaIPPPlugin *pluginHandle)
Creates a Plugin Control Algorithm Destroy callback function.
Definition: nvmedia_ipp.h:946
#define NVMEDIA_IPP_MAX_EXPOSURE_SETS
Maximum numbers of exposure sets for bracketed exposure.
Definition: nvmedia_ipp.h:835
uint32_t frameSequenceNumber
Holds a frame sequence number, that is, a monotonically increasing frame counter. ...
Definition: nvmedia_ipp.h:138
Specifies use of only embedded data statistics.
Definition: nvmedia_ipp.h:334
Holds configuration information for an ISP component.
Definition: nvmedia_ipp.h:1146
NvMediaISCExposureControl exposureControl
Holds exposure control values associated with the currently processed image.
Definition: nvmedia_ipp.h:760
NvMediaISPStatsFlickerBandMeasurementV5 * flickerBandStats
A pointer to flicker band statistics.
Definition: nvmedia_ipp.h:743
void * metadata
A pointer to a metadata buffer.
Definition: nvmedia_ipp.h:1377
NvMediaGlobalTime frameCaptureGlobalTimeStamp
Holds a frame capture time-stamp using global time in microseconds.
Definition: nvmedia_ipp.h:131
uint32_t height
Holds image height.
Definition: nvmedia_ipp.h:1021
NvMediaICPSettings * settings
A pointer to an area that holds the capture settings.
Definition: nvmedia_ipp.h:1068
Specifies capture port for aggregate images.
Definition: nvmedia_ipp.h:1006
Holds the IPP pipeline property.
Definition: nvmedia_ipp.h:360
float_t ispMaxDigitalGain
Holds ISP maximum digital gain.
Definition: nvmedia_ipp.h:306
void NvMediaIPPComponent
A handle representing an IPP component object.
Definition: nvmedia_ipp.h:85
Indicates auto exposure is off.
Definition: nvmedia_ipp.h:191
uint32_t cameraId
Holds a camera ID.
Definition: nvmedia_ipp.h:129
uint32_t NvMediaIPPMetadataGetSize(void *metadata, NvMediaIPPMetadataType type)
Gets the size of the specified metadata type.
NvMediaSurfaceType surfaceType
Holds image surface type.
Definition: nvmedia_ipp.h:1023
uint32_t awbCCT
Holds auto white balance CCT.
Definition: nvmedia_ipp.h:283
Indicates illuminant frequency of 60 Hz.
Definition: nvmedia_ipp.h:173
Holds new buffer pool parameters for initializing an IPP component.
Definition: nvmedia_ipp.h:1013
A handle representing an image group.
NvMediaStatus NvMediaIPPComponentAddToPipeline(NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponent *ippComponent)
Adds an IPP component to a pipeline.
NVIDIA Media Interface: Core
Specifies flicker correction to 60Hz mode.
Definition: nvmedia_ipp.h:158
Specifies the image output component.
Definition: nvmedia_ipp.h:112
void * metadata
A pointer to the metadata buffer.
Definition: nvmedia_ipp.h:1445
NvMediaStatus NvMediaIPPPluginProcessExFunc(NvMediaIPPPlugin *pluginHandle, NvMediaIPPPluginInput *pluginInput, NvMediaIPPPluginOutputEx *pluginOutput)
Creates the Plugin Control Algorithm Process callback function for bracketed exposure.
Definition: nvmedia_ipp.h:965
float_t ispDigitalGain
Holds ISP digital gain.
Definition: nvmedia_ipp.h:251
NvMediaStatus
The set of all possible error codes.
Definition: nvmedia_core.h:199
Indicates the second ISP output mode 4 is selected.
Definition: nvmedia_ipp.h:1138
NVIDIA Media Interface: Image Capture Processing
NvMediaIPPAeState
Defines auto exposure current states.
Definition: nvmedia_ipp.h:188
uint32_t frameId
Holds a unique frame ID.
Definition: nvmedia_ipp.h:127
Holds configuration information for a Control Algorithm component.
Definition: nvmedia_ipp.h:1157
NvMediaIPPMathFloatMatrix colorCorrectionMatrix
Holds a color correction matrix for use with sRGB output type.
Definition: nvmedia_ipp.h:860
uint32_t metadataSize
Holds the metadata size.
Definition: nvmedia_ipp.h:1447
void NvMediaIPPComponentDestroy(NvMediaIPPComponent *ippComponent)
Destroys an IPP component object.
! Maximum number of surface allocation attributes
NvMediaIPPEventType
Specifies event types.
Definition: nvmedia_ipp.h:544
Holds stream-specific settings of Control Algorithm plugin output.
Definition: nvmedia_ipp.h:780
NvMediaStatus NvMediaIPPMetadataGetAddress(void *metadata, NvMediaIPPMetadataType type, void **buffer, uint32_t *size)
Gets the address of the data of the specified metadata type.
Holds configuration information for a file reader component.
Definition: nvmedia_ipp.h:1098
Indicates the single ISP pipeline mode is enabled.
Definition: nvmedia_ipp.h:1130
Holds the ISC Module ISP configuration.
Definition: nvmedia_isc.h:1659
NvMediaIPPAwbState
Defines various auto white balance states.
Definition: nvmedia_ipp.h:206
NvMediaBool topEmbeddedDataValid
Holds a Boolean which specifies whether the top embedded is valid.
Definition: nvmedia_ipp.h:1054
NvMediaIPPAeState aeState
Holds the auto exposure state.
Definition: nvmedia_ipp.h:845
Holds control properties associated with the camera.
Definition: nvmedia_ipp.h:231
NvMediaStatus NvMediaIPPComponentAttach(NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponent *srcComponent, NvMediaIPPComponent *dstComponent, NvMediaIPPPortType portType)
Attaches an output port of an IPP source component to an input port of a destination component...
Indicates auto white balance doesn't yet have a good set of control values for the current scene...
Definition: nvmedia_ipp.h:212
Specifies event info: Component processed one frame.
Definition: nvmedia_ipp.h:548
NvMediaStatus NvMediaIPPComponentGetOutput(NvMediaIPPComponent *component, uint32_t millisecondTimeout, NvMediaIPPComponentOutput *output)
Gets output from a component.
NvMediaSurfaceType surfaceType
Holds image surface type.
Definition: nvmedia_ipp.h:1046
NvMediaISCModuleConfig * moduleConfig
A pointer to the camera module name and camera-specific configuration string.
Definition: nvmedia_ipp.h:316
Specifies image port 2.
Definition: nvmedia_ipp.h:1000
NvMediaISCEmbeddedDataBuffer bottomEmbeddedData
Holds bottom embedded data of current image.
Definition: nvmedia_ipp.h:768
Indicates auto white balance has timed out searching for a good set of values for the current scene...
Definition: nvmedia_ipp.h:218
NvMediaStatus NvMediaIPPMetadataGet(void *metadata, NvMediaIPPMetadataType type, void *buffer, uint32_t size)
Gets the data of the specified metadata type.
Specifies the file reader.
Definition: nvmedia_ipp.h:114
NvMediaISCExposureControl exposureControl
Holds sensor exposure time and sensor gain for each sensor exposure mode.
Definition: nvmedia_ipp.h:266
Specifies the sensor control component.
Definition: nvmedia_ipp.h:110
uint32_t ispSettingAttr
Holds the ISP-setting attribute flag, which specifies bit-wise OR`ed flags defined in the enum NvMedi...
Definition: nvmedia_ipp.h:1151
void NvMediaISCDevice
Holds an opaque handle representing a NvMediaISCDevice object.
Definition: nvmedia_isc.h:173
Holds NvMedia Surface allocation attributes.
Specifies the image signal processing component.
Definition: nvmedia_ipp.h:106
Holds the capture error information populated by NvMediaICPGetErrorInfo.
Definition: nvmedia_icp.h:334
Holds a handle representing an IPP component output object.
Definition: nvmedia_ipp.h:1374
NvMediaRawPixelOrder pixelOrder
Holds image raw pixel order.
Definition: nvmedia_ipp.h:1163
NvMediaIPPPropertyControls * controlsProperties
A pointer to properties that determine the operation mode of the Plugin Control Algorithm.
Definition: nvmedia_ipp.h:757
Specifies event error: Internal failure.
Definition: nvmedia_ipp.h:554
Holds version information for the NvMedia IPP library.
Definition: nvmedia_ipp.h:397
NvMediaBool manualAE
Holds a flag to indicate manual or auto exposure.
Definition: nvmedia_ipp.h:234
NvMediaIPPComputedAntiFlicker computedAntiFlicker
Holds computed anti-flicker.
Definition: nvmedia_ipp.h:289
void NvMediaDevice
An opaque handle representing a NvMediaDevice object.
Definition: nvmedia_core.h:305
NvMediaBitsPerPixel bitsPerPixel
Holds image bits per pixel.
Definition: nvmedia_ipp.h:1165
Holds the Control Algorithm plugin support functions descriptor.
Definition: nvmedia_ipp.h:900
uint64_t NvMediaGlobalTime
Media global time, measured in microseconds.
Definition: nvmedia_core.h:89
NvMediaISPSelect ispSelect
Holds ISP select.
Definition: nvmedia_ipp.h:1148
NvMediaIPPPipelinePropertyType type
Holds the IPP pipeline property type.
Definition: nvmedia_ipp.h:362
NvMediaVersion libVersion
Holds library version information.
Definition: nvmedia_ipp.h:399
Indicates auto white balance has a good set of control values for the current scene.
Definition: nvmedia_ipp.h:215
Holds configuration information for an ISC component.
Definition: nvmedia_ipp.h:1112
Specifies the top embedded line whose size and base register are defined by the size and baseRegAddre...
Definition: nvmedia_ipp.h:1197
uint32_t metadataSize
Holds the metadata size.
Definition: nvmedia_ipp.h:1379
unsigned int numKneePoints
Holds the number of companding curve knee points.
Definition: nvmedia_ipp.h:309
NvMediaIPPImageInformation imageInformation
Holds information about the image associated with the event.
Definition: nvmedia_ipp.h:569
NvMediaBool firstRun
Holds first run flag.
Definition: nvmedia_ipp.h:772
NvMediaIPPAeAntiFlickerMode aeAntiFlickerMode
Holds anti-flicker mode.
Definition: nvmedia_ipp.h:248
Specifies event Info: End of file.
Definition: nvmedia_ipp.h:546
NvMediaStatus NvMediaIPPPipelineGetDefaultControlsProperties(NvMediaIPPPipeline *ippPipeline, NvMediaIPPPropertyControls *defaultControlsProperties)
Gets default control properties for the pipeline.
Specifies event warning: CSI frame discontinuity.
Definition: nvmedia_ipp.h:558
NvMediaIPPMathFloatMatrix colorCorrectionsMatrixRec2020
Holds a color correction matrix for use with rec2020 output type.
Definition: nvmedia_ipp.h:863
Indicates auto exposure has a good set of control values for the current scene.
Definition: nvmedia_ipp.h:197
Specifies flicker correction to auto mode.
Definition: nvmedia_ipp.h:160
NvMediaTimeBase frameCaptureTimeBase
Holds a clock base used for frame capture time-stamp.
Definition: nvmedia_ipp.h:133
NvMediaISPStatsFlickerBandSettingsV5 flickerBandSettings
Holds flicker band settings.
Definition: nvmedia_ipp.h:827
Specifies dynamic properties.
Definition: nvmedia_ipp.h:1187
uint32_t height
Holds image height.
Definition: nvmedia_ipp.h:1161
Holds static properties associated with a camera.
Definition: nvmedia_ipp.h:300
NvMediaIPPPluginFuncs * pluginFuncs
A pointer to a Plugin Control Algorithm function.
Definition: nvmedia_ipp.h:1168
#define NVMEDIA_IPP_MAX_KNEEPOINTS
Maximum numbers of knee points for companding curve.
Definition: nvmedia_ipp.h:295
Holds the white balance control structure.
Definition: nvmedia_isc.h:1376
NvMediaIPPImageInformation imageInfo
Image information.
Definition: nvmedia_ipp.h:754
NVIDIA Media Interface: Image Sensor Control (ISC)
NvMediaBool useBracketedExp
Holds flag to indicate bracketed or continuous exposure.
Definition: nvmedia_ipp.h:843
NvMediaIPPAeState aeState
Holds auto exposure state.
Definition: nvmedia_ipp.h:260
NvMediaISCEmbeddedDataBuffer topEmbeddedData
Holds top embedded data of current image.
Definition: nvmedia_ipp.h:766
NvMediaStatus NvMediaIPPComponentGetOutputImgGrp(NvMediaIPPComponent *component, uint32_t millisecondTimeout, NvMediaIPPComponentOutputImgGrp *output)
Gets image group output from a component.
Specifies image information.
Definition: nvmedia_ipp.h:1181
NvMediaStatus NvMediaIPPPipelineStop(NvMediaIPPPipeline *ippPipeline)
Stops the IPP pipeline.
Holds a handle representing an IPP component output object.
Definition: nvmedia_ipp.h:1442
NvMediaStatus NvMediaIPPGetSensorAttr(NvMediaIPPComponent *parentControlAlgorithmHandle, NvMediaISCSensorAttrType type, uint32_t size, void *attribute)
Defines a function prototype that gets a sensor attribute.
Definition: nvmedia_ipp.h:887
NvMediaIPPPortType
Specifies IPP port types.
Definition: nvmedia_ipp.h:996
Specifies the CaptureEx component.
Definition: nvmedia_ipp.h:116
NvMediaBool flickerBandSettingsValid
Holds validity flags for flicker band settings.
Definition: nvmedia_ipp.h:800
Exposure control structure.
Definition: nvmedia_isc.h:1359
void NvMediaIPPManagerDestroy(NvMediaIPPManager *ippManager)
Destroys an IPP manager object.
NvMediaIPPManager * NvMediaIPPManagerCreate(uint32_t versionInfo, NvMediaDevice *device)
Allocates an Image Processing Pipeline manager object.
NvMediaTimeBase
Defines clock base for NvMediaTime.
Definition: nvmedia_core.h:93
NvMediaISPStatsFlickerBandSettingsV4 flickerBandSettings
Holds flicker band settings.
Definition: nvmedia_ipp.h:804
NvMediaStatus NvMediaIPPManagerSetEventCallback(NvMediaIPPManager *ippManager, void *clientContext, NvMediaIPPEventCallback eventCallback)
Sets a callback function for IPP events.
Specifies control properties.
Definition: nvmedia_ipp.h:1184
NvMediaStatus NvMediaIPPPipelineSetProperties(NvMediaIPPPipeline *ippPipeline, uint32_t numProperties, NvMediaIPPPipelineProperty *properties)
Sets the IPP pipeline properties.
uint32_t siblingsNum
Holds the number of sibling images per frame.
Definition: nvmedia_ipp.h:1106
NvMediaIPPMetadataType
Specifies metadata types.
Definition: nvmedia_ipp.h:1178
NvMediaIPPAeAntiFlickerMode
Specifies flicker detection/correction modes.
Definition: nvmedia_ipp.h:151
Holds image group buffer pool parameters for initializing an IPP component.
Definition: nvmedia_ipp.h:1037
NvMediaIPPGetSensorAttr * getSensorAttribute
A pointer to a function to get a sensor attribute.
Definition: nvmedia_ipp.h:903
NvMediaIPPAwbState awbState
Holds auto white balance state.
Definition: nvmedia_ipp.h:269
Specifies ISP version 4.
Definition: nvmedia_ipp.h:93
Indicates the second ISP output mode 2 is selected.
Definition: nvmedia_ipp.h:1134
NvMediaBitsPerPixel
Bits per pixel.
NvMediaBool enabled
Specifies whether the statistics are enabled or not.
Definition: nvmedia_ipp.h:727
Indicates the second ISP output mode 1 is selected.
Definition: nvmedia_ipp.h:1132
void * value
A pointer to the property specific data.
Definition: nvmedia_ipp.h:364
NvMediaIPPComponent * NvMediaIPPComponentCreateImgGrp(NvMediaIPPPipeline *ippPipeline, NvMediaIPPComponentType componentType, NvMediaIPPBufferPoolParamsImgGrp **bufferPools, void *componentConfig)
Creates an IPP component object for image group processing.
NvMediaStatus NvMediaIPPPipelineSingleCapture(NvMediaIPPPipeline *ippPipeline)
Triggers the pipeline to do a single capture.
Indicates no flicker detected.
Definition: nvmedia_ipp.h:169
Holds additional event information.
Definition: nvmedia_ipp.h:566
NvMediaISPSize activeArraySize
Holds active array size of sensor excluding embedded lines.
Definition: nvmedia_ipp.h:303
NvMediaIPPComputedAntiFlicker
Defines detected flicker modes.
Definition: nvmedia_ipp.h:166
NvMediaRawPixelOrder
Pixel order in a raw image.
Specifies the number of metadata types.
Definition: nvmedia_ipp.h:1203
Holds configuration for an ICP component.
Definition: nvmedia_ipp.h:1066
uint32_t numImageConfigs
Holds number of image configs.
Definition: nvmedia_ipp.h:1060
NvMediaBool bottomEmbeddedDataValid
Holds a Boolean which specifies whether the bottom embedded is valid.
Definition: nvmedia_ipp.h:1057
Holds image information.
Definition: nvmedia_ipp.h:125
Specifies flicker correction off.
Definition: nvmedia_ipp.h:154
NvMediaStatus NvMediaIPPPipelineStart(NvMediaIPPPipeline *ippPipeline)
Starts the IPP pipeline.
uint32_t poolBuffersNum
Holds number of pool buffer elements.
Definition: nvmedia_ipp.h:1041
NvMediaIPPPluginDestroyFunc * destroyFunc
A pointer to the Plugin Control Algorithm Destroy function.
Definition: nvmedia_ipp.h:979
float_t brightness
Holds scene brightness.
Definition: nvmedia_ipp.h:774
Specifies sensor control port 1.
Definition: nvmedia_ipp.h:1004
NvMediaStatus NvMediaIPPGetVersionInfo(NvMediaIPPVersionInfo *versionInfo)
Returns the version information for the NvMedia IPP library.
uint32_t numExposureControl
Holds the number of sets.
Definition: nvmedia_ipp.h:847
Specifies event warning: Capture frame drop.
Definition: nvmedia_ipp.h:552
Specifies use of trigger-based capture.
Definition: nvmedia_ipp.h:345
float_t brightness
Holds current scene brightness.
Definition: nvmedia_ipp.h:280
Holds stream data for Control Algorithm plugin input.
Definition: nvmedia_ipp.h:724
Specifies the Control Algorithm component.
Definition: nvmedia_ipp.h:108
Indicates auto exposure doesn't yet have a good set of control values for the current scene...
Definition: nvmedia_ipp.h:194
Specifies event error: I2C transmission failure.
Definition: nvmedia_ipp.h:556