[libcamera-devel] [PATCH v5 7/8] utils: raspberrypi: ctt: Output version 2.0 format tuning files
Naushir Patuck
naush at raspberrypi.com
Fri Jul 15 10:39:29 CEST 2022
Hi Laurent,
Thank you for your feedback.
On Fri, 15 Jul 2022 at 00:55, Laurent Pinchart <
laurent.pinchart at ideasonboard.com> wrote:
> Hi Naush,
>
> Thank you for the patch.
>
> On Thu, Jul 14, 2022 at 04:24:08PM +0100, Naushir Patuck via
> libcamera-devel wrote:
> > Use the tuning file conversion script to output the new tuning file
> format from
> > the CTT.
> >
> > Signed-off-by: Naushir Patuck <naush at raspberrypi.com>
> > ---
> > utils/raspberrypi/ctt/ctt.py | 13 ++++++-------
> > 1 file changed, 6 insertions(+), 7 deletions(-)
> >
> > diff --git a/utils/raspberrypi/ctt/ctt.py b/utils/raspberrypi/ctt/ctt.py
> > index 15064634c67f..0d91ada15afa 100755
> > --- a/utils/raspberrypi/ctt/ctt.py
> > +++ b/utils/raspberrypi/ctt/ctt.py
> > @@ -15,7 +15,7 @@ from ctt_alsc import *
> > from ctt_lux import *
> > from ctt_noise import *
> > from ctt_geq import *
> > -from ctt_pretty_print_json import *
>
> ctt_pretty_print_json.py isn't used anymore, should it be dropped ?
>
> > +from convert_tuning import convert_v2
> > import random
> > import json
> > import re
> > @@ -511,13 +511,12 @@ class Camera:
> > """
> > def write_json(self):
> > """
> > - Write json dictionary to file
> > + Write json dictionary to file using our version 2 format
> > """
> > - jstring = json.dumps(self.json, sort_keys=False)
> > - """
> > - make it pretty :)
> > - """
> > - pretty_print_json(jstring, self.jf)
> > + out_json = convert_v2(self.json)
>
> That's cheating :-) I'm OK with it for now, Would it be difficult to
> output the v2 format natively though ? It seems that something along the
> lines of the following code should do:
>
> out_json = {
> "version": "2.0",
> "algorithms": [{name: data} for name, data in
> self.json.items()],
> }
>
> and then you could import the Encoder class from convert_tuning instead
> of the convert_v2 function, and do
>
> with open(self.jf, 'w') as f:
> f.write(json.dumps(out_json, cls=Encoder, indent=4,
> sort_keys=False))
>
> Possibly even better, the Encoder class could be moved from
> convert_tuning.py to ctt_pretty_print_json and replace the existing
> hand-written JSONPrettyPrinter.
>
I think I would prefer the first suggestion and delete
ctt_pretty_print_json.py.
It pretty much does what convert_tuning.py does, so seems redundant.
Naush
>
> > +
> > + with open(self.jf, 'w') as f:
> > + f.write(out_json)
> >
> > """
> > add a new section to the log file
>
> --
> Regards,
>
> Laurent Pinchart
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.libcamera.org/pipermail/libcamera-devel/attachments/20220715/4e33da95/attachment.htm>
More information about the libcamera-devel
mailing list