[libcamera-devel] [PATCH v3 00/13] android: JPEG support
Kieran Bingham
kieran.bingham at ideasonboard.com
Tue Aug 4 23:46:58 CEST 2020
A revision of the recently posted JPEG support for the android layer,
this includes fixups to review comments and an addition of a test case
for the newly introduced mapped-buffers class.
With just these patches applied, the CCA application runs and can
capture an image successfully.
There is still plenty to do on top however:
- The JPEG compression does not run in a separate thread
- Added streams do not have buffering
- RAW API could be used for JPEG compression
- EXIF tag support is started but not included in this series.
- No rescaler is supported yet
I believe all comments from previous review are integrated in this
version, and while there is still plenty more to do for JPEG, this is
headed towards a suitable base point.
Kieran Bingham (13):
libcamera: buffer: Correct FrameBuffer references
libcamera: formats: add numPlanes helper
libcamera: buffer: Create a MappedBuffer
test: mapped-buffers: Provide MappedBuffer test
libcamera: buffer: Convert copyFrom to use MappedFrameBuffer
android: camera_device: Fix trivial spelling
android: camera_device: Report an error in notifyError()
android: camera_device: Only construct required planes
android: camera_device: Query plane length
android: camera_device: Report configuration changes from validate()
android: camera_device: Generate ResultMetadata earlier
android: Introduce JPEG compression
android: camera_device: Support MJPEG stream construction
include/libcamera/internal/buffer.h | 47 +++++
include/libcamera/internal/formats.h | 2 +
src/android/camera_device.cpp | 290 ++++++++++++++++++++++++---
src/android/camera_device.h | 12 ++
src/android/jpeg/compressor.h | 28 +++
src/android/jpeg/compressor_jpeg.cpp | 217 ++++++++++++++++++++
src/android/jpeg/compressor_jpeg.h | 45 +++++
src/android/meson.build | 1 +
src/libcamera/buffer.cpp | 205 ++++++++++++++++---
src/libcamera/formats.cpp | 18 ++
src/libcamera/meson.build | 2 +
test/mapped-buffers.cpp | 113 +++++++++++
test/meson.build | 1 +
13 files changed, 925 insertions(+), 56 deletions(-)
create mode 100644 include/libcamera/internal/buffer.h
create mode 100644 src/android/jpeg/compressor.h
create mode 100644 src/android/jpeg/compressor_jpeg.cpp
create mode 100644 src/android/jpeg/compressor_jpeg.h
create mode 100644 test/mapped-buffers.cpp
--
2.25.1
More information about the libcamera-devel
mailing list