[libcamera-devel] [PATCH v1 0/5] qcam: Fix stride handling

Laurent Pinchart laurent.pinchart at ideasonboard.com
Tue Sep 7 01:04:31 CEST 2021


Hello,

I came to realize that stride support was broken in qcam when testing
[1] on Raspberry Pi with the YUV420 format. This patch series fixes it
for all RGB and YUV formats, and also adds YUV420 support to the
software converter.

The patches apply on top of [1]. I've tested ARGB8888, YUYV, NV12 and
YUV420, with both viewfinders. Only YUV420 had padding at the end of
lines, so other formats may not work properly when padding is present,
but there should at least be no regression.

[1] https://lists.libcamera.org/pipermail/libcamera-devel/2021-September/024477.html

Laurent Pinchart (5):
  qcam: viewfinder: Pass stride value to viewfinder
  qcam: format_converter: Add configurable stride support
  qcam: format_converter: Rename YUV and NV to YUVPacked and
    YUVSemiPlanar
  qcam: format_converter: Add fully-planar YUV formats support
  qcam: viewfinder_gl: Support configurable stride in shaders

 src/qcam/assets/shader/identity.vert |   4 +-
 src/qcam/format_converter.cpp        | 187 ++++++++++++++++++---------
 src/qcam/format_converter.h          |  14 +-
 src/qcam/main_window.cpp             |   3 +-
 src/qcam/viewfinder.h                |   3 +-
 src/qcam/viewfinder_gl.cpp           |  61 ++++++---
 src/qcam/viewfinder_gl.h             |   4 +-
 src/qcam/viewfinder_qt.cpp           |   4 +-
 src/qcam/viewfinder_qt.h             |   3 +-
 9 files changed, 195 insertions(+), 88 deletions(-)

-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list