[PATCH v2 0/3] gstreamer: Generate controls from control_ids_*.yaml files
Jaslo Ziska
jaslo at ziska.de
Mon Sep 30 11:11:21 CEST 2024
Hi Laurent,
Laurent Pinchart <laurent.pinchart at ideasonboard.com> writes:
> Hi Jaslo,
>
> I think this series is close to being ready, and I would be very
> happy
> to merge this much awaited feature. Do you plan to send a v3 ?
Yes, I very much plan on continuing to work on this. I was a
pretty busy the past month but I should have more time later in
October.
Unfortunately, I don't think that the series is quite ready.
Nicolas had requested some bigger changes in v1 which still need
to be discussed and implemented and I also want to add the
readable/writeable and minimum/maximum properties to the yaml
files (although this could also be done separately after merging).
Best regards,
Jaslo
> On Tue, Aug 13, 2024 at 02:25:04PM +0200, Jaslo Ziska wrote:
>> Hi everyone,
>>
>> this is the second version of the patch set to implement
>> gstreamer controls
>> from the yaml files.
>> This now depends on "[PATCH 00/10] libcamera: Improve code
>> generation for
>> controls" for the code generation.
>>
>> The following things changed:
>>
>> The (old) third commit fixing a typo has been removed as it is
>> already merged.
>>
>> The first commit is new: it removes the auto-focus-mode
>> property from the
>> device provider where it has been added on accident.
>>
>> The commit message has been updated in the second commit.
>>
>> The third commit, which adds the code that generates the
>> gstreamer controls,
>> now makes use of jinja2 and the new controls.py file. As a
>> consequence the
>> whole code generation has been redone.
>>
>> There are also some new features:
>>
>> It is now possible to read the metadata returned by requests
>> from the gstreamer
>> properties. This is done using a new function readMetadata()
>> which reads the
>> ControlList in requestCompleted().
>>
>> Before a control is set it is now checked whether this control
>> is actually
>> supported by the camera. This is done by checking the cameras
>> ControlInfoMap.
>>
>> The Rectangle type is now supported.
>>
>> Some checks were added to make sure the arrays passed to the
>> element have the
>> correct length.
>>
>> Best regards,
>>
>> Jaslo
>>
>> Jaslo Ziska (3):
>> gstreamer: Remove auto-focus-mode property from device
>> provider
>> gstreamer: Remove auto-focus-mode property from libcamerasrc
>> gstreamer: Generate controls from control_ids_*.yaml files
>>
>> src/gstreamer/gstlibcamera-controls.cpp.in | 296
>> +++++++++++++++++++++
>> src/gstreamer/gstlibcamera-controls.h | 43 +++
>> src/gstreamer/gstlibcameraprovider.cpp | 15 --
>> src/gstreamer/gstlibcamerasrc.cpp | 50 ++--
>> src/gstreamer/meson.build | 10 +
>> utils/codegen/controls.py | 8 +
>> utils/codegen/gen-gst-controls.py | 151 +++++++++++
>> utils/codegen/meson.build | 1 +
>> 8 files changed, 528 insertions(+), 46 deletions(-)
>> create mode 100644 src/gstreamer/gstlibcamera-controls.cpp.in
>> create mode 100644 src/gstreamer/gstlibcamera-controls.h
>> create mode 100755 utils/codegen/gen-gst-controls.py
More information about the libcamera-devel
mailing list