[libcamera-devel] [PATCH v2 0/2] Initial EXIF metadata support

Umang Jain email at uajain.com
Tue Aug 25 22:10:31 CEST 2020


Changes in v2:
- Patch 2/3 and 3/3 in v1 are merged.
- We ignore the Frame Metadata timestamp, instead use the 'time of
  encoding' as the frame timestamp for EXIF data. Since the resolution
  is only 1s, this seems to be fine (consensus over IRC).
- EXIF data placeholder is now wrapper inside CameraStream.
  This prevents setting static metadata repeatedly in v1, like
  Make/Model etc.
- Jpeg Encoder encodes the EXIF generated Span<> directly into the
  image. This avoids JPEG encoder dealing with EXIF specifics inside
  itself. 
- Orientation tag value is rectified and is similar to how it's done
  in Chrome HAL.
- Exif::setWidth() and Exif::setHeight() are merged to achieve common
  Exif::setSize(libcamera::Size) for setting frame sizes.


Kieran Bingham (2):
  libcamera: android: Add EXIF infrastructure
  android: jpeg: Support a initial set of  EXIF metadata tags

 src/android/camera_device.cpp        |  22 ++-
 src/android/camera_device.h          |   2 +
 src/android/jpeg/encoder.h           |   5 +-
 src/android/jpeg/encoder_libjpeg.cpp |   9 +-
 src/android/jpeg/encoder_libjpeg.h   |   3 +-
 src/android/jpeg/exif.cpp            | 242 +++++++++++++++++++++++++++
 src/android/jpeg/exif.h              |  54 ++++++
 src/android/meson.build              |   2 +
 8 files changed, 335 insertions(+), 4 deletions(-)
 create mode 100644 src/android/jpeg/exif.cpp
 create mode 100644 src/android/jpeg/exif.h

-- 
2.25.1



More information about the libcamera-devel mailing list