Process Function Output Parameters

When the plugin Process function is called, it must process the input information and generate the output parameters.

The plugin must generate the information in the following categories:

  • Exposure control
  • White balance control
  • Histogram statistics settings
  • LAC statistics settings
  • Flicker-band statistics settings
  • SiplControlAutoOutputParam

SiplControlAutoOutputParam

The SiplControlAutoOutputParam structure provides the ISP stats settings, exposure settings, and white balance settings calculated by plugin based on the ISP stats received in Process Function Input Parameters.

The output is passed in the following structure:

struct SiplControlAutoOutputParam {
    SiplControlAutoSensorSetting    sensorSetting;
    SiplControlAutoAwbSetting       awbSetting;
    SiplControlIspStatsSetting      newStatsSetting;
    float_t                         ispDigitalGain;
};

Structure

Parameter

SiplControlAutoOutputParam

  • sensorSetting: Holds sensor exposure and gain settings.
  • awbSetting: Holds AWB settings.
  • newStatsSetting: Holds Stats Settings.
  • ispDigitalGain: Holds the digital gain to be applied in ISP.

SiplControlAutoSensorSetting

This structure contains the sensor settings.

struct SiplControlAutoSensorSetting {
    uint8_t numSensorContexts;
    DevBlkISCExposure exposureControl[…];
    DevBlkISCWhiteBalance wbControl[…];            
};

Structure

Parameter

SiplControlAutoSensorSetting

  • numSensorContexts: Holds the number of sensor contexts to activate.
  • exposureControl: Holds the sensor exposure settings to set for each context.
  • wbControl: Holds the sensor white balance settings to set for each context.

SiplControlAutoAwbSetting

This structure contains the AWB, CCT and CCM settings.

struct SiplControlAutoAwbSetting {
    SiplControlAutoAwbGain wbGainTotal[…]; 
    float_t cct;
    float_t ccmMatrix[…][…];               
}

Structure

Parameter

SiplControlAutoAwbSetting

  • wbGainTotal: Total white balance gains, including both senor channel gains and ISP gains.
  • cct: Correlated Color Temperature.
  • ccmMatrix: Color Correlation Matrix.

SiplControlIspStatsSetting

This structure contains the stat block settings for the ISP.

struct SiplControlIspStatsSetting {
    bool valid;
    NvSiplISPLocalAvgClipStats  lac[2];
    NvSiplISPHistogramStats  hist1;
    NvSiplISPFlickerBandStats  fbStats;
}

Structure

Parameter

SiplControlIspStatsSetting

  • valid Settings: to control ISP stats blocks are valid or not.
  • Lac: Settings for 2 LAC stats ISP blocks.
  • hist1: Settings for Histogram 1 stats blocks.
  • fbStats: Settings for Flicker Band stats block.