)]}'
{
  "commit": "fc268340790c34e9a36bf0bce73a4f895325256f",
  "tree": "3a581f873c009de4a15f95c087ef1207315eaae7",
  "parents": [
    "a2b740b749dd25db533593c2001a5070ebc6f7d5",
    "7e3a351a29aa55c06c8e17782bcc33d153784068"
  ],
  "author": {
    "name": "Harvey Yang",
    "email": "chenghaoyang@google.com",
    "time": "Mon Jul 01 08:57:32 2024"
  },
  "committer": {
    "name": "Chromeos LUCI",
    "email": "chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Mon Jul 01 10:38:19 2024"
  },
  "message": "Merge remote-tracking branch \u0027upstream/master\u0027\n\n* upstream/master:\n  utils: libtuning: Correct GBRG Image parsing\n  apps: common: dng_writer: Support RAW10 and RAW12 format\n  apps: common: dng_writer: Add thumbnail scanline function for Raw\n  apps: common: dng_writer: Rename packing functions\n  apps: common: dng_writer: Support RAW16 formats\n  libcamera: Fix maybe-uninitialized error\n  apps: common: dng_writer: Workaround for \"Unknown tag 33421\" error\n  meson: Enable warnings to flag missing declarations\n  test: gstreamer: Include missing sanitizer/asan_interface.h header\n  test: ipc: unixsocket: Define local function in anonymous namespace\n  apps: Define local functions in anonymous namespace\n  v4l2: v4l2_compat: Selectively disable -Wmissing-declarations\n  v4l2: v4l2_compat: Include missing headers\n  py: libcamera: Move function declarations to common header\n  ipa: rpi: Define local functions in anonymous namespace\n  ipa: ipa_interface: Declare ipaCreate() in libcamera namespace\n  libcamera: base: log: Declare log categories when defining them\n  v4l2: v4l2_compat: Move `open*()` flag check into function\n  v4l2: v4l2_compat: Fix redirect from `__open(at)64_2()`\n  ipa: libipa: matrix: Fix incorrect symbol namespace\n  libcamera: yaml_parser: Add support for float types\n  ipa: rkisp1: agc: Rename frame context update variable to updateMetering\n  libcamera: debayer_cpu: Add 32bits/aligned output formats\n  ipa: libipa: pwl: Drop readYaml() function\n  ipa: rpi: controller: Replace Pwl::readYaml() with YamlObject::get()\n  ipa: rkisp1: agc: Move AeEnable control to the AGC algorithm\n  ipa: rkisp1: agc: Correctly clamp maximum shutter speed\n  ipa: rkisp1: agc: Rename maxShutterSpeed to maxFrameDuration\n  ipa: rkisp1: agc: Use mode from frame context to calculate new EV\n  ipa: rkisp1: agc: Simplify predivider calculation\n  ipa: rkisp1: agc: Don\u0027t update histogram parameters unnecessarily\n  ipa: rkisp1: agc: Make size argument to computeHistogramPredivider const\n  ipa: rkisp1: Document all AGC parameters in IPAFrameContext\n  ipa: rkisp1: Document all AGC parameters in IPAActiveState\n  ipa: libipa: agc_mean_luminance: Include missing header\n  ipa: libipa: agc_mean_luminance: Fix enumerator names\n  ipa: rkisp1: agc: Fix initialization without metering modes\n  ipa: libipa: vector: Add matrix-vector multiplication\n  ipa: rkisp1: algorithms: Add crosstalk algorithm\n  ipa: libipa: Add MatrixInterpolator class\n  ipa: libipa: Add Matrix class\n  ipa: libipa: pwl: Specialize YamlObject getter\n  ipa: libipa: pwl: Add a constructor that moves a Point vector\n  ipa: libipa: pwl: Add a size() function\n  ipa: libipa: pwl: Make the empty() function inline\n  ipa: libipa: pwl: Suffix \\param with direction\n  ipa: libipa: vector: Drop readYaml() function\n  ipa: libipa: vector: Specialize YamlObject getter\n  libcamera: yaml_parser: Delegate YamlObject::get() to helper structure\n  libcamera: yaml_parser: Drop std::enable_if_t guards for get() function\n  utils: tuning: rkisp1: Add skeletal AGC to the rkisp1 tuning script\n  utils: libtuning: modules: Add skeletal AGC module\n  ipa: rkisp1: agc: Plumb mode-selection and frame duration controls\n  ipa: rkisp1: agc: Read histogram weights from tuning file\n  ipa: rkisp1: cproc: Drop incorrect [[maybe_unused]]\n  ipa: rkisp1: cproc: Merge identical functions\n  ipa: rkisp1: cproc: Use anonymous namespace to limit symbol visibility\n  utils: raspberrypi: ctt: Add a maximum gain parameter for LSC\n  utils: raspberrypi: ctt: Add option to convert between vc4/pisp targets\n  utils: raspberrypi: ctt: Update tuning tool for HDR\n  utils: raspberrypi: ctt: Changed CTT handling of VC4 and PiSP\n  utils: raspberrypi: ctt: Added CAC support to the CTT\n  utils: raspberrypi: ctt: Adapt tuning tool for both VC4 and PiSP\n  pipeline: rpi: Don\u0027t validate configuration in generateConfiguration()\n  libcamera: yaml_parser: Make default value templated in `get()`\n  libcamera: libipa: camera_sensor: Define AR0521 helper functions inline\n  libcamera: controls: Add missing period at end of Gamma description\n  ipa: rkisp1: goc: Avoid use of auto for short type\n  ipa: rkisp1: goc: Mark default gamma table as static constexpr\n  ipa: rkisp1: goc: Use copydoc\n  ipa: rkisp1: goc: Drop incorrect [[maybe_unused]]\n  ipa: rkisp1: goc: Fix typographical issues in documentation.\n  ipa: rpi: controller: Use libipa\u0027s Pwl class\n  ipa: libipa: Copy pwl from rpi, and clean it up to match libcamera\n  ipa: libipa: Add Vector class\n  pipeline: rkisp1: cproc: Fix default value handling\n  meson: Group libipa and libipa_includes in a dependency object\n  libcamera: software_isp: Fix includes ordering in simple.cpp\n  clang-format: Make Qt includes matching case sensitive\n  ipa: rkisp1: Add GammaOutCorrection algorithm\n  ipa: rkisp1: Fix algorithm controls vanish after configure\n  libcamera: Add gamma control id\n  test: ipa: rkisp1: utils: Fix floating and fixed point conversion test\n  libcamera: dma_buf_allocator: Work around lack of file seals in uClibc\n  libcamera: dma_buf_allocator: Work around lack of memfd_create() in uClibc\n  libcamera: dma_buf_allocator: Create memfd with CLOEXEC\n  ipa: rpi: Disable StatsOutputEnable control by default\n  libcamera: software_isp: Allow using dma-buffers from /dev/udmabuf\n  libcamera: DmaBufAllocator: Support allocating from /dev/udmabuf\n  libcamera: Rename DmaHeap class to DmaBufAllocator\n  libcamera: v4l2_subdevice: Update to the new kernel routing API\n  include: linux: Update kernel headers to version v6.10-rc1\n  update-kernel-headers: Add linux/udmabuf.h to headers to sync\n  test: ipa: rkisp1-utils: Fix coding style for template arguments\n  pipeline: vimc: Don\u0027t hardcode scaling factor with recent kernels\n  test: v4l2_videodevice: Increase timeout for vimc capture tests\n  test: fence: Increase timeout for fence test\n  test: fence: Fix race condition\n  test: fence: Turn class member variable into local variable\n  test: camera: Increase timeout for vimc capture tests\n  libcamera: software_isp: Remove TODO about internal representation\n  libcamera: software_isp: Remove DebayerParams::kGain10\n  libcamera: software_isp: Move color mappings out of debayering\n  libcamera: software_isp: Honor black level in AWB\n  libcamera: software_isp: Use a specific integer type for black level\n  utils: checkstyle.py: Show location of coding style issue within line\n  utils: checkstyle.py: Add a check for hex values\n  utils: checkstyle.py: Extend IncludeChecker to cover math.h\n  utils: checkstyle.py: Refactor IncludeChecker\n  test: ipa: rkisp1-utils: Fix capitalization of hex numbers\n  ipa: rkisp1: Add a helper to convert floating-point to fixed-point\n  android: camera_capabilities: Fix GCC 14 warning\n  ipa: rpi: Make monoSensor() accessor const\n  libcamera: yaml_parser: Avoid double lookup in `operator[]`\n  treewide: Query list of cameras just once\n  libcamera v0.3.0\n  ipa: rpi: Add accessor function for monoSensor_\n  ipa: rpi: Add HDR support\n  libcamera: v4l2_subdevice: Add missing MEDIA_BUS_FMT_xxxx16_1X16 info\n  libcamera: formats: Add PiSP specific image and config buffer formats\n  include: linux: Add PiSP specific image and config buffer formats\n  libcamera: formats: Add RGB48 formats\n  include: linux: Add RGB48 formats\n  libcamera: camera_manager: Add environment variable to order pipelines match\n  libcamera: pipeline: Add a get factory by name helper\n  libcamera: pipeline: Rename pipelines to a shorter name\n  gstreamer: Use copied camera name\n  gstreamer: Fix string memory leak\n  Documentation: Add option to treat Doxygen warnings as errors\n  test: gstreamer: Simplify single stream test\n  ipa: libipa: histogram: Fix documentation of constructor\n  libcamera: Drop remaining file name from header comment blocks\n  libcamera: Drop file name from header comment blocks in templates\n  ipa: rkisp1: agc: Fix histogram construction\n  ipa: rpi: Fix for incorrectly reported max shutter speed\n  pipeline: rpi: Avoid duplicating size range for the same pixel format\n  ipa: libipa: histogram: Add transform parameter to constructor\n  libcamera: Drop file name from header comment blocks\n  ipa: rkisp1: Remove bespoke Agc functions\n  ipa: rkisp1: Derive rkisp1::algorithms::Agc from AgcMeanLuminance\n  ipa: ipu3: Remove bespoke AGC functions from IPU3\n  ipa: ipu3: Derive ipu3::algorithms::Agc from AgcMeanLuminance\n  ipa: libipa: Add AgcMeanLuminance base class\n  ipa: libipa: Add ExposureModeHelper\n  libcamera: controls: Generate enum value-name maps\n  ipa: libipa: Allow creation of empty Histogram\n  Revert \"meson: Deprecate bitwise operations between different enumeration type\"\n  test: Don\u0027t add current build directory to include path\n  meson: Deprecate bitwise operations between different enumeration type\n  apps: qcam: Use standard key sequence for quit action\n  libcamera: shared_mem_object: Fix compilation with uClibc\n  libcamera: utils: Avoid infinite recursion with strtod()\n  libcamera: libipa: camera_sensor: Add Sony IMX415 sensor properties\n  apps: cam: Fix C++20 deprecation warning\n  libcamera: libipa: camera_sensor: Add Sony IMX335 sensor properties\n  libcamera: libipa: camera_sensor: Add Sony IMX283 sensor properties\n  android: camera_device: Always clear descriptors_ in stop()\n  libcamera: Fix output spelling error\n  libcamera: device_enumerator: Fix spell error\n  utils: checkstyle.py: Drop period at end of Doxygen one liners\n  utils: checkstyle.py: Use r\u0027\u0027 strings for regular expressions\n  Documentation: coding-style: Clean up header guard style\n  ipu3: Use posix basename\n  libcamera: software_isp: Apply black level compensation\n  libcamera: Add \"Software ISP benchmarking\" documentation\n  libcamera: debayer_cpu: Add BGR888 output support\n  libcamera: debayer_cpu: Add support for 8, 10 and 12 bpp unpacked bayer input\n  libcamera: swstats_cpu: Add support for 8, 10 and 12 bpp unpacked bayer input\n  libcamera: pipeline: simple: Enable use of Soft ISP and Soft IPA\n  libcamera: pipeline: simple: Rename converterBuffers_ and related vars\n  libcamera: Introduce SoftwareIsp\n  libcamera: ipa: Add Soft IPA\n  libcamera: software_isp: Add DebayerCpu class\n  libcamera: software_isp: Add Debayer base class\n  libcamera: software_isp: Add SwStatsCpu class\n  libcamera: shared_mem_object: Reorganize the code and document the SharedMemObject class\n  libcamera: shared_mem_object: Rename SIZE constant to `size\u0027\n  libcamera: internal: Move SharedMemObject class to a common directory\n  libcamera: dma_heaps: extend DmaHeap class to support system heap\n  libcamera: internal: Move dma_heaps.[h, cpp] to common directories\n  libcamera: pipeline: simple: fix size adjustment in validate()\n  utils: ipc: Fix async main interface functions with no parameters\n  utils: ipc: Fix event functions with no parameters\n  apps: cam: Add support for PPM output format\n  v4l2: meson: Keep defines sorted alphabetically\n  v4l2: Unset _TIME_BITS in addition to _FILE_OFFSET_BITS\n  libcamera: pipeline: Add Mali-C55 ISP pipeline\n  android: camera_device: Save capture settings unconditionally\n  apps: lc-compliance: Re-organize source directory\n  apps: lc-compliance: Fix typo in comment\n  apps: lc-compliance: Check that requests complete successfully\n  utils: tuning: readme: Improve names of dependency packages\n  checkstyle: Work around bug in difflib\n  libcamera: camera_sensor: Expose the Bayer order\n  libcamera: camera_sensor: Test for read-only HBLANK with READ_ONLY flag\n  libcamera: camera_sensor: Reorder functions\n  libcamera: camera_sensor: Drop updateControlInfo() function\n  libcamera: camera_sensor: Move related classes to subdirectory\n  libcamera: v4l2_subdevice: Add V4L2Subdevice::Route structure\n  libcamera: v4l2_subdevice: Replace Routing::toString() with operator\u003c\u003c()\n  libcamera: v4l2_subdevice: Add stream support to get/set functions\n  libcamera: v4l2_subdevice: Rename V4L2SubdeviceFormat::mbus_code to code\n  libcamera: v4l2_subdevice: Drop V4L2SubdeviceFormat::bitsPerPixel()\n  libcamera: v4l2_subdevice: Extend MediaBusFormatInfo with metadata formats\n  libcamera: v4l2_subdevice: Expose media bus format info as internal API\n  libcamera: v4l2_subdevice: Add code member to MediaBusFormatInfo\n  libcamera: v4l2_subdevice: Rename V4L2SubdeviceFormatInfo\n  libcamera: controls: Add policy parameter to ControlList::merge()\n  libcamera: framebuffer_allocator: Remove entry if allocation fails\n  libcamera: framebuffer_allocator: Use default destructor\n  libcamera: framebuffer_allocator: Move from argument in constructor\n  cam: capture_script: Make parseRectangles work for non-array\n  utils: checkstyle.py: Fix known_trailers sort order\n  utils: checkstyle.py: Add Co-developed-by to known_trailers\n  ipa: rpi: cam_helper: Extend embedded data parsing to RAW14 modes\n  libcamera: v4l2_subdevice: Add 14-bit Bayer formats\n  guides: pipeline-handler: Fix controlInfo_ initialization\n  libcamera: controls: Fix typo on thermal\n  pipeline: simple: Add support for MediaTek MT8365 platforms\n  meson_options: Autodetect pycamera support\n  README.rst: Report py dependencies\n  utils: ipu3: Fix return value check on file output\n  libcamera: formats: Fix planes bounds check\n  utils: rkisp1: gen-csc-table.py: Don\u0027t presume python3 location\n  utils: checkstyle.py: Update LogCategoryChecker regexp\n  utils: checkstyle.py: Don\u0027t presume python3 location\n  libcamera: formats: Fix typos in PixelFormatInfo documentation\n  libcamera: Use utils::to_underlying()\n  libcamera: utils: Add to_underlying() helper function\n  ipa: rkisp1: Support the i.MX8MP ISP version\n  include: linux: Add RKISP1_V_IMX8MP version\n  ipa: rkisp1: Fix histogram weights configuration\n  ipa: rkisp1: Store hardware parameters in IPA context\n  ipa: rkisp1: agc: Wrap variable length C arrays in spans\n  pipeline: rpi: vc4: Use an unpacked format if no packed one is available\n  utils: mojom: Fix build error caused by the mojom tool update\n  gstreamer: Map 10/12/14/16 bayer formats supports\n  gstreamer: Map R8/R16 pixel format\n  doc: gstreamer: Add missing queues\n  libcamera: object: Add and use thread-bound assertion\n  libcamera: object: Document and ensure Object deletion constraints\n  test: timer-thread: Destroy Object from correct thread context\n  test: timer-thread: Move timer start from wrong thread to separate test\n  test: signal-threads: Destroy Object from correct thread context\n  test: message: Destroy Object from correct thread context\n  test: message: Remove incorrect slow receiver test\n  test: event-thread: Destroy Object from correct thread context\n  libcamera: thread: Ensure deferred deletion of all objects before stopping\n  test: object-delete: Test deferred delete just before thread stops\n  libcamera: signal: Replace object.h inclusion with forward declatation\n  libcamera: object: Fix thread-bound reference in documentation\n  apps: common: dng_writer: Add a default case for switch-case on a modulo\n  libcamera: v4l2_subdevice: Explain sort order of formatInfoMap\n  libcamera: bayer_format: Add Y12 to bayerToFormat\n  libcamera: formats: Fix sort ordering of R10_CSI2P\n  libcamera: formats: Add 16-bit mono format\n  libcamera: Remove empty formats.c\n  pipeline: rpi: Always initialize the embedded buffer in tryRunPipeline\n  test: gstreamer: Use env instead of registry edit\n  gstreamer: Add meson devenv support\n  utils: ipc: extract-docs: Fix escape characters in regex\n  Documentation: Update Qt documentation links to Qt 6\n  libcamera: base: signal: Update Qt documentation link to Qt 6\n  libcamera: v4l2_subdevice: Enable streams API when supported\n  include: linux: Update kernel headers to version v6.7\n  libipa: camera_sensor_helper: Mark createInstance() with override\n  libcamera v0.2.0\n  utils: ipc: Update mojo\n  utils: ipc: generate.py: Disable attributes checker\n  utils: ipc: generate.py: Add bindings directory to Python path\n  utils: update-mojo.sh: Commit the mojo update\n  utils: update-mojo.sh: Reject a dirty libcamera tree\n  utils: update-mojo.sh: Change to the libcamera source directory\n  utils: update-mojo.sh: Exit immediately on error\n  utils: update-mojo.sh: Properly remove old sources\n  libcamera: geometry: Correct doxygen reference to classes\n  hooks: pre-push: Disable interpretation of escape sequences\n  ipa: rpi: vc4: data: Update tuning files for HDR\n  ipa: rpi: Implement HDR control\n  libcamera: framebuffer_allocator: Remove unnecessary `clear()`\n  utils: ipc: mojom_libcamera_generator.py: Fix Python warning\n  libcamera: device_enumerator: ensure deviceNode is not empty\n  utils: ipc: Fix deserialization of multiple fd parameters\n  apps: lc-compliance: Fix source file ordering in meson.build\n  ipa: rpi: vc4: Add OV64A40 tuning files\n  libipa: camera_sensor_helper: Add OV64A40 helper\n  ipa: rpi: Provide a Camera Helper for the OV64A40\n  libcamera: camera_sensor: Add OV64A40 sensor properties\n  ipa: vc4: Implement the StatsOutputEnable vendor control\n  build: controls: Add Raspberry Pi vendor specific controls\n  utils: raspberrypi: ctt: Improve the Macbeth Chart search reliability\n  ipa: rpi: awb: Add an initialValues method\n  ipa: rpi: black_level: Add an initialValues method\n  ipa: rpi: Allow the mean of an empty histogram interval\n  Documentation: camera-sensor-model: Support Sphinx \u003c 2.0\n  gstreamer: Support for pre-1.16 GstEvent\n  lc-compliance: Set minimum version for gtest dependency\n  ipa: rpi: Add hardware line rate constraints\n  pipeline: rpi: Respect provided stride\n  libcamera: camera: Fix unused variable compiler warning\n  meson: Replace hack with usage of \u0027@BASENAME@\u0027\n  README.rst: Add missing libgtest-dev dependency for lc-compliance\n  test: gstreamer: Remove videoconvert element from pipeline\n  test: ipc: unixsocket: Increase process exit timeout\n  test: log: log_process: Increase process exit timeout\n  test: log: log_process: Improve debugging on process exit failures\n  test: log: log_process: Fix uninitialized variable on process exit failure\n  test: log: log_process: Log an error when failing due to incorrect message\n  meson: Tag all installed files\n  gstreamer: Implement renegotiation\n  gstreamer: Add GstLibcameraSrcState::clearRequests method\n  gstreamer: Move negotiation logic to separate function\n  test: gstreamer: Fix indentation in comments\n  meson_options: Sort options alphabetically\n  README.rst: Document dependencies for the Python bindings\n  README.rst: Drop indirect dependencies on Qt5 packages\n  ipa: rpi: cac: Minor code improvements and tidying\n  ipa: rpi: agc: Fix bug where AeLocked was never getting set\n  documentation: Document vendor specific controls and properties handling\n  libcamera: controls: Use vendor tags for draft controls and properties\n  libcamera: control: Add vendor control id range reservation\n  build: controls: Rework how controls and properties are generated\n  controls: Update argument handling for controls generation scripts\n  controls: Add vendor control/property support to generation scripts\n  libcamera: pipeline: Fix c++20 compile warning\n  Documentation: Fix list indentation\n  README.rst: Use code directive for all code examples\n  Documentation: contributing: Integrate the code of conduct\n  Documentation: code-of-conduct: Add contact information\n  Documentation: code-of-conduct: Add license information\n  Documentation: code-of-conduct: Convert to reStructuredText\n  Documentation: Add code of conduct\n  gstreamer: Fix unused variable error\n  ipa: rpi: alsc: Do not allow zero colour ratio statistics\n  gstreamer: Implement element EOS handling\n  pipeline: rpi: Add some useful logging messages\n  libcamera: camera_sensor: Only access V4L_CID_HBLANK if existing\n  pipeline: rpi: vc4: Fix drop frame bug when no ISP streams are configured\n  pipeline: rpi: Remove unused variable\n  libcamera: controls: Add controls for HDR\n  ipa: rpi: agc: Make AGC controls affect all channels\n  ipa: rpi: agc: Fetch AWB status in the prepare method\n  ipa: rpi: vc4: Move denoise control handling into the VC4 derived IPA\n  ipa: rpi: agc: Allow AGC channels to avoid using \"fast desaturation\"\n  ipa: rpi: alsc: Do not re-read the alsc.status metadata\n  ipa: rpi: hdr: Add the ability to alter the LSC table\n  libcamera: transform: Make the transformFromOrientation() function static\n  libcamera: transform: Fold transformToOrientation() in its only caller\n  libcamera: camera_sensor: Cache mounting orientation instead of transform\n  py: cam: Add option to set stream orientation\n  apps: cam: Add option to set stream orientation\n  libcamera: Use CameraConfiguration::orientation\n  py: libcamera: Define and use Orientation\n  test: Add unit test for Transform and Orientation\n  libcamera: transform: Add operations with Orientation\n  libcamera: transform: Invert operator*() operands\n  libcamera: transform: Add functions to convert Orientation\n  libcamera: properties: Make \u0027Rotation\u0027 the mounting rotation\n  Documentation: Add figures to document Orientation\n  libcamera: camera: Introduce Orientation\n  libcamera: camera_sensor: Cache rotationTransform_\n  apps: qcam: Add support for RGB565\n  pipeline: rpi: vc4: Allocate more embedded data buffers\n  utils: update-kernel-headers: Support git worktrees\n  ipa: rpi: agc: When AGC channels are changed, start with the 1st channel\n  ipa: rpi: agc: Avoid overwriting caller\u0027s statistics pointer\n  ipa: rpi: denoise: Support different denoise configurations\n  ipa: rpi: contrast: Allow adaptive contrast enhancement to be disabled\n  ipa: rpi: agc: Add an AGC stable region\n  pipeline: rpi: Make color space members in RPiCameraConfiguration public\n  pipeline: rpi: Move flip handling validation code\n  build: ipa: Fix bug in building multiple IPA interfaces with the same mojom file\n  pipeline: rpi: Add SW downscale status to RPi::Stream\n  ipa: rpi: Add new algorithms for PiSP\n  ipa: rpi: Prepare AWB for PiSP support\n  ipa: rpi: Prepare ALSC for PiSP support\n  ipa: rpi: Add PiSP definitions to the Controller hardware description\n  ipa: rpi: Add statsInline to the Controller hardware description\n  ipa: rpi: Add try_lock() to RPiController::Metadata\n  mojom: pipeline: ipa: rpi: Add fields for PiSP objects\n  ipa: rpi: Add IpaBase::platformStart() member function\n  pipeline: rpi: Add SharedMemObject class\n  pipeline: rpi: Add Recurrent and Needs32bitConv flags to RPi::Stream\n  pipeline: rpi: Add RequiresMmap flag to RPi::Stream\n  py: gen-py-controls: Remove SceneFlicker workaround\n  py: Add the SensorConfiguration class\n  libcamera: converter: drop unnecessary #include directive\n  libcamera: converter: A few fixes to ConverterFactoryBase documentation\n  ipa: rpi: Avoid skipping IPAs on the first frame after the drop frames\n  libcamera: rpi: Simplify validate() and configure() for YUV/RGB streams\n  libcamera: rpi: Change default stream formats\n  libcamera: rpi: Simplify validate() and configure() for RAW streams\n  libcamera: rpi: Add some helpers to PipelineHandlerBase\n  libcamera: rpi: Cache rawStreams and outStreams\n  libcamera: rpi: Make isRaw/isYuv/isRgb static functions\n  libcamera: rpi: Fix wrong comment indentation\n  libcamera: rpi: Allow platformValidate() to adjust format strides\n  libcamera: rpi: Handle SensorConfiguration\n  libcamera: camera_sensor: Support SensorConfiguration\n  libcamera: camera: Introduce SensorConfiguration\n  Documentation: Introduce Camera Sensor Model\n  pipeline: rpi: Reset the frame lengths queue during configure\n  ipa: rpi: Fix frame count logic when running algorithms\n  libcamera: formats: Fix typo in YV444 V4L2PixelFormat listing\n\nChange-Id: I882a312735a555622cd31d076efca85a4ffd3964\nReviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/libcamera/+/5669744\nCommit-Queue: Hanlin Chen \u003chanlinchen@google.com\u003e\nTested-by: Harvey Yang \u003cchenghaoyang@chromium.org\u003e\nAuto-Submit: Harvey Yang \u003cchenghaoyang@chromium.org\u003e\nReviewed-by: Hanlin Chen \u003chanlinchen@google.com\u003e\n",
  "tree_diff": []
}
