Skip to content

Commit

Permalink
Sync dfsg with main branch
Browse files Browse the repository at this point in the history
Signed-off-by: Hao Yao <[email protected]>
  • Loading branch information
hao-yao committed Oct 18, 2024
1 parent 3914b0a commit 59766a1
Show file tree
Hide file tree
Showing 372 changed files with 254 additions and 57 deletions.
3 changes: 1 addition & 2 deletions .github/workflows/dfsg-ize.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
strip: [strip, nostrip]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4

- name: "Install prerequisites"
env:
Expand Down Expand Up @@ -83,7 +83,6 @@ jobs:
libname=${soname#lib}
libname=${libname%.so.*}
echo "Compiling against ${soname}"
ln -s ${soname} ${lib%/*}/lib${libname}.so
gcc test.c -o a.out \
-Wl,--no-as-needed -Wl,--no-undefined \
-L$${lib%/*} -l${libname}
Expand Down
5 changes: 1 addition & 4 deletions LICENSE
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,7 @@ Limited patent license. Intel Corporation grants a world-wide,
royalty-free, non-exclusive license under patents it now or hereafter
owns or controls to make, have made, use, import, offer to sell and
sell ("Utilize") this software, but solely to the extent that any
such patent is necessary to Utilize the software alone, or in
combination with an operating system licensed under an approved Open
Source license as listed by the Open Source Initiative at
http://opensource.org/licenses. The patent license shall not apply to
such patent is necessary to Utilize the software alone. The patent license shall not apply to
any other combinations which include this software. No hardware per
se is licensed hereunder.

Expand Down
16 changes: 7 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,13 @@ There are 4 repositories that provide the complete setup:
ipu6-camera-bins should be copied to build server and target
```
# Runtime files
mkdir -p /lib/firmware/intel
cp -r ipu6-camera-bins/lib/*/lib* /usr/lib/
cp -r ipu6-camera-bins/lib/firmware/intel/*.bin /lib/firmware/intel/
mkdir -p /lib/firmware/intel/ipu
cp -r ipu6-camera-bins/lib/firmware/intel/ipu/*.bin /lib/firmware/intel/ipu
# For developers using engineer samples, try use unsigned FW if authenticate fail:
# cp -r ipu6-camera-bins/lib/firmware/intel/ipu/unsigned/*.bin /lib/firmware/intel/ipu
cp -P ipu6-camera-bins/lib/lib* /usr/lib/
# Development files
mkdir -p /usr/include /usr/lib/pkgconfig
mkdir -p /usr/include/ipu6 /usr/lib/pkgconfig
cp -r ipu6-camera-bins/include/* /usr/include/
cp -r ipu6-camera-bins/lib/*/pkgconfig/* /usr/lib/pkgconfig/
for lib in ipu6-camera-bins/lib/*/lib*.so.*; do \
lib=${lib##*/}; \
ln -s $lib /usr/lib/${lib%.*}; \
done
cp -r ipu6-camera-bins/lib/pkgconfig/* /usr/lib/pkgconfig/
```
5 changes: 5 additions & 0 deletions SECURITY.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Security Policy
Intel is committed to rapidly addressing security vulnerabilities affecting our customers and providing clear guidance on the solution, impact, severity and mitigation.

## Reporting a Vulnerability
Please report any security vulnerabilities in this project utilizing the guidelines [here](https://www.intel.com/content/www/us/en/security-center/vulnerability-handling-guidelines.html).
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,8 @@ typedef enum ia_cipf_terminal_type {
ia_cipf_terminal_type_frame_input,
ia_cipf_terminal_type_frame_output,
ia_cipf_terminal_type_param_input,
ia_cipf_terminal_type_param_output
ia_cipf_terminal_type_param_output,
ia_cipf_terminal_type_max
} ia_cipf_terminal_type_t;

/**
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ const float MAX_MANUAL_GAMMA = 2.6f;
const uint32_t PDAF_STATS_GRID_WIDTH = 16;
const uint32_t PDAF_STATS_GRID_HEIGHT = 12;
const uint32_t PDAF_STATS_NUM_NONSVE = 1;
const uint32_t MAX_STREAM_NUM = 11;
const uint32_t MAX_STREAM_NUM = 15;
const uint32_t MAX_RGBIR_MODELS = 3;

const uint64_t INVALID_FRAME_ID = static_cast<uint64_t>(-1);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (C) 2020-2022 Intel Corporation.
* Copyright (C) 2020-2024 Intel Corporation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,15 @@ class LIBEXPORT IntelCCA {
*/
ia_err init(const cca_init_params& initParams);

/*!
* \brief reconfigure dol.
*
* \param[in] dolMode Mandatory.\n
* \param[in] conversionGainRatio Mandatory.\n
* \return Error code for status. zero on success, non-zero on failure
*/
ia_err reconfigDol(ia_bcomp_dol_mode_t dolMode, float32_t conversionGainRatio);

/*!
* \brief Set input statistics and information (e.g faces) about the captured image.
* CCA Flow algorithms need various information about the conditions in which the frame and statistics were captured in order to
Expand Down Expand Up @@ -390,6 +399,16 @@ class LIBEXPORT IntelCCA {
*/
ia_err queryAiqResults(uint64_t frameId, cca_aiq_results_storage* results);

/*!
* \brief Save Aiq results.
* Save Aiq results to internal CCAStorage.
*
* \param[out] results Mandatory.\n
* Aiq results
* \return Error code for status. zero on success, non-zero on failure
*/
ia_err saveAiqResults(uint64_t frameId, const cca_aiq_results_storage &results);

#ifdef PAC_ENABLE
/*!
*
Expand Down Expand Up @@ -658,6 +677,8 @@ class LIBEXPORT IntelCCA {
*/
ia_bcomp* mBcompState;
ia_bcomp_results* mBcompResults;
ia_bcomp_dol_mode_t mDolMode;
float32_t mDolRatio;

/*
* ia_lard - a library for parsing the cpff and loading it in a dynamic way
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (C) 2019-2023 Intel Corporation.
* Copyright (C) 2019-2024 Intel Corporation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -325,8 +325,10 @@ typedef struct
{
float32_t accurate_r_per_g; /*!< Accurate White Point for the image. */
float32_t accurate_b_per_g; /*!< Accurate White Point for the image. */
float32_t final_r_per_g; /*!< Final White Point, including color appearance modeling. */
float32_t final_b_per_g; /*!< Final White Point, including color appearance modeling.*/
uint32_t cct_estimate; /*!< Correlated Color Temperature estimate calculated from the accurate WP. */
float32_t distance_from_convergence; /*!< Range [0.0f, 1.0f]. Distance from convergence. Value 0.0f means converged. */
unsigned int cct_estimate; /*!< Correlated Color Temperature estimate calculated from the accurate WP. */
} cca_awb_results;

/*!
Expand Down Expand Up @@ -690,6 +692,7 @@ struct cca_init_params{
uint8_t aiqStorageLen; /*!< Mandatory. lehgth of history to store algo results */
uint8_t aecFrameDelay; /*!< Mandatory. frame delay for auto exposure take effect */
cca_stream_ids aic_stream_ids; /*!< Optional. the aic id for aic handle*/
uint32_t num_exposures; /*!< Optional. one exposure result returned by default, two more exposure for HDR */
cca_init_params() :
frameUse(ia_aiq_frame_use_preview),
conversionGainRatio(1),
Expand All @@ -698,7 +701,8 @@ struct cca_init_params{
dvsZoomRatio(1.0f),
enableVideoStablization(false),
aiqStorageLen(3),
aecFrameDelay(2)
aecFrameDelay(2),
num_exposures(1)
{
bitmap = CCA_MODULE_AE | CCA_MODULE_AF | CCA_MODULE_AWB |
CCA_MODULE_PA | CCA_MODULE_SA | CCA_MODULE_GBCE |
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2012-2022 Intel Corporation
* Copyright 2012-2024 Intel Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -119,6 +119,7 @@ typedef enum
ia_aiq_sensor_monoir_stream = 1, /*!< MONOIR sensor stream. */
ia_aiq_sensor_OG0VA1B_ir_stream = 2, /*!< WA for OG sensor. */
ia_aiq_sensor_rgbir_stream = 4, /*!< RGBIR sensor IR only stream or RGB+IR stream. */
ia_aiq_sensor_auto_switch_stream = 5 /*!< 4C/1C sensor auto switch mode. */
} ia_aiq_sensor_stream_type;

/*!
Expand Down Expand Up @@ -279,7 +280,9 @@ typedef enum
{
ia_aiq_bracket_mode_none, /*!< No bracketing used. */
ia_aiq_bracket_mode_ull = (1U << 0U), /*!< Ultra Low Light bracketing used. */
ia_aiq_bracket_mode_hdr = (1U << 1U) /*!< High Dynamic Range bracketing used. */
ia_aiq_bracket_mode_hdr = (1U << 1U), /*!< High Dynamic Range bracketing used. */
ia_aiq_bracket_mode_ull_auto_switch = (1U << 2U), /*!< 1C (0) 4C (1) auto switch indication. */
ia_aiq_bracket_mode_shdr_ldr_switch = (1U << 3U) /*!< shdr S and L (0) ldr long only (1) - for DOL */
} ia_aiq_bracket_mode;

/*!
Expand Down Expand Up @@ -734,6 +737,8 @@ typedef struct {
float* tone_map_lut; /*!< Tone Mapping Gain LUT. Range [0.0 FLT_MAX] */
unsigned int tone_map_lut_size; /*!< Number of elements in tone mapping LUT. */
float base_gamma; /*!< gamma */
float second_cp_x; /*!< second_cp_x */
float second_cp_y; /*!< second_cp_y */
float btm; /*!< bottom range border */
float rng; /*!< dynamic range */
float top_short_border[10U];
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2021-2022 Intel Corporation
* Copyright 2021-2023 Intel Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -155,6 +155,17 @@ typedef enum
cmc_color_space_adobergb,
} cmc_color_space;

/*!
* \brief LSC NVM interpolation/upscaling method.
*/
typedef enum
{
cmc_nvm_interpolation_polynomial,
cmc_nvm_interpolation_bi_cubic,
cmc_nvm_interpolation_polynomial_crop_two_pixels
} cmc_nvm_interpolation;


/*!
* \brief CMC names used in the record headers.
*/
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ typedef enum
ia_pal_uuid_isp_dma_cropper_ppp = 49162,
ia_pal_uuid_isp_dol_1_0 = 11842,
ia_pal_uuid_isp_dol_2_0 = 11890,
ia_pal_uuid_isp_dol_lite_1_0 = 6265,
ia_pal_uuid_isp_dol_lite_1_0 = 3700,
ia_pal_uuid_isp_dol_lite_1_1 = 54674,
ia_pal_uuid_isp_dol_mapper = 17361,
ia_pal_uuid_isp_dol_parser = 44843,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5041,6 +5041,8 @@ typedef struct
int32_t short_is_invalid;
/*!< max_use_long Max use of long exposure in the output blend*/
int32_t max_use_long;
/*!< min_use_long Min use of long exposure in the output blend [GPU only]*/
int32_t min_use_long;
/*!< short_denoise_power use of denoised short-exposure in blend*/
int32_t short_denoise_power;
/*!< use_shrt_smth_for_dist use short-smoothed for calculating distance*/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright 2012-2023 Intel Corporation
* Copyright 2012-2024 Intel Corporation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -242,6 +242,7 @@ typedef struct {
void (*vdebug)(const char *fmt, va_list ap);
void (*verror)(const char *fmt, va_list ap);
void (*vinfo)(const char *fmt, va_list ap);
void (*vperf)(const char *fmt, va_list ap);
} ia_env;

typedef struct {
Expand Down Expand Up @@ -321,6 +322,7 @@ typedef enum
FACEBOXES_FD,
CENTERNET_FD,
OS_FD,
GOOGLE_FD,
UNKNOWN_FD
} FD_IMPL_TYPE;

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -357,7 +357,8 @@ typedef enum ia_cipf_terminal_type {
ia_cipf_terminal_type_frame_input,
ia_cipf_terminal_type_frame_output,
ia_cipf_terminal_type_param_input,
ia_cipf_terminal_type_param_output
ia_cipf_terminal_type_param_output,
ia_cipf_terminal_type_max
} ia_cipf_terminal_type_t;

/**
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ const float MAX_MANUAL_GAMMA = 2.6f;
const uint32_t PDAF_STATS_GRID_WIDTH = 16;
const uint32_t PDAF_STATS_GRID_HEIGHT = 12;
const uint32_t PDAF_STATS_NUM_NONSVE = 1;
const uint32_t MAX_STREAM_NUM = 11;
const uint32_t MAX_STREAM_NUM = 15;
const uint32_t MAX_RGBIR_MODELS = 3;

const uint64_t INVALID_FRAME_ID = static_cast<uint64_t>(-1);
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (C) 2020-2022 Intel Corporation.
* Copyright (C) 2020-2024 Intel Corporation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,15 @@ class LIBEXPORT IntelCCA {
*/
ia_err init(const cca_init_params& initParams);

/*!
* \brief reconfigure dol.
*
* \param[in] dolMode Mandatory.\n
* \param[in] conversionGainRatio Mandatory.\n
* \return Error code for status. zero on success, non-zero on failure
*/
ia_err reconfigDol(ia_bcomp_dol_mode_t dolMode, float32_t conversionGainRatio);

/*!
* \brief Set input statistics and information (e.g faces) about the captured image.
* CCA Flow algorithms need various information about the conditions in which the frame and statistics were captured in order to
Expand Down Expand Up @@ -390,6 +399,16 @@ class LIBEXPORT IntelCCA {
*/
ia_err queryAiqResults(uint64_t frameId, cca_aiq_results_storage* results);

/*!
* \brief Save Aiq results.
* Save Aiq results to internal CCAStorage.
*
* \param[out] results Mandatory.\n
* Aiq results
* \return Error code for status. zero on success, non-zero on failure
*/
ia_err saveAiqResults(uint64_t frameId, const cca_aiq_results_storage &results);

#ifdef PAC_ENABLE
/*!
*
Expand Down Expand Up @@ -658,6 +677,8 @@ class LIBEXPORT IntelCCA {
*/
ia_bcomp* mBcompState;
ia_bcomp_results* mBcompResults;
ia_bcomp_dol_mode_t mDolMode;
float32_t mDolRatio;

/*
* ia_lard - a library for parsing the cpff and loading it in a dynamic way
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (C) 2019-2023 Intel Corporation.
* Copyright (C) 2019-2024 Intel Corporation.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
Expand Down Expand Up @@ -325,8 +325,10 @@ typedef struct
{
float32_t accurate_r_per_g; /*!< Accurate White Point for the image. */
float32_t accurate_b_per_g; /*!< Accurate White Point for the image. */
float32_t final_r_per_g; /*!< Final White Point, including color appearance modeling. */
float32_t final_b_per_g; /*!< Final White Point, including color appearance modeling.*/
uint32_t cct_estimate; /*!< Correlated Color Temperature estimate calculated from the accurate WP. */
float32_t distance_from_convergence; /*!< Range [0.0f, 1.0f]. Distance from convergence. Value 0.0f means converged. */
unsigned int cct_estimate; /*!< Correlated Color Temperature estimate calculated from the accurate WP. */
} cca_awb_results;

/*!
Expand Down Expand Up @@ -690,6 +692,7 @@ struct cca_init_params{
uint8_t aiqStorageLen; /*!< Mandatory. lehgth of history to store algo results */
uint8_t aecFrameDelay; /*!< Mandatory. frame delay for auto exposure take effect */
cca_stream_ids aic_stream_ids; /*!< Optional. the aic id for aic handle*/
uint32_t num_exposures; /*!< Optional. one exposure result returned by default, two more exposure for HDR */
cca_init_params() :
frameUse(ia_aiq_frame_use_preview),
conversionGainRatio(1),
Expand All @@ -698,7 +701,8 @@ struct cca_init_params{
dvsZoomRatio(1.0f),
enableVideoStablization(false),
aiqStorageLen(3),
aecFrameDelay(2)
aecFrameDelay(2),
num_exposures(1)
{
bitmap = CCA_MODULE_AE | CCA_MODULE_AF | CCA_MODULE_AWB |
CCA_MODULE_PA | CCA_MODULE_SA | CCA_MODULE_GBCE |
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit 59766a1

Please sign in to comment.