[FFmpeg-devel] [PATCH] ffprobe: implement generic reindent logic in the JSON writer
Clément Bœsch
ubitux at gmail.com
Sun Jan 8 20:08:38 CET 2012
On Sun, Jan 08, 2012 at 04:28:59PM +0100, Stefano Sabatini wrote:
> On date Sunday 2012-01-08 13:28:11 +0100, Clément Bœsch encoded:
> > On Sun, Jan 08, 2012 at 11:26:03AM +0100, Stefano Sabatini wrote:
> > > On date Sunday 2012-01-08 02:35:00 +0100, Clément Bœsch encoded:
> > > > On Sun, Jan 08, 2012 at 02:27:20AM +0100, Stefano Sabatini wrote:
> > > > > Clarify/generalize indent logic, possibly slower.
> > > > > ---
> > > > > ffprobe.c | 54 ++++++++++++++++++++++++++++++++++++++----------------
> > > > > 1 files changed, 38 insertions(+), 16 deletions(-)
> > > [...]
> > > > > +#define INDENT " "
> > > > > +
> > > > > +#define JSON_INDENT() { int i; for (i = 0; i < json->indent_level; i++) printf(INDENT); }
> > > > > +
> > > >
> > > > I think I already suggested in a "very" old patch that this could be done
> > > > with "%*c", json->indent_level * 4, ' '. It might be faster (and cleaner).
> > > >
> > > > Are you against this?
> > >
> > > No, I was not aware of the syntax and failed to find reference to it
> > > the first time. Updated.
> >
> > Before:
> >
> > {
> > "streams": [{
> > "index": 0,
> > "codec_name": "mpeg1video",
> > ...
> > },{
> > "index": 1,
> > "codec_name": "mp2",
> > ...
> > }],
> > "format": {
> > "filename": "foobar.mpg",
> > "nb_streams": 2,
> > ...
> > }
> > }
> >
> > After:
> >
>
> > {
> > "streams": [{
> > "index": 0,
> > "codec_name": "mpeg1video",
> > ...
> > },{
> > "index": 1,
> > "codec_name": "mp2",
> > ...
> > }],
> > "format": {
> > "filename": "foobar.mpg",
> > "nb_streams": 2,
> > ...
> > }
> > }
> >
> >
>
> > Is this the wanted behaviour?
>
> Code is changing the indent level two times for the nested stream
> section, so this is consistent with the implemented logic.
>
> > I'm fine with the second one if it helps
> > improving the code, but the change of behaviour should be notified in the
> > commit message IMO.
>
> Patch is supposed to be applied together with the next one, when the
> output becomes:
>
> {
> "streams": [
> {
> "index": 0,
> "codec_name": "mpeg1video",
> ...
> },
> {
> "index": 1,
> "codec_name": "mp2",
> ...
> }
> ],
> "format": {
> "filename": "foobar.mpg",
> "nb_streams": 2,
> ...
> }
> }
>
> which I find more readable (as it is more clear the relation between
> the chapter and nested sections).
Fine with me.
--
Clément B.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 490 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20120108/8e154c4d/attachment.asc>
More information about the ffmpeg-devel
mailing list