[libcamera-devel] [PATCH 0/6] cam: add --format option to configure a stream
Niklas Söderlund
niklas.soderlund at ragnatech.se
Fri Feb 1 16:22:00 CET 2019
Hi Laurent,
On 2019-01-31 12:06:35 +0200, Laurent Pinchart wrote:
> Hi Kieran,
>
> On Tue, Jan 29, 2019 at 09:33:32AM +0000, Kieran Bingham wrote:
> > Hi Niklas,
> >
> > Except for a "we're writing an option parser rather than pulling one in"
> > concern, I don't see anything too wrong with this series and it's a
> > stand-alone tool (which you currently own :D )
> >
> > So I'd say,
> >
> > Acked-by: Kieran Bingham <kieran.bingham at ideasonboard.com>
> >
> > <edit: a couple of minor notes on 6/6>
> >
> > I think creating an opaque object to manage the camera from the
> > application point of view will give us a lot of benefits to hiding the
> > internal implementation and shared-ptrs.
>
> That's Tomasz's proposal, right ?
To me this is the d-pointer discussion we had in the past and recoded as
'Research ABI stability with regard to private data' topic. And if I
understand Tomasz proposal his view is somewhat aligned whit this, but I
might have misunderstood.
>
> > Then an application can get a single 'unique' ptr - and it's destruction
> > can handle all clean up on the internal calls.
>
> Should that be a std::unique_ptr<>, or just a normal pointer ?
>
> > Anyway - Keeping the tool in use and actively developed will help us
> > develop how the applications will use the library - so I'm all for
> > getting this series in and developing it as we go.
> >
> > On 28/01/2019 00:41, Niklas Söderlund wrote:
> > > Hi,
> > >
> > > This series aims to add a --format option to the cam utility so that it
> > > can set the format of a stream of a specified camera. To do this in an
> > > efficient manner a new key=value parser is needed to understand the
> > > arguments given to the new option, example
> > >
> > > cam --camera mycam --format width=800,height=600
> > >
> > > This series adds such a parser and then moves on to adding the new
> > > operation to the cam utility in 6/6. This series depends on [1] for 6/6
> > > which needs the stream API in the camera object to actually set the
> > > requested format.
> > >
> > > 1. [PATCH v3 0/6] libcamera: add basic support for streams and format
> > > configuration
> > >
> > > Niklas Söderlund (6):
> > > cam: options: move enum OptionArgument
> > > cam: options: create a template class for options
> > > cam: options: return if addOption() succeeds or not
> > > cam: options: remove OptionsParser::options_
> > > cam: options: add a key=value parser
> > > cam: add --format option to configure a stream
> > >
> > > src/cam/main.cpp | 107 ++++++++++++++++++++++----
> > > src/cam/options.cpp | 178 +++++++++++++++++++++++++++++++++++++++-----
> > > src/cam/options.h | 70 +++++++++++++----
> > > 3 files changed, 305 insertions(+), 50 deletions(-)
>
> --
> Regards,
>
> Laurent Pinchart
--
Regards,
Niklas Söderlund
More information about the libcamera-devel
mailing list