[libcamera-devel] [PATCH v7 00/12] Zero-copy RAW stream work

Naushir Patuck naush at raspberrypi.com
Tue Sep 8 09:49:00 CEST 2020


Hi all,

This is v7 of the zero copy patch series.  The only change between v6 and v7 is the removal of the "on-the-fly" mmap/unmap of stats and embedded data buffers if they were passed in through a Request.  This is no loss of functionality, as the application can never request these buffers, so the code path would never be exercised.  Once the framework is in place for an app to request these types of buffer, we must revisit and find an efficient mechanism to map/unmap unknown buffers for use by the IPA.

Regards,
Naush


Naushir Patuck (12):
  libcamera: pipeline: raspberrypi: Move RPiStream into a separate file
  libcamera: pipeline: ipa: raspberrypi: Rework drop frame signalling
  libcamera: pipeline: raspberrypi: Add some debug logging
  libcamera: pipeline: raspberrypi: Increase the number of RAW buffers
  libcamera: pipeline: raspberrypi: Remove const qualifier from
    RPiStream
  libcamera: pipeline: raspberrypi: Rework stream buffer logic for
    zero-copy
  libcamera: pipeline: raspberrypi: Fix bug in passing configuration to
    IPA
  libcamera: pipeline: raspberrypi: Add more robust stream buffer logic
  libcamera: pipeline: ipa: raspberrypi: Remove use of FrameBuffer
    cookie
  pipeline: raspberrypi: Use an unordered_map for the stream buffer list
  pipeline: raspberrypi: Use an unordered_set to store IPA buffer ids
  pipeline: ipa: raspberrypi: Handle any externally allocated
    FrameBuffer

 include/libcamera/ipa/raspberrypi.h           |  13 +-
 src/ipa/raspberrypi/raspberrypi.cpp           |  26 +-
 .../pipeline/raspberrypi/meson.build          |   1 +
 .../pipeline/raspberrypi/raspberrypi.cpp      | 571 ++++++++----------
 .../pipeline/raspberrypi/rpi_stream.cpp       | 244 ++++++++
 .../pipeline/raspberrypi/rpi_stream.h         | 140 +++++
 6 files changed, 645 insertions(+), 350 deletions(-)
 create mode 100644 src/libcamera/pipeline/raspberrypi/rpi_stream.cpp
 create mode 100644 src/libcamera/pipeline/raspberrypi/rpi_stream.h

-- 
2.25.1



More information about the libcamera-devel mailing list